3

我使用 Linphone sdk 开发了一个 android SIP 电话,一切都很好,但是在某些 wifi 网络上无法接听电话并且服务器返回 USER_NOT_REGISTERED 错误。例如 :

  • 注册后首先:用户A和用户B可以通话成功。

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

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

  • 服务器是星号。

我用 csipsimple 重复这个测试,它没有问题。

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

有什么办法可以解决吗?

4

2 回答 2

2

不,甚至没有中等复杂性的方法来修复它。

那是在 linphone 上注册的内部问题。至少 5 年是常见且知名的,但 linphone 开发团队并不在意。

您可以尝试修复 linphone 核心,或者仅使用 sip ping(星号限定 = 选项)以尝试不断开连接。

于 2017-01-04T15:38:16.260 回答
0

您可以在创建核心后尝试将 enableKeepAlive 设置为 true。

 Core core;
   core = Factory.instance().createCore(......);
   core.enableKeepAlive(true);
于 2020-03-27T15:00:01.423 回答