mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-05 12:16:00 +00:00
pbx_builtins: Allow Answer to return immediately.
The Answer application currently waits for up to 500ms for media, even if users specify a different timeout. This adds an option to not wait for media on the channel by doing a raw answer instead. The default 500ms threshold is also documented. ASTERISK-30308 #close Change-Id: Id59cd340c44b8b8b2384c479e17e5123e917cba4
This commit is contained in:
committed by
Friendly Automation
parent
5ede4e217a
commit
c7df5ee7c1
5
doc/CHANGES-staging/answer.txt
Normal file
5
doc/CHANGES-staging/answer.txt
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
Subject: pbx_builtins
|
||||||
|
|
||||||
|
It is now possible to not wait for media on
|
||||||
|
a channel when answering it using Answer,
|
||||||
|
by specifying the i option.
|
@@ -49,11 +49,23 @@
|
|||||||
<parameter name="delay">
|
<parameter name="delay">
|
||||||
<para>Asterisk will wait this number of milliseconds before returning to
|
<para>Asterisk will wait this number of milliseconds before returning to
|
||||||
the dialplan after answering the call.</para>
|
the dialplan after answering the call.</para>
|
||||||
|
<para>The minimum is 500 ms. To answer immediately without waiting for media,
|
||||||
|
use the i option.</para>
|
||||||
|
</parameter>
|
||||||
|
<parameter name="options">
|
||||||
|
<optionlist>
|
||||||
|
<option name="i">
|
||||||
|
<para>Answer the channel immediately without waiting for media.</para>
|
||||||
|
</option>
|
||||||
|
</optionlist>
|
||||||
</parameter>
|
</parameter>
|
||||||
</syntax>
|
</syntax>
|
||||||
<description>
|
<description>
|
||||||
<para>If the call has not been answered, this application will
|
<para>If the call has not been answered, this application will
|
||||||
answer it. Otherwise, it has no effect on the call.</para>
|
answer it. Otherwise, it has no effect on the call.</para>
|
||||||
|
<para>By default, Asterisk will wait for media for up to 500 ms, or
|
||||||
|
the user specified delay, whichever is longer. If you do not want
|
||||||
|
to wait for media at all, use the i option.</para>
|
||||||
</description>
|
</description>
|
||||||
<see-also>
|
<see-also>
|
||||||
<ref type="application">Hangup</ref>
|
<ref type="application">Hangup</ref>
|
||||||
@@ -836,6 +848,11 @@ static int pbx_builtin_answer(struct ast_channel *chan, const char *data)
|
|||||||
delay = 0;
|
delay = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!ast_strlen_zero(args.answer_cdr) && !strcmp(args.answer_cdr, "i")) {
|
||||||
|
/*! \todo We will remove the nocdr stuff for 21 entirely, as part of another review. */
|
||||||
|
return ast_raw_answer(chan);
|
||||||
|
}
|
||||||
|
|
||||||
if (!ast_strlen_zero(args.answer_cdr) && !strcasecmp(args.answer_cdr, "nocdr")) {
|
if (!ast_strlen_zero(args.answer_cdr) && !strcasecmp(args.answer_cdr, "nocdr")) {
|
||||||
ast_log(AST_LOG_WARNING, "The nocdr option for the Answer application has been removed and is no longer supported.\n");
|
ast_log(AST_LOG_WARNING, "The nocdr option for the Answer application has been removed and is no longer supported.\n");
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user