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

Author: Stefan Sayer <[email protected]>
Committer: Stefan Sayer <[email protected]>
Date:   Mon Mar 12 16:48:43 2012 +0100

b/f: in webconference app, handle session timer timeout and RTP timeout

by leaving the conference

---

 apps/webconference/WebConferenceDialog.cpp |   12 ++++++++++++
 apps/webconference/WebConferenceDialog.h   |    3 +++
 2 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/apps/webconference/WebConferenceDialog.cpp 
b/apps/webconference/WebConferenceDialog.cpp
index a81c863..db5f174 100644
--- a/apps/webconference/WebConferenceDialog.cpp
+++ b/apps/webconference/WebConferenceDialog.cpp
@@ -272,6 +272,18 @@ void WebConferenceDialog::onBye(const AmSipRequest& req)
   disconnectConference();
 }
 
+void WebConferenceDialog::onRtpTimeout() {
+  DBG("RTP timeout, removing from conference\n");
+  disconnectConference();
+  AmSession::onRtpTimeout();
+}
+
+void WebConferenceDialog::onSessionTimeout() {
+  DBG("Session Timer: Timeout, removing from conference.\n");
+  disconnectConference();
+  AmSession::onSessionTimeout();
+}
+
 void WebConferenceDialog::disconnectConference() {
   play_list.flush();
   setInOut(NULL,NULL);
diff --git a/apps/webconference/WebConferenceDialog.h 
b/apps/webconference/WebConferenceDialog.h
index 19ff594..6b816db 100644
--- a/apps/webconference/WebConferenceDialog.h
+++ b/apps/webconference/WebConferenceDialog.h
@@ -107,6 +107,9 @@ public:
   void onDtmf(int event, int duration);
   void onBye(const AmSipRequest& req);
 
+  void onSessionTimeout();
+  void onRtpTimeout();
+
   UACAuthCred* getCredentials() { return cred; }
 
 };

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

Reply via email to