Twilioとは
KDDIウェブコミュニケーションズの提供する「Twilio」は、たった数行のコードで電話やSMSとネットをつなぐことのできるクラウドAPIサービスです。
電話を掛けたり、着信を受けたり、音声を録音出来たりするらしい。
アラートの連絡に使えるのでは?
とりあえず準備
https://jp.twilio.com
twilioサイトでアカウント取得してログインする
環境つくる
この辺の言語のSDKが用意されている様子。
- C# / .NET
- Java
- Node
- PHP
- Python
- Ruby
https://jp.twilio.com/docs/libraries/php
ここにPHPでの方法が書いてある
電話をかけてみる
XMLでしゃべる内容を定義する
XMLにしゃべらせる内容を記載して、どこか外部からアクセスできるところに設置する。
hoge.xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Say voice="woman" language="ja-jp">
Core DB が落ちました。
事故です。
ヤバいです。
スプラトゥーンを中断して早く対応してください。
</Say>
<!-- mp3も電話で再生可能 -->
<Play>http://demo.twilio.com/docs/classic.mp3</Play>
</Response>
電話かけるPHPを用意
sidとtokenをダッシュボードで確認しておく。
sample.php
<?php
require_once __DIR__ . "/vendor/autoload.php";
use Twilio\Rest\Client;
// SIDとTokenはtwilioの管理画面で確認できます
$sid = "***";
$token = "***";
$client = new Client($sid, $token);
$call = $client->calls->create(
"+819000000000", // ←掛けたい電話番号 +81で初めて090の最初の0は省く
"+815000000000", // ←発信元の番号。twilioのダッシュボードから
array("url" => "http://xxxx/hoge.xml") // XMLのURL。パブリックじゃないとダメ
);
echo $call->sid;
上記PHPをコマンドラインで実行するだけでtwilioから電話がかかってきます。
twilioダッシュボードで通話履歴も確認できる
業務でつかう前に課題
- XMLをどこに置くか、IP制限かけられるのか調べる必要あり