<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Read()</title><link rel="stylesheet" href="styles.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.69.1" /><link rel="start" href="index.html" title="Asterisk™: The Future of Telephony" /><link rel="up" href="asterisk-APP-B.html" title="Appendix B. Application Reference" /><link rel="prev" href="asterisk-APP-B-145.html" title="Random()" /><link rel="next" href="asterisk-APP-B-310.html" title="ReadFile()" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Read()</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="asterisk-APP-B-145.html">Prev</a> </td><th width="60%" align="center">Appendix B. Application Reference</th><td width="20%" align="right"> <a accesskey="n" href="asterisk-APP-B-310.html">Next</a></td></tr></table><hr /></div><div class="refentry" lang="en" xml:lang="en"><a id="asterisk-APP-B-146"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>Read() — Reads DTMF digits from the caller and assigns the result to a variable</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><a id="I_programlisting_tt2359"></a><pre class="programlisting">Read(<em class="replaceable"><code>variable</code></em>[,<em class="replaceable"><code>filename</code></em>[,<em class="replaceable"><code>maxdigits</code></em>[,<em class="replaceable"><code>option</code></em>[,<em class="replaceable"><code>attempts</code></em>[,<em class="replaceable"><code>timeout</code></em>]]]]])</pre></div><div class="refsect1" lang="en" xml:lang="en"><a id="id4194039"></a><h2></h2><p><a id="I_indexterm_tt2360" class="indexterm"></a>Reads a <code class="literal">#</code>-terminated string of digits from the user in to the given <em class="replaceable"><code>variable</code></em>.</p><p>Other arguments include:</p><div class="variablelist"><dl><dt><span class="term"> <em class="replaceable"><code>filename</code></em> </span></dt><dd><p>Specifies the file to play before reading digits.</p></dd><dt><span class="term"> <em class="replaceable"><code>maxdigits</code></em> </span></dt><dd><p>Sets the maximum acceptable number of digits. If this argument is specified, the application stops reading after <em class="replaceable"><code>maxdigits</code></em> have been entered (without requiring the user to press the <code class="literal">#</code> key). Defaults to <code class="literal">0</code> (no limit, wait for the user to press the <code class="literal">#</code> key). Any value below <code class="literal">0</code> means the same. The maximum accepted value is <code class="literal">255</code>.</p></dd><dt><span class="term"> <em class="replaceable"><code>option</code></em> </span></dt><dd><p>Zero or more of the following options: </p><div class="variablelist"><dl><dt><span class="term"><code class="literal">s</code></span></dt><dd><p>Return immediately if the line is not answered.</p></dd><dt><span class="term"><code class="literal">i</code></span></dt><dd><p>Interpret the filename as an indication tone setting from <code class="filename">indications.conf</code>.</p></dd><dt><span class="term"><code class="literal">n</code></span></dt><dd><p>Read digits even if the line has not been answered.</p></dd></dl></div></dd><dt><span class="term"> <em class="replaceable"><code>attempts</code></em> </span></dt><dd><p>If greater than <code class="literal">1</code>, that many attempts will be made in the event that no data is entered.</p></dd><dt><span class="term"> <em class="replaceable"><code>timeout</code></em> </span></dt><dd><p>If greater than <code class="literal">0</code>, that value will override the default timeout.</p></dd></dl></div><a id="I_programlisting_tt2361"></a><pre class="programlisting">; read a two-digit number and repeat it back to the caller <span class="strong"><strong>exten => 123,1,Read(NUMBER,,2)</strong></span> exten => 123,2,SayNumber(${NUMBER}) exten => 123,3,Goto(1)</pre></div><div class="refsect1" lang="en" xml:lang="en"><a id="asterisk-APP-B-147"></a><h2>See Also</h2><p> <a href="asterisk-APP-B-172.html" title="SendDTMF()"><span class="refentrytitle">SendDTMF()</span></a> </p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="asterisk-APP-B-145.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="asterisk-APP-B.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="asterisk-APP-B-310.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Random() </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> ReadFile()</td></tr></table></div><div xmlns="" id="svn-footer"><hr /><p>You are reading <em>Asterisk: The Future of Telephony</em> (2nd Edition for Asterisk 1.4), by Jim van Meggelen, Jared Smith, and Leif Madsen.<br /> This work is licensed under the <a href="http://creativecommons.org/licenses/by-nc-nd/3.0/">Creative Commons Attribution-Noncommercial-No Derivative Works License v3.0</a>.<br /> To submit comments, corrections, or other contributions to the text, please visit <a href="http://oreilly.com/catalog/9780596510480/">http://www.oreilly.com/</a>.</p></div></body></html>