Dockwilio - Twilioを制御するDockerコンテナ(実験バージョン ) = 概要編 =
Twilioは、電話サービスを使ったアプリケーションを作って提供するためのCloudサービスです。
しかし、Twilioを使うためにはWebサーバを用意し、そこにアプリケーション(TwiMLと呼ばれるXML)を配置しなければならないというのが、初学者にはわかりづらくハードルを高くしていると思われます。
例えば、電話をかけて音声メッセージを伝えるだけの場合、もしTwilioに相手の電話番号とメッセージ内容をAPIに伝えるだけでできれば簡単なのですが、実際にはメッセージ内容をWebサーバに配置し、それからREST APIに架電要求しなければなりません。
このような単純なアプリケーションを実現するためにだけにWebサーバを構築し、TwiMLの管理(生成、削除)をしなければならないのは、ちょっと面倒ですね。
そこで作ったのがTwilioを制御するためのDockerコンテナであるDockwilioです。
Dockwilioへの1回の要求で、架電と音声メッセージの再生を行えるものです。
具体的には、設定ファイルにTwilioの認証情報等を記述してDockwilioを起動しておき、HTTP POST により相手の電話番号やメッセージ内容等を伝えると、Twilioを制御して架電し、音声合成によるメッセージを再生します。
Dockwilioは常駐するコンテナで、HTTP POSTにより何度でも架電することも可能です(同時架電も可能)。
また、TwiMLの生成と削除はDockwilio内部で行われ、ユーザが意識する必要もありません。
Dockwilioは、Dockerのコンテナにより構築されるサービスにおいて、架電&音声メッセージによる通知が必要なときにパーツとして組み合わせるのに適しています。
使い方については簡単手順編 を、仕様についてはコンテナ仕様編を参照してください。