sip: ACK on SIP failure message to avoid it being retransmitted
Otherwise the SIP message is retransmitted by osmo-sip-connector around 10-11 times, even when next test has started, making it fail since it's not expected. Change-Id: Icd0f7a7fac4be2aa97eb986c3d3d27dd70a49357
This commit is contained in:
parent
5e8573e9b7
commit
37cf40843e
|
@ -202,14 +202,23 @@ function f_establish_mt(inout CallPars cp) runs on ConnHdlr {
|
||||||
/* OSC <- SIP: A party sends SIP invite for a MT-call into OSC */
|
/* OSC <- SIP: A party sends SIP invite for a MT-call into OSC */
|
||||||
SIP.send(ts_SIP_INVITE(cp.comp.sip_call_id, cp.comp.sip_url_ext, cp.comp.sip_url_gsm,
|
SIP.send(ts_SIP_INVITE(cp.comp.sip_call_id, cp.comp.sip_url_ext, cp.comp.sip_url_gsm,
|
||||||
cp.comp.sip_seq_nr, cp.comp.sip_body));
|
cp.comp.sip_seq_nr, cp.comp.sip_body));
|
||||||
/* MSC <- OSC: OSC generates MNCC_SETUP_REQ from INVITE */
|
|
||||||
MNCC.receive(tr_MNCC_SETUP_req) -> value mncc {
|
|
||||||
cp.mncc_call_id := mncc.u.signal.callref;
|
|
||||||
}
|
|
||||||
/* OSC -> SIP */
|
/* OSC -> SIP */
|
||||||
SIP.receive(tr_SIP_Response(cp.comp.sip_call_id, sip_addr_ext, sip_addr_gsm, *,
|
SIP.receive(tr_SIP_Response(cp.comp.sip_call_id, sip_addr_ext, sip_addr_gsm, *,
|
||||||
"INVITE", 100, ?, "Trying", *));
|
"INVITE", 100, ?, "Trying", *));
|
||||||
|
|
||||||
|
alt {
|
||||||
|
/* MSC <- OSC: OSC generates MNCC_SETUP_REQ from INVITE */
|
||||||
|
[] MNCC.receive(tr_MNCC_SETUP_req) -> value mncc {
|
||||||
|
cp.mncc_call_id := mncc.u.signal.callref;
|
||||||
|
}
|
||||||
|
[] SIP.receive {
|
||||||
|
setverdict(fail, "Received unexpected respose");
|
||||||
|
SIP.send(ts_SIP_ACK(cp.comp.sip_call_id, cp.comp.sip_url_ext, cp.comp.sip_url_gsm,
|
||||||
|
cp.comp.sip_seq_nr, omit));
|
||||||
|
mtc.stop;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* MSC -> OSC: After MS sends CALL CONF in response to SETUP */
|
/* MSC -> OSC: After MS sends CALL CONF in response to SETUP */
|
||||||
MNCC.send(ts_MNCC_CALL_CONF_ind(cp.mncc_call_id));
|
MNCC.send(ts_MNCC_CALL_CONF_ind(cp.mncc_call_id));
|
||||||
/* MSC <- OSC: OSC asks MSC to create RTP socket */
|
/* MSC <- OSC: OSC asks MSC to create RTP socket */
|
||||||
|
@ -223,8 +232,16 @@ function f_establish_mt(inout CallPars cp) runs on ConnHdlr {
|
||||||
/* MSC -> OSC: After MS is ringing and sent CC ALERTING */
|
/* MSC -> OSC: After MS is ringing and sent CC ALERTING */
|
||||||
MNCC.send(ts_MNCC_ALERT_ind(cp.mncc_call_id));
|
MNCC.send(ts_MNCC_ALERT_ind(cp.mncc_call_id));
|
||||||
SIP.clear;
|
SIP.clear;
|
||||||
SIP.receive(tr_SIP_Response(cp.comp.sip_call_id, sip_addr_ext, sip_addr_gsm, *,
|
alt {
|
||||||
"INVITE", 180, ?, "Ringing", *));
|
[] SIP.receive(tr_SIP_Response(cp.comp.sip_call_id, sip_addr_ext, sip_addr_gsm, *,
|
||||||
|
"INVITE", 180, ?, "Ringing", *));
|
||||||
|
[] SIP.receive {
|
||||||
|
setverdict(fail, "Received unexpected respose");
|
||||||
|
SIP.send(ts_SIP_ACK(cp.comp.sip_call_id, cp.comp.sip_url_ext, cp.comp.sip_url_gsm,
|
||||||
|
cp.comp.sip_seq_nr, omit));
|
||||||
|
mtc.stop;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* MSC -> OSC: After MT user has picked up and sent CC CONNECT */
|
/* MSC -> OSC: After MT user has picked up and sent CC CONNECT */
|
||||||
MNCC.send(ts_MNCC_SETUP_CNF(cp.mncc_call_id));
|
MNCC.send(ts_MNCC_SETUP_CNF(cp.mncc_call_id));
|
||||||
|
|
Loading…
Reference in New Issue