update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@7313 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
61414b6626
commit
5478d18747
|
@ -1198,6 +1198,7 @@ static switch_status_t cmd_status(char **argv, int argc, switch_stream_handle_t
|
|||
if ((profile = sofia_glue_find_profile(argv[1]))) {
|
||||
stream->write_function(stream, "%s\n", line);
|
||||
stream->write_function(stream, "Name \t%s\n", switch_str_nil(argv[1]));
|
||||
stream->write_function(stream, "Domain Name\t%s\n", switch_str_nil(profile->domain_name));
|
||||
if (strcasecmp(argv[1], profile->name)) {
|
||||
stream->write_function(stream, "Alias Of \t%s\n", switch_str_nil(profile->name));
|
||||
}
|
||||
|
@ -1748,11 +1749,11 @@ static switch_call_cause_t sofia_outgoing_channel(switch_core_session_t *session
|
|||
} else if (!strchr(dest, '@')) {
|
||||
char buf[128];
|
||||
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->domain_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);
|
||||
tech_pvt->local_url = switch_core_session_sprintf(nsession, "%s@%s", dest, profile->domain_name);
|
||||
} 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->domain_name);
|
||||
cause = SWITCH_CAUSE_NO_ROUTE_DESTINATION;
|
||||
goto error;
|
||||
}
|
||||
|
|
|
@ -234,6 +234,7 @@ struct sofia_gateway {
|
|||
struct sofia_profile {
|
||||
int debug;
|
||||
char *name;
|
||||
char *domain_name;
|
||||
char *dbname;
|
||||
char *dialplan;
|
||||
char *context;
|
||||
|
|
|
@ -871,6 +871,7 @@ switch_status_t config_sofia(int reload, char *profile_name)
|
|||
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "No Settings, check the new config!\n");
|
||||
} else {
|
||||
char *xprofilename = (char *) switch_xml_attr_soft(xprofile, "name");
|
||||
char *xprofiledomain = (char *) switch_xml_attr(xprofile, "domain");
|
||||
switch_memory_pool_t *pool = NULL;
|
||||
|
||||
if (!xprofilename) {
|
||||
|
@ -902,6 +903,12 @@ switch_status_t config_sofia(int reload, char *profile_name)
|
|||
profile->name = switch_core_strdup(profile->pool, xprofilename);
|
||||
switch_snprintf(url, sizeof(url), "sofia_reg_%s", xprofilename);
|
||||
|
||||
if (xprofiledomain) {
|
||||
profile->domain_name = switch_core_strdup(profile->pool, xprofiledomain);
|
||||
} else {
|
||||
profile->domain_name = profile->name;
|
||||
}
|
||||
|
||||
profile->dbname = switch_core_strdup(profile->pool, url);
|
||||
switch_core_hash_init(&profile->chat_hash, profile->pool);
|
||||
switch_core_hash_init(&profile->sub_hash, profile->pool);
|
||||
|
@ -2374,6 +2381,7 @@ void sofia_handle_sip_i_invite(nua_t *nua, sofia_profile_t *profile, nua_handle_
|
|||
}
|
||||
|
||||
switch_channel_set_variable(channel, "sofia_profile_name", profile->name);
|
||||
switch_channel_set_variable(channel, "sofia_profile_domain_name", profile->domain_name);
|
||||
|
||||
if (!switch_strlen_zero(sip->sip_from->a_display)) {
|
||||
displayname = sip->sip_from->a_display;
|
||||
|
|
Loading…
Reference in New Issue