mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-20 12:20:12 +00:00
Merge a big batch of documentation fixes for escaping, marking URLs, places
where verbatim text went off the end of the page on the PDF, and various other improvements (closes issue #10307, IgorG) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77284 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
3
LICENSE
3
LICENSE
@@ -50,7 +50,8 @@ and use of them is subject to our trademark licensing policies. If you
|
|||||||
wish to use these trademarks for purposes other than simple
|
wish to use these trademarks for purposes other than simple
|
||||||
redistribution of Asterisk source code obtained from Digium, you
|
redistribution of Asterisk source code obtained from Digium, you
|
||||||
should contact our licensing department to determine the necessary
|
should contact our licensing department to determine the necessary
|
||||||
steps you must take. For more information on this policy, please read
|
steps you must take. For more information on this policy, please read:
|
||||||
|
|
||||||
http://www.digium.com/en/company/profile/trademarkpolicy.php
|
http://www.digium.com/en/company/profile/trademarkpolicy.php
|
||||||
|
|
||||||
If you have any questions regarding our licensing policy, please
|
If you have any questions regarding our licensing policy, please
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
The SMS module for Asterisk was developed by Adrian Kennard, and is an
|
The SMS module for Asterisk was developed by Adrian Kennard, and is an
|
||||||
implementation of the ETSI specification for landline SMS, ETSI ES 201
|
implementation of the ETSI specification for landline SMS, ETSI ES 201
|
||||||
912, which is available from www.etsi.org. Landline SMS is starting to
|
912, which is available from \url{www.etsi.org}. Landline SMS is starting to
|
||||||
be available in various parts of Europe, and is available from BT in
|
be available in various parts of Europe, and is available from BT in
|
||||||
the UK. However, Asterisk would allow gateways to be created in other
|
the UK. However, Asterisk would allow gateways to be created in other
|
||||||
locations such as the US, and use of SMS capable phones such as the
|
locations such as the US, and use of SMS capable phones such as the
|
||||||
@@ -123,29 +123,36 @@ to run a command for each received message
|
|||||||
exten = _X.,1, SMS(${EXTEN}|a)
|
exten = _X.,1, SMS(${EXTEN}|a)
|
||||||
exten = _X.,2,System("someapptohandleincomingsms ${EXTEN}")
|
exten = _X.,2,System("someapptohandleincomingsms ${EXTEN}")
|
||||||
exten = _X.,3,Hangup
|
exten = _X.,3,Hangup
|
||||||
; Mobile originated, RX. This is receiving a message from a device, e.g. a Magi
|
; Mobile originated, RX. This is receiving a message from a device, e.g.
|
||||||
c Messenger on a sip extension
|
; a Magic Messenger on a sip extension
|
||||||
; Running an app after receipt of the text allows the app to find all messages
|
; Running an app after receipt of the text allows the app to find all messages
|
||||||
in the queue and handle then, e.g. sending them to the public SMSC
|
; in the queue and handle then, e.g. sending them to the public SMSC
|
||||||
; The app may be something like smsq --process=somecommand --queue=${EXTEN}
|
; The app may be something like smsq --process=somecommand --queue=${EXTEN}
|
||||||
to run a command for each received message
|
; to run a command for each received message
|
||||||
; See below for example usage
|
; See below for example usage
|
||||||
[smsmorx]
|
[smsmorx]
|
||||||
exten = _X.,1, SMS(${EXTEN}|sa)
|
exten = _X.,1, SMS(${EXTEN}|sa)
|
||||||
exten = _X.,2,System("someapptohandlelocalsms ${EXTEN}")
|
exten = _X.,2,System("someapptohandlelocalsms ${EXTEN}")
|
||||||
exten = _X.,3,Hangup
|
exten = _X.,3,Hangup
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
smsmtrx is normally accessed by an incoming call from the SMSC. In the
|
smsmtrx is normally accessed by an incoming call from the SMSC. In the
|
||||||
UK this call is from a CLI of 080058752X0 where X is the sub address.
|
UK this call is from a CLI of 080058752X0 where X is the sub address.
|
||||||
As such a typical usage in the extensions.conf at the point of
|
As such a typical usage in the extensions.conf at the point of
|
||||||
handling an incoming call is:-
|
handling an incoming call is:
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
exten = _X./8005875290,1,Goto(smsmtrx,${EXTEN},1)
|
exten = _X./8005875290,1,Goto(smsmtrx,${EXTEN},1)
|
||||||
exten = _X./_80058752[0-8]0,1,Goto(smsmtrx,${EXTEN}-${CALLERIDNUM:8:1},1)
|
exten = _X./_80058752[0-8]0,1,Goto(smsmtrx,${EXTEN}-${CALLERID(num):8:1},1)
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
Alternatively, if you have the correct national prefix on incoming
|
Alternatively, if you have the correct national prefix on incoming
|
||||||
CLI, e.g. using zaphfc, you might use:-
|
CLI, e.g. using zaphfc, you might use:
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
exten = _X./08005875290,1,Goto(smsmtrx,${EXTEN},1)
|
exten = _X./08005875290,1,Goto(smsmtrx,${EXTEN},1)
|
||||||
exten = _X./_080058752[0-8]0,1,Goto(smsmtrx,${EXTEN}-${CALLERIDNUM:9:1},1)
|
exten = _X./_080058752[0-8]0,1,Goto(smsmtrx,${EXTEN}-${CALLERID(num):9:1},1)
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
smsmorx is normally accessed by a call from a local sip device
|
smsmorx is normally accessed by a call from a local sip device
|
||||||
connected to a Magic Messenger. It could however by that you are
|
connected to a Magic Messenger. It could however by that you are
|
||||||
@@ -153,9 +160,11 @@ exten = _X./_080058752[0-8]0,1,Goto(smsmtrx,${EXTEN}-${CALLERIDNUM:9:1},1)
|
|||||||
way, you look at the called number and goto smsmorx. In the UK, the
|
way, you look at the called number and goto smsmorx. In the UK, the
|
||||||
SMSC number that would be dialed is 1709400X where X is the caller sub
|
SMSC number that would be dialed is 1709400X where X is the caller sub
|
||||||
address. As such typical usage in extension.config at the point of
|
address. As such typical usage in extension.config at the point of
|
||||||
handling a call from a sip phone is:-
|
handling a call from a sip phone is:
|
||||||
exten = 17094009,1,Goto(smsmorx,${CALLERIDNUM},1)
|
|
||||||
exten = _1709400[0-8],1,Goto(smsmorx,${CALLERIDNUM}-{EXTEN:7:1},1)
|
\begin{verbatim}
|
||||||
|
exten = 17094009,1,Goto(smsmorx,${CALLERID(num)},1)
|
||||||
|
exten = _1709400[0-8],1,Goto(smsmorx,${CALLERID(num)}-{EXTEN:7:1},1)
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
\section{Using smsq}
|
\section{Using smsq}
|
||||||
@@ -303,22 +312,30 @@ exten = _1709400[0-8],1,Goto(smsmorx,${CALLERIDNUM}-{EXTEN:7:1},1)
|
|||||||
--spool-dir
|
--spool-dir
|
||||||
Spool dir (in which sms and outgoing are found)
|
Spool dir (in which sms and outgoing are found)
|
||||||
Default /var/spool/asterisk
|
Default /var/spool/asterisk
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
Other arguments starting '-' or '--' are invalid and will cause an
|
Other arguments starting '-' or '\verb!--!' are invalid and will cause an
|
||||||
error. Any trailing arguments are processed as follows:-
|
error. Any trailing arguments are processed as follows:-
|
||||||
* If the message is mobile originating and no destination address
|
|
||||||
|
\begin{itemize}
|
||||||
|
|
||||||
|
\item If the message is mobile originating and no destination address
|
||||||
has been specified, then the first argument is assumed to be a
|
has been specified, then the first argument is assumed to be a
|
||||||
destination address
|
destination address
|
||||||
* If the message is mobile terminating and no destination address
|
|
||||||
|
\item If the message is mobile terminating and no destination address
|
||||||
has been specified, then the first argument is assumed to be the
|
has been specified, then the first argument is assumed to be the
|
||||||
queue name
|
queue name
|
||||||
* If there is no user data, or user data file specified, then any
|
|
||||||
|
\item If there is no user data, or user data file specified, then any
|
||||||
following arguments are assumed to be the message, which are
|
following arguments are assumed to be the message, which are
|
||||||
concatenated.
|
concatenated.
|
||||||
* If no user data is specified, then no message is sent. However,
|
|
||||||
unless --no-dial is specified, smsq checks for pending messages
|
\item If no user data is specified, then no message is sent. However,
|
||||||
|
unless \verb!--no-dial! is specified, smsq checks for pending messages
|
||||||
and generates an outgoing anyway
|
and generates an outgoing anyway
|
||||||
\end{verbatim}
|
\end{itemize}
|
||||||
|
|
||||||
|
|
||||||
Note that when smsq attempts to make a file in
|
Note that when smsq attempts to make a file in
|
||||||
/var/spool/asterisk/outgoing, it checks if there is already a call
|
/var/spool/asterisk/outgoing, it checks if there is already a call
|
||||||
@@ -478,14 +495,18 @@ exten = _1709400[0-8],1,Goto(smsmorx,${CALLERIDNUM}-{EXTEN:7:1},1)
|
|||||||
standard way to do this by starting the message with *0\#, and so this
|
standard way to do this by starting the message with *0\#, and so this
|
||||||
application may have a UK specific bodge in the near future to handle
|
application may have a UK specific bodge in the near future to handle
|
||||||
these.
|
these.
|
||||||
\begin{verbatim}
|
|
||||||
The main changes that are proposed for delivery report handling are :-
|
The main changes that are proposed for delivery report handling are :
|
||||||
* New queues for sent messages, one file for each destination
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item New queues for sent messages, one file for each destination
|
||||||
address and message reference.
|
address and message reference.
|
||||||
* New field in message format, user reference, allowing applications
|
|
||||||
|
\item New field in message format, user reference, allowing applications
|
||||||
to tie up their original message with a report.
|
to tie up their original message with a report.
|
||||||
* Handling of the delivery confirmation/rejection and connecting to
|
|
||||||
|
\item Handling of the delivery confirmation/rejection and connecting to
|
||||||
the outgoing message - the received message file would then have
|
the outgoing message - the received message file would then have
|
||||||
fields for the original outgoing message and user reference
|
fields for the original outgoing message and user reference
|
||||||
allowing applications to handle confirmations better.
|
allowing applications to handle confirmations better.
|
||||||
\end{verbatim}
|
\end{itemize}
|
||||||
|
@@ -5,6 +5,7 @@ asterisk.conf. Note that this file is not provided in
|
|||||||
sample form, because the Makefile creates it when needed
|
sample form, because the Makefile creates it when needed
|
||||||
and does not touch it when it already exists.
|
and does not touch it when it already exists.
|
||||||
|
|
||||||
|
\begin{astlisting}
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
[directories]
|
[directories]
|
||||||
; Make sure these directories have the right permissions if not
|
; Make sure these directories have the right permissions if not
|
||||||
@@ -131,3 +132,4 @@ languageprefix = yes | no
|
|||||||
;astctl = asterisk.ctl
|
;astctl = asterisk.ctl
|
||||||
|
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
\end{astlisting}
|
@@ -6,8 +6,31 @@
|
|||||||
% http://www.pps.jussieu.fr/~beffara/soft/rubber/
|
% http://www.pps.jussieu.fr/~beffara/soft/rubber/
|
||||||
|
|
||||||
\documentclass[12pt,a4]{report}
|
\documentclass[12pt,a4]{report}
|
||||||
|
|
||||||
\usepackage{hyperref}
|
\usepackage{hyperref}
|
||||||
|
|
||||||
|
\usepackage{url}
|
||||||
|
\makeatletter
|
||||||
|
\def\url@aststyle{%
|
||||||
|
\@ifundefined{selectfont}{\def\UrlFont{\sf}}{\def\UrlFont{\small\ttfamily}}}
|
||||||
|
\makeatother
|
||||||
|
\urlstyle{ast}
|
||||||
|
|
||||||
|
\usepackage[titles]{tocloft}
|
||||||
|
\renewcommand{\cftchapfont}{%
|
||||||
|
\fontsize{11}{13}\usefont{OT1}{phv}{bc}{n}\selectfont
|
||||||
|
}
|
||||||
|
|
||||||
|
\newenvironment{astlisting}
|
||||||
|
{\begin{list}{}{\setlength{\leftmargin}{1em}}\item\scriptsize\bfseries}
|
||||||
|
{\end{list}}
|
||||||
|
|
||||||
|
\usepackage{sectsty}
|
||||||
|
\allsectionsfont{\usefont{OT1}{phv}{bc}{n}\selectfont}
|
||||||
|
|
||||||
|
\usepackage[Lenny]{fncychap}
|
||||||
|
|
||||||
|
|
||||||
\author{Asterisk Development Team \\ Asterisk.org}
|
\author{Asterisk Development Team \\ Asterisk.org}
|
||||||
\title{Asterisk Reference Information \\ Version SVN-trunk-r72921M}
|
\title{Asterisk Reference Information \\ Version SVN-trunk-r72921M}
|
||||||
|
|
||||||
|
@@ -318,7 +318,7 @@ SQLite version 2 is supported in cdr\_sqlite.
|
|||||||
|
|
||||||
Download sources tarball from:
|
Download sources tarball from:
|
||||||
|
|
||||||
http://freeradius.org/
|
\url{http://freeradius.org/}
|
||||||
|
|
||||||
Untar, configure, build, and install the server:
|
Untar, configure, build, and install the server:
|
||||||
|
|
||||||
|
@@ -170,10 +170,10 @@ The double quotes will be counted as part of that lexical token.
|
|||||||
As an example:
|
As an example:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
exten => s,6,GotoIf($[ "${CALLERIDNAME}" : "Privacy Manager" ]?callerid-liar|s|1:s|7)
|
exten => s,6,GotoIf($[ "${CALLERID(name)}" : "Privacy Manager" ]?callerid-liar|s|1:s|7)
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
The variable CALLERIDNAME could evaluate to "DELOREAN MOTORS" (with a space)
|
The variable CALLERID(name) could evaluate to "DELOREAN MOTORS" (with a space)
|
||||||
but the above will evaluate to:
|
but the above will evaluate to:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
@@ -197,50 +197,58 @@ evaluate this expression, because it does not match its grammar.
|
|||||||
Operators are listed below in order of increasing precedence. Operators
|
Operators are listed below in order of increasing precedence. Operators
|
||||||
with equal precedence are grouped within { } symbols.
|
with equal precedence are grouped within { } symbols.
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{itemize}
|
||||||
expr1 | expr2
|
\item \verb!expr1 | expr2!
|
||||||
|
|
||||||
Return the evaluation of expr1 if it is neither an empty string
|
Return the evaluation of expr1 if it is neither an empty string
|
||||||
nor zero; otherwise, returns the evaluation of expr2.
|
nor zero; otherwise, returns the evaluation of expr2.
|
||||||
|
|
||||||
expr1 & expr2
|
\item \verb!expr1 & expr2!
|
||||||
|
|
||||||
Return the evaluation of expr1 if neither expression evaluates to
|
Return the evaluation of expr1 if neither expression evaluates to
|
||||||
an empty string or zero; otherwise, returns zero.
|
an empty string or zero; otherwise, returns zero.
|
||||||
|
|
||||||
expr1 {=, >, >=, <, <=, !=} expr2
|
\item \verb+expr1 {=, >, >=, <, <=, !=} expr2+
|
||||||
|
|
||||||
Return the results of floating point comparison if both arguments are
|
Return the results of floating point comparison if both arguments are
|
||||||
numbers; otherwise, returns the results of string comparison
|
numbers; otherwise, returns the results of string comparison
|
||||||
using the locale-specific collation sequence. The result of each
|
using the locale-specific collation sequence. The result of each
|
||||||
comparison is 1 if the specified relation is true, or 0 if the
|
comparison is 1 if the specified relation is true, or 0 if the
|
||||||
relation is false.
|
relation is false.
|
||||||
|
|
||||||
expr1 {+, -} expr2
|
\item \verb!expr1 {+, -} expr2!
|
||||||
|
|
||||||
Return the results of addition or subtraction of floating point-valued
|
Return the results of addition or subtraction of floating point-valued
|
||||||
arguments.
|
arguments.
|
||||||
|
|
||||||
expr1 {*, /, %} expr2
|
\item \verb!expr1 {*, /, %} expr2!
|
||||||
|
|
||||||
Return the results of multiplication, floating point division, or
|
Return the results of multiplication, floating point division, or
|
||||||
remainder of arguments.
|
remainder of arguments.
|
||||||
|
|
||||||
- expr1
|
\item \verb!- expr1!
|
||||||
|
|
||||||
Return the result of subtracting expr1 from 0.
|
Return the result of subtracting expr1 from 0.
|
||||||
This, the unary minus operator, is right associative, and
|
This, the unary minus operator, is right associative, and
|
||||||
has the same precedence as the ! operator.
|
has the same precedence as the ! operator.
|
||||||
|
|
||||||
! expr1
|
\item \verb+! expr1+
|
||||||
|
|
||||||
Return the result of a logical complement of expr1.
|
Return the result of a logical complement of expr1.
|
||||||
In other words, if expr1 is null, 0, an empty string,
|
In other words, if expr1 is null, 0, an empty string,
|
||||||
or the string "0", return a 1. Otherwise, return a 0.
|
or the string "0", return a 1. Otherwise, return a 0.
|
||||||
It has the same precedence as the unary minus operator, and
|
It has the same precedence as the unary minus operator, and
|
||||||
is also right associative.
|
is also right associative.
|
||||||
|
|
||||||
expr1 : expr2
|
\item \verb!expr1 : expr2!
|
||||||
|
|
||||||
The `:' operator matches expr1 against expr2, which must be a
|
The `:' operator matches expr1 against expr2, which must be a
|
||||||
regular expression. The regular expression is anchored to the
|
regular expression. The regular expression is anchored to the
|
||||||
beginning of the string with an implicit `^'.
|
beginning of the string with an implicit `\^'.
|
||||||
|
|
||||||
If the match succeeds and the pattern contains at least one regu-
|
If the match succeeds and the pattern contains at least one regular
|
||||||
lar expression subexpression `\(...\)', the string correspond-
|
expression subexpression `\(...\)', the string corresponing
|
||||||
ing to `\1' is returned; otherwise the matching operator
|
to `\textbackslash1' is returned; otherwise the matching operator
|
||||||
returns the number of characters matched. If the match fails and
|
returns the number of characters matched. If the match fails and
|
||||||
the pattern contains a regular expression subexpression the null
|
the pattern contains a regular expression subexpression the null
|
||||||
string is returned; otherwise 0.
|
string is returned; otherwise 0.
|
||||||
@@ -250,13 +258,15 @@ with equal precedence are grouped within { } symbols.
|
|||||||
before the regex match is made, beginning and ending double quote
|
before the regex match is made, beginning and ending double quote
|
||||||
characters are stripped from both the pattern and the string.
|
characters are stripped from both the pattern and the string.
|
||||||
|
|
||||||
expr1 =~ expr2
|
\item \verb!expr1 =~ expr2!
|
||||||
|
|
||||||
Exactly the same as the ':' operator, except that the match is
|
Exactly the same as the ':' operator, except that the match is
|
||||||
not anchored to the beginning of the string. Pardon any similarity
|
not anchored to the beginning of the string. Pardon any similarity
|
||||||
to seemingly similar operators in other programming languages!
|
to seemingly similar operators in other programming languages!
|
||||||
The ":" and "=~" operators share the same precedence.
|
The ":" and "=\~" operators share the same precedence.
|
||||||
|
|
||||||
|
\item \verb!expr1 ? expr2 :: expr3!
|
||||||
|
|
||||||
expr1 ? expr2 :: expr3
|
|
||||||
Traditional Conditional operator. If expr1 is a number
|
Traditional Conditional operator. If expr1 is a number
|
||||||
that evaluates to 0 (false), expr3 is result of the this
|
that evaluates to 0 (false), expr3 is result of the this
|
||||||
expression evaluation. Otherwise, expr2 is the result.
|
expression evaluation. Otherwise, expr2 is the result.
|
||||||
@@ -267,7 +277,7 @@ with equal precedence are grouped within { } symbols.
|
|||||||
will be the result of the "evaluation" of this
|
will be the result of the "evaluation" of this
|
||||||
expression. expr3 will be the result otherwise. This
|
expression. expr3 will be the result otherwise. This
|
||||||
operator has the lowest precedence.
|
operator has the lowest precedence.
|
||||||
\end{verbatim}
|
\end{itemize}
|
||||||
|
|
||||||
Parentheses are used for grouping in the usual manner.
|
Parentheses are used for grouping in the usual manner.
|
||||||
|
|
||||||
@@ -276,7 +286,7 @@ or C derived languages.
|
|||||||
|
|
||||||
\subsection{Floating Point Numbers}
|
\subsection{Floating Point Numbers}
|
||||||
|
|
||||||
In 1.6 and above, we shifted the \$\[...\] expressions to be calculated
|
In 1.6 and above, we shifted the \$[...] expressions to be calculated
|
||||||
via floating point numbers instead of integers. We use 'long double' numbers
|
via floating point numbers instead of integers. We use 'long double' numbers
|
||||||
when possible, which provide around 16 digits of precision with 12 byte numbers.
|
when possible, which provide around 16 digits of precision with 12 byte numbers.
|
||||||
|
|
||||||
@@ -309,7 +319,7 @@ don't want to preclude it, either.
|
|||||||
|
|
||||||
Here is a list of the 'builtin' functions in Expr2. All other dialplan functions
|
Here is a list of the 'builtin' functions in Expr2. All other dialplan functions
|
||||||
are available by simply calling them (read-only). In other words, you don't need to
|
are available by simply calling them (read-only). In other words, you don't need to
|
||||||
surround function calls in \$\[...\] expressions with \$\{...\}. Don't jump to conclusions,
|
surround function calls in \$[...] expressions with \$\{...\}. Don't jump to conclusions,
|
||||||
though! -- you still need to wrap variable names in curly braces!
|
though! -- you still need to wrap variable names in curly braces!
|
||||||
|
|
||||||
\begin{enumerate}
|
\begin{enumerate}
|
||||||
@@ -338,6 +348,7 @@ If this quotient is 1/2, it is rounded to the nearest even number.
|
|||||||
|
|
||||||
\subsection{Examples}
|
\subsection{Examples}
|
||||||
|
|
||||||
|
\begin{astlisting}
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
"One Thousand Five Hundred" =~ "(T[^ ]+)"
|
"One Thousand Five Hundred" =~ "(T[^ ]+)"
|
||||||
returns: Thousand
|
returns: Thousand
|
||||||
@@ -422,10 +433,11 @@ TRUNC(-3.5)
|
|||||||
returns -3.
|
returns -3.
|
||||||
|
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
\end{astlisting}
|
||||||
|
|
||||||
Of course, all of the above examples use constants, but would work the
|
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
|
same if any of the numeric or string constants were replaced with a
|
||||||
variable reference \${CALLERIDNUM}, for instance.
|
variable reference \${CALLERID(num)}, for instance.
|
||||||
|
|
||||||
|
|
||||||
\subsection{Numbers Vs. Strings}
|
\subsection{Numbers Vs. Strings}
|
||||||
@@ -453,7 +465,7 @@ This is designed to be used together with the expression syntax described
|
|||||||
above, eg :
|
above, eg :
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
exten => 1,2,GotoIf($[${CALLERID} = 123456]?2|1:3|1)
|
exten => 1,2,GotoIf($[${CALLERID(all)} = 123456]?2|1:3|1)
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
Example of use :
|
Example of use :
|
||||||
@@ -472,7 +484,7 @@ Syntax errors are now output with 3 lines.
|
|||||||
If the extensions.conf file contains a line like:
|
If the extensions.conf file contains a line like:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
exten => s,6,GotoIf($[ "${CALLERIDNUM}" = "3071234567" & & "${CALLERIDNAME}" : "Privacy Manager" ]?callerid-liar|s|1:s|7)
|
exten => s,6,GotoIf($[ "${CALLERID(num)}" = "3071234567" & & "${CALLERID(name)}" : "Privacy Manager" ]?callerid-liar|s|1:s|7)
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
You may see an error in /var/log/asterisk/messages like this:
|
You may see an error in /var/log/asterisk/messages like this:
|
||||||
@@ -635,7 +647,7 @@ references with '555'. You can override the 555 for variable values,
|
|||||||
by entering in var=val arguments after the filename on the command
|
by entering in var=val arguments after the filename on the command
|
||||||
line. So...
|
line. So...
|
||||||
|
|
||||||
check\_expr /etc/asterisk/extensions.conf CALLERIDNUM=3075551212 DIALSTATUS=TORTURE EXTEN=121
|
check\_expr /etc/asterisk/extensions.conf CALLERID(num)=3075551212 DIALSTATUS=TORTURE EXTEN=121
|
||||||
|
|
||||||
will substitute any \${CALLERIDNUM} variable references with
|
will substitute any \${CALLERIDNUM} variable references with
|
||||||
3075551212, any \${DIALSTATUS} variable references with 'TORTURE', and
|
3075551212, any \${DIALSTATUS} variable references with 'TORTURE', and
|
||||||
@@ -644,15 +656,19 @@ going on in the reference, like \${EXTEN:2}, then the override will
|
|||||||
not work. Everything in the \${...} has to match. So, to substitute
|
not work. Everything in the \${...} has to match. So, to substitute
|
||||||
\${EXTEN:2} references, you'd best say:
|
\${EXTEN:2} references, you'd best say:
|
||||||
|
|
||||||
check\_expr /etc/asterisk/extensions.conf CALLERIDNUM=3075551212 DIALSTATUS=TORTURE EXTEN:2=121
|
check\_expr /etc/asterisk/extensions.conf CALLERID(num)=3075551212 DIALSTATUS=TORTURE EXTEN:2=121
|
||||||
|
|
||||||
on stdout, you will see something like:
|
on stdout, you will see something like:
|
||||||
|
|
||||||
OK -- \$[ "\${DIALSTATUS}" = "TORTURE" | "\${DIALSTATUS}" = "DONTCALL" ] at line 416
|
\begin{verbatim}
|
||||||
|
OK -- $[ "${DIALSTATUS}" = "TORTURE" | "${DIALSTATUS}" = "DONTCALL" ] at line 416
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
In the expr2\_log file that is generated, you will see:
|
In the expr2\_log file that is generated, you will see:
|
||||||
|
|
||||||
line 416, evaluation of \$[ "TORTURE" = "TORTURE" | "TORTURE" = "DONTCALL" ] result: 1
|
\begin{verbatim}
|
||||||
|
line 416, evaluation of $[ "TORTURE" = "TORTURE" | "TORTURE" = "DONTCALL" ] result: 1
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
check\_expr is a very simplistic algorithm, and it is far from being
|
check\_expr is a very simplistic algorithm, and it is far from being
|
||||||
guaranteed to work in all cases, but it is hoped that it will be
|
guaranteed to work in all cases, but it is hoped that it will be
|
||||||
@@ -712,7 +728,7 @@ ${SYSTEMNAME} * value of the systemname option of asterisk.conf
|
|||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
\subsection{Application return values}
|
\subsection{Application return values}
|
||||||
-------------------------
|
|
||||||
In Asterisk 1.2, many applications return the result in a variable
|
In Asterisk 1.2, many applications return the result in a variable
|
||||||
instead of, as in Asterisk 1.0, changing the dial plan priority (+101).
|
instead of, as in Asterisk 1.0, changing the dial plan priority (+101).
|
||||||
For the various status values, see each application's help text.
|
For the various status values, see each application's help text.
|
||||||
|
@@ -1,4 +1,5 @@
|
|||||||
http://www.dundi.com
|
\url{http://www.dundi.com}
|
||||||
|
|
||||||
Mark Spencer, Digium, Inc.
|
Mark Spencer, Digium, Inc.
|
||||||
|
|
||||||
DUNDi is essentially a trusted, peer-to-peer system for being able to
|
DUNDi is essentially a trusted, peer-to-peer system for being able to
|
||||||
@@ -19,7 +20,7 @@ without incurring a risk of a single point of failure. In this way,
|
|||||||
administrators can locally add extensions which become immediately
|
administrators can locally add extensions which become immediately
|
||||||
available to the other nodes in the system.
|
available to the other nodes in the system.
|
||||||
|
|
||||||
For more information visit http://www.dundi.com
|
For more information visit \url{http://www.dundi.com}
|
||||||
|
|
||||||
\section{DUNDIQUERY and DUNDIRESULT}
|
\section{DUNDIQUERY and DUNDIRESULT}
|
||||||
|
|
||||||
|
@@ -8,7 +8,7 @@ assumes a familiarity with ENUM (RFC3761) or ENUM-like methods, as
|
|||||||
well as familiarity with NAPTR DNS records (RFC2915, RFC3401-3404).
|
well as familiarity with NAPTR DNS records (RFC2915, RFC3401-3404).
|
||||||
For an overview of NAPTR records, and the use of NAPTRs in the ENUM
|
For an overview of NAPTR records, and the use of NAPTRs in the ENUM
|
||||||
global phone-number-to-DNS mapping scheme, please see
|
global phone-number-to-DNS mapping scheme, please see
|
||||||
http://www.voip-info.org/tiki-index.php?page=ENUM for more detail.
|
\url{http://www.voip-info.org/tiki-index.php?page=ENUM} for more detail.
|
||||||
|
|
||||||
Using ENUM within Asterisk can be simple or complex, depending on how
|
Using ENUM within Asterisk can be simple or complex, depending on how
|
||||||
many failover methods and redundancy procedures you wish to utilize.
|
many failover methods and redundancy procedures you wish to utilize.
|
||||||
@@ -261,7 +261,7 @@ exten => 100,1,Set(foo=${ENUMLOOKUP(1234567890,sip,,1,enum.yoyodynelabs.com)})
|
|||||||
the form ABC*DEF (where ABC and DEF are at least one numeric digit)
|
the form ABC*DEF (where ABC and DEF are at least one numeric digit)
|
||||||
then perform an ISN-style lookup where the lookup is manipulated to
|
then perform an ISN-style lookup where the lookup is manipulated to
|
||||||
C.B.A.DEF.domain.tld (all other settings and options apply.) See
|
C.B.A.DEF.domain.tld (all other settings and options apply.) See
|
||||||
http://www.freenum.org/ for more details on ISN lookups. In the
|
\url{http://www.freenum.org/} for more details on ISN lookups. In the
|
||||||
unlikely event you wish to avoid ISN re-writes, put an "n" as the
|
unlikely event you wish to avoid ISN re-writes, put an "n" as the
|
||||||
first digit of the search string - the "n" will be ignored for the search.
|
first digit of the search string - the "n" will be ignored for the search.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
@@ -274,6 +274,7 @@ All numbers are assumed to not have a leading "+" as dialed by the
|
|||||||
inbound channel, so that character is added where necessary during
|
inbound channel, so that character is added where necessary during
|
||||||
ENUMLOOKUP function calls.
|
ENUMLOOKUP function calls.
|
||||||
|
|
||||||
|
\begin{astlisting}
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
; example 1
|
; example 1
|
||||||
;
|
;
|
||||||
@@ -351,3 +352,4 @@ exten => _X.,23,Dial(Zap/g1/${EXTEN})
|
|||||||
; end example 3
|
; end example 3
|
||||||
|
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
\end{astlisting}
|
||||||
|
@@ -13,7 +13,7 @@ compatible hardware may have different features.
|
|||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Digium, Inc. (Primary Developer of Asterisk)
|
\item Digium, Inc. (Primary Developer of Asterisk)
|
||||||
http://www.digium.com
|
\url{http://www.digium.com}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Analog Interfaces
|
\item Analog Interfaces
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
@@ -41,7 +41,7 @@ compatible hardware may have different features.
|
|||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item QuickNet, Inc.
|
\item QuickNet, Inc.
|
||||||
http://www.quicknet.net
|
\url{http://www.quicknet.net}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Internet PhoneJack - Single FXS interface. Supports Linux telephony
|
\item Internet PhoneJack - Single FXS interface. Supports Linux telephony
|
||||||
interface. DSP compression built-in.
|
interface. DSP compression built-in.
|
||||||
@@ -53,14 +53,14 @@ compatible hardware may have different features.
|
|||||||
|
|
||||||
\subsection{mISDN compatible hardware}
|
\subsection{mISDN compatible hardware}
|
||||||
|
|
||||||
mISDN homepage: http://www.isdn4linux.de/mISDN/
|
mISDN homepage: \url{http://www.misdn.org/}
|
||||||
|
|
||||||
Any adapter with an mISDN driver should be compatible with
|
Any adapter with an mISDN driver should be compatible with
|
||||||
chan\_misdn. See the mISDN section for more information.
|
chan\_misdn. See the mISDN section for more information.
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Digium, Inc. (Primary Developer of Asterisk)
|
\item Digium, Inc. (Primary Developer of Asterisk)
|
||||||
http://www.digium.com
|
\url{http://www.digium.com}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item B410P - 4 Port BRI card (TE/NT)
|
\item B410P - 4 Port BRI card (TE/NT)
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
@@ -68,7 +68,7 @@ chan\_misdn. See the mISDN section for more information.
|
|||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item beroNet
|
\item beroNet
|
||||||
http://www.beronet.com
|
\url{http://www.beronet.com}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item BN4S0 - 4 Port BRI card (TE/NT)
|
\item BN4S0 - 4 Port BRI card (TE/NT)
|
||||||
|
|
||||||
@@ -87,13 +87,13 @@ chan\_misdn. See the mISDN section for more information.
|
|||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\item ALSA
|
\item ALSA
|
||||||
http://www.alsa-project.org
|
\url{http://www.alsa-project.org}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Any ALSA compatible full-duplex sound card
|
\item Any ALSA compatible full-duplex sound card
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\item OSS
|
\item OSS
|
||||||
http://www.opensound.com
|
\url{http://www.opensound.com}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Any OSS compatible full-duplex sound card
|
\item Any OSS compatible full-duplex sound card
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
@@ -21,7 +21,7 @@ additional voicemail functionality, including:
|
|||||||
|
|
||||||
If you do not have the University of Washington's IMAP c-client
|
If you do not have the University of Washington's IMAP c-client
|
||||||
installed on your system, you will need to download the c-client
|
installed on your system, you will need to download the c-client
|
||||||
source distribution (http://www.washington.edu/imap/) and compile it.
|
source distribution (\url{http://www.washington.edu/imap/}) and compile it.
|
||||||
Asterisk supports both the 2004 and 2006 versions of c-client, however
|
Asterisk supports both the 2004 and 2006 versions of c-client, however
|
||||||
mail\_expunge\_full is enabled in the 2006 version.
|
mail\_expunge\_full is enabled in the 2006 version.
|
||||||
|
|
||||||
@@ -79,7 +79,7 @@ authpassword=<password>
|
|||||||
The "expungeonhangup" flag is used to determine if the voicemail system should
|
The "expungeonhangup" flag is used to determine if the voicemail system should
|
||||||
expunge all messages marked for deletion when the user hangs up the phone.
|
expunge all messages marked for deletion when the user hangs up the phone.
|
||||||
|
|
||||||
Each mailbox definition should also have imapuser=<imap username>.
|
Each mailbox definition should also have imapuser=$<$imap username$>$.
|
||||||
For example:
|
For example:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
|
@@ -58,7 +58,7 @@ To see all of the available manager commands, use the "manager show commands"
|
|||||||
CLI command.
|
CLI command.
|
||||||
|
|
||||||
You can get more information about a manager command
|
You can get more information about a manager command
|
||||||
with the "manager show command <command>" CLI command in Asterisk.
|
with the "manager show command $<$command$>$" CLI command in Asterisk.
|
||||||
|
|
||||||
\section{Examples}
|
\section{Examples}
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
@@ -101,7 +101,7 @@ Where 680 is an extension that sends you to a MeetMe room.
|
|||||||
|
|
||||||
There are a number of GUI tools that use the manager interface, please search
|
There are a number of GUI tools that use the manager interface, please search
|
||||||
the mailing list archives and the documentation page on the
|
the mailing list archives and the documentation page on the
|
||||||
http://www.asterisk.org web site for more information.
|
\url{http://www.asterisk.org} web site for more information.
|
||||||
|
|
||||||
|
|
||||||
\section{Some standard AMI headers}
|
\section{Some standard AMI headers}
|
||||||
|
@@ -27,12 +27,14 @@ supports every mISDN Hardware and provides an interface for asterisk.
|
|||||||
|
|
||||||
\subsection{Fast Installation Guide}
|
\subsection{Fast Installation Guide}
|
||||||
|
|
||||||
It is easy to install mISDN and mISDNuser. Just fetch the newest head of the
|
It is easy to install mISDN and mISDNuser. This can be done by:
|
||||||
cvs, this can be done by:
|
\begin{itemize}
|
||||||
|
\item You can download latest stable releases from \url{http://www.misdn.org/downloads/}
|
||||||
|
|
||||||
|
\item Just fetch the newest head of the GIT (mISDN provect moved from CVS)
|
||||||
|
In details this process described here: \url{http://www.misdn.org/index.php/GIT}
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
\begin{verbatim}
|
|
||||||
cvs -d:pserver:anonymous:readonly@cvs.isdn4linux.de:/i4ldev co mISDN mISDNuser
|
|
||||||
\end{verbatim}
|
|
||||||
|
|
||||||
then compile and install both with:
|
then compile and install both with:
|
||||||
|
|
||||||
@@ -58,7 +60,7 @@ cd asterisk ;
|
|||||||
That's all!
|
That's all!
|
||||||
|
|
||||||
Follow the instructions in the mISDN Package for how to load the Kernel
|
Follow the instructions in the mISDN Package for how to load the Kernel
|
||||||
Modules.
|
Modules. Also install process described in \url{http://www.misdn.org/index.php/Installing_mISDN}
|
||||||
|
|
||||||
\subsection{Pre-Requisites}
|
\subsection{Pre-Requisites}
|
||||||
|
|
||||||
@@ -67,7 +69,7 @@ the mISDNuser package. Chan\_misdn works with both, the current release version
|
|||||||
and the development (svn trunk) version of Asterisk. mISDNuser and mISDN must
|
and the development (svn trunk) version of Asterisk. mISDNuser and mISDN must
|
||||||
be fetched from cvs.isdn4linux.de.
|
be fetched from cvs.isdn4linux.de.
|
||||||
|
|
||||||
You should use Kernels >= 2.6.9
|
You should use Kernels $>$= 2.6.9
|
||||||
|
|
||||||
|
|
||||||
\subsection{Configuration}
|
\subsection{Configuration}
|
||||||
@@ -231,7 +233,7 @@ parts. Misdn Debug messages begin with an 'I', asterisk messages begin with
|
|||||||
an '*', the rest is clear I think.
|
an '*', the rest is clear I think.
|
||||||
|
|
||||||
Please take a trace of the problem and open a report in the Asterisk issue
|
Please take a trace of the problem and open a report in the Asterisk issue
|
||||||
tracker at http://bugs.digium.com in the "channel drivers" project,
|
tracker at \url{http://bugs.digium.com} in the "channel drivers" project,
|
||||||
"chan\_misdn" category. Read the bug guidelines to make sure you
|
"chan\_misdn" category. Read the bug guidelines to make sure you
|
||||||
provide all the information needed.
|
provide all the information needed.
|
||||||
|
|
||||||
|
@@ -7,5 +7,5 @@ music on hold selections.
|
|||||||
However, if you still need to use mp3 as your music on hold format, a format
|
However, if you still need to use mp3 as your music on hold format, a format
|
||||||
driver for reading MP3 audio files is available in the asterisk-addons SVN
|
driver for reading MP3 audio files is available in the asterisk-addons SVN
|
||||||
repository on svn.digium.com or in the asterisk-addons release at
|
repository on svn.digium.com or in the asterisk-addons release at
|
||||||
ftp://ftp.digium.com/pub/telephony/asterisk/.
|
\url{ftp://ftp.digium.com/pub/telephony/asterisk/}.
|
||||||
|
|
||||||
|
@@ -1,8 +1,8 @@
|
|||||||
|
|
||||||
|
|
||||||
ODBC Storage allows you to store voicemail messages within a database
|
ODBC Storage allows you to store voicemail messages within a database
|
||||||
instead of using a file. This is *not* a full realtime engine and
|
instead of using a file. This is \textbf{not} a full realtime engine and
|
||||||
*only* supports ODBC. The table description for the "voicemessages"
|
\textbf{only} supports ODBC. The table description for the "voicemessages"
|
||||||
table is as follows:
|
table is as follows:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
|
@@ -3,9 +3,9 @@ seekers/poll takers/magazine renewers/etc?
|
|||||||
|
|
||||||
\subsection{First of all}
|
\subsection{First of all}
|
||||||
|
|
||||||
Try the FTC "Don't call" database, this alone will reduce your
|
the FTC "Don't call" database, this alone will reduce your
|
||||||
telemarketing call volume considerably. (see:
|
telemarketing call volume considerably. (see:
|
||||||
https://www.donotcall.gov/default.aspx ) But, this list won't protect
|
\url{https://www.donotcall.gov/default.aspx} ) But, this list won't protect
|
||||||
from the Charities, previous business relationships, etc.
|
from the Charities, previous business relationships, etc.
|
||||||
|
|
||||||
\subsection{Next, Fight against autodialers!!}
|
\subsection{Next, Fight against autodialers!!}
|
||||||
@@ -71,13 +71,14 @@ exten => s,1,Answer
|
|||||||
exten => s,2,SetVar,repeatcount=0
|
exten => s,2,SetVar,repeatcount=0
|
||||||
exten => s,3,Zapateller,nocallerid
|
exten => s,3,Zapateller,nocallerid
|
||||||
exten => s,4,PrivacyManager
|
exten => s,4,PrivacyManager
|
||||||
exten => s,105,Background(tt-allbusy) ;; do this if they don't enter a number to Privacy Manager
|
;; do this if they don't enter a number to Privacy Manager
|
||||||
|
exten => s,105,Background(tt-allbusy)
|
||||||
exten => s,106,Background(tt-somethingwrong)
|
exten => s,106,Background(tt-somethingwrong)
|
||||||
exten => s,107,Background(tt-monkeysintro)
|
exten => s,107,Background(tt-monkeysintro)
|
||||||
exten => s,108,Background(tt-monkeys)
|
exten => s,108,Background(tt-monkeys)
|
||||||
exten => s,109,Background(tt-weasels)
|
exten => s,109,Background(tt-weasels)
|
||||||
exten => s,110,Hangup
|
exten => s,110,Hangup
|
||||||
exten => s,5,GotoIf($[ "${CALLERIDNUM}" = "7773334444" & "${CALLERIDNAME}" : "Privacy Manager" ]?callerid-liar|s|1:s|7)
|
exten => s,5,GotoIf($[ "${CALLERID(num)}" = "7773334444" & "${CALLERID(name)}" : "Privacy Manager" ]?callerid-liar|s|1:s|7)
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
I suggest using Zapateller at the beginning of the context, before
|
I suggest using Zapateller at the beginning of the context, before
|
||||||
@@ -103,7 +104,7 @@ not to enter options when encountering such systems. Don't know.
|
|||||||
|
|
||||||
I have developed an elaborate script to torture Telemarketers, and
|
I have developed an elaborate script to torture Telemarketers, and
|
||||||
entertain friends. (See
|
entertain friends. (See
|
||||||
http://www.voip-info.org/wiki-Asterisk+Telemarketer+Torture )
|
\url{http://www.voip-info.org/wiki-Asterisk+Telemarketer+Torture} )
|
||||||
|
|
||||||
While mostly those that call in and traverse my teletorture scripts
|
While mostly those that call in and traverse my teletorture scripts
|
||||||
are those we know, and are doing so out of curiosity, there have been
|
are those we know, and are doing so out of curiosity, there have been
|
||||||
@@ -150,8 +151,8 @@ to your party. Depending on your dial options, they will hear ringing
|
|||||||
indications, or get music on hold. I suggest music on hold.
|
indications, or get music on hold. I suggest music on hold.
|
||||||
|
|
||||||
\item Your extension is then dialed. When (and if) you pick up, you are
|
\item Your extension is then dialed. When (and if) you pick up, you are
|
||||||
told that a caller presenting themselves as <their recorded intro is
|
told that a caller presenting themselves as $<$their recorded intro is
|
||||||
played> is calling, and you have options, like being connected,
|
played$>$ is calling, and you have options, like being connected,
|
||||||
sending them to voicemail, torture, etc.
|
sending them to voicemail, torture, etc.
|
||||||
|
|
||||||
\item You make your selection, and the call is handled as you chose.
|
\item You make your selection, and the call is handled as you chose.
|
||||||
@@ -197,7 +198,7 @@ helpful.
|
|||||||
When there is no CallerID, P and p options will always record an intro
|
When there is no CallerID, P and p options will always record an intro
|
||||||
for the incoming caller. This intro will be stored temporarily in the
|
for the incoming caller. This intro will be stored temporarily in the
|
||||||
/var/lib/asterisk/sounds/priv-callerintros dir, under the name
|
/var/lib/asterisk/sounds/priv-callerintros dir, under the name
|
||||||
NOCALLERID\_<extension><channelname> and will be erased after the
|
NOCALLERID\_$<$extension$>$ $<$channelname$>$ and will be erased after the
|
||||||
callee decides what to do with the call.
|
callee decides what to do with the call.
|
||||||
|
|
||||||
Of course, NOCALLERID is not stored in the database. All those with no
|
Of course, NOCALLERID is not stored in the database. All those with no
|
||||||
@@ -226,7 +227,7 @@ time they call.
|
|||||||
\subsubsection{Philosophical Side Note}
|
\subsubsection{Philosophical Side Note}
|
||||||
The 'P' option stores the CALLERID in the database, along with the
|
The 'P' option stores the CALLERID in the database, along with the
|
||||||
callee's choice of actions, as a convenience to the CALLEE, whereas
|
callee's choice of actions, as a convenience to the CALLEE, whereas
|
||||||
introductions are stored and re-used for the convenience of the CALLER.]
|
introductions are stored and re-used for the convenience of the CALLER.
|
||||||
|
|
||||||
\subsubsection{Introductions}
|
\subsubsection{Introductions}
|
||||||
Unless instructed to not save introductions (see the 'n' option above),
|
Unless instructed to not save introductions (see the 'n' option above),
|
||||||
@@ -245,7 +246,7 @@ Next of all, these intros can be used in voicemail, played over
|
|||||||
loudspeakers, and perhaps other nifty things. For instance:
|
loudspeakers, and perhaps other nifty things. For instance:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
exten => s,7,System(/usr/bin/play /var/lib/asterisk/sounds/priv-callerintros/${CALLERIDNUM}.gsm&|0)
|
exten => s,7,System(/usr/bin/play /var/lib/asterisk/sounds/priv-callerintros/${CALLERID(num)}.gsm&|0)
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
When a call comes in at the house, the above priority gets executed,
|
When a call comes in at the house, the above priority gets executed,
|
||||||
@@ -273,7 +274,7 @@ exten => s,1,Background,intro-options ;; Script:
|
|||||||
;; to record a new introduction, dial 2.
|
;; to record a new introduction, dial 2.
|
||||||
;; to return to the main menu, dial 3.
|
;; to return to the main menu, dial 3.
|
||||||
;; to hear what this is all about, dial 4.
|
;; to hear what this is all about, dial 4.
|
||||||
exten => 1,1,Playback,priv-callerintros/${CALLERIDNUM}
|
exten => 1,1,Playback,priv-callerintros/${CALLERID(num)}
|
||||||
exten => 1,2,Goto(s,1)
|
exten => 1,2,Goto(s,1)
|
||||||
exten => 2,1,Goto(home-introduction-record,s,1)
|
exten => 2,1,Goto(home-introduction-record,s,1)
|
||||||
exten => 3,1,Goto(homeline,s,7)
|
exten => 3,1,Goto(homeline,s,7)
|
||||||
@@ -329,8 +330,8 @@ exten => 1,2,Goto(2,1)
|
|||||||
exten => 2,1,Background,intro-start
|
exten => 2,1,Background,intro-start
|
||||||
;; OK, here we go! After the beep, please give your introduction.
|
;; OK, here we go! After the beep, please give your introduction.
|
||||||
exten => 2,2,Background,beep
|
exten => 2,2,Background,beep
|
||||||
exten => 2,3,Record,priv-callerintros/${CALLERIDNUM}:gsm|4
|
exten => 2,3,Record,priv-callerintros/${CALLERID(num)}:gsm|4
|
||||||
exten => 2,4,Background,priv-callerintros/${CALLERIDNUM}
|
exten => 2,4,Background,priv-callerintros/${CALLERID(num)}
|
||||||
exten => 2,5,Goto(home-introduction,s,1)
|
exten => 2,5,Goto(home-introduction,s,1)
|
||||||
exten => t,1,Goto(s,1)
|
exten => t,1,Goto(s,1)
|
||||||
exten => i,1,Background,invalid
|
exten => i,1,Background,invalid
|
||||||
|
@@ -93,7 +93,7 @@ integer values from 0 to 7.
|
|||||||
\subsubsection{Reference}
|
\subsubsection{Reference}
|
||||||
|
|
||||||
IEEE 802.1Q Standard:
|
IEEE 802.1Q Standard:
|
||||||
http://standards.ieee.org/getieee802/download/802.1Q-1998.pdf
|
\url{http://standards.ieee.org/getieee802/download/802.1Q-1998.pdf}
|
||||||
Related protocols: IEEE 802.3, 802.2, 802.1D, 802.1Q
|
Related protocols: IEEE 802.3, 802.2, 802.1D, 802.1Q
|
||||||
|
|
||||||
RFC 2474 - "Definition of the Differentiated Services Field
|
RFC 2474 - "Definition of the Differentiated Services Field
|
||||||
@@ -102,17 +102,17 @@ December 1998.
|
|||||||
|
|
||||||
IANA Assignments, DSCP registry
|
IANA Assignments, DSCP registry
|
||||||
Differentiated Services Field Codepoints
|
Differentiated Services Field Codepoints
|
||||||
http://www.iana.org/assignments/dscp-registry
|
\url{http://www.iana.org/assignments/dscp-registry}
|
||||||
|
|
||||||
To get the most out of setting the TOS on packets generated by
|
To get the most out of setting the TOS on packets generated by
|
||||||
Asterisk, you will need to ensure that your network handles packets
|
Asterisk, you will need to ensure that your network handles packets
|
||||||
with a TOS properly. For Cisco devices, see the previously mentioned
|
with a TOS properly. For Cisco devices, see the previously mentioned
|
||||||
"Enterprise QoS Solution Reference Network Design Guide". For Linux
|
"Enterprise QoS Solution Reference Network Design Guide". For Linux
|
||||||
systems see the "Linux Advanced Routing \& Traffic Control HOWTO" at
|
systems see the "Linux Advanced Routing \& Traffic Control HOWTO" at
|
||||||
http://www.lartc.org/.
|
\url{http://www.lartc.org/}.
|
||||||
|
|
||||||
For more information on Quality of
|
For more information on Quality of
|
||||||
Service for VoIP networks see the "Enterprise QoS Solution Reference
|
Service for VoIP networks see the "Enterprise QoS Solution Reference
|
||||||
Network Design Guide" version 3.3 from Cisco at:
|
Network Design Guide" version 3.3 from Cisco at:
|
||||||
http://www.cisco.com/application/pdf/en/us/guest/netsol/ns432/c649/ccmigration\_09186a008049b062.pdf
|
\url{http://www.cisco.com/application/pdf/en/us/guest/netsol/ns432/c649/ccmigration\_09186a008049b062.pdf}
|
||||||
|
|
||||||
|
@@ -57,7 +57,6 @@ queue specifies the context "dispatch". These three
|
|||||||
contexts must be defined somewhere in your dialplan.
|
contexts must be defined somewhere in your dialplan.
|
||||||
We will show them after the main menu below.
|
We will show them after the main menu below.
|
||||||
|
|
||||||
<verbage explaining options above>
|
|
||||||
In the [general] section, specifying the persistentmembers=yes,
|
In the [general] section, specifying the persistentmembers=yes,
|
||||||
will cause the agent lists to be stored in astdb, and
|
will cause the agent lists to be stored in astdb, and
|
||||||
recalled on startup.
|
recalled on startup.
|
||||||
@@ -234,7 +233,7 @@ And in the dispatch context, first agents of priority 10 are tried, then
|
|||||||
Notice that a common pattern is followed in each of the three queue contexts:
|
Notice that a common pattern is followed in each of the three queue contexts:
|
||||||
|
|
||||||
First, you set QUEUE\_MAX\_PENALTY to a value, then you call
|
First, you set QUEUE\_MAX\_PENALTY to a value, then you call
|
||||||
Queue(<queue-name>,option,... (see the documentation for the Queue application));
|
Queue($<$queue-name$>$,option,...) (see the Queue application documetation for details)
|
||||||
|
|
||||||
In the above, note that the "t" option is specified, and this allows the
|
In the above, note that the "t" option is specified, and this allows the
|
||||||
agent picking up the incoming call the luxury of transferring the call to
|
agent picking up the incoming call the luxury of transferring the call to
|
||||||
|
@@ -21,7 +21,7 @@ Currently there are three realtime database drivers:
|
|||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item ODBC: Support for UnixODBC, integrated into Asterisk
|
\item ODBC: Support for UnixODBC, integrated into Asterisk
|
||||||
The UnixODBC subsystem supports many different databases,
|
The UnixODBC subsystem supports many different databases,
|
||||||
please check www.unixodbc.org for more information.
|
please check \url{www.unixodbc.org} for more information.
|
||||||
\item MySQL: Found in the asterisk-addons subversion repository on svn.digium.com
|
\item MySQL: Found in the asterisk-addons subversion repository on svn.digium.com
|
||||||
\item PostgreSQL: Native support for Postgres, integrated into Asterisk
|
\item PostgreSQL: Native support for Postgres, integrated into Asterisk
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
Reference in New Issue
Block a user