ヤマムギ

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の着信をトリガーに意図した応答が出来るようになりました。


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

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

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

 - AWS , , ,

  関連記事

執筆環境(PyCharm, CodeCommit, CodePipeline, S3, Lambda, 署名付きURL)

2018年から、年に1回ぐらい商業本の執筆をさせていただいております。 2020 …

AWS CodeCommitのリポジトリをiPhoneのWorkingCopyアプリから使う

iPhoneからも執筆できるようにしておこうと思いまして、iOSアプリのGitク …

ヤマムギ vol.8 (AWS)EC2でLinuxサーバー構築ハンズオン 手順

ヤマムギとは from Mitsuhiro Yamashita 「AWSではじめ …

EC2 Auto ScalingカスタムメトリクスのモニタリングにCloudWatch検索式が便利でした

EC2 Auto Scalingで起動したインスタンスのカスタムメトリクス この …

ハンズオン目的アカウントに設定しているSCPポリシー

AWS Organizationsでハンズオン目的のアカウントに設定しているSC …

Lambda関数をPython3.6から3.9に変更

CodeGuru ProfilerでLambda関数(Python 3.9)のパ …

php-fpm で Out of memoryが発生した際にメール通知する(AWS CloudWatch , Amazon SNS)

AWS CloudWatch LogsエージェントでAmazon EC2上のNg …

Amazon VPCにオンプレミス検証環境想定プライベートDNSサーバー(BIND)をEC2で起動する

オンプレミス想定の検証で使うために、Amazon VPCにプライベート向けDNS …

RocketChatの匿名登録時のtoo many requestsエラー対応

匿名ユーザー登録時のtoo many requestsエラー RocketCha …

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

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