我用Linphone sdk开发了一个Android SIP手机,每件事情都不错,但在某些wifi网络上无法接听电话和服务器返回USER_NOT_REGISTERED错误。 例如:
注册后首先: 用户A和用户B可以成功地互相呼叫。
大约十分钟后,当用户A向用户B拨打电话时,服务器说用户B未注册,反之亦然。
用户A和B已注册,因为可以听到服务器消息。
服务器是星号。
我用csipsimple重复这个测试,它没有问题。
我的应用程序现已完成,将其移植到csipsimple并不容易。
有没有办法解决它?
答案 0 :(得分:2)
不,甚至没有适度的复杂方式来修复它。
这是linphone注册的内部问题。这是常见的,至少有5年的知名度,但是linphone开发团队并不在意。
您可以尝试修复linphone核心,或者只是使用sip ping(asterisk qualify = option)以尝试不断开连接。
答案 1 :(得分:0)
创建内核后,您可以尝试将enableKeepAlive设置为true。
Core core;
core = Factory.instance().createCore(......);
core.enableKeepAlive(true);