我正在用Java编写一个应用程序,当人们在打电话,他们的电话在振铃或空闲时,我正在使用Jain-Sip库进行呼叫和查看,目前我正在尝试正确地实现订阅和通知消息的存在。我能够获得要接收的在线状态数据,但过了一段时间后,我的程序将停止显示在线状态数据。
我相信这是因为被覆盖的方法"processRequest“没有被调用。这是程序中最早处理NOTIFY消息的点,甚至连print语句都没有输出。
奇怪的是,当我进行调用时,会发送通知消息,而且存在数据也在那里。我之所以知道这一点,是因为我在运行程序时做过Wireshark跟踪。
注意:在程序执行过程中不会发生异常,从而导致错误行为。
如果有人对为什么会发生这种情况有任何见解,我将非常感激。
非常感谢,亚当
发布于 2014-04-20 22:58:10
确保您正确地添加了侦听器类。唯一其他可能的原因是通知是未经请求的,这不应该是这种情况,但它发生了。尝试启用此标志gov.nist.javax.sip.DELIVER_UNSOLICITED_NOTIFY。请在此处查看更多信息https://jsip.ci.cloudbees.com/job/jsip/javadoc/gov/nist/javax/sip/SipStackImpl.html
否则,您将需要附加调试日志来找出它,可能是格式错误的请求或类似的东西。
https://stackoverflow.com/questions/23183429
复制相似问题