遵循本文档后,我可以成功地将 PSTN 呼叫者添加到视频房间(小房间类型)。我无法做的是检测来电者的 DTMF 音调。
我尝试了两种不同的方法,都失败了
1) 我之前与不同的提供商一起使用过但没有与 Twilio 一起工作过的那个是让房间里的其他用户之一(不是 PSTN 呼叫者,而是一个 javascript 客户端)检测 DTMF 客户端。这不适用于 twilio,因为在我看来 twilio 正在操纵音频流以在 DTMF 到达房间中的其他用户之前删除它们(当 PSTN 呼叫者按下数字时,您只会听到短暂的“点击”另一边)
2)受这个答案的启发,我尝试用 TWIML 回复
<Response>
<Connect>
<Room>my-room</Room>
</Connect>
<Gather input="dtmf">
</Gather>
</Response>
这并不理想,因为它在房间里时不会检测到 DTMF;您将不得不离开房间,但我还是尝试了它,看看我是否可以想出一种方法来终止呼叫以继续使用gather
链接答案中的动词。房间结束后,呼叫似乎没有移动到聚集部分(我尝试完成房间,PSTN 呼叫立即结束)
有没有其他人为此使用过的方法?对我来说最简单的方法是告诉 twilio 不要从音频流中删除 DTMF,这样我的解决方案 #1 就可以了,但我对其他想法持开放态度,可能会利用 twilio 的gather