はじめに
TwilioとはSMSやプッシュ通知、電話確認を自動的に行うAPIを提供しているサービスでトライアルアカウントであれば無料でテストすることが可能です。
本記事ではTwilioAPIをcurlコマンドで叩いて手持ちのスマートフォンに電話をかけて音声メッセージを送るまでの手順を記載しました。
環境情報
- curl 7.52.1 (x86_64-pc-linux-gnu)
- Twilio api_version : 2010-04-01
アカウント登録&電話番号取得・登録
以下記事を参照ください。
curlコマンドで電話をかける
以下が公式ドキュメントに記載のあるサンプルコードです。
$ EXCLAMATION_MARK='!' $ curl -X POST https://api.twilio.com/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages.json \ EXCLAMATION_MARK='!' curl -X POST https://api.twilio.com/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls.json \ --data-urlencode "Twiml=<Response><Say>Ahoy there$EXCLAMATION_MARK</Say></Response>" \ --data-urlencode "To=+15558675310" \ --data-urlencode "From=+15552223214" \ -u ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:your_auth_token
下記に沿って以下のようにコマンドを発行します。Say
の間に出したい音声メッセージを記入します。
# curl -X POST https://api.twilio.com/2010-04-01/Accounts/ACxxx/Calls.json --data-urlencode "From=+120xxxxxxxxx" --data-urlencode "Twiml=<Response><Say>Test</Say></Response>" --data-urlencode "To=+8180xxxxxxxx" -u ACxxxx:xxxx
成功すると返り値は以下で
{"answered_by": null, "price_unit": "JPY", "parent_call_sid": null, "caller_name": null, "group_sid": null, "duration": null, "from": "+1205xxxx", "to": "+8180xxxxx", "annotation": null, "date_updated": null, "sid": "CAxxxxx", "queue_time": "0", "price": null, "api_version": "2010-04-01", "status": "queued", "direction": "outbound-api", "start_time": null, "date_created": null, "from_formatted": "(205) xxxxx", "trunk_sid": null, "forwarded_from": null, "uri": "/2010-04-01/Accounts/ACxxxxx/Calls/CAxxx.json", "account_sid": "ACxxx", "end_time": null, "to_formatted": "+8180xxx", "phone_number_sid": "PNxxx", "subresource_uris": {"notifications": "/2010-04-01/Accounts/ACxxx/Calls/CAxx/Notifications.json", "recordings": "/2010-04-01/Accounts/ACxx/Calls/CAxx/Recordings.json", "feedback": "/2010-04-01/Accounts/ACxx/Calls/CAxx/Feedback.json", "payments": "/2010-04-01/Accounts/ACxx/Calls/CAxx/Payments.json", "feedback_summaries": "/2010-04-01/Accounts/ACxx/Calls/FeedbackSummary.json"}}
指定した電話番号に対して非通知設定で電話がかかってくるので応答すると
Twilioをご利用いただきありがとうございます
いずれかのダイヤルキーを押してください
とロボットのような明るい音声で聞こえ、パッドから数字を押すと男性の声で
Test
とメッセージが述べられ自動的に電話が切れます。
終わりに
試しに日本語を交えてテスト送信してみましたが、日本語部分は読まれませんでした。
SMSの際は日本語テキストを入れても届いたのでやり方があるのかもしれませんが、もしご存知の方はコメントにてお知らせいただければ助かります。
以上、ご参考になれば幸いです。