http://cloudvox.com はクラウドコンピューティング型の電話音声応答サービスを提供している。
コア技術はオープンソースVoIP技術 Asterisk である。
VoiceXML技術の後継になり得る JSON や REST など「モダンなWeb API」を提供している。
各種プログラミング言語向けのライブラリを提供したり、既存のAsterisk関連ライブラリに対応したりしている。 どうやら開発チームは Ruby を好んでいるらしい。
多くのサンプルやライブラリが http://github.com/cloudvox で公開されている。 Twitter アカウント @Cloudvox が提供されており、 2009年10月9日にサービス開始の宣言が行われた。
Twitter と cloudvox を連携させるサンプルコードがある。
電話をかける先は米国シアトルであるが、日本からは Skype Out (通話料金がかかる)で試すことができる。
無料版のサービスを申し込んでみる。決まった使用時間を超えるなどの場合は追加料金を払うことになるようだ。
アカウントを作ると「アプリケーションを作る」ことができる。ここではチュートリアルの json のURLをそのまま使ってみる。
What's this app called?
What URL should Cloudvox send calls to?
[{"name":"speak","phrase":"Thanks for calling!"}, {"name":"playback","filename":"monkeys"}]
アプリができる。NNN などは cloudvox がつけた番号。
https://アカウント名.cloudvox.com/applications/NNN * (10/23/09 - 08:07 PM) Number added: (206) NNN-NNNN xAAAAA * (10/23/09 - 08:07 PM) Application created: helloapp Numbers (206) NNN-NNNN xAAAAA Seattle, WA
Skype でアメリカの国番号 (206) NNN-NNNN にかけて、DTMF で "AAAAA" を押すと、Thanks for calling! が聞こえて、切れる。 おそらく json の最初のコマンドの合成音声が実行され、その次の行のオーディオファイルの再生に失敗しているのだろう。
電話を着信すると Call History に項目が増える。
Who / When UNAVAILABLE 10/23/09 - 08:21 PM Length 40s
上記の確認はダッシュボードという画面から行える。
ここでは利用できる残り時間(最初は90分)、オーディオファイルのアップロードやダウンロードなどが可能。 ユーザ環境設定でタイムゾーンを日本に設定できる。
APIの雰囲気は以下のページを見ていただければわかるだろう。
英語のテキスト音声合成とDTMF入力が可能。音声認識はいまのところ提供されていないようだ。
ekiga for windows と X-Lite の両方で試してみたが、今のところ成功していない。
少なくともこちらの環境がNATではなくグローバルアドレスである必要があるようだ。 自宅のLAN環境ではなく b-mobile 3G を使うと、多少うまくいきそうな雰囲気になる。 が、すぐに切れてしまい、サービスにたどり着けない。
いずれのソフトにおいても、自分の cloudvox アカウントとパスワードを SIP クライアントに入力する必要がある。
「誰でもSIPクライアントからアクセスできるサービス」を提供できるわけではなさそうだ。
さんざん失敗し続けていたら、残り利用時間を20分近く使い込んでしまった。