add CALL_UPDATE event
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@15119 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
ee5510c243
commit
aa9361d79f
|
@ -128,6 +128,7 @@ static const char *EVENT_NAMES[] = {
|
|||
"NAT",
|
||||
"RECORD_START",
|
||||
"RECORD_STOP",
|
||||
"CALL_UPDATE",
|
||||
"ALL"
|
||||
};
|
||||
|
||||
|
|
|
@ -116,6 +116,7 @@ typedef enum {
|
|||
ESL_EVENT_NAT,
|
||||
ESL_EVENT_RECORD_START,
|
||||
ESL_EVENT_RECORD_STOP,
|
||||
ESL_EVENT_CALL_UPDATE,
|
||||
ESL_EVENT_ALL
|
||||
} esl_event_types_t;
|
||||
|
||||
|
|
|
@ -1290,6 +1290,7 @@ typedef enum {
|
|||
SWITCH_EVENT_NAT,
|
||||
SWITCH_EVENT_RECORD_START,
|
||||
SWITCH_EVENT_RECORD_STOP,
|
||||
SWITCH_EVENT_CALL_UPDATE,
|
||||
SWITCH_EVENT_ALL
|
||||
} switch_event_types_t;
|
||||
|
||||
|
|
|
@ -1284,6 +1284,7 @@ static switch_status_t sofia_receive_message(switch_core_session_t *session, swi
|
|||
if (!switch_strlen_zero(name)) {
|
||||
char message[256] = "";
|
||||
const char *ua = switch_channel_get_variable(tech_pvt->channel, "sip_user_agent");
|
||||
switch_event_t *event;
|
||||
|
||||
if (switch_strlen_zero(number)) {
|
||||
number = tech_pvt->caller_profile->destination_number;
|
||||
|
@ -1303,6 +1304,22 @@ static switch_status_t sofia_receive_message(switch_core_session_t *session, swi
|
|||
TAG_END());
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (switch_event_create(&event, SWITCH_EVENT_CALL_UPDATE) == SWITCH_STATUS_SUCCESS) {
|
||||
const char *uuid = switch_channel_get_variable(channel, SWITCH_SIGNAL_BOND_VARIABLE);
|
||||
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Direction", "SEND");
|
||||
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Callee-Name", name);
|
||||
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Callee-Number", number);
|
||||
if (uuid) {
|
||||
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Bridged-To", uuid);
|
||||
}
|
||||
switch_channel_event_set_data(channel, event);
|
||||
switch_event_fire(&event);
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
switch_safe_free(arg);
|
||||
|
|
|
@ -420,6 +420,7 @@ void sofia_update_callee_id(switch_core_session_t *session, sofia_profile_t *pro
|
|||
const char *number = "unknown", *tmp;
|
||||
switch_caller_profile_t *caller_profile;
|
||||
char *dup = NULL;
|
||||
switch_event_t *event;
|
||||
|
||||
if (sip->sip_to) {
|
||||
number = sip->sip_to->a_url->url_user;
|
||||
|
@ -450,6 +451,18 @@ void sofia_update_callee_id(switch_core_session_t *session, sofia_profile_t *pro
|
|||
number = tmp;
|
||||
}
|
||||
|
||||
if (switch_event_create(&event, SWITCH_EVENT_CALL_UPDATE) == SWITCH_STATUS_SUCCESS) {
|
||||
const char *uuid = switch_channel_get_variable(channel, SWITCH_SIGNAL_BOND_VARIABLE);
|
||||
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Direction", "RECV");
|
||||
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Callee-Name", name);
|
||||
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Callee-Number", number);
|
||||
if (uuid) {
|
||||
switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Bridged-To", uuid);
|
||||
}
|
||||
switch_channel_event_set_data(channel, event);
|
||||
switch_event_fire(&event);
|
||||
}
|
||||
|
||||
caller_profile = switch_channel_get_caller_profile(channel);
|
||||
caller_profile->callee_id_name = switch_core_strdup(caller_profile->pool, name);
|
||||
caller_profile->callee_id_number = switch_core_strdup(caller_profile->pool, number);
|
||||
|
@ -5673,6 +5686,7 @@ void sofia_info_send_sipfrag(switch_core_session_t *aleg, switch_core_session_t
|
|||
TAG_IF(!switch_strlen_zero(b_tech_pvt->user_via), SIPTAG_VIA_STR(b_tech_pvt->user_via)),
|
||||
TAG_END());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1408,6 +1408,7 @@ SWITCH_DECLARE(void) switch_channel_event_set_extended_data(switch_channel_t *ch
|
|||
event->event_id == SWITCH_EVENT_API ||
|
||||
event->event_id == SWITCH_EVENT_RECORD_START ||
|
||||
event->event_id == SWITCH_EVENT_RECORD_STOP ||
|
||||
event->event_id == SWITCH_EVENT_CALL_UPDATE ||
|
||||
event->event_id == SWITCH_EVENT_CUSTOM
|
||||
) {
|
||||
|
||||
|
|
|
@ -182,6 +182,7 @@ static char *EVENT_NAMES[] = {
|
|||
"NAT",
|
||||
"RECORD_START",
|
||||
"RECORD_STOP",
|
||||
"CALL_UPDATE"
|
||||
"ALL"
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue