通話もビジュアルプログラミング!Twilioの魅力を紹介
こんにちは、システム開発部のうのです。
銀行やクレジットカードなどの問い合わせでコールセンターへ電話をかけたこと、ありますでしょうか。 コールセンターの電話でよくある流れは、
- 最初は合成音声の通話につながる
- 「○○なら1、××なら2を押してください」とアナウンスされ、指示通りにボタンを押す
- 通話が転送され、あとは人間のスタッフさんが対応してくれる
という流れです。 このような流れの通話を実現できるのが、「Twilio」というKDDIが提供するサービスです。
Twilioは、複雑な通話業務の流れを簡単な プログラミング を用いて制御します。 プログラミングのハードルも、プログラミングが初めてでも構わない くらい低めです。 使い方次第でとても面白いことのできそうなサービスなので、ぜひ知ってほしいです。 もちろんプログラミングに馴染みがあって、新しいことがしたい人にもオススメです。
早速いきましょう!
Twilioとは
まず、Twilioとは、どんなサービスなのでしょうか。 公式ページでは、以下のように説明があります。
Twilioは音声通話、メッセージング(SMS/チャット)、ビデオなどの 様々なコミュニケーション手段をアプリケーションやビジネスへ容易に組み込むことのできるクラウドAPIサービスです。
Twilioでは、様々なコミュニケーション手段をブロック(部品)のようにコンポーネント化した API を、最小限の開発コードでご利用のアプリケーションに組み込んだり、新たなアプリケーションとして開発したり、みなさまのシステムへ容易に組み込むことを可能にしました。
これはどういうことなのか、少し説明をしていきます。
「クラウドAPIサービス」とは、 WEBを通して利用できるアプリケーションサービス、ということです。 なので、Twilioは「通話」「SMS」「ビデオ」をWEBを通して扱うことのできるサービスですよ、ということになります。
加えて、「API」というのは プログラミングを通してアプリケーションを使うことのできる仕組み という意味なので、Twilioはプログラミング制御が可能 ということです。 プログラミング制御が可能であれば、ほかのAPIサービスや自身で開発したサービスと連携が可能になるので、できることが格段に増えます。
さらに、簡単なプログラミングの方法がある、ということを言っています。 「様々なコミュニケーション手段をブロック(部品)のようにコンポーネント化した API」 というのは、次のようなものです。
これは特定のURLにアクセスし、その返答に従い通話を転送するプログラムです。 ここに置いてあるブロック1つ1つが、Twilioの機能と紐づいています。 ブロックをつなぎ合わせることで、プログラミングをするのです。
このプログラミング手法は ビジュアルプログラミング と呼ばれるもので、小学生のプログラミング教育でも使われる ものです。 なのでプログラミングの知識がない人でも、Twilioを使うことができます。
好きな言語でプログラミング
わかりやすい手法はもちろんですが、通常のプログラミング手法にもTwilioは対応しています。 この場合は、WEBサーバにプログラムを置くことになります。 Twilioからのリクエストに対し、テキスト形式でデータを返却するように組みます。 テキストで返却できればよいので、どのプログラミング言語を選択してもTwilioを使うことができます。
そして返却するテキストは XML の形式で、 TwiML と名前がついています。 たとえばこのようなXMLです。
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Dial>123-456-7890</Dial>
<Say>Goodbye</Say>
</Response>
このXMLは、「123-456-7890」に通話を転送し、終了したら合成音声で「Googbye」と言う、という内容を示しています。 また、このようなXMLも扱うことができます。
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Gather action="/process.php" method="GET">
<Say>
○○なら1、××なら2を押してください
</Say>
</Gather>
<Say>入力がありませんでした、もう一度おかけ直しください</Say>
</Response>
このXMLは、ユーザーにボタンを押させて、入力があった場合は別のURLを読み込み、入力がなかった場合は「もう一度おかけ直しください」と言って通話を終了します。
もちろん別のURL(コード内の”process.php”)では押したボタンの値を受け取ることができますし、そこでXMLを発行すれば継続して処理ができます。
Twilioで通話をプログラミングしよう!
このようにTwilioでは、初めてでもそうでなくても、通話をプログラミングすることができます。 今回は方法を2つ紹介しました。
- クラウドサービス上でビジュアルプログラミングをすること
- WEBサーバにプログラムを置くこと
自分でプログラミングできるようになれば、アイデア次第で様々な活用ができます。 すごく可能性を秘めたサービスなので、ぜひ利用してみてください!
▼ここからアクセスできます!
Twilio for KDDI Web Communications | コミュニケーションAPI
今日はここまでです。ではまた次回。