SIPトランキング
SIPトランキング
SIPトランキングを使用して、既存の電話システムをElevenLabs Agentsに接続
概要
SIP(Session Initiation Protocol)トランキングを使用すると、既存の電話インフラをElevenLabs Agentsに直接接続できます。 このインテグレーションにより、すべてのお客様は既存の電話システムを利用しながら、ElevenLabsの高度な音声AI機能を活用できます。
SIPトランキングでは、次のことができます。
- Private Branch Exchange(PBX)またはSIP対応電話システムをElevenLabsの音声AIプラットフォームに接続する
- 既存の電話インフラを変更せずに、通話をAIエージェントへルーティングする
- 着信通話と発信通話の両方を処理する
- セキュリティを強化するために、暗号化されたTLSトランスポートとメディア暗号化を活用する
SIPを初めて使用する場合は、SIP、SBC、SDP、RTP、 MTUなど、このガイドで使用する用語をわかりやすく説明したSIPリファレンスをご覧ください。
静的IPSIPサーバー
ElevenLabsは、セキュリティポリシーでIP許可リストを必要とするエンタープライズのお客様向けに、静的IPアドレスを持つSIPサーバーを提供しています。
静的IPインフラでは、米国、EU、インド、シンガポールの複数リージョンに分散した256アドレスを含む/24IPアドレスブロックを使用します。ファイアウォール設定で、この/24ブロック全体を許可リストに追加する必要があります。
デフォルト(米国/国際)環境では、SIPエンドポイントとしてsip-static.rtc.elevenlabs.ioを使用してください。
分離リージョンでは、sip-static.rtc.<region>.residency.elevenlabs.ioを使用します。<region>はデータレジデンシーリージョンコードです(例:eu、in、sg)。これらのエンドポイントを使用する場合、すべてのトラフィックはそのリージョン内からのみ発信されます。リージョンごとの個別の許可リスト設定は利用できません。利用可能なリージョンの一覧はデータレジデンシーをご覧ください。
この機能はエンタープライズアカウントで利用でき、テスト目的でエンタープライズトライアル中にも有効化できます。アクセスをリクエストするには、support@elevenlabs.ioまでサポートにメールするか、担当者にお問い合わせください。詳細は、営業へのお問い合わせをご利用ください。
SIPトランキングの仕組み
SIPトランキングは、電話インフラとElevenLabsプラットフォームの間に直接接続を確立します。
- 着信通話:SIPトランクからの通話は、設定したSIP INVITEアドレスを使用してElevenLabsプラットフォームにルーティングされます。
- 発信通話:ElevenLabsが開始した通話は、設定したホスト名を使用してSIPトランクにルーティングされ、エージェントが外線発信できるようになります。
- 認証:シグナリングの接続セキュリティは、Digest認証(ユーザー名/パスワード)またはシグナリングの送信元IPに基づくAccess Control List(ACL)認証によって維持されます。
- シグナリングとメディア:初期通話設定(シグナリング)は、暗号化通信のためのTLSを含む複数のトランスポートプロトコルをサポートしています。通話が確立されると、実際のオーディオデータ(RTPストリーム)は、メディア暗号化設定に基づいて暗号化できます。
トランスポートセキュリティ:証明書と暗号スイート
TLSトランスポートを使用する場合、SIPシグナリングが交換される前に、両側でTLSハンドシェイクが実行されます。ハンドシェイク中に、証明書を検証し、暗号スイートをネゴシエートします。接続を受け入れる側はTLSサーバーとして動作し、証明書を提示します。接続を開始する側はTLSクライアントとして動作し、証明書を検証します。ElevenLabsではTLS 1.2以降が必要です。
役割は通話の方向によって異なります:
- ElevenLabsへの着信通話:システム側が接続を開始するため、ElevenLabsはTLSサーバーとして動作します。ElevenLabsは
sip.rtc.elevenlabs.io用の有効な証明書を提示し、システム側はTLSクライアントとしてそれを検証します。 - ElevenLabsからの発信通話:ElevenLabsが設定済みのアドレスへの接続を開始するため、SIPサーバーまたはSBCがTLSサーバーとして動作します。システム側は有効で信頼された証明書を提示する必要があり、ElevenLabsはTLSクライアントとしてそれを検証します。
両側が互いの証明書を信頼し、少なくとも1つの共通する暗号スイートを共有していることを確認してください。満たされない場合、通話が確立される前にTLSハンドシェイクが失敗します。これらの用語の定義については、SIPリファレンスを参照してください。
後続接続
BYEやREFERなどの一部のダイアログ内リクエストでは、元の接続がすでに閉じている場合に新しいTLS接続が必要になることがあります。こうした後続接続の証明書の動作は、最初の通話セットアップとは異なります:
- ElevenLabsへの後続接続:システム側は、レスポンスで返された
Contactヘッダーのアドレスへの接続を確立します。このアドレスは、<ip>.hosts.rtc.elevenlabs.io形式の特定のSIPサーバーに解決されます。そのサーバーは*.hosts.rtc.elevenlabs.ioに有効な証明書を提示し、システム側がTLSクライアントとして検証します。 - ElevenLabsからの後続接続:ElevenLabsが
BYEまたはREFERのためにTLS接続を開始する場合、最上位のViaヘッダー内のアドレスに接続します。このアドレスはIPアドレスであることがよくあります。通常、システム側はそのIPアドレスではなく完全修飾ドメイン名(FQDN)に有効な証明書を返します。この証明書を検証するには、電話番号設定のリモートドメインフィールドを設定してください。受信した証明書が有効なドメインのいずれかが設定済みのリモートドメインと一致すると、検証は成功します。それ以外の場合は失敗します。
TLS経由の発信BYEまたはREFERリクエストで証明書の検証に失敗する場合は、SIP
サーバーの証明書が発行されているFQDNを、電話番号設定のリモートドメインフィールドに追加してください。
ElevenLabs SIPトランクへの発信
ElevenLabsプラットフォームへの通話を開始する際は、適切なSIP URI形式を使用する必要があります。ElevenLabs SIPトランクのURIは、シグナリングに使用するトランスポートによって異なります:
- TCP:
sip:sip.rtc.elevenlabs.io:5060;transport=tcp - TLS:
sip:sip.rtc.elevenlabs.io:5061;transport=tls - UDP:
sip:sip.rtc.elevenlabs.io:5060;transport=udp(実験的機能。テスト用途にのみ使用し、本番環境では使用しないでください)
通話するには、識別子を含む完全なSIP URIを作成します。たとえば、電話番号+19991234567にTCP経由で発信する場合:
ここで:
+19991234567は識別子です(通常はE.164形式の電話番号)- 識別子には、
1000やjohnなどの任意の文字列値も使用できます
よくある間違い:識別子なしで、sip@sip.rtc.elevenlabs.io:5060に直接通話を開始しないでください。
SIP URIには、sip:プレフィックスの後、@記号の前に電話番号または識別子を含める必要があります。
SIP URI形式:SIP URIは
sip:identifier@domain:port形式に従います。通話を適切にルーティングするには、識別子が必要です。
要件
SIPトランキングを設定する前に、以下を確認してください:
- SIP対応のPBXまたは電話システム
- ElevenLabsに接続する電話番号
- SIPトランク設定への管理者アクセス
- SIPトラフィックを許可する適切なファイアウォール設定
- TLSサポート:セキュリティを強化するため、SIPトランクプロバイダーがTLSトランスポートをサポートしていること
- オーディオコーデックの互換性: システムはG.722またはG.711(PCMUまたはPCMA)オーディオコーデックの少なくとも1つをサポートするか、システム側でオーディオをリサンプリングできる必要があります。これは、直接WebSocket接続用にエージェントで設定されているオーディオ形式とは独立しています。
SIPトランキングの設定
着信設定を構成
メディア暗号化とアクセス制御を含め、SIPトランクに着信した通話をElevenLabsが処理する方法を設定します:
- メディア暗号化:RTPメディアストリームの暗号化を設定します:
- 無効:メディア暗号化なし
- 許可:暗号化されたメディアストリームを許可
- 必須:暗号化されたメディアストリームを必須化
- 許可する番号(任意):この番号への発信を許可する電話番号。すべての番号を許可するには空欄のままにします。
- 許可する送信元IPアドレス(任意):TCP/TLSトランスポートでのみ機能し、UDPでは機能しません。このトランクへの通話送信を許可するIPアドレスまたはCIDR範囲です。すべてのアドレスを許可するには、
0.0.0.0/0のままにします。 - リモートドメイン(任意):通話の発信元となるSIPサーバーのFQDNドメインを指定します。例:
example.pstn.twilio.com。これらのドメインはTLS証明書の検証に使用されます。TLSを使用しない場合は、このフィールドを空欄のままにしてください。 - 認証(任意):着信通話の認証に使用するダイジェスト認証情報を入力します。
- SIPトランクのユーザー名:SIPダイジェスト認証のユーザー名
- SIPトランクのパスワード:SIPダイジェスト認証のパスワード

