sense att xfer in valet
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@15126 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
1cbd982a37
commit
421a609066
|
@ -97,6 +97,7 @@ SWITCH_STANDARD_APP(valet_parking_function)
|
|||
switch_status_t status;
|
||||
switch_input_args_t args = { 0 };
|
||||
char dbuf[10];
|
||||
char *dest;
|
||||
|
||||
lot = valet_find_lot(lot_name);
|
||||
switch_assert(lot);
|
||||
|
@ -152,7 +153,12 @@ SWITCH_STANDARD_APP(valet_parking_function)
|
|||
switch_mutex_unlock(lot->mutex);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
dest = switch_core_session_sprintf(session, "valet_park:%s %s", lot_name, ext);
|
||||
switch_channel_set_variable(channel, "inline_destination", dest);
|
||||
|
||||
|
||||
if (!(tmp = switch_channel_get_variable(channel, "valet_hold_music"))) {
|
||||
tmp = switch_channel_get_variable(channel, "hold_music");
|
||||
}
|
||||
|
|
|
@ -4374,6 +4374,7 @@ void sofia_handle_sip_i_refer(nua_t *nua, sofia_profile_t *profile, nua_handle_t
|
|||
|
||||
if (t_session) {
|
||||
switch_channel_t *t_channel = switch_core_session_get_channel(t_session);
|
||||
const char *idest = switch_channel_get_variable(hup_channel, "inline_destination");
|
||||
ext = switch_channel_get_variable(hup_channel, "destination_number");
|
||||
|
||||
if (!switch_strlen_zero(full_ref_by)) {
|
||||
|
@ -4383,8 +4384,13 @@ void sofia_handle_sip_i_refer(nua_t *nua, sofia_profile_t *profile, nua_handle_t
|
|||
if (!switch_strlen_zero(full_ref_to)) {
|
||||
switch_channel_set_variable(t_channel, SOFIA_REFER_TO_VARIABLE, full_ref_to);
|
||||
}
|
||||
|
||||
switch_ivr_session_transfer(t_session, ext, NULL, NULL);
|
||||
|
||||
if (idest) {
|
||||
switch_ivr_session_transfer(t_session, idest, "inline", NULL);
|
||||
} else {
|
||||
switch_ivr_session_transfer(t_session, ext, NULL, NULL);
|
||||
}
|
||||
|
||||
nua_notify(tech_pvt->nh,
|
||||
NUTAG_NEWSUB(1),
|
||||
SIPTAG_CONTENT_TYPE_STR("message/sipfrag"),
|
||||
|
|
Loading…
Reference in New Issue