CHANNEL(callid): Give dialplan access to the callid.

* Added CHANNEL(callid) to retrieve the call identifier log tag associated
with the channel.  Dialplan now has access to the call log search key
associated with the channel so it can be saved in case there is a problem
with the call.

ASTERISK-26878

Change-Id: I2c97ebd928b6f3c5bc80c5729e4d3c07f453049f
pull/7/head
Richard Mudgett 8 years ago
parent 732367e806
commit 8cb4f9cea1

@ -118,6 +118,13 @@ app_voicemail
* Added 'fromstring' field to the voicemail boxes. If set, it will override
the global 'fromstring' field on a per-mailbox basis.
func_channel
------------------
* Added CHANNEL(callid) to retrieve the call log tag associated with the
channel. e.g., [C-00000000] Dialplan now has access to the call log
search key associated with the channel so it can be saved in case there
is a problem with the call.
res_pjsip
------------------
* A new transport parameter 'symmetric_transport' has been added.

@ -233,6 +233,10 @@
<enum name="max_forwards">
<para>R/W The maximum number of forwards allowed.</para>
</enum>
<enum name="callid">
<para>R/O Call identifier log tag associated with the channel
e.g., <literal>[C-00000000]</literal>.</para>
</enum>
</enumlist>
<xi:include xpointer="xpointer(/docs/info[@name='CHANNEL'])" />
</parameter>
@ -450,6 +454,16 @@ static int func_channel_read(struct ast_channel *chan, const char *function,
ast_channel_lock(chan);
snprintf(buf, len, "%d", ast_max_forwards_get(chan));
ast_channel_unlock(chan);
} else if (!strcasecmp(data, "callid")) {
ast_callid callid;
buf[0] = '\0';
ast_channel_lock(chan);
callid = ast_channel_callid(chan);
if (callid) {
ast_callid_strnprint(buf, len, callid);
}
ast_channel_unlock(chan);
} else if (!ast_channel_tech(chan) || !ast_channel_tech(chan)->func_channel_read || ast_channel_tech(chan)->func_channel_read(chan, function, data, buf, len)) {
ast_log(LOG_WARNING, "Unknown or unavailable item requested: '%s'\n", data);
ret = -1;

Loading…
Cancel
Save