Add optional <variables> and <params> tag to <gateway> tag.
current gateways are: <gateway> <param name="foo" value="bar"/> </gateway> now can also be: <gateway> <params> <param name="foo" value="bar"/> </params> </gateway> now can also be: <gateway> <params> <param name="foo" value="bar"/> </params> <variables> <variable name="myvar" val="myval"/> </variables> </gateway> any variables will be set on all outgoing channels using that gateway. git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10103 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
ef24ef8db9
commit
9c176dc203
|
@ -2029,6 +2029,16 @@ static switch_call_cause_t sofia_outgoing_channel(switch_core_session_t *session
|
|||
} else {
|
||||
tech_pvt->invite_contact = switch_core_session_strdup(nsession, gateway_ptr->register_contact);
|
||||
}
|
||||
|
||||
if (gateway_ptr->vars) {
|
||||
switch_event_header_t *hp;
|
||||
for(hp = gateway_ptr->vars->headers; hp; hp = hp->next) {
|
||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "%s setting variable [%s]=[%s]\n",
|
||||
switch_channel_get_name(nchannel), hp->name, hp->value);
|
||||
switch_channel_set_variable(nchannel, hp->name, hp->value);
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
if (!(dest = strchr(profile_name, '/'))) {
|
||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Invalid URL\n");
|
||||
|
|
|
@ -297,6 +297,7 @@ struct sofia_gateway {
|
|||
reg_state_t state;
|
||||
switch_memory_pool_t *pool;
|
||||
int deleted;
|
||||
switch_event_t *vars;
|
||||
struct sofia_gateway *next;
|
||||
};
|
||||
|
||||
|
|
|
@ -93,6 +93,9 @@ void sofia_reg_check_gateway(sofia_profile_t *profile, time_t now)
|
|||
switch_core_hash_delete(mod_sofia_globals.gateway_hash, gateway_ptr->register_from);
|
||||
switch_core_hash_delete(mod_sofia_globals.gateway_hash, gateway_ptr->register_contact);
|
||||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_NOTICE, "Deleted gateway %s\n", gateway_ptr->name);
|
||||
if (gateway_ptr->vars) {
|
||||
switch_event_destroy(&gateway_ptr->vars);
|
||||
}
|
||||
} else {
|
||||
last = gateway_ptr;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue