如何在等待成功连接的同时拨打号码并向呼叫者播放音乐?
下面的代码在执行之前等待音乐结束<dial>
(这是逻辑)
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Play>http://com.twilio.music.ambient.s3.amazonaws.com/gurdonark_-_Plains.mp3</Play>
<Dial timeout="10" callerId="+1234567890">
<Number url="whisper?id=1">+1122334455</Number>
<Number url="whisper?id=2">+1122334466</Number>
<Number url="whisper?id=3">+1122334477</Number>
</Dial>
</Response>
NB:那就太好了NOT使用会议功能。一些与<Enqueue>
maybe ?
这里是 Twilio 开发者布道者。
你可以这样做<Enqueue>。其工作原理如下:
您需要替换 TwiML<Play>s进而<Dial>s。这必须是一个动态动作,因为您需要使用 REST API 进行三个同时调用而不是 TwiML。您返回的 TwiML 会按照您的建议将原始呼叫者放入队列中,并为他们播放音乐。在 PHP 中,它看起来有点像:
<?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>
在网址处http://example.com/dial_queue
您需要返回将被叫方拨入原始呼叫者的 TwiML。您的原始示例中有一个耳语 URL,您可以通过将其内联到 TwiML 中来实现。
<Response>
<Say>Your custom message</Say>
<Dial>
<Queue>dialling</Queue>
</Dial>
</Response>
请注意,您拨打的是<Queue>你在原作中使用的<Enqueue>
。如果该系统将用于多个调用者,那么您可能需要为他们生成唯一的队列名称。
最后要做的事情是在呼叫连接后取消其他两个呼叫,如果没有呼叫应答,则取消队列。我将把它留给您,因为我确信您可以通过多种方式通过自己的设置来实现它。
让我知道这是否有帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)