将请求参数转发到下一个动词的Twimlet

时间:2015-11-07 05:11:25

标签: twilio twiml

我有这个概念性的Twiml,我想要回声twimlet提供:

<Response>
    <Record timeout="10" method="GET" action="http://someURL" />
    <Redirect>http://twimlets.com/forward</Redirect>
</Response>

我的目的是将其用于出站拨号,以便记录正在进行的呼叫。问题是请求参数被发送到包含To,From,CallerID等的echo Twimlet,但我真的需要将它们传递给Redirect动词中的url。可以使用echo Twimlet吗?

1 个答案:

答案 0 :(得分:1)

Twilio开发者传道者在这里。

您实际上并不需要这样做才能录制两条腿的电话。 <Record>动词用于记录消息,例如语音邮件服务。

如果你是generating these calls using the REST API,那么你可以在API调用中设置对记录的调用,就像这样(Node.js中的例子,我看到你已经用Node回答了一些SO问题): / p>

var accountSid = 'AC...';
var authToken = "{{ auth_token }}";
var number1 = '+1555123456';
var number2 = '+1555456789';
var twilioNumber = '+1555654321';
var client = require('twilio')(accountSid, authToken);

client.calls.create({
    url: "http://twimlets.com/forward?PhoneNumber=" + encodeURIComponent(number2),
    to: outboundNumber,
    from: twilioNumber,
    record: true
}, function(err, call) {
    process.stdout.write(call.sid);
});

您还可以在通话结束后拨打statusCallBack来自录音的网址。

如果您没有从REST API生成呼叫,但仍想记录呼叫的两侧。您需要使用<Dial>动词并设置为记录该方式。您需要在Twilio号指向的URL处创建一些TwiML,如下所示:

<Response>
  <Dial record="record-from-answer">
    {{ onward number }}
  </Dial>
</Response>

如果您为action动词提供<Dial>属性,则一旦完成呼叫,Twilio会将录制的URL张贴到该动作。

我不确定你是如何使用Twimlets实现这一目标的。理想情况下,您希望能够设置记录URL发送到的URL并以某种方式保存它,但您需要自己的服务器。可以使用echo Twimlet创建您需要的任何结果TwiML,但此时考虑您自己的服务器可能更好。

让我知道这是否有帮助。