twilio - 如何使用 Twiml 或 twilio JSClient 实现应答机检测
问题描述
我们正在使用 Twilio 构建一个浏览器内的消息应用程序,从 JS 客户端我们拨打电话并使用 Twiml 拨打号码,这是我们的基本流程。我从其他问题中了解到 AMD 仅适用于 RestAPI,如何将 Rest API 与 JS 客户端一起使用,或者如何将 AMD 与我当前的设置集成。任何帮助/建议请:)。提前致谢
解决方案
是的,据我所知,您不能使用 TwiML 来打开应答机检测,并且您只能使用 API。
您要使用的 API 端点是Call Resource。本质上,这不过是一个POST
to https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Calls.json
,然后您将参数设置MachineDetection
为Enable
(请参阅此处的文档)。
但这需要以您的形式进行身份验证,TWILIO_AUTH_TOKEN
您不能将其公开给任何客户。我不知道您的 JS 客户端的详细信息以及您如何进行身份验证和授权,但我建议您将逻辑封装在您可以正确保护它的后端。然后,您还可以使用 Twilio 帮助程序库(例如 Python 或 Node.JS)来进行调用(Node.JS 的示例取自文档并进行了改编):
const accountSid = process.env.TWILIO_ACCOUNT_SID;
const authToken = process.env.TWILIO_AUTH_TOKEN;
const client = require('twilio')(accountSid, authToken);
client.calls
.create({
twiml: '<Response><Say>Hello World!</Say></Response>',
to: '+1...',
from: '+1...',
machineDetection: 'Enable'
})
.then(call => console.log(call.sid));
推荐阅读
- java - 为什么我可以解决方法列表
列表 = 新的 ArrayList 通过使用? - apache-spark - 在内部使用 Spark 的 Map-Reduce?
- c# - DataGridViewComboBoxCell 在 VSTO 中不起作用
- javascript - 动作创建者不等待
- python - 试图将关闭的交货地点聚集在一起,以限制时间和订单数量?
- perl - Perl 单行配方:即时将列表转换为“单引号中的逗号分隔字符串”或“多行”
- c# - 将数据库连接到 .net core MVC 项目
- node.js - 如何验证电子邮件是否已经在 MongoDB | 节点
- python - 为 Web 应用程序编写测试
- javascript - Angular 7 - 上传多个文件以及数据并报告进度