Android Linphone在一段时间后无法在某些wifi网络上接收来电

Android Linphone在一段时间后无法在某些wifi网络上接收来电,android,asterisk,linphone,linphone-sdk,Android,Asterisk,Linphone,Linphone Sdk,我使用Linphone sdk开发了一款android SIP手机,一切都很好,但在某些wifi网络上无法接收呼叫,服务器返回用户未注册错误。 例如: 注册后首先: 用户A和用户B可以成功地相互呼叫 大约十分钟后,当用户A拨出电话给用户B时,服务器会说用户B未注册,反之亦然 用户A和B已注册,因为可以听到服务器消息 服务器是星号 我用csipsimple重复这个测试,它可以正常工作 我的应用程序现在已经完成,将其移植到csipsimple并不容易 有什么方法可以修复它吗?没有,甚至没有中等复

我使用Linphone sdk开发了一款android SIP手机,一切都很好,但在某些wifi网络上无法接收呼叫,服务器返回用户未注册错误。 例如:

  • 注册后首先: 用户A和用户B可以成功地相互呼叫

  • 大约十分钟后,当用户A拨出电话给用户B时,服务器会说用户B未注册,反之亦然

  • 用户A和B已注册,因为可以听到服务器消息

  • 服务器是星号

我用csipsimple重复这个测试,它可以正常工作

我的应用程序现在已经完成,将其移植到csipsimple并不容易


有什么方法可以修复它吗?

没有,甚至没有中等复杂度的方法可以修复它

这是linphone注册中的内部问题。这是常见的,众所周知的至少5年,但linphone开发团队不太关心


您可以尝试修复linphone core,或仅使用sip ping(asterisk Qualife=option)以避免连接松动。

您可以在创建core后尝试将enableKeepAlive设置为true

 Core core;
   core = Factory.instance().createCore(......);
   core.enableKeepAlive(true);

您好,您说我失去了连接,但在这种情况下为什么我可以打外线电话。为什么linphone不说任何关于连接丢失的事情。请解释更多关于ping星号的信息。谢谢,对不起,回答“为什么”太复杂了,无法放在这里。检查sip授权是如何工作的,特别是什么是“nonce”以及它是如何计算的。我在Linphone上也遇到了一些注册丢失问题。您能否详细说明一下潜在的问题,或者您的ping工作环境如何?您知道的linphone核心团队是否存在一个bug?linphone核心团队知道但不太关心。SIP ping是voip的常用术语。