発信設定を構成
電話番号への通話をElevenLabsが送信する先を設定します:
-
アドレス:SIP INVITEの送信先となるホスト名またはIPアドレス(例:
sip.telnyx.com)。完全なSIP URIではなく、ホスト名またはIPアドレスのみを指定してください。TLSを使用する場合は、有効な証明書を持つホスト名を使用してください。 -
トランスポートタイプ:SIPシグナリングのトランスポートプロトコルを選択します:
- TCP:標準のTCPトランスポート
- TLS:セキュリティを強化する暗号化TLSトランスポート
- UDP:コネクションレス型トランスポート(実験的機能。本番環境ではTCPまたはTLSを使用してください)
-
メディア暗号化:RTPメディアストリームの暗号化を設定します:
- 無効:メディア暗号化なし
- 許可:暗号化されたメディアストリームを許可
- 必須:暗号化されたメディアストリームを必須化
-
有効なコーデック:発信通話用にSDPで提供するコーデック(G.722、PCMU、PCMA)。SIPプロバイダーが特定のコーデックのみをサポートしている場合に役立ちます。
-
カスタムヘッダー(任意):発信通話に含めるカスタムSIPヘッダーを追加します。「ヘッダーを追加」をクリックして、プロバイダーで必要なヘッダー名と値を入力します。必要に応じて複数のヘッダーを追加できます。カスタムヘッダーは、通話のルーティングと識別、請求とトラッキング、プロバイダー固有の要件に使用できます。
-
認証(任意):SIPトランクプロバイダーで必要な場合は、ダイジェスト認証情報を入力します。
- SIPトランクのユーザー名:SIPダイジェスト認証のユーザー名
- SIPトランクのパスワード:SIPダイジェスト認証のパスワード
空欄のままにすると、アクセス制御リスト(ACL)認証が使用されます。この場合、プロバイダーの設定でElevenLabsのIPアドレスを許可リストに追加する必要があります。

