为了实现freeswitch能够往外面(也就是打到你的手机号上)打电话,我们需要再freeswitch服务器上配置一些参数,当然前提是需要有一个SIP网关(硬件),一般是向网关服务商(华为,奥科等)购买,也可以直接向电信运营商购买。
添加网关只需要在freeswitch服务器目录下的conf/sip_profiles/external/中创建一个XML文件,名字可以随便取,如gwl.xml,然后在这个文件里面输入如下代码:
(注:1.4版本也可能是在conf/sbc/sbc_profiles/external/或者conf/insideout/sip_profiles/external
里面)
<gateway name="gwl">
<param name="realm" value="SIP服务器地址,可以是IP或者IP:端口"/>
<param name="username" value="SIP用户名"/>
<param name="password" value="密码"/>
<param name="proxy" value="112.3.18.9:5060"/>
8 <param name="register" value="true" />
</gateway>
如果你的网关还需要其他参数,可以参阅同目录下的"example.xml",但一般来说上述参数就够了。你可以重启freeswitch,或者执行以下命令使之生效:
freeswitch> sofia profile external rescan
显示一下网关的注册状态:
freeswitch> sofia status
如果显示gateway gwl的状态时REGED,则表明以正确注册到网关了,可以用命令试一下网关是否正常工作:
freeswitch> originate sofia/gateway/gwl/xxxxxxx &echo
以上命令回通过网关gwl呼叫号码xxxxxx(手机号),被叫号码接听电话后,Freeswitch会执行echo程序,你就能听到自己的回声了。
8021: fs_cli客户端连接freeswitch的时候用的端口
5060: SIP软电话连接的端口
官方freeswitch.docker的端口说明
[ERROR] fs_cli.c:1659 main() Error Connecting [Socket Connection Error]
<configuration name="event_socket.conf" description="Socket Client">
<settings>
<param name="nat-map" value="false"/>
<param name="listen-ip" value="0.0.0.0"/>
<param name="listen-port" value="8021"/>
<param name="password" value="ClueCon"/>
<!--<param name="apply-inbound-acl" value="loopback.auto"/>-->
<!--<param name="stop-on-bind-error" value="true"/>-->
</settings>
</configuration>
原文:https://www.cnblogs.com/pyweb/p/13500596.html