Twilioのテスト認証情報とマジックナンバー(電話番号)を使用する方法

April 16, 2018
執筆者

l46CaNeKbbE9RGUEBLoukzIoGp3K8WDP3x3nILbuG2T25tswge4paTiiiXukJN0nXO9cHdEo7K6aEggqos3dq9HSCzRT-pb3LIGs70cXKMAbiUJ8pt2xjHRy_SxBk55FmeMAi_AL

テスト認証情報とマジックナンバーを使用し、実際にSMSメッセージを送信したり、音声電話をかけたりすることなく、アプリケーションをテストします。これらのツールを使用した場合、テストは無料でレスポンスも速いため、時間とコストの節約になります。というのも、テストはTwilioサービスのみと通信する(テストはTwilioサービス内で行われ、キャリアには接続しない)からです。

次に、UNIXまたはMacコンピューターをお使いの場合は、cURLを使用してSMSメッセージを送信します。Windowsをお使いの場合はSMSメッセージの送信に関するドキュメントの説明に従い、プログラムを作成する必要があります。ドキュメントに記載されているcURLコマンドは次のとおりです。

curl -X POST 'https://api.twilio.com/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages.json' 
—data-urlencode 'To=+16501231234'  
—data-urlencode 'From=+16502223333'  
—data-urlencode 'Body=Hello there'  
-u ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:your_auth_token

16501231234をお使いの携帯電話番号に置き換え、16502223333をTwilio電話番号に置き換えます。ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXをアカウントSIDに置き換え、your_auth_tokenをTwilioアカウント認証トークンに置き換えます。どちらもTwilio Consoleダッシュボードにあります。

ご自身のアカウント情報を使用し上記のcurlコマンドを実行すると、Twilio電話番号(16502223333)から携帯電話に「Hello there」というSMSメッセージが送信されます。

次に、ご自身のアカウントSIDと認証トークンを、テストのアカウントSIDと認証トークンに変更します。テストアカウントの認証情報(SIDと認証トークン)は、マスターアカウントのConsoleの[Settings](設定)ページにあります。cURLコマンドを実行すると、次のエラーが表示されます。

--- com.twilio.exception.ApiException: The From phone number +16502223333 is not a valid.

テストアカウントの認証情報ではTwilioアカウントの電話番号にアクセスできないため、無効です。

送信者の電話番号をマジックナンバーの+15005550006に変更します。テスト認証情報とマジックナンバーを使用し、コマンドを再度実行すると、正常に実行されます。テストアカウントの認証情報を使用した場合、実際にはSMSが送信されないため、携帯電話でSMSを受信することはありません。

テスト認証情報のドキュメントページには、マジックナンバーの表が記載されています。特定のエラーメッセージを生成するナンバーや、有効であるためにエラーを生成しないナンバーがあります。たとえば、マジックナンバー+15005550001を入力すると、無効な電話番号のエラーが生成されます。ドキュメントページで「phone number is unavailable」を検索すると、表の1つが表示されます。下にスクロールし、マジックナンバーの他の表を確認してください。ドキュメントの表のサンプルを以下に示します。

Magic Phone NumberDescriptionError Code
+15005550000This phone number is unavailable.21422
+15005550001This phone number is invalid.21421
+15005550006This phone number is valid and available.No error

テスト認証情報とマジックナンバーのリストを使用し、アプリケーションのロジックパスをテストする準備が整いました。これにより、テストを高速化しながら、エラーや成功を報告する際のプログラムの信頼性と機能を向上させることができます。