JAWS FESTA Kansai 2013
AWS Hands-on Twilio meets AWS in 京セラドーム大阪
自己紹介
!
Twilio!for!KDDI!Web!Communica5ons !
!
RoR,PHP !
!
!
Twilio!API! !
#twilioapistudy!
▼twitter
@joohounsong
▼facebook
joohoun.jp
Twilio?
2013年4月17日 来日致しました!
電話API
Twilio?
① userAが「050」へ発信
② 電話番号に設定されている
TwiML(Twilio Markup Language)参照
③ TwiMLに書いてある<Dial>動詞で
userBに電話を掛ける。
④ userAとuserBの通話成立!
Twilioでなにができる?
電話番号の購入(050)
オーディオ再生&合成音声
通話録音
電話会議(カンファレンス)
プッシュ音認識
世界対応
など
(電話回線接続)
(VoIP接続)
(SMS送受信)
日本国内4キャリア対応( 米国電話番号利用)
事例:UBER→ SMSを利用したタクシー配車
事例:cameran→認証フロー
cameran
蜷川実花氏監修
カメラアプリ
SMS
事例:BlueHAND
Bluetooth
BlueHAND
まとめ
・電話は誰でも使える
・我々の生活と密着されている媒体
・簡単に電話の世界と繋がる
・電話・SMSの処理を完全に自動化できる
・新規登録ですぐ使える(トライアルアカウント提供)
・パソコン,iOS,Androidアプリの開発ができる。
みなさんいいね!を
Facebook URL
TwilioforKWC
・イベント
・事例
・最新情報
・アイデア
・技術情報
シンプルなRESTful API
<Dial>'
<Dial&callerId=“+8150xxxxxxxx”&record=“true”>813xxxxxxxx</Dial>&
<Play>'
<Play>h>p://yourserver.com/sound/file.mp3</Play>&
<Record>'
<Record&acHon=“handleVoiceMessage.php”&/>&
<Sms>'
<Sms&form=“+1415xxxxxxxx”&to=“+8180xxxxxxxx”> </Sms>&
<Say>'
<Say&language=“jaPjp”>Twilio </Say>&
<Gather>'
<Gather&acHon=“handle.php”&numDigits=“1”&/>&
Twilio library
PHP,$Ruby,$Python,$.NET,$JAVA,$Salesforce,$Node.js,$C++,$Scala,$Perl,$Erlang,$$
Adobe$ColdFusion,$Adobe$LiveCycle,$Mule$ESB$
$
hGp://jp.twilio.com/docs/libraries$
curl
!
!
!
!
!
!
!
たとえば:IVR(自動応答システム)
あなたが使っているウェブサーバーを選んでください。
AWSは1を
Azureは2を
CloudCoreVPSは3を
押してください。
こんな感じです。:PHP
if (empty($_POST["Digits"])):
    < Say language="ja-jp">
  あなたが使っているウェブサーバーを選んでください。
    < Gather numDigits="1" timeout="30" />
elseif ($_POST["Digits"] == "1"):
    < Say language="ja-jp">AWSを選択しました。</Say>
elseif ($_POST["Digits"] == "2"):
    < Say language="ja-jp">Azureを選択しました。</Say>
elseif ($_POST["Digits"] == "3"):
    < Say language="ja-jp">CloudCore VPSを選択しました。</Say>
endif
inbound:まずは番号の設定
やって見ましょう!
<?xml version=”1.0” encoding=”UTF-8”?>
<Response>
<Say language=”ja-jp”>
Twilioへようこそ!
</Say>
</Response>
やって見ましょう!
<?php
	

 header("content-type: text/xml");
?>
<Response>
	

 <?PHP if (empty($_POST["Digits"])): ?>
	

 	

 <Say language="ja-jp">1号機のサーバーから障害が発生しました。次の操作を選択してください。エスカレーション先に電話をするに
は1を、サーバーを再起動するには2を、仮想マシンを追加するには3を、押してください。</Say>
	

 	

 <Gather numDigits="1" timeout="30" />
	

 <?PHP elseif ($_POST["Digits"] == "1"): ?>
	

 	

 <Dial callerId="+8150xxxxxxxx">+813xxxxxxxx</Dial>
	

 	

 <Gather numDigits="1" timeout="30" />
	

 <?PHP elseif ($_POST["Digits"] == "2"): ?>
	

 	

 <Say language="ja-jp">サーバーを再起動します。チェックしてください。</Say>
	

 	

 <Hangup/>
	

 <?PHP elseif ($_POST["Digits"] == "3"): ?>
	

 	

 <Say language="ja-jp">仮想マシンの追加を選択しました。チェックしてください。</Say>
	

 	

 <Hangup/>
	

 <?PHP endif ?>
</Response>
outbound
ありがとうございました。
<?xml version=”1.0” encoding=”UTF-8” ?>
<Response>
<Say language=”ja-jp”>
皆さんおつかれさまでした!
</Say>
</Response>

Twilio api-jaws