Dockwilio - Twilioを制御するDockerコンテナ(実験バージョン ) = 概要編 =

Twilioは、電話サービスを使ったアプリケーションを作って提供するためのCloudサービスです。

しかし、Twilioを使うためにはWebサーバを用意し、そこにアプリケーション(TwiMLと呼ばれるXML)を配置しなければならないというのが、初学者にはわかりづらくハードルを高くしていると思われます。

例えば、電話をかけて音声メッセージを伝えるだけの場合、もしTwilioに相手の電話番号とメッセージ内容をAPIに伝えるだけでできれば簡単なのですが、実際にはメッセージ内容をWebサーバに配置し、それからREST APIに架電要求しなければなりません。

f:id:tsun226:20160416001253p:plain

 

このような単純なアプリケーションを実現するためにだけにWebサーバを構築し、TwiMLの管理(生成、削除)をしなければならないのは、ちょっと面倒ですね。

 

そこで作ったのがTwilioを制御するためのDockerコンテナであるDockwilioです。

Dockwilioへの1回の要求で、架電と音声メッセージの再生を行えるものです。

 

具体的には、設定ファイルにTwilioの認証情報等を記述してDockwilioを起動しておき、HTTP POST により相手の電話番号やメッセージ内容等を伝えると、Twilioを制御して架電し、音声合成によるメッセージを再生します。

Dockwilioは常駐するコンテナで、HTTP POSTにより何度でも架電することも可能です(同時架電も可能)。

また、TwiMLの生成と削除はDockwilio内部で行われ、ユーザが意識する必要もありません。

f:id:tsun226:20160416001429p:plain

Dockwilioは、Dockerのコンテナにより構築されるサービスにおいて、架電&音声メッセージによる通知が必要なときにパーツとして組み合わせるのに適しています。

 

使い方については簡単手順編 を、仕様についてはコンテナ仕様編を参照してください。