Twilio CLIでコマンドラインから電話をかける方法

September 24, 2021
レビュー担当者

Twilio CLIでコマンドラインから電話をかける方法

この記事はTwilio Developer VoicesチームのAshley Boucherこちらで公開した記事(英語)を日本語化したものです。

Twilio Programmable Voiceはソフトウェアアプリケーションで音声通話できる機能です。本稿では、Programmable Voiceを利用して、Twilio CLIから直接音声通話する方法をご紹介します。

以下ご紹介する内容は、米国の電話番号の購入方法が含まれます。現在、日本の電話番号購入するにはTwilioコンソールから各種確認書類を提出していただく必要があります。このため、コマンドラインのみを使って日本の電話番号を購入することはできません。詳しくは、Help Centerの「日本 - 電話番号規制情報」を参照してください。日本番号の購入には時間がかかるため、動作を確かめたい。という場合はぜひ記事に沿って米国番号を試してみてください。

必要なツール

環境の設定

まずTwilio CLIがインストールされていることを確認しましょう。npmなどのパッケージマネージャーを使ってインストールします。ターミナルから、以下のコマンドを実行してください。

npm install twilio-cli -g


Twilio CLIがインストールされたら、以下のコマンドを実行してログインします。

twilio login

このコマンドを実行すると、Account SIDAuth Tokenの入力が求められます。これらの情報は、Twilio Consoleのダッシュボードで確認できます。

ターミナルでAccount SIDとAuth Tokenを入力する

ログインできたら次に進みましょう。

コマンドラインからTwilioの電話番号を購入する

Twilio CLIには多くの機能が備わっています。機能を試すには、ターミナルから次のコマンドを実行してください。

twilio

Twilio CLIで利用可能なすべての機能の一覧が表示されます。

twilio api:coreコマンドを実行すると、Twilio CLIで利用できるすべてのコアAPIツールが表示されます。この記事ではこれらのツールに焦点を当てていきます。

電話番号を購入するには、2つのステップを踏む必要があります。まず、以下のコマンドを実行し、利用可能な電話番号のリストを表示します。このチュートリアルでは米国の番号を購入するので、国コードUSを使用しています。

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

 電話番号のリストが表示されます。以下のように市外局番を指定することで、このリストの絞り込みができます。

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

リストから希望する番号を選択し、コピーしてください。次に、電話番号を購入します。コピーした番号を、以下のコマンドの{購入したい電話番号}にペーストし、実行してください。

twilio api:core:incoming-phone-numbers:create --phone-number "{購入したい電話番号}"

これで、Twilioの電話番号が購入できました。

TwiML Binを作成する

TwiMLはTwilioが定義したタグで拡張されたXMLドキュメントを使用するマークアップ言語です。Twilioの電話番号から発信すると、Twilioは電話番号に紐付けられたURLを検索し、そのURLにリクエストを送信します。URLにTwiMLが含まれている場合、TwilioはTwiMLの指示に従った処理を行います。

TwiMLは直接TwiML Binでホストできます。Twilio コンソールのTwiML Binsに移動してください。

お使いのTwilio Consoleのバージョンにより、コンソール画面の表示が異なる場合があります。

新しいBinを作成するには、Create new TwiML Binをクリックしてください。もしすでに登録済みのTwiML Binが存在する場合は、(+)をクリックしてください。Binを設定するためのページが表示されます。


TwiML Binのページ

「cli-call」のような識別しやすい名前をBinのFRIENDLY NAMEに入力してください。次に、以下のTwiMLをTWIMLにペーストしてください。

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Say>Ahoy, friend!</Say>
</Response>

本稿の後半で、Twilio CLIを使ってこのTwiMLと新しい電話番号を紐付けます。紐付けが完了したのち、受信者が電話に出ると「Ahoy, friend!」の音声合成メッセージが流れます。

Createをクリックします。ページが更新され、ページ上部のPropertiesの下にSIDURLが表示されます。URLをクリップボードにコピーしてください。

コマンドラインから電話をかける

これでコマンドラインから電話をかける準備ができました。

ターミナルで以下のコマンドを、次のとおりにあなたの情報に置き換えて実行してください。

  • –fromの値をTwilioの電話番号に置き換えてください。
  • –toの値をTwilioの電話番号から電話を着信させたい電話番号に置き換えてください。
  • –urlの値を、先ほどのTwiML BinからコピーしたURLに置き換えてください。
twilio api:core:calls:create \
--from "{Twilioの電話番号}" \
--to "{着信させたい電話番号}" \
--url "https://handler.twilio.com/twiml/XXXXXXXXX"

いずれの電話番号もE.164形式で入力してください。

問題なく発信すると、–toに指定した電話番号に着信します。電話に出ると「Ahoy, friend!」のの音声合成メッセージが流れます。

これで、Twilio CLIを使って電話をかけることができました。この方法で、キーボードだけで仕事に遅刻することを同僚に知らせることができます。テキストを送るよりも簡単かは分かりません。ただ、この方法の方が楽しいことは確かです!

Ashleyは、TwilioブログのJavaScriptエディターです。Ashleyと協力し、Twilioにテクニカルストーリーを紹介するには、Twitterで@ahl38までご連絡ください。TwitterでAshleyが見つからない場合は、どこかのパティオでコーヒーを飲んでいることでしょう(ワインの時間かも)。