我在天蓝色实例上设置了kamailio 4.2作为服务器,而对于客户端我正在使用PJSIP库来安装Android和iOS应用程序。当两个设备连接到同一网络时,语音呼叫似乎运行良好,但是,无论是设备连接到不同的网络(或当两个设备都在不同的网络中),它们都能够在SIP服务器上注册,甚至可以在两个设备之间触发和接受呼叫,但两端都没有听到音频 *我甚至设置了rtpproxy。
有人可以帮助我吗?
提前致谢。
答案 0 :(得分:1)
请检查您在kamailio配置中提供的IP地址,使用外部IP地址而非内部IP地址。
答案 1 :(得分:0)
我也面临同样的问题。您唯一需要做的就是正确安装和配置rtpproxy。在Debian中配置的步骤如下。 1)安装RTP代理。
sudo apt-get install rtpproxy
2)在Kamailio中,让它听取rtpproxy的unix socket,因为默认情况下kamailio需要UDP。
vim /etc/kamailio/kamailio.cfg
而不是
modparam("rtpproxy", "rtpproxy_sock", "udp:127.0.0.1:7722")
使用
modparam("rtpproxy", "rtpproxy_sock", "unix:/var/run/rtpproxy/rtpproxy.sock")
如果NAT def如下所示,请确保在同一文件的顶部:
#!KAMAILIO
#!define WITH_MYSQL
#!define WITH_AUTH
#!define WITH_USRLOCDB
#!define WITH_PRESENCE
**#!define WITH_NAT**
#!define WITH_TLS
#!define WITH_ACCDB
3)现在开始rtpproxy
sudo service rtpproxy start
4)重启Kamailio服务
sudo service kamailio start
详细解释,我用Google搜索并找到了一个博客。轻松一下吧。 RTPproxy with ka