Twilio:以编程方式加入会议并播放 <Say> 命令或 <Play> 声音文件?
Twilio: programmatically join conference and play <Say> command or <Play> sound file?
我有两个用户,我将他们都加入了 <Conference>
。
我想让机器人加入<Conference>
然后发布公告
我正在考虑两种方法:
让会议中的每个人,将他们重定向到播放声音的 TwiML,然后将他们移回会议中。
创建一个以某种方式加入会议并播放 TwiML 的机器人,但从文档中我不清楚如何做到这一点。
这里是 Twilio 开发人员布道者。
这些方法中的任何一种都可以,但效果会略有不同。无论当时谁在发言,重定向都会切断会议,但加入的机器人可能会被发言。这取决于哪个更适合您的用例。
要进行重定向,您需要 运行 通过 list of Conference participants, redirect them by updating their call to a new URL and return TwiML from that URL that plays the sound and redirects 回到您的原始会议 URL。类似于:
$sid = "{{ account_sid }}";
$token = "{{ auth_token }}";
$client = new Services_Twilio($sid, $token);
// Loop over the list of participants and redirect ($client->account->conferences->get(CONFERENCE_SID)->participants as $participant) {
$call = $client->account->calls->get($participant->call_sid);
$call->update(array(
"Url" => "http://example.com/conference_message"
));
}
那么您的 /conference_message
端点将需要这样的 TwiML:
<Response>
<Play>http://example.com/message.mp3</Play>
<Redirect>http://example.com/conference</Redirect>
</Response>
另一方面,让机器人进入房间需要您 create a call to the conference number and supply a URL which points to the TwiML to play the message and then hangup。像这样:
$sid = "{{ account_sid }}";
$token = "{{ auth_token }}";
$client = new Services_Twilio($sid, $token);
$call = $client->account->calls->create(A_TWILIO_NUMBER, THE_CONFERENCE_NUMBER, "http://example.com/conference_message");
然后你的 /conference_message
端点将 return TwiML 像这样:
<Response>
<Play>http://example.com/message.mp3</Play>
<Hangup/>
</Response>
如果这有帮助,请告诉我。
我有两个用户,我将他们都加入了 <Conference>
。
我想让机器人加入<Conference>
然后发布公告
我正在考虑两种方法:
让会议中的每个人,将他们重定向到播放声音的 TwiML,然后将他们移回会议中。
创建一个以某种方式加入会议并播放 TwiML 的机器人,但从文档中我不清楚如何做到这一点。
这里是 Twilio 开发人员布道者。
这些方法中的任何一种都可以,但效果会略有不同。无论当时谁在发言,重定向都会切断会议,但加入的机器人可能会被发言。这取决于哪个更适合您的用例。
要进行重定向,您需要 运行 通过 list of Conference participants, redirect them by updating their call to a new URL and return TwiML from that URL that plays the sound and redirects 回到您的原始会议 URL。类似于:
$sid = "{{ account_sid }}";
$token = "{{ auth_token }}";
$client = new Services_Twilio($sid, $token);
// Loop over the list of participants and redirect ($client->account->conferences->get(CONFERENCE_SID)->participants as $participant) {
$call = $client->account->calls->get($participant->call_sid);
$call->update(array(
"Url" => "http://example.com/conference_message"
));
}
那么您的 /conference_message
端点将需要这样的 TwiML:
<Response>
<Play>http://example.com/message.mp3</Play>
<Redirect>http://example.com/conference</Redirect>
</Response>
另一方面,让机器人进入房间需要您 create a call to the conference number and supply a URL which points to the TwiML to play the message and then hangup。像这样:
$sid = "{{ account_sid }}";
$token = "{{ auth_token }}";
$client = new Services_Twilio($sid, $token);
$call = $client->account->calls->create(A_TWILIO_NUMBER, THE_CONFERENCE_NUMBER, "http://example.com/conference_message");
然后你的 /conference_message
端点将 return TwiML 像这样:
<Response>
<Play>http://example.com/message.mp3</Play>
<Hangup/>
</Response>
如果这有帮助,请告诉我。