endpoint/outbound_proxy, aor/outbound_proxy and registration/outbound_proxy
parameters.
+res_hep_rtcp
+------------------
+ * If the 'call-id' value is specified for the uuid_type option and a
+ chan_sip channel is used the resulting HEP traffic will now contain the
+ SIP Call-ID instead of the Asterisk channel name.
+
------------------------------------------------------------------------------
--- Functionality changes from Asterisk 13.14.0 to Asterisk 13.15.0 ----------
------------------------------------------------------------------------------
; with each packet from this server.
uuid_type = call-id ; Specify the preferred source for the Homer
; correlation UUID. Valid options are:
- ; - 'call-id' for the PJSIP SIP Call-ID
+ ; - 'call-id' for the PJSIP or chan_sip SIP
+ ; Call-ID
; - 'channel' for the Asterisk channel name
+ ; Note: If 'call-id' is specified but the
+ ; channel is not PJSIP or chan_sip then the
+ ; Asterisk channel name will be used instead.
return NULL;
}
- if (uuid_type == HEP_UUID_TYPE_CALL_ID && ast_begins_with(channel_name, "PJSIP")) {
- struct ast_channel *chan = ast_channel_get_by_name(channel_name);
+ if (uuid_type == HEP_UUID_TYPE_CALL_ID) {
+ struct ast_channel *chan = NULL;
char buf[128];
- if (chan && !ast_func_read(chan, "CHANNEL(pjsip,call-id)", buf, sizeof(buf))) {
- uuid = ast_strdup(buf);
+ if (ast_begins_with(channel_name, "PJSIP")) {
+ chan = ast_channel_get_by_name(channel_name);
+
+ if (chan && !ast_func_read(chan, "CHANNEL(pjsip,call-id)", buf, sizeof(buf))) {
+ uuid = ast_strdup(buf);
+ }
+ } else if (ast_begins_with(channel_name, "SIP")) {
+ chan = ast_channel_get_by_name(channel_name);
+
+ if (chan && !ast_func_read(chan, "SIP_HEADER(call-id)", buf, sizeof(buf))) {
+ uuid = ast_strdup(buf);
+ }
}
ast_channel_cleanup(chan);