我正在开发一个SIP应用程序而且我遇到了一个问题:当我在对等端结束呼叫时,呼叫不会在另一个呼叫中结束。我怎么解决这个问题 ?我可以在函数onCallEnded上添加一些内容吗?:
public void onCallEnded(SipAudioCall call) {
updateStatus("Call ended.");
}
或者还有其他解决方案吗?
非常感谢。
答案 0 :(得分:0)
你的问题缺乏太多信息才能得到真正的答案。您应该生成tcpdump / wireshark跟踪并查看a)是否发送了BYE,b)是否转到正确的地址(您正常注册的SIP服务器),c)如果另一端收到BYE,它是如果它正确构建和,另一端没有路由器关闭传入SIP端口的问题,d)如果BYE的200 OK回到发送方。请注意,如果在INVITE上使用错误的路由选项,BYE将尝试直接转到另一部电话,而不是SIP服务器。这通常不是一件好事。