[asterisk-commits] tilghman: trunk r76874 - /trunk/doc/tex/

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Tue Jul 24 13:19:18 CDT 2007


Author: tilghman
Date: Tue Jul 24 13:19:18 2007
New Revision: 76874

URL: http://svn.digium.com/view/asterisk?view=rev&rev=76874
Log:
Fix escaping and some of the formattting (closes issue #10285)

Modified:
    trunk/doc/tex/ael.tex
    trunk/doc/tex/asterisk.tex
    trunk/doc/tex/billing.tex
    trunk/doc/tex/channelvariables.tex
    trunk/doc/tex/hardware.tex
    trunk/doc/tex/jitterbuffer.tex
    trunk/doc/tex/manager.tex
    trunk/doc/tex/misdn.tex
    trunk/doc/tex/odbcstorage.tex
    trunk/doc/tex/privacy.tex
    trunk/doc/tex/qos.tex
    trunk/doc/tex/queuelog.tex
    trunk/doc/tex/realtime.tex

Modified: trunk/doc/tex/ael.tex
URL: http://svn.digium.com/view/asterisk/trunk/doc/tex/ael.tex?view=diff&rev=76874&r1=76873&r2=76874
==============================================================================
--- trunk/doc/tex/ael.tex (original)
+++ trunk/doc/tex/ael.tex Tue Jul 24 13:19:18 2007
@@ -584,7 +584,7 @@
 \begin{verbatim}
 context zoombo 
 {
-	819/7079953345 => { NoOp(hello, 3345); }
+  819/7079953345 => { NoOp(hello, 3345); }
 }
 \end{verbatim}
 
@@ -727,8 +727,8 @@
 \begin{verbatim}
 Macro myroutine(firstarg, secondarg)
 {
-	Myvar=1;
-	NoOp(Myvar is set to ${myvar});
+  Myvar=1;
+  NoOp(Myvar is set to ${myvar});
 }
 \end{verbatim}
 
@@ -747,8 +747,8 @@
 \begin{verbatim}
 Macro myroutine(firstarg, secondarg)
 {
-	local Myvar=1;
-	NoOp(Myvar is set to ${Myvar}, and firstarg is ${firstarg}, and secondarg is ${secondarg});
+  local Myvar=1;
+  NoOp(Myvar is set to ${Myvar}, and firstarg is ${firstarg}, and secondarg is ${secondarg});
 }
 \end{verbatim}
 
@@ -760,8 +760,8 @@
 \begin{verbatim}
 Macro myroutine(firstarg, secondarg)
 {
-	Set(LOCAL(Myvar)=1);
-	NoOp(Myvar is set to ${Myvar}, and firstarg is ${firstarg}, and secondarg is ${secondarg});
+  Set(LOCAL(Myvar)=1);
+  NoOp(Myvar is set to ${Myvar}, and firstarg is ${firstarg}, and secondarg is ${secondarg});
 }
 \end{verbatim}
 
@@ -787,9 +787,9 @@
 }
 \end{verbatim}
 
-NOTE: The conditional expression (the "\${y} >= 0" above) is wrapped in
+NOTE: The conditional expression (the "\${y} $>$= 0" above) is wrapped in
       \$[ ] so it can be evaluated.  NOTE: The for loop test expression
-      (the "\${x} < 3" above) is wrapped in \$[ ] so it can be evaluated.
+      (the "\${x} $<$ 3" above) is wrapped in \$[ ] so it can be evaluated.
 
 
 
@@ -1134,9 +1134,7 @@
       currently known functions. A warning is issued if it is not.
 \end{itemize}
 
-
-Differences with the original version of AEL
-============================================
+\section{Differences with the original version of AEL}
 
 \begin{enumerate}
    \item The \$[...] expressions have been enhanced to include the ==, ||,
@@ -1174,8 +1172,8 @@
       AEL README.
   \item Added the "return" keyword, which will jump to the end of an
       extension/Macro.
