ヤマムギ

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

  関連記事

百聞は一見にしかず!AWSセルフペースラボの無料ラボ!

※2019年5月12日現在に試してみた記録です。 AWSセルフペースラボとは A …

AWS Code Commitをプライベートリポジトリとして使う

GitHubでもいいんですが、アクセスキーとかパスワードとかコンフィグ系で書いて …

特定AWSアカウント特定リージョンのSNSトピックを削除するLambda(Python)

やりたいこと 特定アカウント内特定リージョン内のSNSトピックを全部削除したいで …

Amazon API GatewayをLambda(Python)で削除する

やりたいこと 特定のAWSアカウント、特定のリージョン内のAPI Gateway …

AWS EC2 Amazon Linux にEC-CUBE3をnginx+MySql環境へインストール(手順検証中)

EC2インスタンスを作成する 少し古い記事で恐縮ですが試したい事があるのでAWS …

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

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

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー」を執筆いたしました

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー」という本の第 …

AWS Summit 2016 Tokyoに参加してきました (前日 ~ Day1)

AWS Summit 2016 Tokyoにて、セッション聴講、ブース展示拝見、 …

AWS Organizationsからアカウントを新規作成してみて

AWS Organizationsでアカウントを新規作成することがありましたので …

PyCharmにAWS Tool kitをインストールしてサンプルのLambda関数をデプロイして実行しました

この記事はJetBrainsIDE Advent Calendar 2018に参 …