我想知道以前有没有人遇到过 SIP 中的错误?
WARN/System.err(4623): javax.sip.SipException: Response does not belong to this transaction.
我收到邀请后就收到了,然后我发回 100 次尝试,然后 180 次响铃。
然后用户可以在屏幕上按拒绝或接受。
如果他们按下拒绝,我会发送一个可以正常工作的拒绝。
但是,当我发送带有 SDP 数据的 OK 以接受呼叫时,我收到上述错误。
这里有一些代码片段:
ServerTransaction st = requestEvent.getServerTransaction();
if (st == null) {
st = sipProvider.getNewServerTransaction(request);
}
dialog = st.getDialog();
st.sendResponse(response);
this.ringingResponse = messageFactory.createResponse(Response.RINGING,
request);
st.sendResponse(ringingResponse);
Response response = null;
try {
response = messageFactory.createResponse(Response.DECLINE,request);
}
catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
st.sendResponse(response);
} catch (SipException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvalidArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(CallDialogActivity.SIP_INCOMING_CALL_ANSWER_INTENT.equals(action)){
Response response = null;
try {
response = messageFactory.createResponse(Response.OK,request);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
st.sendResponse(okResponse);
} catch (SipException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvalidArgumentException e) {
/ TODO Auto-generated catch block
e.printStackTrace();
}
}
任何人都知道为什么会发生这种情况以及我做错了什么?