aboutsummaryrefslogtreecommitdiffstats
path: root/doc/extensions.tex
diff options
context:
space:
mode:
authorrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2007-03-15 22:25:12 +0000
committerrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2007-03-15 22:25:12 +0000
commit3bc7e211a435c49aa70ad227799bd7b0c40356a1 (patch)
treed8e5262f1e1a9faad716b36f59a6b3fe65c288bd /doc/extensions.tex
parenta63acaa328b9937677f3f5c4d861889a6e369034 (diff)
Merge changes from svn/asterisk/team/russell/LaTeX_docs.
* Convert most of the doc directory into a single LaTeX formatted document so that we can generate a PDF, HTML, or other formats from this information. * Add a CLI command to dump the application documentation into LaTeX format which will only be include if the configure script is run with --enable-dev-mode. * The PDF turned out to be close to 1 MB, so it is not included. However, you can simply run "make asterisk.pdf" to generate it yourself. We may include it in release tarballs or have automatically generated ones on the web site, but that has yet to be decided. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@58931 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'doc/extensions.tex')
-rw-r--r--doc/extensions.tex74
1 files changed, 74 insertions, 0 deletions
diff --git a/doc/extensions.tex b/doc/extensions.tex
new file mode 100644
index 000000000..28a49f092
--- /dev/null
+++ b/doc/extensions.tex
@@ -0,0 +1,74 @@
+\subsubsection{The Asterisk dialplan}
+
+The Asterisk dialplan is divided into contexts. A context is simply a group
+of extensions. For each "line" that should be able to be called, an extension
+must be added to a context. Then, you configure the calling "line" to have
+access to this context.
+
+If you change the dialplan, you can use the Asterisk CLI command
+"extensions reload" to load the new dialplan without disrupting
+service in your PBX.
+
+Extensions are routed according to priority and may be based on any set
+of characters (a-z), digits, \#, and *. Please note that when matching a
+pattern, "N", "X", and "Z" are interpreted as classes of digits.
+
+For each extension, several actions may be listed and must be given a unique
+priority. When each action completes, the call continues at the next priority
+(except for some modules which use explicitly GOTO's).
+
+When each action completes, it generally moves to the next priority (except for
+some modules which use explicitly GOTO's.
+
+Extensions frequently have data they pass to the executing application
+(most frequently a string). You can see the available dialplan applications
+by entering the "show applications" command in the CLI.
+
+In this version of Asterisk, dialplan functions are added. These can
+be used as arguments to any application. For a list of the installed
+functions in your Asterisk, use the "show functions" command.
+
+\subsubsection{Example dialplan}
+
+The example dial plan, in the configs/extensions.conf.sample file
+is installed as extensions.conf if you run "make samples" after
+installation of Asterisk. This file includes many more instructions
+and examples than this file, so it's worthwhile to read it.
+
+\subsubsection{Special extensions}
+
+There are some extensions with important meanings:
+
+\begin{itemize}
+ \item s
+ \begin{itemize}
+ \item What to do when an extension context is entered (unless
+ overridden by the low level channel interface)
+ This is used in macros, and some special cases.
+ "s" is not a generic catch-all wildcard extension.
+ \end{itemize}
+ \item i
+ \begin{itemize}
+ \item What to do if an invalid extension is entered
+ \end{itemize}
+ \item h
+ \begin{itemize}
+ \item The hangup extension, executed at hangup
+ \end{itemize}
+ \item t
+ \begin{itemize}
+ \item What to do if nothing is entered in the requisite amount
+ of time.
+ \end{itemize}
+ \item T
+ \begin{itemize}
+ \item This is the extension that is executed when the 'absolute'
+ timeout is reached. See "show function TIMEOUT" for more
+ information on setting timeouts.
+ \end{itemize}
+\end{itemize}
+
+And finally, the extension context "default" is used when either a) an
+extension context is deleted while an extension is in use, or b) a specific
+starting extension handler has not been defined (unless overridden by the
+low level channel interface).