switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Channel-Name", channel->name);
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Unique-ID", switch_core_session_get_uuid(channel->session));
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Call-Direction",
- switch_channel_test_flag(channel, CF_OUTBOUND) ? "outbound" : "inbound");
+ channel->direction == SWITCH_CALL_DIRECTION_OUTBOUND ? "outbound" : "inbound");
+ switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Presence-Call-Direction",
+ channel->direction == SWITCH_CALL_DIRECTION_OUTBOUND ? "outbound" : "inbound");
if (switch_channel_test_flag(channel, CF_ANSWERED)) {
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Answer-State", "answered");
} else if (switch_channel_test_flag(channel, CF_EARLY_MEDIA)) {
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Channel-State-Number", state_num);
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Channel-Name", switch_channel_get_name(channel));
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Unique-ID", switch_core_session_get_uuid(channel->session));
+
+ switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Call-Direction",
+ channel->direction == SWITCH_CALL_DIRECTION_OUTBOUND ? "outbound" : "inbound");
+ switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Presence-Call-Direction",
+ channel->direction == SWITCH_CALL_DIRECTION_OUTBOUND ? "outbound" : "inbound");
+
- switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Call-Direction", switch_channel_test_flag(channel, CF_OUTBOUND) ? "outbound" : "inbound");
if (switch_channel_test_flag(channel, CF_ANSWERED)) {
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Answer-State", "answered");
} else if (switch_channel_test_flag(channel, CF_EARLY_MEDIA)) {
switch_assert(channel != NULL);
- switch_channel_set_flag(channel, CF_OUTBOUND);
-
forwardvar = switch_channel_get_variable(channel, SWITCH_MAX_FORWARDS_VARIABLE);
if (!switch_strlen_zero(forwardvar)) {
forwardval = atoi(forwardvar) - 1;
abort();
}
+ switch_channel_init(session->channel, session, CS_NEW, 0);
+
if (direction == SWITCH_CALL_DIRECTION_OUTBOUND) {
switch_channel_set_flag(session->channel, CF_OUTBOUND);
}
-
- switch_channel_init(session->channel, session, CS_NEW, 0);
-
+
/* The session *IS* the pool you may not alter it because you have no idea how
its all private it will be passed to the thread run function */