[Freeswitch-trunk] [commit] r6451 - freeswitch/trunk/src/mod/endpoints/mod_sofia
Freeswitch SVN
anthm at freeswitch.org
Fri Nov 30 16:02:42 EST 2007
Author: anthm
Date: Fri Nov 30 16:02:41 2007
New Revision: 6451
Modified:
freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.c
freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.h
Log:
add some vars
Modified: freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.c
==============================================================================
--- freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.c (original)
+++ freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.c Fri Nov 30 16:02:41 2007
@@ -1526,7 +1526,7 @@
*host++ = '\0';
if (sofia_reg_find_reg_url(profile, dest, host, buf, sizeof(buf))) {
tech_pvt->dest = switch_core_session_strdup(nsession, buf);
-
+ tech_pvt->local_url = switch_core_session_sprintf(nsession, "%s@%s", dest, host);
} else {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Cannot locate registered user %s@%s\n", dest, host);
cause = SWITCH_CAUSE_NO_ROUTE_DESTINATION;
@@ -1539,7 +1539,7 @@
tech_pvt->e_dest = switch_core_session_strdup(nsession, dest);
if (sofia_reg_find_reg_url(profile, dest, profile_name, buf, sizeof(buf))) {
tech_pvt->dest = switch_core_session_strdup(nsession, buf);
-
+ tech_pvt->local_url = switch_core_session_sprintf(nsession, "%s@%s", dest, profile_name);
} else {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Cannot locate registered user %s@%s\n", dest, profile_name);
cause = SWITCH_CAUSE_NO_ROUTE_DESTINATION;
@@ -1558,8 +1558,13 @@
}
sofia_glue_attach_private(nsession, profile, tech_pvt, dest);
-
+
nchannel = switch_core_session_get_channel(nsession);
+ if (tech_pvt->local_url) {
+ switch_channel_set_variable(nchannel, "sip_local_url", tech_pvt->local_url);
+ }
+ switch_channel_set_variable(nchannel, "sip_destination_url", tech_pvt->dest);
+
caller_profile = switch_caller_profile_clone(nsession, outbound_profile);
switch_channel_set_caller_profile(nchannel, caller_profile);
switch_channel_set_flag(nchannel, CF_OUTBOUND);
Modified: freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.h
==============================================================================
--- freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.h (original)
+++ freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.h Fri Nov 30 16:02:41 2007
@@ -317,6 +317,7 @@
char *e_dest;
char *call_id;
char *invite_contact;
+ char *local_url;
unsigned long rm_rate;
switch_payload_t pt;
switch_mutex_t *flag_mutex;
More information about the Freeswitch-trunk
mailing list