MT#56321 Refresh caller if 183 media forced (part 2)

B2BSipReply

We have to update the media session with the caller, if the 183 response
with the 'P-Early-Announce: force' has been received.

Change-Id: Iec67c6b6cc5284afbcfb492fc53108439a427b1d
mr11.3.1
Donat Zenichev 3 years ago
parent 4012dc9314
commit 91039bb8a9

@ -291,8 +291,20 @@ void AmB2BSession::onB2BEvent(B2BEvent* ev)
}
} else {
/* ensure that 'P-Early-Announce: force' is not present */
if (reply_ev->reply.code == 183 && !dlg->getForcedEarlyAnnounce()) {
string announce = getHeader(reply_ev->reply.hdrs, SIP_HDR_P_EARLY_ANNOUNCE);
dlg->setForcedEarlyAnnounce(announce.find("force") != std::string::npos);
}
/* don't forget to reset the force_early_announce, if 200 OK in the same leg received */
if (SIP_IS_200_CLASS(reply_ev->reply.code) && dlg->getForcedEarlyAnnounce()) {
dlg->setForcedEarlyAnnounce(false);
}
/* check whether not-forwarded (locally initiated)
* INV/UPD transaction changed session in other leg */
* INV/UPD transaction changed session in other leg */
if (SIP_IS_200_CLASS(reply_ev->reply.code) &&
(!reply_ev->reply.body.empty()) &&
(reply_ev->reply.cseq_method == SIP_METH_INVITE ||

Loading…
Cancel
Save