From 38ad6c8d75fa9e0f3ebcc6320272dd5252505c5f Mon Sep 17 00:00:00 2001 From: Marco Capetta Date: Fri, 7 Feb 2020 10:15:46 +0100 Subject: [PATCH] TT#73957 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. Change-Id: If826a2ebf5c570bbf4e3cbe00a3ad27bffa6efef --- debian/patches/series | 1 + debian/patches/sipwise/handle_bye_after_180.patch | 15 +++++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 debian/patches/sipwise/handle_bye_after_180.patch diff --git a/debian/patches/series b/debian/patches/series index cfef2177..b956f4be 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -34,3 +34,4 @@ sipwise/introduce_forcesdp_from_pbx.patch sipwise/0001-TT-34704-Fix-sems-and-sems-pbx-to-write-pid-file-whe.patch sipwise/0001-TT-53685-add_header_pattern_match_support.patch sipwise/add-vsc-to-disable_all_cf.patch +sipwise/handle_bye_after_180.patch diff --git a/debian/patches/sipwise/handle_bye_after_180.patch b/debian/patches/sipwise/handle_bye_after_180.patch new file mode 100644 index 00000000..08b90109 --- /dev/null +++ b/debian/patches/sipwise/handle_bye_after_180.patch @@ -0,0 +1,15 @@ +--- a/apps/sbc/CallLeg.cpp ++++ b/apps/sbc/CallLeg.cpp +@@ -961,7 +961,11 @@ void CallLeg::onSipRequest(const AmSipRe + } + } + 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