以前に 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();
}
}
なぜこれが起こっているのか、私が間違っていることは誰にも分かりますか?