twilio - iOS 上的 Twilio / TwiML - 使用入队和拨号
问题描述
基本上,我正在创建一个 iOS 应用程序,当点击某个按钮时,它将在我的办公室拨打电话号码。这工作正常,但现在我想在等待手机被拿起时播放音乐文件。
知道 Dial 无法使用音乐文件替换默认的等待音,我被引导使用 Enqueue 的 waitURL。但是,我不知道如何出列以启动拨号。这就是整个 TwiML 现在的样子,它无需拨入即可播放整首歌曲:
<Response>
<Enqueue waitUrl="waitMusic.xml">office</Enqueue>
<Dial callerId="+12345678910">
<Number >999-999-9999</Number>
</Dial>
</Response>
waitMusic.xml 很简单:
<Response>
<play>slowrock.mp3</play>
</Response>
不能使用这个 TwiML 吗?
解决方案
Twilio 开发人员布道者在这里。
你不能一起使用<Dial>
和<Enqueue>
喜欢那样。这是你需要做的。
当用户点击按钮时,让他们进行调用并仅<Enqueue>
在 TwiML 响应中返回 。
<Response>
<Enqueue waitUrl="waitMusic.xml">office</Enqueue>
</Response>
在该响应中,还启动了对您要使用 REST API 拨打的号码的呼叫。当该呼叫被应答时,Twilio 将请求一些 TwiML,您应该返回一个<Dial>
带有嵌套的嵌套<Queue>
,它将从队列中弹出顶部呼叫者并将他们连接到电话上的人。
<Response>
<Dial>
<Queue>office</Queue>
</Dial>
</Response>
您可能需要做更多的工作以确保您不会让任何人卡在队列中,但这应该可以帮助您开始。
推荐阅读
- swift - 如何快速传递通用属性?
- ios - 如何使 UICollectionView 动态高度?
- python - Python没有修改全局变量
- git - 如何提交对 docker 镜像所做的更改
- html - 在 Apple 的 WebKit webView 中加载自定义字体的问题
- sql - SQL - 获取每个 PlayerID 的最小日期
- typescript - 扩展一个可由用户定义的接口
- ansible - 合并到嵌套的字典数组中
- python - 如何在 python Dataframe 中将“2011-04-29 00:00:00”转换为“29-Apr-2011”
- python - 根据两个不同列的日期获取交叉连接表的唯一记录时,如何提高逻辑速度/内存?