c# - Twilio 检测是否有人回答

标签 c# twilio phone-call

我的用例如下:允许用户输入多个联系点。尝试第一个联系人,如果用户没有回答,则尝试第二个,依此类推。

我遇到的问题是 Twilio 似乎没有可靠的方法来确定是否有人接听电话。我尝试了三种不同的方法:

  1. IfMachine - 它工作得相当可靠,但我已经在手机上进行了测试,让它认为它是一个人。我真的需要 100% 的准确性。

  2. StatusCallbackEvents - 我将状态事件发布到公共(public)端点。我希望这里有一些有用的信息,但似乎没有。

  3. 手动确定 - 我认为状态/持续时间的某种组合会起作用,但在人工或语音邮件应答的某些情况下,持续时间似乎是相同的。我的猜测是语音邮件正在接听,但 Twilio 认为它是一个人,所以它播放消息并获得与人类接听相同的持续时间。

  4. “调用筛选”又名反向 IfMachine - 我有这个工作,要求用户按下一个键,按下该键后会收到另一条消息。但是,用户按下该键的事实并没有记录在任何地方。不在响应对象或 StatusCallbackEvents 中。

我目前最大的希望是调用筛选将数据(用户按下该键的事实)保存在我可以访问的地方。

最佳答案

如果您不想依赖 Twilio 机器|人工检测,我相信拨号是最好的方法。

如果您使用的是 TwiML,则可以在 <gather> 上设置回调标签。

https://www.twilio.com/docs/api/twiml/gather

The <Gather> verb collects digits that a caller enters into his or her telephone keypad. When the caller is done entering data, Twilio submits that data to the provided 'action' URL

关于c# - Twilio 检测是否有人回答,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40517073/

相关文章:

c# - 在 C# 中读取 Protobuf 消息

c# - Windows.Foundation.UniversalApiContract 在哪里?

json - Arduino JSON 包 - 格式化传感器值

ruby-on-rails - 无法安装 Twilio gem - libxml 问题

ios - 在 iOS 11 上通话时如何访问电话音频流?

c# - 任务 T.IsCancelled = false;我怎样才能做到这一点?

c# - 接受 Expression<Func<T>> 表达式作为参数的扩展方法

Twilio:TwiML <Hangup> 动词不结束通话

iOS后台状态监听调用状态

Java程序自动调用电话卡电话号码,输入卡号时出现问题