アメリカで話題のWeb APIサービス「Twilio(トゥイリオ)」が日本でも始まりました(関連記事)。
日本でも始まったTwilio
Twilioは簡単に言うと、「Webから電話を簡単に操作できるAPI」です。ほとんどの連絡をメールやSNSで済ませるようになった昨今、「いまさら電話?」と思った方もいるかもしれません。しかし、エンジニアの視点から、またサービス企画の視点から見て、Twilioは実に多くの可能性を秘めたAPIなのです(筆者もまた、その可能性に注目している1人です)。
Twilioを使うと何ができるのか? どんな可能性があるのか? その魅力を、連載を通じて紹介しましょう。
まずはTwilioを体験してみよう
Twilioとはどんなものなのか? まずは手元の携帯電話などから以下の番号に電話をかけてみてください(通話料がかかります)。
050-3159-6680
電話につながると、ややぎこちない女性の声でメッセージが流れたと思います。実はこの自動応答システム、Twilioを使って、たった4行のコードだけで実現されています。
はじめまして。電話をかけてくれてありがとう!
見てのとおり、ものすごく簡単ですよね? TwilioはWeb APIと言いましたが、このようなシンプルなシステムであれば、ごく簡単なコードを書くだけで電話を制御できます。さらに、ちょっとしたコードを追加すると、宅配便の再配達受付サービスのように番号入力を受け付けたり、通話相手の音声を録音したりするしくみも作れます。
その方法は後ほど順に追ってみていくとして、まずは「Twilio」でどのようなことができて、どのような魅力があるのかを簡単に紹介しましょう。
お詫びと訂正:掲載当初、記事タイトルが「たった5行で」となっていましたが、正しくは「たった4行で」の誤りです。お詫びして訂正いたします。(2013年5月30日)開発者にやさしいTwilioの魅力
Twilioの最大の魅力は、前のサンプルでも見たとおり、とにかく手軽に電話の機能をコントロールできるということです。いままで電話と連携したシステムを構築するには、PBXを構築して電話網に接続する必要があり、莫大な初期開発費用と手間が掛かっていました。
Twilioはクラウド型のAPIとして提供されているので、初期費用がかからず、ビジネスのスモールスタートが可能です。また、クラウド型なので、必要な時に必要な分だけオンデマンドで利用でき、スケールアップ/スケールアウトを意識する必要がありません。すでに海外40カ国で展開されているので、日本国内で構築したシステムをそのまま海外でも利用できる点も魅力でしょう。
機能も充実しています。前の例のように電話を受けるだけでなく、以下のように、電話をかけたり、(日本ではまだ実現していませんが)SMSを送受信したりもできます(詳しくはTwilio機能も参照してください)。
また、創業者であるジェフ・ローソン氏がエンジニア出身ということもあり、APIやSDK、ドキュメントなど、開発者がアプリケーション開発に専念できる環境が揃っています。具体的には、用途別に以下の3つのAPIが用意されています(詳しくはAPIドキュメントを参照してください)。
REST APIやXML形式のTwiMLはシステム連携がしやすく、さまざまな言語(Ruby、PHP、Java)やフレームワーク(Ruby on Rails、FuelPHP)のライブラリーが提供されています。サンプルも充実していることから、アメリカでは新入社員のプログラミング演習でよく利用されているようです。
こんなにあるTwilioの活用事例
さまざまな機能があるTwilioですが、いま注目されている大きな理由の1つが、実際に広く使われているという事実です。アメリカでは「Hulu」「Salesfoce.com」「Airbnb」を始め20万人以上の開発者にTwilioのAPIが利用されています。
HuluはTwilioでコールセンターを構築することで、スピーディに低コストでシステムを構築するとともに、クラウド型のメリットを生かして海外進出の際にもスムーズに横展開できたとのことです。また、大量のコール処理を一時的に必要とされる選挙や投票システムの事例も、クラウド型の恩恵を受ける事例と言えるでしょう(事例についてはTwilioカスタマー(英語)へ)。
スマートフォンやタブレットと連携した電話システムの構築はもちろん、あらゆるデバイスから簡単に電話と連携できることから、テレビや冷蔵庫のような電化製品から電話コールするといったことが当たり前の時代がくるかもしれません。
いままで実現が難しかった「デバイス」+「電話」によるさまざまな可能性が広がることで、新しいイノベーションのアイデアが次々と生まれてくるでしょう。