typedef struct {
switch_core_session_t *session;
+ switch_core_session_t *osession;
int32_t idx;
uint32_t hups;
char *file;
oglobals.error_file = NULL;
switch_core_new_memory_pool(&oglobals.pool);
+ if ((flags & SOF_ENTERPRISE)) {
+ if (session) {
+ oglobals.osession = session;
+ session = NULL;
+ }
+ }
+
if (caller_profile_override) {
oglobals.caller_profile_override = switch_caller_profile_dup(oglobals.pool, caller_profile_override);
} else if (session) {
}
}
+
if (session) {
const char *to_var, *bypass_media = NULL, *proxy_media = NULL;
caller_channel = switch_core_session_get_channel(session);
}
- reason = switch_core_session_outgoing_channel(oglobals.session, originate_var_event, chan_type,
+ reason = switch_core_session_outgoing_channel(oglobals.osession, originate_var_event, chan_type,
new_profile, &new_session, NULL, myflags, cancel_cause);
switch_event_destroy(&originate_var_event);
soft_holding = switch_channel_get_variable(caller_channel, SWITCH_SOFT_HOLDING_UUID_VARIABLE);
}
- if ((flags & SOF_ENTERPRISE)) {
- session = oglobals.session = NULL;
- caller_channel = NULL;
- }
-
while ((!caller_channel || switch_channel_ready(caller_channel) || switch_channel_test_flag(caller_channel, CF_XFER_ZOMBIE)) &&
check_channel_status(&oglobals, originate_status, and_argc)) {