Module: sems
Branch: master
Commit: 329f76c74eea233997d90cbf66be35449e97c0a9
URL:    
http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commit;h=329f76c74eea233997d90cbf66be35449e97c0a9

Author: Stefan Sayer <[email protected]>
Committer: Stefan Sayer <[email protected]>
Date:   Wed Sep 21 16:07:41 2011 +0200

sbc: fixed end-to-end BYE

---

 apps/sbc/SBC.cpp      |    5 ++++-
 core/AmB2BSession.cpp |    8 ++++++++
 core/AmB2BSession.h   |    1 +
 3 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/apps/sbc/SBC.cpp b/apps/sbc/SBC.cpp
index bb6c45a..ceac266 100644
--- a/apps/sbc/SBC.cpp
+++ b/apps/sbc/SBC.cpp
@@ -1124,7 +1124,10 @@ void SBCDialog::onOtherBye(const AmSipRequest& req)
 void SBCDialog::onBye(const AmSipRequest& req)
 {
   DBG("onBye()\n");
-  stopCall();
+
+  onCallStopped();
+
+  AmB2BCallerSession::onBye(req);
 }
 
 
diff --git a/core/AmB2BSession.cpp b/core/AmB2BSession.cpp
index 20d8414..5715959 100644
--- a/core/AmB2BSession.cpp
+++ b/core/AmB2BSession.cpp
@@ -1038,6 +1038,14 @@ void AmB2BCallerSession::onCancel(const AmSipRequest& 
req)
   terminateLeg();
 }
 
+void AmB2BCallerSession::onBye(const AmSipRequest& req)
+{
+  if (rtp_relay_enabled)
+    clearRtpReceiverRelay();
+
+  AmB2BSession::onBye(req);
+}
+
 void AmB2BCallerSession::connectCallee(const string& remote_party,
                                       const string& remote_uri,
                                       bool relayed_invite)
diff --git a/core/AmB2BSession.h b/core/AmB2BSession.h
index 7daee5d..7e64b5e 100644
--- a/core/AmB2BSession.h
+++ b/core/AmB2BSession.h
@@ -313,6 +313,7 @@ class AmB2BCallerSession: public AmB2BSession
   void onInvite(const AmSipRequest& req);
   void onInvite2xx(const AmSipReply& reply);
   void onCancel(const AmSipRequest& req);
+  void onBye(const AmSipRequest& req);
 
   // @see AmB2BSession
   void terminateLeg();

_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to