[Asterisk-code-review] pbx_builtins: Allow Answer to return immediately. (asterisk[18])
Friendly Automation
asteriskteam at digium.com
Tue Nov 29 09:30:05 CST 2022
Friendly Automation has submitted this change. ( https://gerrit.asterisk.org/c/asterisk/+/19583 )
Change subject: pbx_builtins: Allow Answer to return immediately.
......................................................................
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
---
A doc/CHANGES-staging/answer.txt
M main/pbx_builtins.c
2 files changed, 40 insertions(+), 0 deletions(-)
Approvals:
George Joseph: Looks good to me, approved
Friendly Automation: Approved for Submit
diff --git a/doc/CHANGES-staging/answer.txt b/doc/CHANGES-staging/answer.txt
new file mode 100644
index 0000000..7e04701
--- /dev/null
+++ b/doc/CHANGES-staging/answer.txt
@@ -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.
diff --git a/main/pbx_builtins.c b/main/pbx_builtins.c
index 7ef4d03..fa6e63d 100644
--- a/main/pbx_builtins.c
+++ b/main/pbx_builtins.c
@@ -49,11 +49,23 @@
<parameter name="delay">
<para>Asterisk will wait this number of milliseconds before returning to
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>
</syntax>
<description>
<para>If the call has not been answered, this application will
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>
<see-also>
<ref type="application">Hangup</ref>
@@ -836,6 +848,11 @@
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")) {
ast_log(AST_LOG_WARNING, "The nocdr option for the Answer application has been removed and is no longer supported.\n");
}
--
To view, visit https://gerrit.asterisk.org/c/asterisk/+/19583
To unsubscribe, or for help writing mail filters, visit https://gerrit.asterisk.org/settings
Gerrit-Project: asterisk
Gerrit-Branch: 18
Gerrit-Change-Id: Id59cd340c44b8b8b2384c479e17e5123e917cba4
Gerrit-Change-Number: 19583
Gerrit-PatchSet: 2
Gerrit-Owner: N A <asterisk at phreaknet.org>
Gerrit-Reviewer: Friendly Automation
Gerrit-Reviewer: George Joseph <gjoseph at digium.com>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-code-review/attachments/20221129/310a1a9b/attachment.html>
More information about the asterisk-code-review
mailing list