我在使用 Twilio 检测 Twilio 浏览器客户端是否可用时遇到问题。
如果 Twilio 客户端不可用,则需要发送语音邮件,否则我将用于接听电话。
Twilio.Device.incoming(function (conn);
谢谢。
我在使用 Twilio 检测 Twilio 浏览器客户端是否可用时遇到问题。
如果 Twilio 客户端不可用,则需要发送语音邮件,否则我将用于接听电话。
Twilio.Device.incoming(function (conn);
谢谢。
听起来你需要代理存在。有几种方法可以解决这个问题。一种(推荐)是使用 Twilio TaskRouter。https://www.twilio.com/taskrouter。这将为您处理代理存在(在线、离线、忙碌等)等等
您的另一个选择是使用 PubNub http://www.pubnub.com/之类的服务并绑定 clint,以便您可以获取状态信息(在线、离线、忙碌等)。这更容易,因为您必须自己处理状态。
可以通过以下步骤来实现
1. 为客户端的 Dial 动词的 action 属性设置一个有效的 url
例如,拨号客户端的 TwiMl 必须是
<Response>
<Dial action="myapp/statusCallBack">
<Client>jenny</Client>
</Dial>
</Response>
2.如果客户端jenny可用,可以通过
Twilio.Device.incoming(function (conn){conn.accept();}接收连接对象);
3. 如果客户端 jenny 不可用,Twilio 将使用参数 'DialCallStatus=no-answer' 请求 statusCallBack url。
现在可以返回以下twiml 来表示不可用消息。
<响应>
请留下您的姓名和电话号码以及短信。
</Say>
<Record maxLength="3600" action="myapp/recordedUrl">
</Record>
</Response>
4. 现在可以存储语音信箱 url 时调用“myapp/recordedUrl”一旦呼叫者记录了语音信箱。有关记录动词的更多信息,请访问此站点
请注意,如果客户端不可用或客户端不接受呼叫,语音邮件会在两种情况下被记录。