我使用Linphone(http://www.linphone.org/)开源来使用Asterisk Server制作mVoIP android应用程序。当智能手机处于3G或4G(LTE)网络时,它运行良好。但是,它在Wi-Fi网络上时无法注册。
通过和联系信息对于Wi-Fi网络上的智能手机是错误的。
A = Smartphone on Wi-Fi network
B = Smartphone on 4G(LTE) network
它从A手机向B手机发送声音。但是,它无法将B手机的声音传送到手机。
我追踪了SIP日志,发现手机A告诉Asterisk服务器有错误的私人IP地址(联系方式)。这就是为什么它无法在手机A上听声音。
所以,我打开了Stun服务器,我必须连接特定的stun服务器,它很难通过NAT找到本地IP地址。问题是Linphone本身无法找到Wi-Fi网络上的智能手机A的私有IP地址。
C = A third smartphone on Wi-Fi network.
我遇到的另一个问题是,即使Stun服务器解决了NAT问题,同一Wi-Fi网络上的其他智能手机也无法正常工作。
有没有人有同样的问题?有没有办法解决这个问题?谢谢。
答案 0 :(得分:2)
你有
1)启用STUN
2)在星号中为两个对等设置directrtpsetup = no。