PHP x Twilio
Webと電話の連携とビジネス展開
PHPカンファレンス2013
Yasushi Ichikawa
13年9月18日水曜日
自己紹介
• Twitter: cakephper / ichikaway
• http://d.hatena.ne.jp/cakephper
• Fukuoka.php
• 67WS講師 (CakePHP)
13年9月18日水曜日
目次
• Twilioに関して
• 電話を受けてサーバ連携
• SMS
• ビジネス事例
• 利点、注意点、セキュリティ
13年9月18日水曜日
• Twilio x KDDI Web Communications
• http://kddi-web.twilio.jp/
13年9月18日水曜日
電話API
• 電話発信、受信API (050番号取得)
• ダイアル操作、録音、音声再生、テキスト
スピーチ、複数間通話、コールルーティング
など
• SMS
• VoIP連携
13年9月18日水曜日
13年9月18日水曜日
電話を受けて
サーバ連携
13年9月18日水曜日
電話番号取得購入した
電話番号
電話を受信したらTwilioサーバがアクセ
スするURLとメソッド(POST/GET)
13年9月18日水曜日
とっても簡単
Twilio
①指定URLにリクエスト
② XMLフォーマットで
命令コードを返す
自サーバ
13年9月18日水曜日
Twilioからのリクエスト
---------- $_POST ----------
AccountSid : xxxxxxxxxxxxxxxxxxxxxx
CalledVia : 05011112222
Called : +81503133...
Twilioへのレスポンス
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Say language="ja-jp">こんにちはの世界!</Say>
</Response>
13年9月18日...
日本語ドキュメント充実
http://jp.twilio.com/docs/
13年9月18日水曜日
PHPライブラリ
https://github.com/twilio/twilio-php
13年9月18日水曜日
PHPライブラリ
13年9月18日水曜日
SMS送信
13年9月18日水曜日
とっても簡単
Twilio
②送信結果がレスポン
スで返る
自サーバ
①指定URLにリクエスト
curl -X POST 'https://api.twilio.com/2010-04-01/Accounts/xxxxxxxxxxxxxxxxx...
PHPライブラリ
https://github.com/twilio/twilio-php
13年9月18日水曜日
ビジネス事例
• Twilioありきのサービスは難しい
• 既存サービスに付加価値を付けるのが
フィットしている
13年9月18日水曜日
匿名通話
• AirBnB
• 宿泊者、宿提供者の電話番号を開示
しなくて良い
13年9月18日水曜日
他者間通話
• 海外からの電話の場合は、通訳にJoinし
てもらう
13年9月18日水曜日
電話受付
• 電話が受けきれない場合に転送して、
お客さんの電話番号を記録
• 後からコールバックする
13年9月18日水曜日
2要素認証
• ログインID / PW
• 自分の電話にSMSでコード送信
13年9月18日水曜日
2要素認証
• Scutum
• SaaS型 Web Application Firewall (WAF)
13年9月18日水曜日
Scutum 2要素認証
• 開発無しでお客様
のログイン画面に
2要素認証をアド
オンできる
http://www.scutum.jp/information/technical_articles/
two_factor_authentica...
Twilioの利点
• Webサーバ連携が簡単(短期開発)
• 1つの電話番号で同時着信可能
• 電話番号を使ってユーザ識別可能
• 他国のSMS事情を気にせず送信可能
13年9月18日水曜日
セキュリティ
• Twilioサーバからの通信を判別
• サーバにBasic認証をかける
• Twilioの署名を検証
https://jp.twilio.com/docs/security
13年9月18日水曜日
セキュリティ
• Twilioの署名を検証
• X-Twilio-Signatureに署名
• ユーザのAuthTokenで検証
13年9月18日水曜日
セキュリティ
13年9月18日水曜日
注意点
• 自己署名証明書は使えない
• SMSにURLなど含めるとフィルタされる
可能性あり(au)
• SMSで迷惑メール設定などで届かない可
能性あり
• SMSの同時送信数は1秒1通
• 依頼すれば変更可能
13年9月18日水曜日
Thank you
Yasushi Ichikawa
@cakephper
13年9月18日水曜日
Upcoming SlideShare
Loading in …5
×

phpcon2013 PHP x twilio

2,004 views

Published on

PHPカンファレンス東京2013発表資料。
Twilioの基本操作から、ビジネス展開まで。

Published in: Technology
0 Comments
10 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,004
On SlideShare
0
From Embeds
0
Number of Embeds
119
Actions
Shares
0
Downloads
0
Comments
0
Likes
10
Embeds 0
No embeds

No notes for slide

