ヤマムギ

growing hard days.

*

TwilioからのリクエストをAPI Gateway+LambdaでTwimlを返して処理する

   


twilio-apigateway

Twilioで着信した時のリクエスト先としてTwimlをWebサーバやS3で用意するのですが、これをAPI Gateway+Lambdでサーバーレスで処理してしまうケースです。
API Gatewayの設定でややはまってしまいました。

Twilio側の設定

電話番号を取得して、[A CALL COMES IN]にAPIのURLをGETで設定するのみです。

API Gateway側の設定

統合リクエスト

本文マッピングテンプレートを追加します。

  • Content-Type : application/json

統合レスポンス

本文マッピングテンプレートを追加します。

例えばlambdaの戻り値のjsonを下記とした場合

本文マッピングテンプレートはこのようにして音声ファイルとその先のリダイレクト先jsonから変換します。
- Content-Type : application/xml

メソッドレスポンス

200のレスポンスモデルに追加します。

  • コンテンツタイプ:application/xml
  • モデル:Empty

以上でAPI GatewayへのリクエストでTwimlが返って、Twilioの着信をトリガーに意図した応答が出来るようになりました。


最後までお読みいただきましてありがとうございました!

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , , ,

ad

ad

  関連記事

Rocket.ChatにAPIで投稿するテスト(Postman)

トレーニング期間中で一時利用するチャットが欲しいなあと思い、Rocket.Cha …

MySQL WorkbenchからRDSに接続する

MySQL WorkbenchからAWS RDSのMySQLに接続するために、「 …

[事前準備] JAWS-UG 関西IoT専門支部「マクニカkibo + AWS IoTハンズオン」

来る12/19(土)の JAWS-UG 関西IoT専門支部第一回勉強会「マクニカ …

kintoneに登録されたアカウントの電話番号にGoogleカレンダーの予定をAmazon Pollyが読み上げてTwilioから電話でお知らせする(AWS Lambda Python)

Google Calendar Twilio Reminder Googleカレ …

AWSアカウント内のCloudWatchアラームを削除する

やりたいこと 特定アカウント特定リージョン内のCloudWatdchアラームを全 …

API GatewayをトリガーにしたときのLambdaリソースベースポリシー

先日、SwaggerからAPI Gatewayを作ったときに、API Gatew …

「Fin-JAWS 第14回 Fin人類育成計画」で話させていただきました!

「Fin-JAWS 第14回 Fin人類育成計画」で話させていただきました。 久 …

S3オブジェクトロックを試しました

S3オブジェクトロックが必要になる要件に今のところ、出会ってないのでまだ設定した …

AWS APIリクエストにPostmanで署名を作成する

新年明けましておめでとうございます! 署名バージョン4 「AWSはマネジメントコ …

ParquetフォーマットのデータにS3 Select SQLを実行する

RDSスナップショットのS3エクスポート結果確認で出力したデータが、S3にPar …