mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-16 16:58:35 +00:00
add some vars
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@6451 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
9dfb85bc36
commit
b2fab2c84f
@ -1526,7 +1526,7 @@ static switch_call_cause_t sofia_outgoing_channel(switch_core_session_t *session
|
|||||||
*host++ = '\0';
|
*host++ = '\0';
|
||||||
if (sofia_reg_find_reg_url(profile, dest, host, buf, sizeof(buf))) {
|
if (sofia_reg_find_reg_url(profile, dest, host, buf, sizeof(buf))) {
|
||||||
tech_pvt->dest = switch_core_session_strdup(nsession, buf);
|
tech_pvt->dest = switch_core_session_strdup(nsession, buf);
|
||||||
|
tech_pvt->local_url = switch_core_session_sprintf(nsession, "%s@%s", dest, host);
|
||||||
} else {
|
} else {
|
||||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Cannot locate registered user %s@%s\n", dest, host);
|
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Cannot locate registered user %s@%s\n", dest, host);
|
||||||
cause = SWITCH_CAUSE_NO_ROUTE_DESTINATION;
|
cause = SWITCH_CAUSE_NO_ROUTE_DESTINATION;
|
||||||
@ -1539,7 +1539,7 @@ static switch_call_cause_t sofia_outgoing_channel(switch_core_session_t *session
|
|||||||
tech_pvt->e_dest = switch_core_session_strdup(nsession, dest);
|
tech_pvt->e_dest = switch_core_session_strdup(nsession, dest);
|
||||||
if (sofia_reg_find_reg_url(profile, dest, profile_name, buf, sizeof(buf))) {
|
if (sofia_reg_find_reg_url(profile, dest, profile_name, buf, sizeof(buf))) {
|
||||||
tech_pvt->dest = switch_core_session_strdup(nsession, 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 {
|
} else {
|
||||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Cannot locate registered user %s@%s\n", dest, profile_name);
|
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;
|
cause = SWITCH_CAUSE_NO_ROUTE_DESTINATION;
|
||||||
@ -1560,6 +1560,11 @@ static switch_call_cause_t sofia_outgoing_channel(switch_core_session_t *session
|
|||||||
sofia_glue_attach_private(nsession, profile, tech_pvt, dest);
|
sofia_glue_attach_private(nsession, profile, tech_pvt, dest);
|
||||||
|
|
||||||
nchannel = switch_core_session_get_channel(nsession);
|
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);
|
caller_profile = switch_caller_profile_clone(nsession, outbound_profile);
|
||||||
switch_channel_set_caller_profile(nchannel, caller_profile);
|
switch_channel_set_caller_profile(nchannel, caller_profile);
|
||||||
switch_channel_set_flag(nchannel, CF_OUTBOUND);
|
switch_channel_set_flag(nchannel, CF_OUTBOUND);
|
||||||
|
@ -317,6 +317,7 @@ struct private_object {
|
|||||||
char *e_dest;
|
char *e_dest;
|
||||||
char *call_id;
|
char *call_id;
|
||||||
char *invite_contact;
|
char *invite_contact;
|
||||||
|
char *local_url;
|
||||||
unsigned long rm_rate;
|
unsigned long rm_rate;
|
||||||
switch_payload_t pt;
|
switch_payload_t pt;
|
||||||
switch_mutex_t *flag_mutex;
|
switch_mutex_t *flag_mutex;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user