我正在使用 Twillio API 向我的客户拨打出站电话,但我想了解有关通话状态的更多信息。
有没有办法使用 Twillio 的任何 API 来检查通话时长和状态?
我需要检查哪些呼叫未完成或呼叫持续时间少于 10 秒,以便重新发送。
我想接收包含通话状态的 JSON 数据格式
建议的方法是使用在通话结束时触发的Voice Webhook。以下是来自 Twilio Docs 的代码示例:
var response = new VoiceResponse();
var dial = new Dial();
dial.Number("+12349013030", statusCallbackEvent: new []{Number
.EventEnum.Initiated, Number.EventEnum.Ringing, Number.EventEnum
.Answered, Number.EventEnum.Completed}.ToList(),
statusCallback: new Uri("https://myapp.com/calls/events"),
statusCallbackMethod: Twilio.Http.HttpMethod.Post);
response.Append(dial);
Console.WriteLine(response.ToString());
通话结束时,您的 https://myapp.com/calls/events 端点将收到一个 Webhook,其中包含通话持续时间 - 刚刚完成的通话的持续时间(以秒为单位)。您的应用程序将存储此信息,然后您可以根据存储的数据运行报告或查询。
不推荐的循环 Twilio 日志并检查每个调用的持续时间的方法,因为无法按调用持续时间过滤 Twilio 日志。