我想为我们的应用程序开发一个浏览器到浏览器调用函数,但是在代码发布到生产环境之前,所有浏览器都在针对内部网络上的mydomain.local地址运行。我能够拨打电话并获得试用消息,但我假设呼叫没有通过目标浏览器,因为它没有在公共站点上运行。有没有办法解决?我认为这是一种常见的情况。
更新:详细信息:这是针对网页A上的客户服务用户调用客户网页B1(使用Twilio连接代码)和B2(使用教程中描述的TwiML):
A(客户服务方)
call: function () {
var phone = { 'PhoneNumber': ' 444e0d6c161644a6a27a305332a4cbbd') };
Twilio.Device.connect(phone);
$(".call").hide();
$(".hang-up").show();
},
B1 :(客户页面) .... capability.AllowClientIncoming( “444e0d6c161644a6a27a305332a4cbbd”); ....
B2 :(从客户页面发布) 444e0d6c161644a6a27a305332a4cbbd
我的VoiceURL配置为指向B2;
A& A B运行Twilio设置代码,调用“就绪”功能。
当在客户服务方面触发呼叫方法时,在我“按任意键继续”后,Twilio演示消息将播放并挂起;
B1永远不会接到来电。同样,拨打我的Twilio电话号码只会播放默认的演示消息,似乎无法连接到网页。
文档非常多余,确实感觉缺少一块。
答案 0 :(得分:1)
Twilio传道者在这里。
这可能是因为您的防火墙阻止了入站ports needed for Twilio Client。如果是这样的话,没有打开它们,我不相信有很多事情可以做。
在开始搞乱防火墙之前,我会首先仔细检查你的第二个Twilio Client实例是否在加载时通过处理error function实际连接到Twilio,我还会打开你的浏览器开发人员控制台并确保没有报告任何JavaScript错误。您还可以添加' debug'调用setup函数以使Twilio Client将调试信息记录到浏览器控制台时的参数。
最后,我将验证您正在正确生成用于转发对该客户端的调用的TwiML,包括具有第二个客户端正在注册的正确名称的<Client>
名词。
希望有所帮助。