-  \item Added the ifTime (<time range>|<days of week>|<days of
-      month>|<months> ) {} [else {}] construct, which executes much
+  \item Added the ifTime ($<$time range$>$|$<$days of week$>$|$<$days of
+      month$>$|$<$months$>$ ) {} [else {}] construct, which executes much
       like an if () statement, but the decision is based on the
       current time, and the time spec provided in the ifTime. See the
       example above. (Note: all the other time-dependent Applications
@@ -1200,7 +1198,7 @@
       NoOp() added, to make sure the label exists in the extension on
       Asterisk. (0.6)
   \item (0.9) the semicolon is no longer required after a closing brace!
-      (i.e. "];" ===> "\}". You can have them there if you like, but
+      (i.e. "];" ===$>$ "\}". You can have them there if you like, but
       they are not necessary. Someday they may be rejected as a syntax
       error, maybe.
   \item (0.9) the // comments are not recognized and removed in the
@@ -1208,11 +1206,11 @@
       arguments. You may have to move a comment if you get errors in
       existing files.
   \item (0.10) the random statement has been added. Syntax: random (
-      <expr> ) <lucky-statement> [ else <unlucky-statement> ]. The
-      probability of the lucky-statement getting executed is <expr>,
+      $<$expr$>$ ) $<$lucky-statement$>$ [ else $<$unlucky-statement$>$ ]. The
+      probability of the lucky-statement getting executed is $<$expr$>$,
       which should evaluate to an integer between 0 and 100. If the
-      <lucky-statement> isn't so lucky this time around, then the
-      <unlucky-statement> gets executed, if it is present.
+      $<$lucky-statement$>$ isn't so lucky this time around, then the
+      $<$unlucky-statement$>$ gets executed, if it is present.
 \end{enumerate}
 
 

Modified: trunk/doc/tex/asterisk.tex
URL: http://svn.digium.com/view/asterisk/trunk/doc/tex/asterisk.tex?view=diff&rev=76874&r1=76873&r2=76874
==============================================================================
--- trunk/doc/tex/asterisk.tex (original)
+++ trunk/doc/tex/asterisk.tex Tue Jul 24 13:19:18 2007
@@ -61,10 +61,10 @@
 \chapter{Channel Variables}
 \input{channelvariables.tex}
 
-\chapter{AEL, Asterisk Extension Language}
+\chapter{AEL: Asterisk Extension Language}
 \input{ael.tex}
 
-\chapter{SLA (Shared Line Appearances)}
+\chapter{SLA: Shared Line Appearances}
 \input{sla.tex}
 
 \chapter{Channel Drivers}
@@ -96,6 +96,7 @@
 
 \chapter{Voicemail}
   \section{ODBC Storage}
+  \label{odbcstorage}
   \input{odbcstorage.tex}
   \section{IMAP Storage}
   \input{imapstorage.tex}
@@ -112,18 +113,19 @@
 %
 %Misc
 %----
-%asterisk-mib.txt	SNMP mib for Asterisk (net-snmp)
-%digium-mib.txt		SNMP mib for Asterisk (net-snmp)
+%asterisk-mib.txt   SNMP mib for Asterisk (net-snmp)
+%digium-mib.txt     SNMP mib for Asterisk (net-snmp)
 %
 %For developers
 %--------------
 %See http://www.asterisk.org/developers for more information
 %
-%backtrace.txt		How to produce a backtrace when Asterisk crashes
-%CODING-GUIDELINES	Guidelines for developers
-%externalivr.txt	Documentation of the protocol used in externalivr()
-%modules.txt		How Asterisk modules work
-%datastores.txt		About channel data stores
-%speechrec.txt		The Generic Speech Recognition API
+%backtrace.txt      How to produce a backtrace when Asterisk crashes
+%callfiles.txt      Asterisk callfiles using instruction
+%CODING-GUIDELINES  Guidelines for developers
+%externalivr.txt    Documentation of the protocol used in externalivr()
+%modules.txt        How Asterisk modules work
+%datastores.txt     About channel data stores
+%speechrec.txt      The Generic Speech Recognition API
 
-\enddocument
+\end{document}

Modified: trunk/doc/tex/billing.tex
URL: http://svn.digium.com/view/asterisk/trunk/doc/tex/billing.tex?view=diff&rev=76874&r1=76873&r2=76874
==============================================================================
--- trunk/doc/tex/billing.tex (original)
+++ trunk/doc/tex/billing.tex Tue Jul 24 13:19:18 2007
@@ -1,48 +1,47 @@
 \section{Applications}
 
 \begin{itemize}
-    \item SetAccount - 		Set account code for billing
-    \item SetAMAFlags -		Sets AMA flags
-    \item NoCDR - 		Make sure no CDR is saved for a specific call
-    \item ResetCDR -  		Reset CDR
-    \item ForkCDR -		Save current CDR and start a new CDR for this call
-    \item Authenticate -	Authenticates and sets the account code
-    \item SetCDRUserField -  	Set CDR user field
-    \item AppendCDRUserField - 	Append data to CDR User field 
+    \item SetAccount - Set account code for billing
+    \item SetAMAFlags - Sets AMA flags
+    \item NoCDR - Make sure no CDR is saved for a specific call
+    \item ResetCDR - Reset CDR
+    \item ForkCDR - Save current CDR and start a new CDR for this call
+    \item Authenticate - Authenticates and sets the account code
+    \item SetCDRUserField - Set CDR user field
+    \item AppendCDRUserField - Append data to CDR User field 
 \end{itemize}
 
 For more information, use the "core show application <application>" command.
 You can set default account codes and AMA flags for devices in 
 channel configuration files, like sip.conf, iax.conf etc.
 
-
 \section{Fields of the CDR in Asterisk}
 
 \begin{itemize}
-   \item accountcode:	What account number to use, (string, 20 characters)
-   \item src:		Caller*ID number (string, 80 characters)
-   \item dst:		Destination extension (string, 80 characters)
-   \item dcontext:		Destination context (string, 80 characters)
-   \item clid:		Caller*ID with text (80 characters)
-   \item channel:		Channel used (80 characters)
-   \item dstchannel:	Destination channel if appropriate (80 characters)
-   \item lastapp:		Last application if appropriate (80 characters)
-   \item lastdata:		Last application data (arguments) (80 characters)
-   \item start:		Start of call (date/time)
-   \item answer:		Answer of call (date/time)
-   \item end:		End of call (date/time)
-   \item duration:		Total time in system, in seconds (integer), from dial to hangup
-   \item billsec:		Total time call is up, in seconds (integer), from answer to hangup
-   \item disposition:	What happened to the call: ANSWERED, NO ANSWER, BUSY
-   \item amaflags:		What flags to use: DOCUMENTATION, BILL, IGNORE etc, 
-      			specified on a per channel basis like accountcode.
-   \item user field:	A user-defined field, maximum 255 characters 
+   \item accountcode:  What account number to use, (string, 20 characters)
+   \item src:  Caller*ID number (string, 80 characters)
+   \item dst:  Destination extension (string, 80 characters)
+   \item dcontext:  Destination context (string, 80 characters)
+   \item clid:  Caller*ID with text (80 characters)
+   \item channel:  Channel used (80 characters)
+   \item dstchannel:  Destination channel if appropriate (80 characters)
+   \item lastapp:  Last application if appropriate (80 characters)
+   \item lastdata:  Last application data (arguments) (80 characters)
+   \item start:  Start of call (date/time)
+   \item answer:  Answer of call (date/time)
+   \item end:  End of call (date/time)
+   \item duration:  Total time in system, in seconds (integer), from dial to hangup
+   \item billsec:  Total time call is up, in seconds (integer), from answer to hangup
+   \item disposition:  What happened to the call: ANSWERED, NO ANSWER, BUSY
+   \item amaflags:  What flags to use: DOCUMENTATION, BILL, IGNORE etc, 
+            specified on a per channel basis like accountcode.
+   \item user field:  A user-defined field, maximum 255 characters 
 \end{itemize}
 
 In some cases, uniqueid is appended:
 
 \begin{itemize}
-   \item uniqueid:		Unique Channel Identifier (32 characters) 
+   \item uniqueid:  Unique Channel Identifier (32 characters) 
       This needs to be enabled in the source code at compile time
 \end{itemize}
 
@@ -61,24 +60,24 @@
 are available.
 
 \begin{verbatim}
-${CDR(clid)}			Caller ID
-${CDR(src)}			Source 
-${CDR(dst)}			Destination
-${CDR(dcontext)}		Destination context
-${CDR(channel)}			Channel name
-${CDR(dstchannel)}		Destination channel
-${CDR(lastapp)}			Last app executed
-${CDR(lastdata)}		Last app's arguments
-${CDR(start)}			Time the call started.
-${CDR(answer)}			Time the call was answered.
-${CDR(end)}			Time the call ended.
-${CDR(duration)}		Duration of the call.
-${CDR(billsec)}			Duration of the call once it was answered.
-${CDR(disposition)}		ANSWERED, NO ANSWER, BUSY
-${CDR(amaflags)}		DOCUMENTATION, BILL, IGNORE etc
-${CDR(accountcode)}		The channel's account code.
-${CDR(uniqueid)}		The channel's unique id.
-${CDR(userfield)}		The channels uses specified field.
+${CDR(clid)}         Caller ID
+${CDR(src)}          Source 
+${CDR(dst)}          Destination
+${CDR(dcontext)}     Destination context
+${CDR(channel)}      Channel name
+${CDR(dstchannel)}   Destination channel
+${CDR(lastapp)}      Last app executed
+${CDR(lastdata)}     Last app's arguments
+${CDR(start)}        Time the call started.
+${CDR(answer)}       Time the call was answered.
+${CDR(end)}          Time the call ended.
+${CDR(duration)}     Duration of the call.
+${CDR(billsec)}      Duration of the call once it was answered.
+${CDR(disposition)}  ANSWERED, NO ANSWER, BUSY
+${CDR(amaflags)}     DOCUMENTATION, BILL, IGNORE etc
+${CDR(accountcode)}  The channel's account code.
+${CDR(uniqueid)}     The channel's unique id.
+${CDR(userfield)}    The channels uses specified field.
 \end{verbatim}
 
 In addition, you can set your own extra variables by using Set(CDR(name)=value).

Modified: trunk/doc/tex/channelvariables.tex
URL: http://svn.digium.com/view/asterisk/trunk/doc/tex/channelvariables.tex?view=diff&rev=76874&r1=76873&r2=76874
==============================================================================
--- trunk/doc/tex/channelvariables.tex (original)
+++ trunk/doc/tex/channelvariables.tex Tue Jul 24 13:19:18 2007
@@ -22,8 +22,8 @@
 
 Also, characters special to variable substitution, expression evaluation, etc
 (see below), can be quoted. For example, to literally use a \$ on the 
-string "\$1231", quote it with a preceding \\. Special characters that must
-be quoted to be used, are [ ] \$ " \\. (to write \\ itself, use \\). 
+string "\$1231", quote it with a preceding \textbackslash. Special characters that must
+be quoted to be used, are [ ] \$ " \textbackslash. (to write \textbackslash itself, use \textbackslash). 
 
 These Double quotes and escapes are evaluated at the level of the
 asterisk config file parser. 
@@ -35,7 +35,7 @@
 Parameter strings can include variables. Variable names are arbitrary strings. 
 They are stored in the respective channel structure. 
 
-To set a variable to a particular value, do : 
+To set a variable to a particular value, do: 
 \begin{verbatim}
     exten => 1,2,Set(varname=value)
 \end{verbatim}
@@ -52,8 +52,8 @@
 enclose it inside \${}. For example, Set takes as the first argument 
 (before the =) a variable name, so: 
 \begin{verbatim}
-	exten => 1,2,Set(koko=lala)
-	exten => 1,3,Set(${koko}=blabla)
+  exten => 1,2,Set(koko=lala)
+  exten => 1,3,Set(${koko}=blabla)
 \end{verbatim}
 stores to the variable "koko" the value "lala" and to variable "lala" the 
 value "blabla". 
@@ -91,14 +91,14 @@
 
 The format for selecting characters from a variable can be expressed as:
 \begin{verbatim}
-	${variable_name[:offset[:length]]}
+  ${variable_name[:offset[:length]]}
 \end{verbatim}
 If you want to select the first N characters from the string assigned
 to a variable, simply append a colon and the number of characters to
 skip from the beginning of the string to the variable name.
 \begin{verbatim}
-	;Remove the first character of extension, save in "number" variable
-	exten => _9X.,1,Set(number=${EXTEN:1})
+  ; Remove the first character of extension, save in "number" variable
+  exten => _9X.,1,Set(number=${EXTEN:1})
 \end{verbatim}
 Assuming we've dialed 918005551234, the value saved to the 'number' variable
 would be 18005551234. This is useful in situations when we require users to 
@@ -110,16 +110,16 @@
 example will save the numbers 1234 to the 'number' variable, still assuming
 we've dialed 918005551234.
 \begin{verbatim}
-	;Remove everything before the last four digits of the dialed string
-	exten => _9X.,1,Set(number=${EXTEN:-4})
+  ; Remove everything before the last four digits of the dialed string
+  exten => _9X.,1,Set(number=${EXTEN:-4})
 \end{verbatim}
 We can also limit the number of characters from our offset position that we
 wish to use. This is done by appending a second colon and length value to the
 variable name. The following example will save the numbers 555 to the 'number'
 variable.
 \begin{verbatim}
-	;Only save the middle numbers 555 from the string 918005551234
-	exten => _9X.,1,Set(number=${EXTEN:5:3})
+  ; Only save the middle numbers 555 from the string 918005551234
+  exten => _9X.,1,Set(number=${EXTEN:5:3})
 \end{verbatim}
 The length value can also be used in conjunction with a negative offset. This
 may be useful if the length of the string is unknown, but the trailing digits
@@ -127,14 +127,14 @@
 even if the string starts with more characters than expected (unlike the
 previous example).
 \begin{verbatim}
-	;Save the numbers 555 to the 'number' variable
-	exten => _9X.,1,Set(number=${EXTEN:-7:3})
+  ; Save the numbers 555 to the 'number' variable
+  exten => _9X.,1,Set(number=${EXTEN:-7:3})
 \end{verbatim}
 If a negative length value is entered, Asterisk will remove that many characters
 from the end of the string.
 \begin{verbatim}
-	;Set pin to everything but the trailing #.
-	exten => _XXXX#,1,Set(pin=${EXTEN:0:-1})
+  ; Set pin to everything but the trailing #.
+  exten => _XXXX#,1,Set(pin=${EXTEN:0:-1})
 \end{verbatim}
 
 \section{Expressions} 
@@ -258,15 +258,15 @@
 
       expr1 ? expr2 :: expr3
              Traditional Conditional operator. If expr1 is a number
-	     that evaluates to 0 (false), expr3 is result of the this
-	     expression evaluation.  Otherwise, expr2 is the result.
-	     If expr1 is a string, and evaluates to an empty string,
-	     or the two characters (""), then expr3 is the
-	     result. Otherwise, expr2 is the result.  In Asterisk, all
-	     3 exprs will be "evaluated"; if expr1 is "true", expr2
-	     will be the result of the "evaluation" of this
-	     expression.  expr3 will be the result otherwise. This
-	     operator has the lowest precedence.
+       that evaluates to 0 (false), expr3 is result of the this
+       expression evaluation.  Otherwise, expr2 is the result.
+       If expr1 is a string, and evaluates to an empty string,
+       or the two characters (""), then expr3 is the
+       result. Otherwise, expr2 is the result.  In Asterisk, all
+       3 exprs will be "evaluated"; if expr1 is "true", expr2
+       will be the result of the "evaluation" of this
+       expression.  expr3 will be the result otherwise. This
+       operator has the lowest precedence.
 \end{verbatim}
 
 Parentheses are used for grouping in the usual manner.
@@ -274,7 +274,7 @@
 Operator precedence is applied as one would expect in any of the C
 or C derived languages.
 
-subsection{Floating Point Numbers}
+\subsection{Floating Point Numbers}
 
 In 1.6 and above, we shifted the \$\[...\] expressions to be calculated
 via floating point numbers instead of integers. We use 'long double' numbers
@@ -290,13 +290,13 @@
 TRUNC(1/4). For a list of all the truncation/rounding capabilities, see the next section.
 
 
-subsection{Functions}
-
-In 1.6 and above, we upgraded the $[] expressions to handle floating point numbers.
+\subsection{Functions}
+
+In 1.6 and above, we upgraded the \$[] expressions to handle floating point numbers.
 Because of this, folks counting on integer behavior would be disrupted. To make
 the same results possible, some rounding and integer truncation functions have been
 added to the core of the Expr2 parser. Indeed, dialplan functions can be called from
-$[..] expressions without the ${...} operators. The only trouble might be in the fact that
+\$[..] expressions without the \$\{...\} operators. The only trouble might be in the fact that
 the arguments to these functions must be specified with a comma. If you try to call
 the MATH function, for example, and try to say 3 + MATH(7*8), the expression parser will
 evaluate 7*8 for you into 56, and the MATH function will most likely complain that its 
@@ -312,7 +312,7 @@
 surround function calls in \$\[...\] expressions with \$\{...\}. Don't jump to conclusions,
 though! -- you still need to wrap variable names in curly braces!
 
-\begin{Enumerate}
+\begin{enumerate}
 \item COS(x) x is in radians. Results vary from -1 to 1. 
 \item SIN(x) x is in radians. Results vary from -1 to 1.
 \item TAN(x) x is in radians.
@@ -334,94 +334,94 @@
 \item LOG(x) returns the natural logarithm of x.
 \item LOG2(x) returns the base 2 log of x.
 \item LOG10(x) returns the base 10 log of x.
-\end{Enumerate}
-
-subsection{Examples}
+\end{enumerate}
+
+\subsection{Examples}
 
 \begin{verbatim}
  "One Thousand Five Hundred" =~ "(T[^ ]+)"
-	returns: Thousand
+   returns: Thousand
 
  "One Thousand Five Hundred" =~ "T[^ ]+"
-	returns: 8
+   returns: 8
 
  "One Thousand Five Hundred" : "T[^ ]+"
-	returns: 0
+   returns: 0
 
  "8015551212" : "(...)"
-	returns: 801
+   returns: 801
 
  "3075551212":"...(...)"
-	returns: 555
+   returns: 555
 
  ! "One Thousand Five Hundred" =~ "T[^ ]+"
-	returns: 0 (because it applies to the string, which is non-null,
+   returns: 0 (because it applies to the string, which is non-null,
                     which it turns to "0", and then looks for the pattern
                     in the "0", and doesn't find it)
 
  !( "One Thousand Five Hundred" : "T[^ ]+" )
-	returns: 1  (because the string doesn't start with a word starting
+   returns: 1  (because the string doesn't start with a word starting
                      with T, so the match evals to 0, and the ! operator
                      inverts it to 1 ).
 
  2 + 8 / 2
-	returns 6. (because of operator precedence; the division is done first, then the addition).
+   returns 6. (because of operator precedence; the division is done first, then the addition).
 
  2+8/2
-	returns 6. Spaces aren't necessary.
+   returns 6. Spaces aren't necessary.
 
 (2+8)/2
-	returns 5, of course.
+   returns 5, of course.
 
 (3+8)/2
-	returns 5.5 now.
+   returns 5.5 now.
 
 TRUNC((3+8)/2)
-	returns 5.
+   returns 5.
 
 FLOOR(2.5)
-	returns 2
+   returns 2
 
 FLOOR(-2.5)
-	returns -3
+   returns -3
 
 CEIL(2.5)
-	returns 3.
+   returns 3.
 
 CEIL(-2.5)
-	returns -2.
+   returns -2.
 
 ROUND(2.5)
-	returns 3.
+   returns 3.
 
 ROUND(3.5)
-	returns 4.
+   returns 4.
 
 ROUND(-2.5)
-	returns -3
+   returns -3
 
 RINT(2.5)
-	returns 2.
+   returns 2.
 
 RINT(3.5)
-	returns 4.
+   returns 4.
 
 RINT(-2.5)
-	returns -2.
+   returns -2.
 
 RINT(-3.5)
-	returns -4.
+   returns -4.
 
 TRUNC(2.5)
-	returns 2.
+   returns 2.
 
 TRUNC(3.5)
-	returns 3.
+   returns 3.
 
 TRUNC(-3.5)
-	returns -3.
-
-\begin{verbatim}
+   returns -3.
+
+\end{verbatim}
 
 Of course, all of the above examples use constants, but would work the
 same if any of the numeric or string constants were replaced with a
@@ -441,7 +441,7 @@
 There is one conditional application - the conditional goto : 
 
 \begin{verbatim}
-	exten => 1,2,gotoif(condition?label1:label2)
+  exten => 1,2,GotoIf(condition?label1:label2)
 \end{verbatim}
 
 If condition is true go to label1, else go to label2. Labels are interpreted
@@ -453,7 +453,7 @@
 above, eg : 
 
 \begin{verbatim}
-	exten => 1,2,gotoif($[${CALLERID} = 123456]?2|1:3|1)
+  exten => 1,2,GotoIf($[${CALLERID} = 123456]?2|1:3|1)
 \end{verbatim}
 
 Example of use : 
@@ -494,9 +494,9 @@
 \subsection{NULL Strings}
 Testing to see if a string is null can be done in one of two different ways:
 \begin{verbatim}
-	exten => _XX.,1,GotoIf($["${calledid}" != ""]?3) 
-
-	exten => _XX.,1,GotoIf($[foo${calledid} != foo]?3) 
+  exten => _XX.,1,GotoIf($["${calledid}" != ""]?3) 
+
+  exten => _XX.,1,GotoIf($[foo${calledid} != foo]?3) 
 \end{verbatim}
 
 The second example above is the way suggested by the WIKI. It will 
@@ -574,7 +574,7 @@
    quotes, it was no reason for concern. It is now!
 
 \item LE, GE, NE operators removed. The code supported these operators,
-   but they were not documented. The symbolic operators, <=, >=, and !=
+   but they were not documented. The symbolic operators, $<$=, $>$=, and !=
    should be used instead.
 
 \item  Added the unary '-' operator. So you can 3+ -4 and get -1.
@@ -670,43 +670,45 @@
 ignored.
 
 \begin{verbatim}
-${ACCOUNTCODE} 	 	* Account code (if specified) (Deprecated; use ${CDR(accountcode)})
-${BLINDTRANSFER} 	The name of the channel on the other side of a blind transfer
-${BRIDGEPEER}	 	Bridged peer
-${CALLERANI}	 	* Caller ANI (PRI channels) (Deprecated; use ${CALLERID(ani)})
-${CALLERID}	 	* Caller ID (Deprecated; use ${CALLERID(all)})
-${CALLERIDNAME}	 	* Caller ID Name only (Deprecated; use ${CALLERID(name)})
-${CALLERIDNUM}	 	* Caller ID Number only (Deprecated; use ${CALLERID(num)})
-${CALLINGANI2}	 	* Caller ANI2 (PRI channels)
-${CALLINGPRES}	 	* Caller ID presentation for incoming calls (PRI channels)
-${CALLINGTNS} 	 	* Transit Network Selector (PRI channels)
-${CALLINGTON}    	* Caller Type of Number (PRI channels)
-${CHANNEL}	 	* Current channel name
-${CONTEXT}       	* Current context
-${DATETIME}	 	* Current date time in the format: DDMMYYYY-HH:MM:SS (Deprecated; use ${STRFTIME(${EPOCH},,%d%m%Y-%H:%M:%S)})
-${DB_RESULT}		Result value of DB_EXISTS() dial plan function
-${DNID}          	* Dialed Number Identifier (Deprecated; use ${CALLERID(dnid)})
-${EPOCH}	 	* Current unix style epoch
-${EXTEN}	 	* Current extension
-${ENV(VAR)}	 	Environmental variable VAR
-${GOTO_ON_BLINDXFR}	Transfer to the specified context/extension/priority
-			after a blind transfer (use ^ characters in place of
-			| to separate context/extension/priority when setting
-			this variable from the dialplan)
-${HANGUPCAUSE}	 	* Asterisk cause of hangup (inbound/outbound)
-${HINT}          	* Channel hints for this extension
-${HINTNAME}      	* Suggested Caller*ID name for this extension
-${INVALID_EXTEN} 	The invalid called extension (used in the "i" extension)
-${LANGUAGE}	 	* Current language (Deprecated; use ${LANGUAGE()})
-${LEN(VAR)}	 	* String length of VAR (integer)
-${PRIORITY}	 	* Current priority in the dialplan
-${PRIREDIRECTREASON} 	Reason for redirect on PRI, if a call was directed
-${RDNIS}         	* Redirected Dial Number ID Service (Deprecated; use ${CALLERID(rdnis)})
-${TIMESTAMP}	 	* Current date time in the format: YYYYMMDD-HHMMSS (Deprecated; use ${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)})
-${TRANSFER_CONTEXT} 	Context for transferred calls
-${FORWARD_CONTEXT}     Context for forwarded calls
-${UNIQUEID}	 	* Current call unique identifier
-${SYSTEMNAME}		* value of the systemname option of asterisk.conf
+${CDR(accountcode)}    * Account code (if specified)
+${BLINDTRANSFER}         The name of the channel on the other side of a blind transfer
+${BRIDGEPEER}            Bridged peer
+${CALLERID(ani)}       * Caller ANI (PRI channels)
+${CALLERID(all)}       * Caller ID
+${CALLERID(dnid)}      * Dialed Number Identifier
+${CALLERID(name)}      * Caller ID Name only
+${CALLERID(num)}       * Caller ID Number only
+${CALLERID(rdnis)}     * Redirected Dial Number ID Service
+${CALLINGANI2}         * Caller ANI2 (PRI channels)
+${CALLINGPRES}         * Caller ID presentation for incoming calls (PRI channels)
+${CALLINGTNS}          * Transit Network Selector (PRI channels)
+${CALLINGTON}          * Caller Type of Number (PRI channels)
+${CHANNEL}             * Current channel name
+${CONTEXT}             * Current context
+${DATETIME}            * Current date time in the format: DDMMYYYY-HH:MM:SS 
+                         (Deprecated; use ${STRFTIME(${EPOCH},,%d%m%Y-%H:%M:%S)})
+${DB_RESULT}             Result value of DB_EXISTS() dial plan function
+${EPOCH}               * Current unix style epoch
+${EXTEN}               * Current extension
+${ENV(VAR)}              Environmental variable VAR
+${GOTO_ON_BLINDXFR}      Transfer to the specified context/extension/priority
+                         after a blind transfer (use ^ characters in place of
+                         | to separate context/extension/priority when setting
+                         this variable from the dialplan)
+${HANGUPCAUSE}         * Asterisk cause of hangup (inbound/outbound)
+${HINT}                * Channel hints for this extension
+${HINTNAME}            * Suggested Caller*ID name for this extension
+${INVALID_EXTEN}         The invalid called extension (used in the "i" extension)
+${LANGUAGE}            * Current language (Deprecated; use ${LANGUAGE()})
+${LEN(VAR)}            * String length of VAR (integer)
+${PRIORITY}            * Current priority in the dialplan
+${PRIREDIRECTREASON}     Reason for redirect on PRI, if a call was directed
+${TIMESTAMP}           * Current date time in the format: YYYYMMDD-HHMMSS 
+                         (Deprecated; use ${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)})
+${TRANSFER_CONTEXT}      Context for transferred calls
+${FORWARD_CONTEXT}       Context for forwarded calls
+${UNIQUEID}            * Current call unique identifier
+${SYSTEMNAME}          * value of the systemname option of asterisk.conf
 \end{verbatim}
 
 \subsection{Application return values}
@@ -715,189 +717,189 @@
 instead of, as in Asterisk 1.0, changing the dial plan priority (+101).
 For the various status values, see each application's help text.
 \begin{verbatim}
-${AGISTATUS}			* agi()
-${AQMSTATUS}			* addqueuemember()
-${AVAILSTATUS}			* chanisavail()
-${CHECKGROUPSTATUS}		* checkgroup()
-${CHECKMD5STATUS}		* checkmd5()
-${CPLAYBACKSTATUS}		* controlplayback()
-${DIALSTATUS}   		* dial()
-${DBGETSTATUS}			* dbget()
-${ENUMSTATUS}			* enumlookup()
-${HASVMSTATUS}			* hasnewvoicemail()
-${LOOKUPBLSTATUS}		* lookupblacklist()
-${OSPAUTHSTATUS}		* ospauth()
-${OSPLOOKUPSTATUS}		* osplookup()
-${OSPNEXTSTATUS}		* ospnext()
-${OSPFINISHSTATUS}		* ospfinish()
-${PARKEDAT}			* parkandannounce()
-${PLAYBACKSTATUS}		* playback()
-${PQMSTATUS}			* pausequeuemember()
-${PRIVACYMGRSTATUS}		* privacymanager()
-${QUEUESTATUS}			* queue()
-${RQMSTATUS}			* removequeuemember()
-${SENDIMAGESTATUS}		* sendimage()
-${SENDTEXTSTATUS}		* sendtext()
-${SENDURLSTATUS}		* sendurl()
-${SYSTEMSTATUS}			* system()
-${TRANSFERSTATUS}		* transfer()
-${TXTCIDNAMESTATUS}		* txtcidname()
-${UPQMSTATUS}			* unpausequeuemember()
-${VMSTATUS}			* voicmail()
-${VMBOXEXISTSSTATUS}		* vmboxexists()
-${WAITSTATUS}			* waitforsilence()
+${AGISTATUS}         * agi()
+${AQMSTATUS}         * addqueuemember()
+${AVAILSTATUS}       * chanisavail()
+${CHECKGROUPSTATUS}  * checkgroup()
+${CHECKMD5STATUS}    * checkmd5()
+${CPLAYBACKSTATUS}   * controlplayback()
+${DIALSTATUS}        * dial()
+${DBGETSTATUS}       * dbget()
+${ENUMSTATUS}        * enumlookup()
+${HASVMSTATUS}       * hasnewvoicemail()
+${LOOKUPBLSTATUS}    * lookupblacklist()
+${OSPAUTHSTATUS}     * ospauth()
+${OSPLOOKUPSTATUS}   * osplookup()
+${OSPNEXTSTATUS}     * ospnext()
+${OSPFINISHSTATUS}   * ospfinish()
+${PARKEDAT}          * parkandannounce()
+${PLAYBACKSTATUS}    * playback()
+${PQMSTATUS}         * pausequeuemember()
+${PRIVACYMGRSTATUS}  * privacymanager()
+${QUEUESTATUS}       * queue()
+${RQMSTATUS}         * removequeuemember()
+${SENDIMAGESTATUS}   * sendimage()
+${SENDTEXTSTATUS}    * sendtext()
+${SENDURLSTATUS}     * sendurl()
+${SYSTEMSTATUS}      * system()
+${TRANSFERSTATUS}    * transfer()
+${TXTCIDNAMESTATUS}  * txtcidname()
+${UPQMSTATUS}        * unpausequeuemember()
+${VMSTATUS}          * voicmail()
+${VMBOXEXISTSSTATUS} * vmboxexists()
+${WAITSTATUS}        * waitforsilence()
 \end{verbatim}
 
 \subsection{Various application variables}
 \begin{verbatim}
-${CURL}			* Resulting page content for curl()
-${ENUM}			* Result of application EnumLookup
-${EXITCONTEXT}		Context to exit to in IVR menu (app background())
-			or in the RetryDial() application
-${MONITOR}		* Set to "TRUE" if the channel is/has been monitored (app monitor())
-${MONITOR_EXEC}		Application to execute after monitoring a call
-${MONITOR_EXEC_ARGS}	Arguments to application
-${MONITOR_FILENAME} 	File for monitoring (recording) calls in queue
-${QUEUE_PRIO}		Queue priority
-${QUEUE_MAX_PENALTY}	Maximum member penalty allowed to answer caller
-${QUEUESTATUS} 		Status of the call, one of:
-			(TIMEOUT | FULL | JOINEMPTY | LEAVEEMPTY | JOINUNAVAIL | LEAVEUNAVAIL)
-${RECORDED_FILE} 	* Recorded file in record()
-${TALK_DETECTED} 	* Result from talkdetect()
-${TOUCH_MONITOR} 	The filename base to use with Touch Monitor (auto record)
-${TOUCH_MONITOR_FORMAT} The audio format to use with Touch Monitor (auto record)
+${CURL}                 * Resulting page content for curl()
+${ENUM}                 * Result of application EnumLookup
+${EXITCONTEXT}            Context to exit to in IVR menu (app background())
+                          or in the RetryDial() application
+${MONITOR}              * Set to "TRUE" if the channel is/has been monitored (app monitor())
+${MONITOR_EXEC}           Application to execute after monitoring a call
+${MONITOR_EXEC_ARGS}      Arguments to application
+${MONITOR_FILENAME}       File for monitoring (recording) calls in queue
+${QUEUE_PRIO}             Queue priority
+${QUEUE_MAX_PENALTY}      Maximum member penalty allowed to answer caller
+${QUEUESTATUS}            Status of the call, one of:
+                          (TIMEOUT | FULL | JOINEMPTY | LEAVEEMPTY | JOINUNAVAIL | LEAVEUNAVAIL)
+${RECORDED_FILE}        * Recorded file in record()
+${TALK_DETECTED}        * Result from talkdetect()
+${TOUCH_MONITOR}          The filename base to use with Touch Monitor (auto record)
+${TOUCH_MONITOR_FORMAT}   The audio format to use with Touch Monitor (auto record)
 ${TOUCH_MONITOR_OUTPUT} * Recorded file from Touch Monitor (auto record)
-${TXTCIDNAME}		* Result of application TXTCIDName
-${VPB_GETDTMF}		chan_vpb
+${TXTCIDNAME}           * Result of application TXTCIDName
+${VPB_GETDTMF}            chan_vpb
 \end{verbatim}
 
 \subsection{The MeetMe Conference Bridge}
 \begin{verbatim}
-${MEETME_RECORDINGFILE} 	Name of file for recording a conference with 
-				the "r" option
-${MEETME_RECORDINGFORMAT} 	Format of file to be recorded
-${MEETME_EXIT_CONTEXT} 		Context for exit out of meetme meeting
-${MEETME_AGI_BACKGROUND} 	AGI script for Meetme (zap only)
-${MEETMESECS} 			* Number of seconds a user participated in a MeetMe conference
+${MEETME_RECORDINGFILE}     Name of file for recording a conference with 
+                            the "r" option
+${MEETME_RECORDINGFORMAT}   Format of file to be recorded
+${MEETME_EXIT_CONTEXT}      Context for exit out of meetme meeting
+${MEETME_AGI_BACKGROUND}    AGI script for Meetme (zap only)
+${MEETMESECS}             * Number of seconds a user participated in a MeetMe conference
 \end{verbatim}
 
 \subsection{The VoiceMail() application}
 \begin{verbatim}
-${VM_CATEGORY}		Sets voicemail category
-${VM_NAME}		* Full name in voicemail
-${VM_DUR}		* Voicemail duration
-${VM_MSGNUM}		* Number of voicemail message in mailbox
-${VM_CALLERID}		* Voicemail Caller ID (Person leaving vm)
-${VM_CIDNAME}		* Voicemail Caller ID Name
-${VM_CIDNUM}		* Voicemail Caller ID Number
-${VM_DATE}		* Voicemail Date
-${VM_MESSAGEFILE}	* Path to message left by caller
+${VM_CATEGORY}      Sets voicemail category
+${VM_NAME}        * Full name in voicemail
+${VM_DUR}         * Voicemail duration
+${VM_MSGNUM}      * Number of voicemail message in mailbox
+${VM_CALLERID}    * Voicemail Caller ID (Person leaving vm)
+${VM_CIDNAME}     * Voicemail Caller ID Name
+${VM_CIDNUM}      * Voicemail Caller ID Number
+${VM_DATE}        * Voicemail Date
+${VM_MESSAGEFILE} * Path to message left by caller
 \end{verbatim}
 
 \subsection{The VMAuthenticate() application}
 \begin{verbatim}
-${AUTH_MAILBOX}	* Authenticated mailbox
-${AUTH_CONTEXT}	* Authenticated mailbox context
+${AUTH_MAILBOX}   * Authenticated mailbox
+${AUTH_CONTEXT}   * Authenticated mailbox context
 \end{verbatim}
 
 \subsection{DUNDiLookup()}
 \begin{verbatim}
-${DUNDTECH}	* The Technology of the result from a call to DUNDiLookup()
-${DUNDDEST}	* The Destination of the result from a call to DUNDiLookup()
+${DUNDTECH}       * The Technology of the result from a call to DUNDiLookup()
+${DUNDDEST}       * The Destination of the result from a call to DUNDiLookup()
 \end{verbatim}
 
 \subsection{chan\_zap}
 \begin{verbatim}
-${ANI2}			* The ANI2 Code provided by the network on the incoming call. 
-			(ie, Code 29 identifies call as a Prison/Inmate Call)
-${CALLTYPE}		* Type of call (Speech, Digital, etc)
-${CALLEDTON}		* Type of number for incoming PRI extension
-			i.e. 0=unknown, 1=international, 2=domestic, 3=net_specific, 
-			4=subscriber, 6=abbreviated, 7=reserved 
-${CALLINGSUBADDR}	* Called PRI Subaddress
-${FAXEXTEN}	 	* The extension called before being redirected to "fax"	
-${PRIREDIRECTREASON}	* Reason for redirect, if a call was directed
-${SMDI_VM_TYPE}		* When an call is received with an SMDI message, the 'type'
-			of message 'b' or 'u'
+${ANI2}               * The ANI2 Code provided by the network on the incoming call. 
+                        (ie, Code 29 identifies call as a Prison/Inmate Call)
+${CALLTYPE}           * Type of call (Speech, Digital, etc)
+${CALLEDTON}          * Type of number for incoming PRI extension
+                        i.e. 0=unknown, 1=international, 2=domestic, 3=net_specific, 
+                        4=subscriber, 6=abbreviated, 7=reserved 
+${CALLINGSUBADDR}     * Called PRI Subaddress
+${FAXEXTEN}           * The extension called before being redirected to "fax" 
+${PRIREDIRECTREASON}  * Reason for redirect, if a call was directed
+${SMDI_VM_TYPE}       * When an call is received with an SMDI message, the 'type'
+                        of message 'b' or 'u'
 \end{verbatim}
 
 \subsection{chan\_sip}
 \begin{verbatim}
-${SIPCALLID} 		* SIP Call-ID: header verbatim (for logging or CDR matching)
-${SIPDOMAIN}    	* SIP destination domain of an inbound call (if appropriate)
-${SIPUSERAGENT} 	* SIP user agent (deprecated)
-${SIPURI}		* SIP uri
-${SIP_CODEC} 		Set the SIP codec for a call	
-${SIP_URI_OPTIONS}	* additional options to add to the URI for an outgoing call
-${RTPAUDIOQOS}		RTCP QoS report for the audio of this call
-${RTPVIDEOQOS}		RTCP QoS report for the video of this call
+${SIPCALLID}         * SIP Call-ID: header verbatim (for logging or CDR matching)
+${SIPDOMAIN}         * SIP destination domain of an inbound call (if appropriate)
+${SIPUSERAGENT}      * SIP user agent (deprecated)
+${SIPURI}            * SIP uri
+${SIP_CODEC}           Set the SIP codec for a call  
+${SIP_URI_OPTIONS}   * additional options to add to the URI for an outgoing call
+${RTPAUDIOQOS}         RTCP QoS report for the audio of this call
+${RTPVIDEOQOS}         RTCP QoS report for the video of this call
 \end{verbatim}
 
 \subsection{chan\_agent}
 \begin{verbatim}
-${AGENTMAXLOGINTRIES}	Set the maximum number of failed logins
-${AGENTUPDATECDR}	Whether to update the CDR record with Agent channel data
-${AGENTGOODBYE}		Sound file to use for "Good Bye" when agent logs out
-${AGENTACKCALL} 	Whether the agent should acknowledge the incoming call
-${AGENTAUTOLOGOFF}	Auto logging off for an agent
-${AGENTWRAPUPTIME}	Setting the time for wrapup between incoming calls
-${AGENTNUMBER}		* Agent number (username) set at login
-${AGENTSTATUS}		* Status of login	( fail | on | off )
-${AGENTEXTEN}		* Extension for logged in agent
+${AGENTMAXLOGINTRIES}  Set the maximum number of failed logins
+${AGENTUPDATECDR}      Whether to update the CDR record with Agent channel data
+${AGENTGOODBYE}        Sound file to use for "Good Bye" when agent logs out
+${AGENTACKCALL}        Whether the agent should acknowledge the incoming call
+${AGENTAUTOLOGOFF}     Auto logging off for an agent
+${AGENTWRAPUPTIME}     Setting the time for wrapup between incoming calls
+${AGENTNUMBER}       * Agent number (username) set at login
+${AGENTSTATUS}       * Status of login ( fail | on | off )
+${AGENTEXTEN}        * Extension for logged in agent
 \end{verbatim}
 
 
 \subsection{The Dial() application}
 \begin{verbatim}
-${DIALEDPEERNAME} 		* Dialed peer name
-${DIALEDPEERNUMBER} 		* Dialed peer number
-${DIALEDTIME}   		* Time for the call (seconds)
-${ANSWEREDTIME} 		* Time from dial to answer (seconds)
-${DIALSTATUS}   		* Status of the call, one of:
-                		(CHANUNAVAIL | CONGESTION | BUSY | NOANSWER 
-					| ANSWER | CANCEL | DONTCALL | TORTURE)
-${DYNAMIC_FEATURES}		* The list of features (from the [applicationmap] section of
-				  features.conf) to activate during the call, with feature
-				  names separated by '#' characters
-${LIMIT_PLAYAUDIO_CALLER}	Soundfile for call limits
-${LIMIT_PLAYAUDIO_CALLEE}	Soundfile for call limits

[... 913 lines stripped ...]



More information about the asterisk-commits mailing list