r3318 - trunk/libminisip/include/libminisip/signaling/sip

erik at minisip.org erik at minisip.org
Thu Jun 14 13:18:53 CEST 2007


Author: erik
Date: 2007-06-14 13:18:53 +0200 (Thu, 14 Jun 2007)
New Revision: 3318

Modified:
   trunk/libminisip/include/libminisip/signaling/sip/SipDialogConfVoip.h
   trunk/libminisip/include/libminisip/signaling/sip/SipDialogPresenceClient.h
   trunk/libminisip/include/libminisip/signaling/sip/SipDialogPresenceServer.h
   trunk/libminisip/include/libminisip/signaling/sip/SipDialogVoip.h
   trunk/libminisip/include/libminisip/signaling/sip/SipDialogVoipClient.h
   trunk/libminisip/include/libminisip/signaling/sip/SipDialogVoipServer.h
Log:


There are a few issues with how minisip treats configuration data.

For example, the data in SipSoftPhoneConfiguration is global, and used by
ongoing dialogs the same time as the GUI can modify it.

We also treat the configuration data as if it always loaded at start up,
and saved when the user changes it. This makes it a bit hard to implement
things such as signing in and off accounts at any time.

The SipSoftPhoneConfiguration class feels a bit wrong, and with this
commit I start decreasing its importance.

 * The dialog logic only uses two boolean values from
   SipSoftPhoneConfiguration (useSTUN and useAnat). Let's provide
   those values at start up. We then will not have a problem if the user
   changes that configuration value when a dialog is running and checking
   its value.



Modified: trunk/libminisip/include/libminisip/signaling/sip/SipDialogConfVoip.h
===================================================================
--- trunk/libminisip/include/libminisip/signaling/sip/SipDialogConfVoip.h	2007-06-13 20:21:58 UTC (rev 3317)
+++ trunk/libminisip/include/libminisip/signaling/sip/SipDialogConfVoip.h	2007-06-14 11:18:53 UTC (rev 3318)
@@ -42,7 +42,6 @@
 #include<libmsip/SipDialog.h>
 #include<libmsip/SipResponse.h>
 
-#include<libminisip/signaling/sip/SipSoftPhoneConfiguration.h>
 #include<libminisip/signaling/conference/ConfMessageRouter.h>
 
 
@@ -50,12 +49,13 @@
 class SipDialogContainer;
 class SipDialogConfig;
 class LogEntry;
+class ConfMessageRouter;
 
 class LIBMINISIP_API SipDialogConfVoip: public SipDialog{
 	public:
-		SipDialogConfVoip(MRef<ConfMessageRouter*> confCallback, MRef<SipStack*> stack, MRef<SipIdentity*> ident, MRef<SipSoftPhoneConfiguration*> phoneconf, MRef<Session *> mediaSession, minilist<ConfMember> *conflist, std::string confid, std::string callId="");
+		SipDialogConfVoip(MRef<ConfMessageRouter*> confCallback, MRef<SipStack*> stack, MRef<SipIdentity*> ident, bool stun, MRef<Session *> mediaSession, minilist<ConfMember> *conflist, std::string confid, std::string callId="");
 		
-		SipDialogConfVoip(MRef<ConfMessageRouter*> confCallback, MRef<SipStack*> stack, MRef<SipIdentity*> ident, MRef<SipSoftPhoneConfiguration*> phoneconf, MRef<Session *> mediaSession, std::string confid, std::string callId="");
+		SipDialogConfVoip(MRef<ConfMessageRouter*> confCallback, MRef<SipStack*> stack, MRef<SipIdentity*> ident, bool stun, MRef<Session *> mediaSession, std::string confid, std::string callId="");
 
 		virtual ~SipDialogConfVoip();
 
@@ -137,8 +137,8 @@
 		bool localCalled;
 		std::string nonce;
 		std::string realm;
-		MRef<SipSoftPhoneConfiguration*> phoneconf;
 		MRef<Session *> mediaSession;
+		bool useStun;
 
 };
 

Modified: trunk/libminisip/include/libminisip/signaling/sip/SipDialogPresenceClient.h
===================================================================
--- trunk/libminisip/include/libminisip/signaling/sip/SipDialogPresenceClient.h	2007-06-13 20:21:58 UTC (rev 3317)
+++ trunk/libminisip/include/libminisip/signaling/sip/SipDialogPresenceClient.h	2007-06-14 11:18:53 UTC (rev 3318)
@@ -41,7 +41,6 @@
 #include<libmsip/SipDialog.h>
 #include<libmsip/SipResponse.h>
 
-#include<libminisip/signaling/sip/SipSoftPhoneConfiguration.h>
 
 class Session;
 class SipDialogContainer;

