Twilio CLIを使用してTwilio電話番号を登録し、SMSを送信する方法

May 14, 2021
執筆者
Maciej Treder
寄稿者
Twilio の寄稿者によって表明された意見は彼ら自身のものです
レビュー担当者

テキスト対応デバイスは45億台以上あります。これにより、今後の予定、特別なイベント、最新ニュース、SMSを介した商業プロモーションについて、人々に通知できる大きな機会が生まれています。プログラムを使用してSMSメッセージを送信することにより、多くの人にほぼ同時にリーチできます。Twilio Programmable SMSを使用すると、ご自身の仮想電話番号を登録し、世界中にSMSメッセージを送信できます。

このチュートリアルでは、Twilio CLIのセットアップ方法、電話番号の登録方法、新しい番号を使用してSMSを送信する方法について説明します。

コンプライアンスに関する重要なお知らせ: SMSメッセージの利用については、国によりルールが異なります。メッセージ送信先国のルールについては、Twilio利用規定のSMS向けガイドラインをご確認ください。

必要条件

このチュートリアルで説明するプロジェクトを完成させるには、次のツールとリソースが必要です。

  • Twilioアカウント – このリンクから無料でサインアップすると、通常版のアカウントにアップグレードする際に利用できる$10のクレジットを進呈します。
  • Twilio CLI – TwilioコマンドラインインターフェイスにはNode.jsとnpmが必要です。これらはNode.jsとともにインストールされます。

Twilio電話番号を取得する

Twilio SMSメッセージはTwilio電話番号を使用して送信されます。この電話番号により、100か国以上の市内・国内通話、モバイル、トールフリーの電話番号をすぐに利用できます。開発には、使いやすいAPIを1つ使用するだけです。トライアルアカウントの一部として、Twilio電話番号を無料で取得できます。

Twilioアカウントを作成したら、Twilio CLIを使用して電話番号を取得できます。

注記: 以前にCLIをインストールしている場合は、次のコマンドを実行し、最新バージョンがインストールされていることを確認します。

npm install -g twilio-cli

Twilio認証情報を環境変数として保存している場合、Twilio CLIは自動的にその認証情報を使用します。そうでない場合は、次のコマンドによりログインする必要があります。

twilio login

このコマンドを実行すると、アカウントSID認証トークンの入力が求められます。どちらもTwilio Consoleで利用できます。

登録可能な電話番号を一覧表示するには、次のコマンドを使用します。必要に応じて、「US」を適切なISO 3166 alpha-2の国コードに置き換えてください。

twilio api:core:available-phone-numbers:local:list --country-code US

次の出力のようなリストが表示されます。

Phone Number  Region  ISO Country  Address Requirements
+13852101305  UT      US           none                
+14077922414  FL      US           none                
+16033712156  NH      US           none                
+16036367116  NH      US           none                
+18312751816  CA      US           none                
+14693316717  TX      US           none                
+18312751822  CA      US           none    

リストからいずれかの番号をコピーし、以下を使用してTwilioアカウントに登録します。

twilio api:core:incoming-phone-numbers:create --phone-number="+13852101305"

登録に成功すると、次のメッセージが表示されます。

SID                                 Phone Number  Friendly Name 
PN3ef900000000000000000000000000d9  +13852101305  (385) 210-1305

登録が完了すると、電話番号を使用できるようになります(CLIまたはTwilio Consoleを使用してリリースするまで)。電話番号に関連付けられているSIDはユーザーシークレットであり、安全に処理する必要があります。

番号がアカウントに正常に追加されたことを確認するには、Twilio CLIを使用しテストメッセージを送信します。次のコマンドを実行し、プレースホルダー値をTwilio電話番号とE.164形式の個人用SMS対応番号に置き換えます。

twilio api:core:messages:create --from <your-twilio-phone-number> --to <SMS-receiver-phone-number> --body "Hello world"

注記: トライアルアカウントでは、以前にアカウントに登録した電話番号にのみメッセージを送信できます。Twilioアカウントのサインアップに使用したSMS対応の電話番号が、最初に登録した番号です。

APIは、SMSメッセージが正常に受信され、送信のキューに追加されたことを示す、次の出力のようなレスポンスを返します。

SID                                 From          To            Status  Direction     Date Sent
SM4a447328e80a43ceb8e61dda9f3d4cb6  +13852101305  +16463974810  queued  outbound-api  null  

すぐにご利用の携帯電話にSMSが送信されます。

携帯電話のロック画面とSMSメッセージ

次のCLIコマンドを使用し、メッセージ作成要求のステータスを確認できます。

twilio api:core:messages:fetch --sid SM4a447328e80a43ceb8e61dda9f3d4cb6

次のようなレスポンスが表示されます。

SID                                 From          To            Status     Direction     Date Sent                    
SM4a447328e80a43ceb8e61dda9f3d4cb6  +13852101305  +16463974810  delivered  outbound-api  Mar 13 2020 14:17:20 GMT+0100

メッセージが配信されない場合は、Twilio Consoleのステータスログを使用して問題を特定できます。Twilioトライアルアカウントを使用している場合は、登録された電話番号に送信していることを確認してください。

まとめ

本投稿では、Twilio CLIをインストール、セットアップする方法と、Twilio電話番号を取得する方法を学習しました。この番号は、Programmable SMSなどのTwilio製品の一部で使用するために必要なものです。また、Twilio CLIを使用し、世界中のSMS対応番号にSMSを送信する方法も説明しました。

その他のリソース

Maciej Treder氏は、Akamai TechnologiesのSenior Software Development Engineerです。国際会議のスピーカーを務め、@ng-toolkitの作者でもあります。詳しくは、https://www.maciejtreder.comをご覧ください。ご連絡をいただく際は、contact@maciejtreder.com、@maciejtreder(GitHub)、Twitter、StackOverflow、LinkedInからお願いいたします。

この投稿はGabriela Rogowska氏の協力によるものです。