拨打电话时传递动态TwiML

时间:2013-07-13 01:50:32

标签: php twilio

如何在拨打电话时将动态TwiML传递给Twilio API?

$client = new Services_Twilio($sid, $token);

因此,不是传递URL来获取TwiML:

$call = $client->account->calls->create("+14158675309", "+14155551212", "http://demo.twilio.com/docs/voice.xml", array());

我可以动态生成TwiML并将其传递给API吗?

$twiml = new Services_Twilio_Twiml();
$twiml->say( 'Hello Mark');
$call = $client->account->calls->create("+14158675309", "+14155551212", $twiml);

2 个答案:

答案 0 :(得分:2)

Twilio传道者在这里。

您可以将此文件设置为PHP文件并动态生成响应,而不是在create function中指定静态XML文件。

您仍然使用create()告诉Twilio发起电话。当应答呼叫时,Twilio将请求您指定的URL以获取告知其如何继续呼叫的TwiML。例如,你改变了:

http://demo.twilio.com/docs/voice.xml

http://demo.twilio.com/docs/voice.php

让PHP生成TwiML输出:

$twiml = new Services_Twilio_Twiml();
$twiml->say( 'Hello Mark');

以下是使用PHP helper library生成TwiML的文档:

https://github.com/twilio/twilio-php#generating-twiml

希望有所帮助。

答案 1 :(得分:1)

  

我可以动态生成TwiML并将其传递给API吗?

答案是否定的,不是没有URL。我意识到这是一个延迟的反应,但我最近一直在寻找解决这个问题的方法。我发现在没有Web服务器的情况下为传出呼叫生成动态文本的最佳方法是here - 从twimlets url中弹出它。