在Twilio呼叫期间更改Twiml指令

时间:2018-05-07 20:40:44

标签: node.js twilio twiml

我正在使用Twilio应用程序,现在正在构建一个功能,以便在通话期间更改Twiml指令。

以下将是它的用例。

  1. 用户呼叫特定号码,例如123-456-7890
  2. 当123-456-7890收到并接听电话时,它应该播放一些音乐。
  3. 在仪表板中,我,代理人,应该可以通过点击按钮更改播放的音乐与其他消息说明。
  4. 替换后的消息应该播放,直到通话结束。
  5. 我试图想出一种构建此功能的方法,但我想知道它是否在技术上可行。感谢您阅读我的问题。如果你们中的任何人能给我一些评论或反馈,那将是非常好的。

    由于

1 个答案:

答案 0 :(得分:1)

是的,您可以指示呼叫切换到执行新的TwiML。

你可以通过对Twilio的API,调用实例资源进行POST重新设置来实现这一点。

curl

curl -XPOST https://api.twilio.com/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CAe1644a7eed5088b159577c5802d8be38 \
    -d "Url=http://demo.twilio.com/docs/new-voice.xml" \
    -d "Method=POST" \
    -u 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:your_auth_token'

节点

// Download the helper library from https://www.twilio.com/docs/node/install
// Your Account Sid and Auth Token from twilio.com/console
const accountSid = 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
const authToken = 'your_auth_token';
const client = require('twilio')(accountSid, authToken);

client.calls('CAe1644a7eed5088b159577c5802d8be38')
      .update({method: 'POST', url: 'http://demo.twilio.com/docs/new-voice.xml'})
      .then(call => console.log(call.to))
      .done();

<强> 文档: