Twilio Stream 在调用更新迭代后停止工作
Twilio Stream stop working after call update iterations
我正在使用 Twilio Programmable Voice,使用标签将通话音频流式传输到我的服务器,然后使用 nodejs SDK 更新通话。
client.calls(_this.CallSid).update
({twiml:
`<Response>
<Play>${url}</Play>
<Start>
<Stream url="${_this.dnsUrl}">
<Parameter name="dnsUrl" value="${_this.dnsUrl}"/>
</Stream>
</Start>
<Pause length="15"/>
</Response>`
})
一切顺利,直到 5 次迭代或大约 50 秒后,Twilio 更新调用但 websocket 连接停止工作。我很确定服务器已启动并且 运行 而不是满负荷。
知道为什么会这样吗?
谢谢!
这里是 Twilio 开发人员布道者。
在我看来,您正在为同一调用设置 5 个以上的 websocket 流以发送到您的服务器?如果是这样,您应该在开始另一个之前先查看 stopping a stream。或者只启动和使用一个流。
这背后的用例似乎也可能是语音识别,以响应您 <Play>
发送给最终用户的消息?如果是这样,您是否考虑过使用 <Gather>
with input="speech"
代替?这样,您将在 webhook 回调中将识别出的语音作为文本接收,并且您可以通过 TwiML 驱动整个调用,而不必使用 REST API.
更新调用
希望这对您有所帮助。
我正在使用 Twilio Programmable Voice,使用标签将通话音频流式传输到我的服务器,然后使用 nodejs SDK 更新通话。
client.calls(_this.CallSid).update
({twiml:
`<Response>
<Play>${url}</Play>
<Start>
<Stream url="${_this.dnsUrl}">
<Parameter name="dnsUrl" value="${_this.dnsUrl}"/>
</Stream>
</Start>
<Pause length="15"/>
</Response>`
})
一切顺利,直到 5 次迭代或大约 50 秒后,Twilio 更新调用但 websocket 连接停止工作。我很确定服务器已启动并且 运行 而不是满负荷。
知道为什么会这样吗?
谢谢!
这里是 Twilio 开发人员布道者。
在我看来,您正在为同一调用设置 5 个以上的 websocket 流以发送到您的服务器?如果是这样,您应该在开始另一个之前先查看 stopping a stream。或者只启动和使用一个流。
这背后的用例似乎也可能是语音识别,以响应您 <Play>
发送给最终用户的消息?如果是这样,您是否考虑过使用 <Gather>
with input="speech"
代替?这样,您将在 webhook 回调中将识别出的语音作为文本接收,并且您可以通过 TwiML 驱动整个调用,而不必使用 REST API.
希望这对您有所帮助。