LiveKit との接続ガイド
LiveKit 側(外部サービス)の設定を含む、クラコールSIP trunkとの接続手順です。
公開日 更新日
- このガイドでは、クラコールSIP trunkとの接続に必要なLiveKit 側(お客様が契約された外部サービス)の設定手順もご案内します。
- 各社の画面や仕様は変わることがあります。最新の内容は、各社の公式ドキュメントをご確認ください。
LiveKit の SIP トランクを使って、お客様がご自身で契約された LiveKit に、クラコールSIP trunkをつなぐ手順です。LiveKit では、電話の通り道を「トランク」(inbound trunk と outbound trunk)で作り、着信をどのルーム(部屋)・エージェントにつなぐかを dispatch rule で決めます。
通話の流れ
着信も発信も、通話は必ずクラコールの SBC(東京・大阪)を通ります。向きによって、宛先になるアドレスが変わります。
着信日本の電話から、LiveKit へ
- 電話回線日本
- クラコールの SBC東京・大阪
- inbound trunkLiveKit の受け口(手順2)
- dispatch ruleLiveKit(手順3)
- ルーム・エージェントお客様の LiveKit
発信LiveKit から、日本の電話へ
- ルーム・エージェントsip_trunk_id を指定して発信(手順4)
- outbound trunkLiveKit(手順4)
- お客様専用のドメインクラコールの受け口
- クラコールの SBC東京・大阪
- 電話回線日本
着信は LiveKit の SIP の宛先(例:{sip_subdomain}.japan.sip.livekit.cloud)へ、発信はお客様専用のドメイン(例:xyz.customer.clocall.jp)へ向かいます。発信では、address にお客様専用のドメインを入れた outbound trunk を指定することで、クラコールを通ります。
どの接続先にも共通のルール(認証・電話番号の形式・音声の形式など)は、接続の基本ルールをご覧ください。
つなぐ手順
「0 はじめに用意するもの」をそろえてから、次の5つの手順(1〜5)で進めます。LiveKit では、inbound trunk、dispatch rule、outbound trunk の順に作ります。各手順には、作業者(クラコール/お客様)を記載しています。
-
0お客様
はじめに用意するもの
- クラコールSIP trunk(BYOC 接続)のご契約
- LiveKit のアカウント(お客様がご自身で契約されたもの)と、LiveKit の CLI(
lk) - ご利用になる電話番号(+81 から始まる E.164 形式)
-
1
クラコール ⇄ お客様お申し込みと、接続に使う情報のやりとり
お申し込み後に、クラコールから接続に使う情報をお渡しします。お客様からは、LiveKit 側の情報をお知らせください。
クラコールからお渡しする情報
- お客様専用のドメイン(例:
xyz.customer.clocall.jp。実際のドメイン名はお申し込み後にお知らせします) - クラコールの SBC の IP アドレス(東京・大阪。すべて許可してください)
- ご利用いただく電話番号(+81 から始まる E.164 形式)
- 使える方式:UDP・TCP(暗号化の有料オプションでは TLS・SRTP)
- 音声の形式:G.711 μ-law
(PCMU)
お客様からお知らせいただく情報
- LiveKit の SIP ドメイン(SIP URI。
{sip_subdomain}.japan.sip.livekit.cloudの形。手順2で確認します) - 使う方式とポート番号(UDP・TCP、または TLS)
- 暗号化(TLS・SRTP)の有料オプションを使うかどうか
- ご利用になる電話番号と、使う方向(着信・発信・両方)
お問い合わせの本文に「BYOC 接続」とお書きのうえ、お送りください。BYOC では、着信・発信とも、INVITE の宛先(Request-URI)・To・From の電話番号を +81 から始まる E.164 形式にしてください(例:03-1234-5678 →
+81312345678)。- お客様専用のドメインには複数の IP アドレス(東京・大阪)が登録されています。返ってくるアドレスはすべて使えるようにしてください。
- SIP の REFER(通話の転送)には、クラコールは対応していません(接続の基本ルール)。LiveKit の
TransferSIPParticipant(SIP の REFER による転送)は、クラコール経由では使えません。
- お客様専用のドメイン(例:
-
2
お客様(LiveKit)着信の設定:クラコールの SBC から受けるトランクを作る(inbound trunk)
LiveKit の
inbound trunk(着信用)は、クラコールの SBC からの着信を LiveKit が受ける入口です。次の内容のファイルを作り、lkコマンドで登録します。inbound-trunk.json
{ "trunk": { "name": "clocall inbound", "numbers": ["+81312345678"], "allowed_addresses": ["203.0.113.10", "203.0.113.11", "203.0.113.20"] } }ターミナル
# クラコールの SBC からの着信を受ける inbound trunk を登録します lk sip inbound create inbound-trunk.json例の中の値は、次のように置き換えてください。
numbers(必須):ご利用のクラコールの電話番号です。+81 から始まる E.164 形式で入れます。このトランクは、この一覧の番号への着信だけを受けます(例の+81312345678は例の番号です)。allowed_addresses:手順1の SBC の IP アドレスを、すべて入れることをおすすめします(IP アドレスまたは CIDR のリストです。例の203.0.113.10などは例の値です)。この項目を使うには、お客様のプロジェクトで有効にしてもらう必要があります。LiveKit のサポートへお問い合わせください。- クラコールは、ユーザー名・パスワードによる認証は使いません。このため、着信の認証には
allowed_addressesを使うのがおすすめです。 - 音声の形式は G.711 μ-law
(PCMU)です。LiveKit の SIP の API で指定できるコーデック名には PCMUが含まれています。 - 作ったトランクの ID は、
lk sip inbound listか、LiveKit Cloud の画面のInboundで確認できます(次の手順で使います)。
日本リージョンに固定した LiveKit の SIP の宛先({sip_subdomain}.japan.sip.livekit.cloud)を、クラコールへお知らせください。{sip_subdomain}の部分は、LiveKit のプロジェクト ID から先頭のp_を除いたものです(例:sip:bwwn08a2m4o.sip.livekit.cloudならbwwn08a2m4o)。クラコール側で、着信の宛先に設定します。参考(公式):LiveKit 公式ドキュメント:SIP inbound trunk(英語)
このページに、lk sip inbound createの例と、numbers・allowed_addressesの説明があります。
LiveKit 公式ドキュメント:SIP APIs(英語)
このページのCreateSIPInboundTrunkの項に、numbers・allowed_addressesの説明があります。
LiveKit 公式ドキュメント:Region pinning for telephony(英語)
このページのRegion-based endpoint formatの項に、japanを含む宛先の形があります。 -
3
お客様(LiveKit)着信をルーム・エージェントにつなぐ(dispatch rule)
inbound trunkだけでは、着信は LiveKit に入るだけで、どこにもつながりません。dispatch ruleで、かけてきた電話ごとにどのルームにつなぐか、どのエージェントを呼ぶかを決めます。次の内容のファイルを作り、登録します。dispatch-rule.json
{ "dispatch_rule": { "rule": { "dispatch_rule_individual": { "room_prefix": "call-" } }, "name": "clocall dispatch rule", "trunk_ids": ["<inbound-trunk-id>"], "room_config": { "agents": [{ "agent_name": "inbound-agent" }] } } }ターミナル
lk sip dispatch create dispatch-rule.json例の中の値は、次のように置き換えてください。
dispatch_rule_individual:電話ごとに別のルームを作ります(ルームの名前はroom_prefixで始まります)。全員を1つのルームにつなぐ場合は、"dispatch_rule_direct": {"room_name": "open-room"}の形にします。trunk_ids:手順2で作った、クラコール用のinbound trunkの ID に置き換えます。省くと、すべての着信トランクに当てはまります。agent_name:呼び出すエージェントの名前です。エージェントを使わず、ルームだけ作る場合は、room_configの部分は不要です。
参考(公式):LiveKit 公式ドキュメント:SIP dispatch rule(英語)
このページに、lk sip dispatch createの例と、dispatch_rule_individual・dispatch_rule_direct・trunk_ids・room_configのagentsの説明があります。 -
4
お客様(LiveKit)発信の設定:クラコール向けの outbound trunk を作り、それを指定してかける
LiveKit の
outbound trunk(発信用)は、LiveKit からクラコールへ電話をかける出口です。addressにお客様専用のドメインを入れることで、発信がクラコールの SBC を通ります。次の内容のファイルを作り、登録します。outbound-trunk.json
{ "trunk": { "name": "clocall outbound", "address": "xyz.customer.clocall.jp", "destination_country": "jp", "numbers": ["+81312345678"], "transport": "SIP_TRANSPORT_UDP" } }ターミナル
# クラコール(お客様専用のドメイン)へ発信する outbound trunk を登録します lk sip outbound create outbound-trunk.jsonaddress(必須):お客様専用のドメインを、ホスト名だけで書きます(sip:は付けません)。xyz.customer.clocall.jpは例です。手順1でお渡しするドメインに置き換えてください。destination_country(必須):2文字の国コードです。日本はjpです。numbers(必須):発信者番号(caller ID)として使うお客様のクラコールの電話番号を、+81 から始まる E.164 形式で入れます(例の+81312345678は例の番号です)。発信者番号は SIP の From ヘッダーに入ります。P-Asserted-Identity には対応していません。transport:通信方式です。標準ではSIP_TRANSPORT_UDPまたはSIP_TRANSPORT_TCPにします(SIP_TRANSPORT_AUTOは自動判定です)。- LiveKit の公式ドキュメントの発信トランクの例には、
--auth-user・--auth-passを付けるコマンドがあります。これは、ユーザー名・パスワードを使う他社の回線向けです。クラコールはユーザー名・パスワードによる認証は使わないので、付けないでください。認証は、お客様専用のドメインと発信者番号で行います。 - 作ったトランクの ID(
outbound trunkの ID)は、次の発信で使います。
発信するときは、
sip_trunk_idに上のoutbound trunkの ID を指定します。これを指定することで、発信がクラコール経由になります。sip-participant.json
{ "sip_trunk_id": "<outbound-trunk-id>", "sip_number": "+81312345678", "sip_call_to": "+81355550000", "room_name": "my-sip-room", "wait_until_answered": true }ターミナル
# sip_trunk_id にクラコール向けの outbound trunk を指定して発信します lk sip participant create sip-participant.jsonsip_trunk_id:上で作った、クラコール向けのoutbound trunkの ID に置き換えます。sip_number:発信者番号(caller ID)です。お客様のクラコールの番号を、outbound trunk のnumbersに入れたものと同じ +81 から始まる E.164 形式で入れます。省くとトランクに登録した番号が使われますが、どの番号で発信するかがわかるよう指定をおすすめします。sip_call_to:かける相手の電話番号です。+81 から始まる E.164 形式で入れます(例の+81355550000は例の番号です)。room_name:電話をつなぐルームの名前です。wait_until_answered:trueにすると、相手が電話に出るまでコマンドが待ちます。
発信者番号の確認(番号認証 / caller ID verification)を求められたら
プラットフォームから番号の確認(番号への着信による認証)を求められたら、先にクラコールへご連絡ください。
参考(公式):LiveKit 公式ドキュメント:SIP outbound trunk(英語)
このページに、lk sip outbound createの例と、addressの説明があります。
LiveKit 公式ドキュメント:Make outbound calls(英語)
このページのStored outbound trunkの項に、sip-participant.json の例とlk sip participant createがあります。
LiveKit 公式ドキュメント:SIP APIs(英語)
このページのCreateSIPOutboundTrunkの項にdestination_country・numbers・transportの説明が、CreateSIPParticipantの項にsip_trunk_id・sip_call_to・room_nameの説明があります。 -
5
クラコール ⇄ お客様つながることを確認する
- 着信:クラコールの電話番号へ携帯電話などからかけ、手順3で決めたルーム(またはエージェント)に電話が届くことを確認します。
- 発信:手順4の方法で携帯電話などの日本の番号へかけ、電話が鳴ること、相手に発信者番号(+81 から始まる E.164 形式)が表示されることを確認します。
- 両方の向きで、相手の声が聞こえることを確認します。
うまくつながらないときは、うまくつながらないときをご覧ください。
通信の暗号化(有料オプション)
通信の暗号化(TLS・SRTP)は有料オプション(料金はお問い合わせください)です。標準ではご利用いただけません。お申し込みの場合の対応は次のとおりです。
- TLS:TLS 1.3・1.2 に対応しています。
- SRTP:RFC 3711 の RTP/SAVP です。RFC 5124 の RTP/SAVPF には対応していません。
- SRTP の暗号方式:AES_CM_128_HMAC_SHA1_80
- LiveKit の着信(TLS):暗号化をお申し込みの場合、クラコールへお知らせいただく SIP の宛先は、末尾に
;transport=tlsを付けた形にします(例:sip:{sip_subdomain}.japan.sip.livekit.cloud;transport=tls)。 - LiveKit の発信(TLS・SRTP):
outbound trunkのtransportをSIP_TRANSPORT_TLSに、mediaのencryptionをSIP_MEDIA_ENCRYPT_ALLOW(使えれば暗号化)またはSIP_MEDIA_ENCRYPT_REQUIRE(必須)にします(従来のmedia_encryptionは、公式ドキュメントで非推奨とされています)。lkは最新版をお使いください。
outbound-trunk-tls.json
{
"trunk": {
"name": "clocall outbound (encrypted)",
"address": "xyz.customer.clocall.jp",
"destination_country": "jp",
"numbers": ["+81312345678"],
"transport": "SIP_TRANSPORT_TLS",
"media": {
"encryption": "SIP_MEDIA_ENCRYPT_ALLOW"
}
}
}
LiveKit の着信で SRTP を使うには、inbound trunk の media の encryption を SIP_MEDIA_ENCRYPT_ALLOW(使えれば暗号化)または SIP_MEDIA_ENCRYPT_REQUIRE(必須)にします。標準では、メディアの暗号化は無効です。次の内容で、手順2のトランクを作り直します(標準では使わないでください)。lk は最新版をお使いください。
inbound-trunk-srtp.json
{
"trunk": {
"name": "clocall inbound (encrypted)",
"numbers": ["+81312345678"],
"allowed_addresses": ["203.0.113.10", "203.0.113.11", "203.0.113.20"],
"media": {
"encryption": "SIP_MEDIA_ENCRYPT_ALLOW"
}
}
}
LiveKit の SRTP の暗号方式には、AES_CM_128_HMAC_SHA1_80 が含まれています(クラコールの暗号方式と同じです)。
このページに、TLS と SRTP の設定の説明と、トランクの JSON の例があります。
LiveKit 公式ドキュメント:SIP APIs(英語)
このページの
SIPMediaConfig の項に、encryption の値があります。Secure trunking のページの
Supported SRTP cipher suites の項に、SRTP の暗号方式の一覧があります。うまくつながらないとき
- 発信がクラコールを通らない:
sip_trunk_idに、addressがお客様専用のドメインのoutbound trunkの ID を入れているか確認してください(手順4)。 - 着信は届くが、ルームやエージェントにつながらない:
dispatch ruleを作ったか、trunk_idsが手順2のトランクの ID か、確認してください(手順3)。 - 着信が届かない:
allowed_addressesにクラコールの SBC の IP アドレスをすべて入れたか、この項目をプロジェクトで有効にしてもらったか、確認してください(手順2)。 - 発信できない:
addressにお客様専用のドメインを、ホスト名だけで正しく書いたか確認してください(手順4)。 - 発信が拒否される:宛先の番号と発信者番号が、+81 から始まる E.164 形式か、発信者番号が From ヘッダーに入っているか、確認してください。
- 着信は届くが声が聞こえない:
;transport=tlsやtransport・mediaのencryptionを使っている場合は、暗号化の有料オプションをお申し込みか、確認してください。 - 上を確認してもつながらない場合は、お問い合わせの本文に「BYOC 接続」と書き、つながらない向き(着信・発信)と、試した時刻をお知らせください。
LiveKit のマニュアル(英語)との用語対応
LiveKit のマニュアルで探すときの用語は、次のとおりです。
| このページ | LiveKit のマニュアル |
|---|---|
| 着信用のトランク(trunk) | inbound trunk(コマンドは lk sip inbound create) |
| 着信をどのルーム・エージェントにつなぐかの設定 | dispatch rule(コマンドは lk sip dispatch create) |
| 発信用のトランク | outbound trunk(コマンドは lk sip outbound create) |
| 許可リスト(allow list / ACL) | allowed_addresses |
| お客様の電話番号(着信で受ける番号、発信者番号(caller ID)として使う番号) | numbers |
| 発信先のアドレス | address |
| 発信先の国 | destination_country |
| 日本リージョンの宛先 | Region pinning{sip_subdomain}.) |
| 通信方式(UDP・TCP・TLS) | transport |
| 暗号化(TLS・SRTP)の切り替え | media の encryption |
- 記載の社名・サービス名は各社の商標または登録商標です。クラコールは各社と提携・協業しておらず、各社から推奨・承認・認定を受けているものではありません。
- クラコールはAI機能を提供するものではありません。LiveKit の利用条件・料金・動作は同社の定めによります。
- 最終確認日:2026.10.23(各社の公式ドキュメントを確認した日)
- 掲載内容は最終確認日時点の公開情報に基づくもので、各社の仕様・条件の変更により変わることがあります。動作・互換性・継続的な利用を保証するものではありません。