Modified: trunk/libminisip/include/libminisip/signaling/sip/SipDialogPresenceServer.h
===================================================================
--- trunk/libminisip/include/libminisip/signaling/sip/SipDialogPresenceServer.h	2007-06-13 20:21:58 UTC (rev 3317)
+++ trunk/libminisip/include/libminisip/signaling/sip/SipDialogPresenceServer.h	2007-06-14 11:18:53 UTC (rev 3318)
@@ -41,7 +41,6 @@
 #include<libmsip/SipDialog.h>
 #include<libmsip/SipResponse.h>
 
-#include<libminisip/signaling/sip/SipSoftPhoneConfiguration.h>
 
 class Session;
 class SipDialogContainer;

Modified: trunk/libminisip/include/libminisip/signaling/sip/SipDialogVoip.h
===================================================================
--- trunk/libminisip/include/libminisip/signaling/sip/SipDialogVoip.h	2007-06-13 20:21:58 UTC (rev 3317)
+++ trunk/libminisip/include/libminisip/signaling/sip/SipDialogVoip.h	2007-06-14 11:18:53 UTC (rev 3318)
@@ -41,18 +41,15 @@
 #include<libmsip/SipResponse.h>
 #include<libmutil/StateMachine.h>
 
-#include<libminisip/signaling/sip/SipSoftPhoneConfiguration.h>
+#include<libminisip/media/Session.h>
 
-class Session;
-class SipDialogContainer;
-class SipDialogConfig;
 class LogEntry;
 
 class LIBMINISIP_API SipDialogVoip: public SipDialog{
 	public:
 		SipDialogVoip(	MRef<SipStack*> stack,
 						MRef<SipIdentity*> ident,
-						MRef<SipSoftPhoneConfiguration*> pconf,
+						bool useStun,
 						MRef<Session *> mediaSession,
 						std::string cid=""
 					);
@@ -81,7 +78,6 @@
 		void registerSDP(uint32_t sourceId, MRef<SdpPacket*> sdppack);
 
 		
-		MRef<SipSoftPhoneConfiguration*> phoneconf;
 		MRef<Session *> mediaSession;
 		
 		/**
@@ -90,6 +86,7 @@
 		*/
 		bool notifyEarlyTermination;
 		
+		bool useStun;
 	private:
 		
 		void setUpStateMachine();

Modified: trunk/libminisip/include/libminisip/signaling/sip/SipDialogVoipClient.h
===================================================================
--- trunk/libminisip/include/libminisip/signaling/sip/SipDialogVoipClient.h	2007-06-13 20:21:58 UTC (rev 3317)
+++ trunk/libminisip/include/libminisip/signaling/sip/SipDialogVoipClient.h	2007-06-14 11:18:53 UTC (rev 3318)
@@ -52,7 +52,7 @@
 
 class LIBMINISIP_API SipDialogVoipClient: public SipDialogVoip{
 	public:
-		SipDialogVoipClient(MRef<SipStack*> stack, MRef<SipIdentity*> ident, MRef<SipSoftPhoneConfiguration*> phoneconf, MRef<Session *> mediaSession, std::string callId="");
+		SipDialogVoipClient(MRef<SipStack*> stack, MRef<SipIdentity*> ident, /*MRef<SipSoftPhoneConfiguration*> phoneconf*/ bool useStun, bool useAnat, MRef<Session *> mediaSession, std::string callId="");
 
 		virtual ~SipDialogVoipClient();
 
@@ -61,6 +61,7 @@
 		virtual std::string getName(){return "SipDialogVoipClient[callid="+dialogState.callId +"]";}
 
 	private:
+		bool useAnat;
 		
 		void setUpStateMachine();
 		

Modified: trunk/libminisip/include/libminisip/signaling/sip/SipDialogVoipServer.h
===================================================================
--- trunk/libminisip/include/libminisip/signaling/sip/SipDialogVoipServer.h	2007-06-13 20:21:58 UTC (rev 3317)
+++ trunk/libminisip/include/libminisip/signaling/sip/SipDialogVoipServer.h	2007-06-14 11:18:53 UTC (rev 3318)
@@ -49,7 +49,6 @@
 #include<libmsip/SipResponse.h>
 
 #include<libminisip/signaling/sip/SipDialogVoip.h>
-#include<libminisip/signaling/sip/SipSoftPhoneConfiguration.h>
 
 class Session;
 class SipDialogContainer;
@@ -58,7 +57,11 @@
 
 class LIBMINISIP_API SipDialogVoipServer: public SipDialogVoip{
 	public:
-		SipDialogVoipServer(MRef<SipStack*> stack, MRef<SipIdentity*> ident, MRef<SipSoftPhoneConfiguration*> phoneconf, MRef<Session *> mediaSession, std::string callId="");
+		SipDialogVoipServer(MRef<SipStack*> stack, 
+				MRef<SipIdentity*> ident, 
+				bool useStun,
+				MRef<Session *> mediaSession, 
+				std::string callId="");
 
 		virtual ~SipDialogVoipServer();
 



More information about the Minisip-devel mailing list