From d4d1fc7bb8e4a14ef673fa54c927b548ed2fb821 Mon Sep 17 00:00:00 2001 From: Marco Capetta Date: Thu, 29 Dec 2022 10:14:25 +0100 Subject: [PATCH] MT#55831 Handle BYE after 180 with to_tag - customer has a scenario when 180 has to_tag and call terminated by caller with BYE but calle did not get any call termination signalling. - a bit more special for such cases BYE handling added. (real ticket number: TT#73957) Change-Id: I9ebbf4f3a504d3587550e55aec926438199be5e9 --- apps/sbc/CallLeg.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/apps/sbc/CallLeg.cpp b/apps/sbc/CallLeg.cpp index fa6716e9..9fb55ab8 100644 --- a/apps/sbc/CallLeg.cpp +++ b/apps/sbc/CallLeg.cpp @@ -961,7 +961,11 @@ void CallLeg::onSipRequest(const AmSipRequest& req) } } else { - if(getCallStatus() == Disconnected && + if (getCallStatus() == Ringing && !getOtherId().empty() && req.method == SIP_METH_BYE) { + dlg->reply(req,200,"OK"); + stopCall(&req); + } + else if(getCallStatus() == Disconnected && req.method == SIP_METH_BYE) { // seems that we have already sent/received a BYE // -> we'd better terminate this ASAP