phpcon2013 PHP x twilio

  1. 1. PHP x Twilio Webと電話の連携とビジネス展開 PHPカンファレンス2013 Yasushi Ichikawa 13年9月18日水曜日
  2. 2. 自己紹介 • Twitter: cakephper / ichikaway • http://d.hatena.ne.jp/cakephper • Fukuoka.php • 67WS講師 (CakePHP) 13年9月18日水曜日
  3. 3. 目次 • Twilioに関して • 電話を受けてサーバ連携 • SMS • ビジネス事例 • 利点、注意点、セキュリティ 13年9月18日水曜日
  4. 4. • Twilio x KDDI Web Communications • http://kddi-web.twilio.jp/ 13年9月18日水曜日
  5. 5. 電話API • 電話発信、受信API (050番号取得) • ダイアル操作、録音、音声再生、テキスト スピーチ、複数間通話、コールルーティング など • SMS • VoIP連携 13年9月18日水曜日
  6. 6. 13年9月18日水曜日
  7. 7. 電話を受けて サーバ連携 13年9月18日水曜日
  8. 8. 電話番号取得購入した 電話番号 電話を受信したらTwilioサーバがアクセ スするURLとメソッド(POST/GET) 13年9月18日水曜日
  9. 9. とっても簡単 Twilio ①指定URLにリクエスト ② XMLフォーマットで 命令コードを返す 自サーバ 13年9月18日水曜日
  10. 10. Twilioからのリクエスト ---------- $_POST ---------- AccountSid : xxxxxxxxxxxxxxxxxxxxxx CalledVia : 05011112222 Called : +81503133xxxx FromCountry : JP CallerCountry : JP Direction : inbound ForwardedFrom : 0503133xxxx CalledCountry : JP CallSid : uuuuuuuuuuuuuuuuuuuuuuuuuuuuuu From : +81503697xxxx CallStatus : ringing To : +81503133xxxx ToCountry : JP CallerCity : ApiVersion : 2010-04-01 Caller : +81503697xxxx Twilioで取得した 電話番号 ユーザがかけた 電話番号 13年9月18日水曜日
  11. 11. Twilioへのレスポンス <?xml version="1.0" encoding="UTF-8"?> <Response> <Say language="ja-jp">こんにちはの世界!</Say> </Response> 13年9月18日水曜日
  12. 12. 日本語ドキュメント充実 http://jp.twilio.com/docs/ 13年9月18日水曜日
  13. 13. PHPライブラリ https://github.com/twilio/twilio-php 13年9月18日水曜日
  14. 14. PHPライブラリ 13年9月18日水曜日
  15. 15. SMS送信 13年9月18日水曜日
  16. 16. とっても簡単 Twilio ②送信結果がレスポン スで返る 自サーバ ①指定URLにリクエスト curl -X POST 'https://api.twilio.com/2010-04-01/Accounts/xxxxxxxxxxxxxxxxxxx/SMS/Messages.xml' -d 'From=%2B5011112222' -d 'To=%2B81801234xxxx' -d 'Body=Hello' -u APIキー:APIパスワード 13年9月18日水曜日
  17. 17. PHPライブラリ https://github.com/twilio/twilio-php 13年9月18日水曜日
  18. 18. ビジネス事例 • Twilioありきのサービスは難しい • 既存サービスに付加価値を付けるのが フィットしている 13年9月18日水曜日
  19. 19. 匿名通話 • AirBnB • 宿泊者、宿提供者の電話番号を開示 しなくて良い 13年9月18日水曜日
  20. 20. 他者間通話 • 海外からの電話の場合は、通訳にJoinし てもらう 13年9月18日水曜日
  21. 21. 電話受付 • 電話が受けきれない場合に転送して、 お客さんの電話番号を記録 • 後からコールバックする 13年9月18日水曜日
  22. 22. 2要素認証 • ログインID / PW • 自分の電話にSMSでコード送信 13年9月18日水曜日
  23. 23. 2要素認証 • Scutum • SaaS型 Web Application Firewall (WAF) 13年9月18日水曜日
  24. 24. Scutum 2要素認証 • 開発無しでお客様 のログイン画面に 2要素認証をアド オンできる http://www.scutum.jp/information/technical_articles/ two_factor_authentication.html 13年9月18日水曜日
  25. 25. Twilioの利点 • Webサーバ連携が簡単(短期開発) • 1つの電話番号で同時着信可能 • 電話番号を使ってユーザ識別可能 • 他国のSMS事情を気にせず送信可能 13年9月18日水曜日
  26. 26. セキュリティ • Twilioサーバからの通信を判別 • サーバにBasic認証をかける • Twilioの署名を検証 https://jp.twilio.com/docs/security 13年9月18日水曜日
  27. 27. セキュリティ • Twilioの署名を検証 • X-Twilio-Signatureに署名 • ユーザのAuthTokenで検証 13年9月18日水曜日
  28. 28. セキュリティ 13年9月18日水曜日
  29. 29. 注意点 • 自己署名証明書は使えない • SMSにURLなど含めるとフィルタされる 可能性あり(au) • SMSで迷惑メール設定などで届かない可 能性あり • SMSの同時送信数は1秒1通 • 依頼すれば変更可能 13年9月18日水曜日
  30. 30. Thank you Yasushi Ichikawa @cakephper 13年9月18日水曜日

×