Revision
14877
Author
andrew
Date
2009-09-15 14:54:23 -0500 (Tue, 15 Sep 2009)

Log Message

Deprecate new_pid message in favor of get_pid which has an extra element, the call's UUID

Modified Paths

Diff

Modified: freeswitch/trunk/src/mod/event_handlers/mod_erlang_event/mod_erlang_event.c (14876 => 14877)


--- freeswitch/trunk/src/mod/event_handlers/mod_erlang_event/mod_erlang_event.c	2009-09-15 19:41:22 UTC (rev 14876)
+++ freeswitch/trunk/src/mod/event_handlers/mod_erlang_event/mod_erlang_event.c	2009-09-15 19:54:23 UTC (rev 14877)
@@ -1203,6 +1203,19 @@
 		ei_x_buff rbuf;
 		ei_x_new_with_version(&rbuf);
 
+		ei_x_encode_tuple_header(&rbuf, 4);
+		ei_x_encode_atom(&rbuf, "get_pid");
+		_ei_x_encode_string(&rbuf, switch_core_session_get_uuid(session));
+		ei_x_encode_ref(&rbuf, &ref);
+		ei_x_encode_pid(&rbuf, ei_self(listener->ec));
+		/* should lock with mutex? */
+		ei_reg_send(listener->ec, listener->sockfd, module, rbuf.buff, rbuf.index);
+#ifdef EI_DEBUG
+		ei_x_print_reg_msg(&rbuf, module, 1);
+#endif
+		ei_x_free(&rbuf);
+
+		ei_x_new_with_version(&rbuf);
 		ei_x_encode_tuple_header(&rbuf, 3);
 		ei_x_encode_atom(&rbuf, "new_pid");
 		ei_x_encode_ref(&rbuf, &ref);
@@ -1212,6 +1225,7 @@
 #ifdef EI_DEBUG
 		ei_x_print_reg_msg(&rbuf, module, 1);
 #endif
+
 		ei_x_free(&rbuf);
 	} else {
 		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "rpc call: %s:%s(Ref)\n", module, function);