将Asterisk配置为SIP出站代理(作为SIP服务器中继)

时间:2015-06-09 15:00:43

标签: webrtc asterisk sip

我刚刚安装了Asterisk,我想将Asterisk配置为SIP服务器中继。

我已经有了一台SIP服务器,但是这台服务器并没有直接接受Web套接字(wss)连接。

enter image description here

目的是建立一个使用SIPJS库的Web客户端:(http://sipjs.com/guides/user-agent-construction/),它可以在sipserver A上进行注册。

如何在星号上配置sip.jsextension.conf文件来执行此操作?

1 个答案:

答案 0 :(得分:4)

这可能不是您想要的答案,但Asterisk is not a SIP proxy。它在技术上是B2BUA(背对背用户代理)。

简而言之,这意味着Asterisk始终是通话中的一种终点。

您可以尝试使用可用作无状态中继的Kamailio作为SIP代理,并且它非常擅长。

但是,如果你们两个都可以,你可以通过B2BUA进行通话:

答:创建一个从Asterisk到" SIP服务器A"

的中继

B:创建从SIP.js到Asterisk的客户端连接。 Documentation available for SIP.js specifically for this

在这种情况下,一旦来自SIP.js客户端的呼叫进入Asterisk,您就可以使用Asterisk中的Dial应用程序来桥接呼叫,以便拨打" sip server a"

例如,sip.conf

[sipjs]
context=inbound_sipjs
; ...and the rest from sip.js documentation

[sipservera]
context=inbound_sipserver
; rest as required with your sip server

然后,在您的extensions.conf中,假设来自SIP.js客户端的入站呼叫:

[inbound_sipjs]

exten => _X.,1,Noop(Call from SIP.js)
same =>      n,Dial(SIP/sipservera/${EXTEN})
same =>      n,Hangup()