これは、Twilio Advent Calendar 2015の12月17日の記事です。
さいしょに
この記事は、
kintone Advent Calendar 2015の2日目の、
kintone APIを使ってスペースを有効活用する(サーバーレスで)
と、
Twilio Advent Calendar 2015の9日目の、
Twilioサーバーレス化作業記録 – RequestURLもサーバーレス化
に刺激されて作りました。ソースとかはコピペ満載なので、ふいんき(何故か変換できない)をお楽しみ下さい。
リカちゃん電話運用サービスを作る
基本的な流れ。
1 決まった番号に電話する
2 応答メッセージが流れる
- メッセージは管理画面から差し替え
- MP3と合成音声のどちらでも可
- 特別な場合に備えて、生TwiMLも可にした
kintone側の準備
受付番号には、Twilioの番号を入力します。これで識別するので+付きの番号になります。理論上は何番号でも運用可能!
応答パターンを切り替えることで、何で返すかを選ぶことができます。その他はテキストでオッケー。MP3の場所もURLをテキスト入力です。MP3の置き場として今回はS3を用意しましたが、転送費用とかが気になる場合は別サーバーをお勧めします。
API Gateway & Lambdaの準備
Twilioサーバーレス化作業記録 – RequestURLもサーバーレス化 で紹介されている方法でお願いします。まずはLambdaのサンプルメッセージが返ってくるのを試してください。
Lambdaで、ソース修正
kintone APIを使ってスペースを有効活用する(サーバーレスで) で紹介されているソースを参考に、アプリIDやドメインを自分の環境の数値にしてください。
次に、アプリ内のフィールド情報を指定していきます。
body_getsalesamountの方だけ修正してください。ポイントは、Twilioの番号で検索する事と、必要なフィールドの指定を間違えない事です。
kintone側に番号が登録されてない場合の別メッセージを変更できるように、ダミーで111という番号を使うようになっています。この辺は、申し込みサイトへの誘導とか色々とできそうですね。
最後にレコードの内容からTwiMLを作成します。
以上で、作業は終わりです。
kintone側にこんな感じで入力しておくと、対応したメッセージを返します。通常は音声案内で、時間限定イベントで秘密のメッセージ流してとかができますね。
という感じですが、他に色々と繋ぐと楽しめそうなので、次はAmazonギフト券と繋いでみます(ぉ
Very energetic blog, I enjoyed that a lot. Perhaps there is a part 2? kedgeedeadee