セキュリティのベストプラクティス:最大限のセキュリティのために、必須のメディア暗号化とTLSトランスポートを使用してください。これにより、シグナリングとメディアの両方がエンドツーエンドで暗号化されます。
認証方式:
- ダイジェスト認証:ユーザー名/パスワード認証情報を使用した安全な認証(推奨)
- ACL認証:アクセス制御にIPアドレスの許可リストを使用
ダイジェスト認証を強く推奨します。動的IPアドレスでは管理が複雑になり得るIP許可リストに依存せず、より高いセキュリティを提供します。
アドレスフィールドでは、AIエージェントからの発信通話をElevenLabsが送信する先を指定します。sip:プロトコルプレフィックスを付けず、ホスト名またはIPアドレスのみを入力してください。
クライアントデータとパーソナライゼーション
通話メタデータを適切に転送し追跡できるようにするため、webhookペイロードとSIP INVITEリクエストに以下のカスタムSIPヘッダーを含めてください:
- X-CALL-ID:通話の一意の識別子
- X-CALLER-ID:発信者の識別子
これらのヘッダーにより、システムは通話メタデータを会話に関連付け、パーソナライゼーションのコンテキストを提供できます。
フォールバックヘッダーのサポート
上記の標準ヘッダーが存在しない場合、システムは自動的にTwilio固有のSIPヘッダーを探します:
- sip.twilio.callSid:Twilioの一意の通話識別子
このフォールバックにより、設定を変更することなくTwilioのElastic SIP Trunkingとの互換性が確保されます。
処理フロー
サポート対象のヘッダーのいずれかを通じて関連メタデータを受信すると、caller_idおよび/またはcall_idを会話開始webhookとシステム動的変数で利用できます。
動的変数としての着信カスタムヘッダー
着信SIPトランキング通話のカスタムSIP X-ヘッダーは、会話内で動的変数として自動的に公開されます。
ヘッダー名は、X-プレフィックスを削除し、小文字に変換し、ハイフンをアンダースコアに置き換え、sip_プレフィックスを追加して正規化されます。たとえば、X-Contact-IDは{{sip_contact_id}}になり、X-Campaign-IDは{{sip_campaign_id}}になります。
これらの変数は、エージェントプロンプト、最初のメッセージ、ツールで使用し、発信者から提供されたコンテキストに合わせて会話をパーソナライズできます。値は会話履歴の電話タブでも確認できます。
X-Call-IDやX-Caller-IDなどの予約済みヘッダーは、引き続きsystem__call_sidと
system__caller_idにマッピングされます。着信カスタムヘッダーでこれらのシステム変数を上書きすることはできません。
動的変数からのBYEヘッダー
通話が終了すると、ElevenLabsはダイアログを終了するためにSIP BYEを送信します。SIPトランク設定で動的変数をヘッダー名にマッピングすることで、そのBYEにカスタムヘッダーを付加できます。
API経由でSIPトランク電話番号を作成または更新する際に、inbound_trunk_configまたはoutbound_trunk_configでattributes_to_headersを設定します。各エントリーは、動的変数名をBYEに含めるSIPヘッダー名にマッピングします:
ヘッダー値には、会話終了時点での動的変数の最終値が使用されます。エージェントツール、webhookオーバーライド、その他の実行時更新によって通話中に設定された値も、BYEに反映されます。
たとえば、attributes_to_headersに"disposition_code": "X-Disposition"が含まれており、会話終了時のdisposition_code動的変数がresolvedの場合、BYEにはX-Disposition: resolvedが含まれます。
エージェントを電話番号に割り当てる
SIPトランク電話番号をインポートした後、ElevenLabsエージェントに割り当てることができます:
- ElevenAgentsダッシュボードの電話番号セクションに移動します
- インポートしたSIPトランク電話番号を選択します
- 「エージェントを割り当て」をクリックします
- この番号への通話を処理するエージェントを選択します
トラブルシューティング
接続の問題
接続に問題がある場合:
- ElevenLabs側とプロバイダー側の両方でSIPトランク設定を確認します
- 設定したトランスポートプロトコルとポート(TCPは5060、TLSは5061)でSIPシグナリングトラフィックをファイアウォールが許可していること、および許可リストが適用されていないことを確認します
- アドレスのホスト名が正しい形式で、アクセス可能であることを確認します
- ダイジェスト認証情報あり/なしの両方でテストします
- TLSトランスポートを使用している場合は、プロバイダーのTLS証明書が有効で適切に設定されていることを確認します
- 異なるトランスポートタイプ(TCPまたはTLS。UDPサポートは実験的機能)を試し、TLS固有の問題を切り分けます
重要なネットワークアーキテクチャ情報:
- ElevenLabsは共有アドレス
sip.rtc.elevenlabs.ioの背後にある複数のSIPサーバーからSIPトラフィックを提供しています - これらのSIPサーバーはSIPサーバーと直接通信します
- 分散インフラストラクチャのため、SIPリクエストは異なるIPアドレスから送信される場合があります
- セキュリティポリシーにより着信トラフィックの許可リストが必要な場合は、サポートチームにお問い合わせください。
認証エラー
認証の問題で通話に失敗する場合:
- ダイジェスト認証を使用している場合は、SIPトランクのユーザー名とパスワードを再確認します
- SIPトランクプロバイダーのログで、具体的な認証エラーメッセージを確認します
- カスタムヘッダーを設定している場合は、プロバイダーの要件と一致していることを確認します
- 簡略化した設定(カスタムヘッダーなし)でテストし、認証の問題を切り分けます
TLSと暗号化の問題
TLSトランスポートまたはメディア暗号化に問題がある場合:
- SIPトランクプロバイダーがポート5061でTLSトランスポートをサポートしていることを確認します
- 証明書の有効性、有効期限、信頼チェーンを確認します
- 「必須」のメディア暗号化を使用する場合は、プロバイダーがSRTPメディア暗号化をサポートしていることを確認します
- 暗号化の問題を切り分けるため、「必須」を使用する前に「許可」のメディア暗号化でテストします
- TLS固有の問題を切り分けるためTCPトランスポートを試します(UDPサポートは実験的機能です)
- SIPトランクプロバイダーに連絡してTLSおよびSRTPのサポートを確認します
カスタムヘッダーの問題
カスタムヘッダーに問題がある場合:
- プロバイダーで必要な正確なヘッダー名と値を確認します
- ヘッダー名で大文字と小文字が区別されるか確認します
- ヘッダー値にエスケープが必要な特殊文字が含まれていないことを確認します
- まずカスタムヘッダーなしでテストし、その後、段階的に追加します
- 着信カスタムヘッダーの動的変数については、ヘッダーに
X-プレフィックスが使用されていることを確認し、会話履歴の電話タブを確認します - サポートされているカスタムヘッダーについて、プロバイダーのドキュメントを確認します
音声なし、または片方向音声
通話は接続されるものの音声がない、または音声が一方向にしか流れない場合:
- RTPメディアストリーム用のUDPトラフィック(通常はポート10000~60000)をファイアウォールが許可していることを確認します
- RTPは動的IPアドレスを使用するため、ファイアウォールルールが特定の固定IPに制限されていないことを確認します
- RTPストリームをブロックしている可能性のあるネットワークアドレス変換(NAT)の問題を確認します
- 「必須」のメディア暗号化を使用している場合は、両方のエンドポイントがSRTPをサポートしていることを確認します
- 暗号化関連の音声問題を切り分けるため、「無効」のメディア暗号化でテストします
音声品質の問題
音声品質が低下する場合:
- ネットワークに十分な帯域幅(通話あたり少なくとも100 Kbps)があり、UDPトラフィックのレイテンシー/ジッターが低いことを確認します
- 特にUDP経路で、ネットワークの輻輳やパケット損失がないか確認します
- 両端でコーデック設定が一致していることを確認します
- メディア暗号化を使用している場合は、両方のエンドポイントがSRTP処理を効率的に処理できることを確認します
- 異なるメディア暗号化設定でテストし、品質の問題を切り分けます
BYEリクエスト送信後に通話が切断されない(481レスポンスを受信)
BYEに対する481レスポンスは通常、リクエストが通話のダイアログ状態を持たないSIPサーバーに到達したことを意味します。
これは多くの場合、最初のTCP接続がすでに閉じられ、BYEが200 OKレスポンスで返された特定のContact URIではなく、
汎用の共有アドレス(たとえばsip.rtc.elevenlabs.io)に再送信された場合に発生します。
- BYE用のTCP接続を再確立する場合は、リクエストがダイアログを処理した同じSIPサーバーに到達するよう、常にINVITEレスポンスの
Contactアドレスを送信先にしてください。 - 共有の
sip.rtc.elevenlabs.ioアドレスにBYEを送信しないでください。リクエストが別のSIPノードに到達し、481で拒否される可能性があります。
Contactヘッダーとダイアログルーティングを規定する標準的な動作については、RFC 3261 セクション8.1.1.8を参照してください。
制限事項と考慮点
- 同時通話数のサポートはサブスクリプションティアによって異なります。上限に達した際に着信者を拒否するのではなく保留にするには、通話キューを有効にしてください
- 通話録音と分析機能を利用できますが、追加設定が必要になる場合があります
- 発信機能はSIPトランクプロバイダーによって制限される場合があります
- TLSサポート:暗号化トランスポートのために、SIPトランクプロバイダーがTLS 1.2以降をサポートしていることを確認してください
- メディア暗号化:SRTPのサポートはプロバイダーによって異なります。暗号化を必須にする前に互換性を確認してください
- オーディオ形式:ElevenLabsのSIPデプロイメントは、PCMUまたはPCMA(G.711、8kHz)、またはG.722(16kHz)コーデックを使用してオーディオを送受信します。これは、直接WebSocket接続用にエージェントで設定されているオーディオ形式とは独立しています。SIPトランクシステムは、これらのコーデックのいずれかをネイティブでサポートするか、システムの要件に合わせてリサンプリングを行う必要があります
よくある質問
既存の電話番号をElevenLabsで使えますか?
はい。SIPトランキングを使用すると、既存の電話番号をポーティングせずにElevenLabsの ElevenAgentsへ直接接続できます。
ElevenLabsと互換性のあるSIPトランクプロバイダーはどれですか?
ElevenLabsは、Twilio、Vonage、RingCentral、Sinch、Infobip、Telnyx、Exotel、Plivo、 Bandwidthなど、SIPプロトコル標準をサポートするほとんどの標準的なSIPトランクプロバイダーと互換性があります。セキュリティ強化のため、TLSトランスポートとSRTPメディア暗号化をサポートしています。
セキュリティを強化するためにTLSトランスポートを使うべきですか?
はい。本番環境ではTLSトランスポートを強く推奨します。SIPシグナリングを暗号化し、通話のセキュリティを強化します。必須のメディア暗号化と組み合わせることで、通信を包括的に保護できます。有効にする前に、SIPトランクプロバイダーがTLSをサポートしていることを必ず確認してください。
トランスポートタイプの違いは何ですか?
- TCP:信頼性はありますが、シグナリングは暗号化されません - TLS:暗号化された信頼性の高いシグナリング (本番環境で推奨) - UDP:コネクションレスのシグナリング。現在は実験的機能です
UDPトランスポートは実験的機能であり、テスト専用です。本番環境や セキュリティが重要なアプリケーションでは、必ずTLSトランスポートを使用してください。
カスタムヘッダーは何に使われますか?
カスタムSIPヘッダーを使用すると、発信通話にプロバイダー固有の情報を含められます。一般的な用途には、通話ルーティング、請求コード、発信者識別、プロバイダー固有の要件への対応などがあります。
同時通話は何件までサポートされますか?
同時通話数はサブスクリプションプランによって異なります。エンタープライズプランでは通常、より多くの同時通話が可能です。上限に達すると、エージェントで通話キューイングが有効になっていない限り、着信は拒否されます。有効な場合は、空きが出るまで保留音とともに待機し、空き次第接続されます。
条件に応じて通話を別のエージェントへルーティングできますか?
はい。既存のPBXシステムのルーティングルールを使用して、それぞれ異なるElevenLabsエージェントに接続された別の電話番号へ通話を振り分けられます。
電話番号をインポートする際、先頭の+形式を一致させる必要がありますか?
はい。電話番号の形式は、SIP URIとインポートした電話番号の設定で一致している必要があります。先頭に+を付けてSIP URIを呼び出す場合(例:
sip:+19991234567@sip.rtc.elevenlabs.io:5060)、電話番号も先頭に+を付けてインポートする必要があります(例:+19991234567)。同様に、先頭に+を付けずに呼び出す場合は、電話番号も+なしでインポートしてください。形式が一致しないと、通話を正しくルーティングできません。
SIPのSRVレコード検索をサポートしていますか?
はい。ElevenLabsは、RFC 3263準拠のSIPサーバー検出用にNAPTRおよびSRVレコードを提供しています。

