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

Author: Stefan Sayer <[email protected]>
Committer: Stefan Sayer <[email protected]>
Date:   Tue Apr 17 16:13:12 2012 +0200

b/f: callgen: fixing proper call ending on failed outgoing calls

---

 apps/examples/call_gen/CallGen.cpp |    9 +++++++++
 apps/examples/call_gen/CallGen.h   |    2 ++
 2 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/apps/examples/call_gen/CallGen.cpp 
b/apps/examples/call_gen/CallGen.cpp
index 4b46beb..73e38f7 100644
--- a/apps/examples/call_gen/CallGen.cpp
+++ b/apps/examples/call_gen/CallGen.cpp
@@ -470,3 +470,12 @@ void CallGenDialog::onBye(const AmSipRequest& req) {
   setInOut(NULL,NULL);
   setStopped();
 }
+
+void CallGenDialog::onSipReply(const AmSipReply& reply, AmSipDialog::Status 
old_dlg_status) {
+  AmSession::onSipReply(reply, old_dlg_status);
+  if ((old_dlg_status < AmSipDialog::Connected) &&
+      dlg.getStatus() == AmSipDialog::Disconnected) {
+    DBG("SIP dialog status change: < Connected -> Disconnected, stopping 
call\n");
+    setStopped();
+  }
+}
diff --git a/apps/examples/call_gen/CallGen.h b/apps/examples/call_gen/CallGen.h
index d2ac1cb..1550738 100644
--- a/apps/examples/call_gen/CallGen.h
+++ b/apps/examples/call_gen/CallGen.h
@@ -153,6 +153,8 @@ public:
   void onSessionStart();
   void onBye(const AmSipRequest& req);
   void process(AmEvent* event);
+  void onSipReply(const AmSipReply& reply, AmSipDialog::Status old_dlg_status);
+
 };
 
 #endif

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

Reply via email to