ここではTwilioの開発者のエバンジェリストです。
<Enqueue>
でこれを行うことができます。これはどのように動作するのですか:
<Play>
sの代わりに<Dial>
sというTwiMLを置き換える必要があります。 TwiMLの代わりにmake the three simultaneous calls using the REST APIにする必要があるので、これは動的なアクションでなければなりません。あなたが返すTwiMLは、元の呼び出し元をあなたが提案して音楽を演奏するときに待ち行列に入れるでしょう。以下のように少し見えるPHPで:URL http://example.com/dial_queue
で
<?php
// Get the PHP helper library from twilio.com/docs/php/install
require_once '/path/to/vendor/autoload.php';
use Twilio\Rest\Client;
// Your Account Sid and Auth Token from twilio.com/user/account
$sid = "your_account_sid";
$token = "your_auth_token";
$client = new Client($sid, $token);
$numbers = array('+1122334455', '+1122334466', '+1122334477');
foreach ($numbers as $number) {
$call = $client->calls->create(
$number, $YOUR_CALLER_ID,
array("url" => "http://example.com/dial_queue")
);
}
header("content-type: text/xml");
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
?>
<Response>
<Enqueue waitUrl="http://com.twilio.music.ambient.s3.amazonaws.com/">
dialling
</Enqueue>
</Response>
あなたは、元の発信者に呼び出し先をダイヤルTwiMLを返却する必要があります。オリジナルの例では、TwiMLにインライン展開することで達成できます。あなたは、元の<Enqueue>
で使用<Queue>
の名前をダイヤル
<Response>
<Say>Your custom message</Say>
<Dial>
<Queue>dialling</Queue>
</Dial>
</Response>
注意。このシステムを複数の呼び出し元に使用する場合は、おそらくそれらに固有のキュー名を生成する必要があります。
最終的には、コールが接続されると他の2つのコールをキャンセルし、コールのいずれも応答しない場合はキューをキャンセルすることになります。私はあなたにあなた自身のセットアップでそれを達成することができる多くの方法があると確信しています。
それがまったく役に立ったら教えてください。
「$ YOUR_CALLER_ID」とは何ですか?元の発信者番号(リダイレクト先の番号)ですか、それともユーザーのTwilio番号ですか? – kyle
これはTwilio番号であるか、Twilioアカウント内で電話をかけるために使用できる確認番号になります。 – philnash