新規に購入したTwilioの電話番号はすべて、受信したSMSおよびMMSメッセージにデフォルトのサンプルメッセージで自動的に応答しますが、この設定(ルーティング)は簡単に変更することが可能です。このガイドでは、電話番号のルーティングを更新するために役立つ以下のトピックを扱います。トピックをクリックすると、この情報へ直接ジャンプします。
注: 電話番号の設定を更新するためには、Twilioの電話番号がすべての地域の規制に準拠している(英語)必要があります。電話番号のコンプライアンスステータスの判断については、Twilio電話番号の規制コンプライアンスレポートを見るを参照してください。
Appを作成する
Twilioへの着信通信は、弊社のXMLベースのマークアップ言語であるTwiMLで応答するアプリケーションで処理される必要があります。Twilioは、受信した通信をお客様のアプリケーションに連絡し、受信したTwiMLレスポンスを、メッセージにどのように応答するかを示す指示として使用します。
Twilioのレスポンスは、お客様のユースケースとビジネスニーズによって異なります。Twilio Programmable Messagingの仕組みの詳細については、チュートリアル : SMSおよびMMSメッセージの受信と返信(英語)を参照してください。
注: 特定のメッセージをブロックすることはできませんが、Twilio番号へのすべての着信メッセージを無視することは可能です。詳細については、Twilioの電話番号に着信するSMSをブロックする方法はありますか?
自動応答なしでメッセージを受信するための電話番号の設定については「応答なしでSMSおよびMMSメッセージを受信する英語)」を参照してください。自動応答なしでメッセージを受信するための電話番号の設定については「SMSおよびMMSメッセージを自動応答なしで受信する(英語)」を参照してください。
設定オプション
アプリの準備ができたら、Twilioがアクセスできるオンラインに掲載する必要があります。弊社は受信した通信に連絡を取り、お客様のアプリが応答するTwiMLコマンドの指示を処理します。アプリのホスティングについては、さまざまな要件に対応できるよう、ユーザーにさまざまな製品を提供しています。ここでは、最も一般的なオプションと、私たちのお勧めをご紹介します。
TwiML Bins は、静的なXMLベースのTwiML応答スクリプトのための無料のホスティングをユーザーに提供します。静的な自動返信や他の電話番号への転送など、基本的なユースケースのためのシンプルなセットアップオプションを必要とするユーザーに最適です。
Studio Flows は、コーディング不要のフローチャートスタイルのインターフェースでアプリケーションを作成できます。コーディングの経験がないユーザーや、拡張性のあるホスト型通信アプリケーションを設計する必要があるユーザーに最適です。
Functions はNode.jsを利用してTwiMLレスポンスアプリケーションのホスティングを無料で提供する機能です。NPMライブラリを利用するアプリケーションやAPIリクエストを行うアプリケーションなど、より堅牢なユースケースを開発するためにスケーラブルなオプションを必要とするユーザーに最適です。
Webhooks を利用することにより、ユーザーはTwilioの着信メッセージを自分のホストしているWebアプリケーションで受信できます。メッセージが到着すると、ユーザーは自由に情報を保存または処理でき、XML形式のTwiMLまたは弊社の各種言語向けヘルパーライブラリSDKの1つからメッセージに応答できます。上記Twilioが提供するプラットフォーム外でアプリケーションを作成しているユーザーに最適です。
アプリケーションの準備が完了しましたらコンソール または APIリクエストのいずれかを使用して、電話番号のルーティングを更新する必要があります。
コンソールから電話番号の設定を変更する
- コンソールからActive Numbers にアクセスします
- 設定変更をする電話番号をクリックします
- Scroll to the Messaging セクションまでスクロールし、電話番号の設定を変更します。その後Saveをクリックし、変更を確定します。
各ルーティング・オプションは、それぞれ異なるセットアップ要件があります。次の表は、最も一般的な構成での選択内容です。
CONFIGURATION WITH で選択する値 | A MESSAGE COMES INで選択する値 | 入力もしくはドロップダウン | |
TwiML Bin | Webhooks, TwiML Bins, Functions, Studio, or Proxy | TwiML | 以前に保存したTwiML Binを選択 |
Studio Flow | Webhooks, TwiML Bins, Functions, Studio, or はProxy | Studio Flow | 以前に保存したStudio Flowを選択 |
Functions | Webhooks, TwiML Bins, Functions, Studio, or Proxy | Function | 以前に保存したFunctionを選択 |
Webhook | Webhooks, TwiML Bins, Functions, Studio, or Proxy | Webhook | TwilioアプリケーションのURLを直接入力 |
Proxy | Webhooks, TwiML Bins, Functions, Studio, or はroxy | Proxy | Proxy Serviceを選択 |
電話番号の設定ををAPI経由で行う
Twilio電話番号の設定は、変更したい電話番号のIncomingPhoneNumber
EST APIリソースにHTTP POSTリクエストを送信することによっても変更できます。このリクエストを行うには、以下の情報が必要です。
- 電話番号SID: アップデートしたい電話番号に割り当てられた PN SID (ロングコード、通常の電話番号群) もしくは SC SID (ショートコードSID)
- Twilioメッセージングアプリの詳細: TwilioアプリケーションのURL (webhook, TwiML Bin, Function 等.) もしくは TwiML App SID
-
規制情報(必要な場合): 規制情報(英語)が必要な場合は、アイデンティ (
RI...
), アドレス (AD...
), もしくはバンドル (BU...
) SID - プロジェクトの認証情報: Account SID および Auth Token(英語)
cURL スクリプトの例:
curl -XPOST https://api.twilio.com/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/IncomingPhoneNumbers/PNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.json \
--data-urlencode "SmsUrl=http://www.mysite.com/twilio" \
--data-urlencode "BundleSid=BUXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
-u 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:your_auth_token'
この例では、電話番号PN...
のWebhookを更新して、入ってくるリクエストをwww.mysite.com/twilio
、地域の規制要件のためのBundle SID BU...
を使用します。このスクリプトを動作させるには、必要事項の更新を行い、ターミナルウィンドウに貼り付けてください。
-
1行目: Twilio Account SID (
ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
)と 着信電話番号のSID (PNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
) をアップデートします。 - 2行目: Twilio webhook アプリケーションのURL をアップデートします。
- 3行目: 必要に応じて規制情報のSIDの部分をアップデートします。
- 4行目: Account SID および Auth Token をアップデートします。
その他追加情報を記載致します。