[Freeswitch-svn] [commit] r4883 - in freeswitch/trunk: libs/libdingaling/src src/mod/endpoints/mod_dingaling

Freeswitch SVN anthm at freeswitch.org
Sat Apr 7 11:55:08 EDT 2007


Author: anthm
Date: Sat Apr  7 11:55:07 2007
New Revision: 4883

Modified:
   freeswitch/trunk/libs/libdingaling/src/libdingaling.c
   freeswitch/trunk/libs/libdingaling/src/libdingaling.h
   freeswitch/trunk/src/mod/endpoints/mod_dingaling/mod_dingaling.c

Log:
add dl_debug api command

Modified: freeswitch/trunk/libs/libdingaling/src/libdingaling.c
==============================================================================
--- freeswitch/trunk/libs/libdingaling/src/libdingaling.c	(original)
+++ freeswitch/trunk/libs/libdingaling/src/libdingaling.c	Sat Apr  7 11:55:07 2007
@@ -1391,9 +1391,9 @@
 										handle,
 										(iksStreamHook *) (ldl_test_flag(handle, LDL_FLAG_COMPONENT) ? on_stream_component : on_stream));
 
-		if (globals.debug) {
-			iks_set_log_hook(handle->parser, (iksLogHook *) on_log);
-		}
+
+		iks_set_log_hook(handle->parser, (iksLogHook *) on_log);
+			
 		
 		strncpy(tmp, jabber_id, sizeof(tmp)-1);
 		sl = strchr(tmp, '/');
@@ -1763,6 +1763,15 @@
 	
 }
 
+int ldl_global_debug(int on)
+{
+	if (on > -1) {
+		globals.debug = on ? 1 : 0;
+	}
+
+	return globals.debug ? 1 : 0;
+}
+
 void ldl_global_set_logger(ldl_logger_t logger)
 {
 	globals.logger = logger;

Modified: freeswitch/trunk/libs/libdingaling/src/libdingaling.h
==============================================================================
--- freeswitch/trunk/libs/libdingaling/src/libdingaling.h	(original)
+++ freeswitch/trunk/libs/libdingaling/src/libdingaling.h	Sat Apr  7 11:55:07 2007
@@ -376,6 +376,13 @@
 void ldl_session_accept_candidate(ldl_session_t *session, ldl_candidate_t *candidate);
 
 /*!
+  \brief turn logging on/off
+  \param on (TRUE or FALSE)
+  \return current state
+*/
+int ldl_global_debug(int on);
+
+/*!
   \brief Set a custom logger
   \param logger the logger function
 */

Modified: freeswitch/trunk/src/mod/endpoints/mod_dingaling/mod_dingaling.c
==============================================================================
--- freeswitch/trunk/src/mod/endpoints/mod_dingaling/mod_dingaling.c	(original)
+++ freeswitch/trunk/src/mod/endpoints/mod_dingaling/mod_dingaling.c	Sat Apr  7 11:55:07 2007
@@ -192,6 +192,7 @@
 static switch_status_t dl_login(char *arg, switch_core_session_t *session, switch_stream_handle_t *stream);
 static switch_status_t dl_logout(char *profile_name, switch_core_session_t *session, switch_stream_handle_t *stream);
 static switch_status_t dl_pres(char *profile_name, switch_core_session_t *session, switch_stream_handle_t *stream);
+static switch_status_t dl_debug(char *profile_name, switch_core_session_t *session, switch_stream_handle_t *stream);
 static switch_status_t channel_on_init(switch_core_session_t *session);
 static switch_status_t channel_on_hangup(switch_core_session_t *session);
 static switch_status_t channel_on_ring(switch_core_session_t *session);
@@ -1586,12 +1587,20 @@
 };
 
 
+static switch_api_interface_t debug_api_interface = {
+	/*.interface_name */ "dl_debug",
+	/*.desc */ "DingaLing Presence",
+	/*.function */ dl_debug,
+	/*.syntax */ "dl_debug [true|false]",
+	/*.next */ NULL
+};
+
 static switch_api_interface_t pres_api_interface = {
 	/*.interface_name */ "dl_pres",
 	/*.desc */ "DingaLing Presence",
 	/*.function */ dl_pres,
 	/*.syntax */ "dl_pres <profile_name>",
-	/*.next */ NULL
+	/*.next */ &debug_api_interface
 };
 
 static switch_api_interface_t logout_api_interface = {
@@ -1998,6 +2007,27 @@
 	}
 }
 
+static switch_status_t dl_debug(char *tf, switch_core_session_t *session, switch_stream_handle_t *stream)
+{
+	int on, cur;
+
+	if (session) {
+		return SWITCH_STATUS_FALSE;
+	}
+
+	if (tf) {
+		on = switch_true(tf);
+		cur = ldl_global_debug(on);
+	} else {
+		cur = ldl_global_debug(-1);
+	}
+
+
+	stream->write_function(stream, "DEBUG IS NOW %s\n", cur ? "ON" : "OFF");
+
+	return SWITCH_STATUS_SUCCESS;
+}
+
 static switch_status_t dl_pres(char *profile_name, switch_core_session_t *session, switch_stream_handle_t *stream)
 {
 	mdl_profile_t *profile;



More information about the Freeswitch-svn mailing list