|
|
|
@ -47,34 +47,7 @@ system control each individual light on every phone to ensure that it shows the
|
|
|
|
|
correct state of the line. The phones must subscribe to the state of each of their
|
|
|
|
|
line appearances.
|
|
|
|
|
|
|
|
|
|
\begin{verbatim}
|
|
|
|
|
|
|
|
|
|
[line1]
|
|
|
|
|
exten => s,1,SLATrunk(line1)
|
|
|
|
|
|
|
|
|
|
[line2]
|
|
|
|
|
exten => s,2,SLATrunk(line2)
|
|
|
|
|
|
|
|
|
|
[sla_stations]
|
|
|
|
|
exten => station1,1,SLAStation(station1)
|
|
|
|
|
exten => station1_line1,hint,SLA:station1_line1
|
|
|
|
|
exten => station1_line1,1,SLAStation(station1_line1)
|
|
|
|
|
exten => station1_line2,hint,SLA:station1_line2
|
|
|
|
|
exten => station1_line2,1,SLAStation(station1_line2)
|
|
|
|
|
|
|
|
|
|
exten => station2,1,SLAStation(station2)
|
|
|
|
|
exten => station2_line1,hint,SLA:station2_line1
|
|
|
|
|
exten => station2_line1,1,SLAStation(station2_line1)
|
|
|
|
|
exten => station2_line2,hint,SLA:station2_line2
|
|
|
|
|
exten => station2_line2,1,SLAStation(station2_line2)
|
|
|
|
|
|
|
|
|
|
exten => station3,1,SLAStation(station3)
|
|
|
|
|
exten => station3_line1,hint,SLA:station3_line1
|
|
|
|
|
exten => station3_line1,1,SLAStation(station3_line1)
|
|
|
|
|
exten => station3_line2,hint,SLA:station3_line2
|
|
|
|
|
exten => station3_line2,1,SLAStation(station3_line2)
|
|
|
|
|
|
|
|
|
|
\end{verbatim}
|
|
|
|
|
Please refer to the examples section for full dialplan samples for SLA.
|
|
|
|
|
|
|
|
|
|
\subsection{Trunks}
|
|
|
|
|
\label{trunks}
|
|
|
|
@ -186,6 +159,74 @@ Here are some hints on configuring a SIP phone for use with SLA:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\section{Configuration Examples}
|
|
|
|
|
\subsection{Basic SLA}
|
|
|
|
|
|
|
|
|
|
This is an example of the most basic SLA setup. It uses the automatic
|
|
|
|
|
dialplan generation so the configuration is minimal.
|
|
|
|
|
|
|
|
|
|
sla.conf:
|
|
|
|
|
\begin{verbatim}
|
|
|
|
|
[line1]
|
|
|
|
|
type=trunk
|
|
|
|
|
device=Zap/1
|
|
|
|
|
autocontext=line1
|
|
|
|
|
|
|
|
|
|
[line2]
|
|
|
|
|
type=trunk
|
|
|
|
|
device=Zap/2
|
|
|
|
|
autocontext=line2
|
|
|
|
|
|
|
|
|
|
[station](!)
|
|
|
|
|
type=station
|
|
|
|
|
trunk=line1
|
|
|
|
|
trunk=line2
|
|
|
|
|
autocontext=sla_stations
|
|
|
|
|
|
|
|
|
|
[station1](station)
|
|
|
|
|
device=SIP/station1
|
|
|
|
|
|
|
|
|
|
[station2](station)
|
|
|
|
|
device=SIP/station2
|
|
|
|
|
|
|
|
|
|
[station3](station)
|
|
|
|
|
device=SIP/station3
|
|
|
|
|
|
|
|
|
|
\end{verbatim}
|
|
|
|
|
|
|
|
|
|
With this configuration, the dialplan is generated automatically. The first
|
|
|
|
|
zap channel should have its context set to "line1" and the second should be
|
|
|
|
|
set to "line2" in zapata.conf. In sip.conf, station1, station2, and station3
|
|
|
|
|
should all have their context set to "sla\_stations".
|
|
|
|
|
|
|
|
|
|
For reference, here is the automatically generated dialplan for this situation:
|
|
|
|
|
\begin{verbatim}
|
|
|
|
|
[line1]
|
|
|
|
|
exten => s,1,SLATrunk(line1)
|
|
|
|
|
|
|
|
|
|
[line2]
|
|
|
|
|
exten => s,2,SLATrunk(line2)
|
|
|
|
|
|
|
|
|
|
[sla_stations]
|
|
|
|
|
exten => station1,1,SLAStation(station1)
|
|
|
|
|
exten => station1_line1,hint,SLA:station1_line1
|
|
|
|
|
exten => station1_line1,1,SLAStation(station1_line1)
|
|
|
|
|
exten => station1_line2,hint,SLA:station1_line2
|
|
|
|
|
exten => station1_line2,1,SLAStation(station1_line2)
|
|
|
|
|
|
|
|
|
|
exten => station2,1,SLAStation(station2)
|
|
|
|
|
exten => station2_line1,hint,SLA:station2_line1
|
|
|
|
|
exten => station2_line1,1,SLAStation(station2_line1)
|
|
|
|
|
exten => station2_line2,hint,SLA:station2_line2
|
|
|
|
|
exten => station2_line2,1,SLAStation(station2_line2)
|
|
|
|
|
|
|
|
|
|
exten => station3,1,SLAStation(station3)
|
|
|
|
|
exten => station3_line1,hint,SLA:station3_line1
|
|
|
|
|
exten => station3_line1,1,SLAStation(station3_line1)
|
|
|
|
|
exten => station3_line2,hint,SLA:station3_line2
|
|
|
|
|
exten => station3_line2,1,SLAStation(station3_line2)
|
|
|
|
|
\end{verbatim}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\subsection{SLA and Voicemail}
|
|
|
|
|
\label{voicemail}
|
|
|
|
|
|
|
|
|
@ -284,8 +325,6 @@ exten => station3_line2,1,SLAStation(station3_line2)
|
|
|
|
|
This section is intended to describe how Asterisk handles calls inside of the
|
|
|
|
|
SLA system so that it is clear what behavior is expected.
|
|
|
|
|
|
|
|
|
|
Note that this section is not yet complete.
|
|
|
|
|
|
|
|
|
|
\subsection{Station goes off hook (not ringing)}
|
|
|
|
|
|
|
|
|
|
When a station goes off hook, it should initiate a call to Asterisk with the
|
|
|
|
|