新規に購入したTwilioの電話番号はすべて着信した音声電話にデフォルトのサンプル録音で自動的に応答しますが、このルーティングは簡単に変更するできます。このガイドでは、電話番号のルーティングを更新するために役立つ以下のトピックを扱います。
注意: ルーティングを更新するためには、Twilioの電話番号がすべての地域の規制に準拠している必要があります。電話番号のコンプライアンス状況を確認するには、Twilio電話番号の規制コンプライアンスレポートを確認する を参照してください。
アプリを作る
Twilioへの着信通信は、弊社のXMLベースのマークアップ言語であるTwiMLで応答するアプリケーションによって処理される必要があります。Twilioは着信時にお客様のアプリケーションに連絡し、受信したTwiMLレスポンスを、着信拒否、応答、メッセージ再生など、通話への対応方法を示す指示として使用します。
Twilioのレスポンスは、ユースケースやビジネスニーズによって異なります。Twilio Programmable Voiceの仕組みの詳細については、着信通話に応答する(英語-Twilio Docs)を参照してください。
設定のオプション
アプリの準備ができたら、Twilioがアクセスできる場所にホストする必要があります。弊社は音声通話受信時に設定されたリンクにアクセスし、お客様のアプリが応答するTwiMLコマンドの指示を処理します。アプリのホスティングについては、様々な要件に対応するために、ユーザーに様々な製品を提供しています。ここでは、最も一般的なオプションと、私たちのお勧めをご紹介します。
TwiML Bins(トゥイムルビン) は、静的なXMLベースのTwiMLレスポンススクリプトのホスティングを無料で提供します。自動メッセージの再生や他の電話番号への転送など基本的で簡易な利用用途向けにシンプルなセットアップオプションを必要とするユーザーに、このオプションをお勧めします。
Studio Flows (スタジオフロー)は、コーディング不要のフローチャートスタイルのインターフェースです。GUIをベースとしてアプリケーションを作成できます。コーディングの経験がないユーザーや、拡張性の高いホスト型通信アプリケーションを設計する必要があるユーザーにおすすめです。
Functions (ファンクション -Beta) は、Node.js TwiMLレスポンスアプリケーションのための無料ホスティングを提供します。NPMライブラリを利用するアプリケーションやAPIリクエストを行うアプリケーションなど、より堅牢なユースケースを開発するためにスケーラブルなオプションを必要とするユーザーにお勧めします。
Webhooks(ウェブフック) を利用することで、XML形式、またはヘルパーライブラリSDKのいずれかを用いてTwiMLレスポンスアプリケーションを作成し、ユーザー自身が希望するホスティングを利用することができます。プログラミング言語の制限はありません。
アプリケーションが完了したら、コンソール UI または API リクエストのいずれかを使用して、電話番号のルーティングを更新する必要があります。
コンソールから電話番号のルーティングをアップデートする
- Consoleの Active Numbers にアクセスします
- 変更が必要な電話番号をクリックします
- Scroll to the Voice & Fax セクションをスクロールして電話番号のルーティングを変更します。設定変更後 Save をクリックします
各ルーティング・オプションは、それぞれ異なるセットアップ要件があります。次の表は、最も一般的な構成での一覧です。
受信の許可 | 設定方法 | 通話着信時 | インプットもしくはドロップダウンリスト | |
TwiML Bin | 音声通話 | Webhooks, TwiML Bins, Functions, Studio, Proxy | TwiML | 以前保存されていたTwiML Bin を選択する |
Studio Flow | 音声通話 | Webhooks, TwiML Bins, Functions, Studio, Proxy | Studio Flow | 以前保存されていたStudio Flowを選択する |
Functions | 音声通話 | Webhooks, TwiML Bins, Functions, Studio, Proxy | Function | 以前保存されていたFunctionを選択する |
Webhook | 音声通話 | Webhooks, TwiML Bins, Functions, Studio, Proxy | Webhook | TwilioのアプリケーションURLを入力する |
API 経由で電話番号のルーティングをアップデートする
Twilio電話番号のルーティングは、変更したい電話番号のIncomingPhoneNumber
REST APIリソースにHTTP POSTリクエストを送信することによっても変更できます。このリクエストを行うには、以下の情報が必要です。
- Phone number SID: アップデートしたい電話番号の識別子.
- Twilio 音声App詳細: Twilioアプリ(webhook、TwiML Bin、Functionなど)のURL、またはTwiMLアプリのSID
-
規制情報 (必要に応じて): 番号が要求する アイデンティティ (
RI...
), アドレス (AD...
), もしくは規制情報 (BU...
) SID - プロジェクトの認証情報: Twilio ProjectのAccount SID と Auth Token(英語)
サンプル cURL スクリプト:
curl -XPOST https://api.twilio.com/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/IncomingPhoneNumbers/PNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.json \
--data-urlencode "VoiceUrl=http://www.mysite.com/twilio" \
--data-urlencode "BundleSid=BUXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
-u 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:your_auth_token'
この例では、電話番号PN...
のWebhookを更新して、入ってくるリクエストをwww.mysite.com/twilio
、地域の規制要件のためにID文書Bundle SID BU...
を使用します。このスクリプトを動作させるには、次の更新を行いターミナルウィンドウに貼り付けてください。
-
Line 1:該当Twilio Account SIDに変更してください。 (
ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
) 、着信電話番号のSIDを変更ください。 (PNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
). - Line 2: Twilio ウェブフックアプリのURL をアップデートしてください。
- Line 3: 必要に応じて規制情報ドキュメントをアップデートしてください。
- Line 4: Account SID と Auth Token(英語) をアップデートしてください。
その他のヘルプについては、以下のリソースを参照してください。