ご質問・お見積り等お気軽にご相談ください
お問い合わせ

通話もビジュアルプログラミング!Twilioの魅力を紹介

通話もビジュアルプログラミング!Twilioの魅力を紹介

こんにちは、システム開発部のうのです。

 

銀行やクレジットカードなどの問い合わせでコールセンターへ電話をかけたこと、ありますでしょうか。 コールセンターの電話でよくある流れは、

 

  • 最初は合成音声の通話につながる
  • 「○○なら1、××なら2を押してください」とアナウンスされ、指示通りにボタンを押す
  • 通話が転送され、あとは人間のスタッフさんが対応してくれる

 

という流れです。 このような流れの通話を実現できるのが、TwilioというKDDIが提供するサービスです。

Twilioは、複雑な通話業務の流れを簡単な プログラミング を用いて制御します。 プログラミングのハードルも、プログラミングが初めてでも構わない くらい低めです。 使い方次第でとても面白いことのできそうなサービスなので、ぜひ知ってほしいです。 もちろんプログラミングに馴染みがあって、新しいことがしたい人にもオススメです。

 

早速いきましょう!

 

Twilioとは

まず、Twilioとは、どんなサービスなのでしょうか。 公式ページでは、以下のように説明があります。

Twilioは音声通話、メッセージング(SMS/チャット)、ビデオなどの 様々なコミュニケーション手段をアプリケーションやビジネスへ容易に組み込むことのできるクラウドAPIサービスです。

Twilioでは、様々なコミュニケーション手段をブロック(部品)のようにコンポーネント化した API を、最小限の開発コードでご利用のアプリケーションに組み込んだり、新たなアプリケーションとして開発したり、みなさまのシステムへ容易に組み込むことを可能にしました。

これはどういうことなのか、少し説明をしていきます。

 

「クラウドAPIサービス」とは、 WEBを通して利用できるアプリケーションサービス、ということです。 なので、Twilioは「通話」「SMS」「ビデオ」をWEBを通して扱うことのできるサービスですよ、ということになります。

 

加えて、「API」というのは プログラミングを通してアプリケーションを使うことのできる仕組み という意味なので、Twilioはプログラミング制御が可能 ということです。 プログラミング制御が可能であれば、ほかのAPIサービスや自身で開発したサービスと連携が可能になるので、できることが格段に増えます。

 

さらに、簡単なプログラミングの方法がある、ということを言っています。 「様々なコミュニケーション手段をブロック(部品)のようにコンポーネント化した API」 というのは、次のようなものです。

 

Twilioでのビジュアルプログラミングの様子

 

これは特定の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

 

今日はここまでです。ではまた次回。