配置星号13以支持WebSockets/WebRTC
我有一个带debian 9的虚拟机。我通过apt get安装了Asterisk 13.14.1,并将其配置为有三个用户,其中两个是sip用户(Zoiper应用程序),另一个是webrtc用户(使用自定义应用程序)。自定义应用程序非常基本,使用的代码可以在中找到。但是,不是使用:配置星号13以支持WebSockets/WebRTC,websocket,webrtc,asterisk,Websocket,Webrtc,Asterisk,我有一个带debian 9的虚拟机。我通过apt get安装了Asterisk 13.14.1,并将其配置为有三个用户,其中两个是sip用户(Zoiper应用程序),另一个是webrtc用户(使用自定义应用程序)。自定义应用程序非常基本,使用的代码可以在中找到。但是,不是使用: var socket = new JsSIP.WebSocketInterface('wss://mypbxipaddress'); 我用 SIP用户似乎工作正常。然而,我对webrtc用户有意见,我认为这是在服务器端
var socket = new JsSIP.WebSocketInterface('wss://mypbxipaddress');
我用
SIP用户似乎工作正常。然而,我对webrtc用户有意见,我认为这是在服务器端,特别是在websocket上。在连接过程中,我在客户端收到以下错误:
main.js:158470 WebSocket connection to 'ws://mypbxipaddress/' failed: Error during WebSocket handshake: Unexpected response code: 200
此外,我还尝试了wscat(npm包)
我收到:
error: Error: connect ECONNREFUSED mypbxipaddress:arandomport
我终于登记了
asterisk -rvvvvv
我得到:
HTTP Server Status:
Prefix:
Server: Asterisk/13.14.1~dfsg-2
Server Enabled and Bound to 0.0.0.0:8080
Enabled URI's:
/httpstatus => Asterisk HTTP General Status
/phoneprov/... => Asterisk HTTP Phone Provisioning Tool
/static/... => Asterisk HTTP Static Delivery
/ari/... => Asterisk RESTful API
/ws => Asterisk HTTP WebSocket
Enabled Redirects:
None.
它用/ws=>asteriskHTTPWebSocket表示WebSocket处于活动状态
关于如何进一步调试它,有什么建议吗
谢谢
Symeon1)了解更多关于websocket的信息,请执行tcpdump
2) 进行星号调试
asterisk -r
core set debug 10
答案和往常一样简单得多。我得换衣服
var socket = new JsSIP.WebSocketInterface('ws://mypbxipaddress:8088/ws');
经过一番研究,我得出的结论是:
asterisk -rvvvvv
http show status
在这里,它提到了“服务器已启用并绑定到mypbxipaddress:8088”,这是在/etc/asterisk/http.conf中定义的
bindaddr=mypbxipaddress
bindport=8088
您应该尝试:
wscat-s echo-cws://mypbxipaddress:8080/ws
因为:服务器已启用并绑定到0.0.0.0:8080
和/ws=>星号HTTP WebSocket
您还可以检查套接字是否处于侦听状态:
netstat -lna | grep 8080
核心集debug 10没有任何区别。我没有收到任何消息。但是,使用tcpdump时,我收到了以下消息,该消息可能表示:05:54:53.080539 IP deviceip.54978>PBXIP.5060:SIP:REGISTER SIP:172.26.41.2;transport=UDP SIP/2.0 05:54:53.080975 IP PBXIP.80>deviceip.35469:标志[P],序号1:3325,ack 576,win 236,选项[nop,nop,TS val 12025967 ecr 139793604],长度3324:HTTP:HTTP/1.1200 OK 05:54:53.081863 IP PBXIP.5060>deviceip.54978:SIP:2.0 401
asterisk -rvvvvv
http show status
bindaddr=mypbxipaddress
bindport=8088
netstat -lna | grep 8080