aboutsummaryrefslogtreecommitdiffstats
path: root/doc/sla.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/sla.txt')
-rw-r--r--doc/sla.txt225
1 files changed, 0 insertions, 225 deletions
diff --git a/doc/sla.txt b/doc/sla.txt
deleted file mode 100644
index acb9cb07b..000000000
--- a/doc/sla.txt
+++ /dev/null
@@ -1,225 +0,0 @@
--------------------------------------------------------------------------------
---- Shared Line Appearances ---------------------------------------------------
--------------------------------------------------------------------------------
-
--------------------------------------------------------------------------------
-INTRODUCTION
-
-The "SLA" functionality in Asterisk is intended to allow a setup that emulates
-a simple key system. It uses the various abstraction layers already built into
-Asterisk to emulate key system functionality across various devices, including
-IP channels.
--------------------------------------------------------------------------------
-
--------------------------------------------------------------------------------
-DIALPLAN CONFIGURATION
-
-The SLA implementation can automatically generate the dialplan necessary for
-basic operation if the "autocontext" option is set for trunks and stations in
-sla.conf. However, for reference, here is an automatically generated dialplan
-to help with custom building of the dialplan to include other features, such as
-voicemail.
-
-However, note that there is a little bit of additional configuration needed if
-the trunk is an IP channel. This is discussed in the TRUNKS section.
-
-[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)
--------------------------------------------------------------------------------
-
--------------------------------------------------------------------------------
-TRUNKS
-
-Be sure to configure the trunk's context to be the same one that is set for the
-"autocontext" option in sla.conf if automatic dialplan configuration is used.
-This would be done in the regular device entry in zapata.conf, sip.conf, etc.
-Note that the automatic dialplan generation creates the SLATrunk() extension
-at extension 's'. This is perfect for Zap channels that are FXO trunks, for
-example. However, it may not be good enough for an IP trunk, since the call
-coming in over the trunk may specify an actual number.
-
-If the dialplan is being built manually, ensure that calls coming in on a trunk
-execute the SLATrunk() application with an argument of the trunk name, as shown
-in the dialplan example before.
-
-IP trunks can be used, but they require some additional configuration to work.
-
-For this example, let's say we have a SIP trunk called "mytrunk" that is going
-to be used as line4. Furthermore, when calls come in on this trunk, they are
-going to say that they are calling the number "12564286000". Also, let's say
-that the numbers that are valid for calling out this trunk are NANP numbers,
-of the form _1NXXNXXXXXX.
-
-In sip.conf, there would be an entry for [mytrunk]. For [mytrunk],
-set context=line4.
-
-
-sla.conf:
-
-[line4]
-type=trunk
-device=Local/disa@line4_outbound
-
-
-extensions.conf:
-
-[line4]
-exten => 12564286000,1,SLATrunk(line4)
-
-[line4_outbound]
-exten => disa,1,Disa(no-password|line4_outbound)
-exten => _1NXXNXXXXXX,1,Dial(SIP/${EXTEN}@mytrunk)
-
-
-So, when a station picks up their phone and connects to line 4, they are
-connected to the local dialplan. The Disa application plays dialtone to the
-phone and collects digits until it matches an extension. In this case, once
-the phone dials a number like 12565551212, the call will proceed out the
-SIP trunk.
--------------------------------------------------------------------------------
-
-
--------------------------------------------------------------------------------
-STATIONS
-
-Currently, the only channel driver that has all of the features necessary to
-support an SLA environment is chan_sip. Here are some hints on configuring
-a SIP phone for use with SLA:
-
-1) Add the SIP channel as a [station] in sla.conf.
-
-2) Configure the phone in sip.conf. If automatic dialplan configuration was
- used by enabling the "autocontext" option in sla.conf, then this entry in
- sip.conf should have the same context setting.
-
-3) On the phone itself, there are various things that must be configured to
- make everything work correctly:
-
- Let's say this phone is called "station1" in sla.conf, and it uses trunks
- named "line1" and line2".
-
- a) Two line buttons must be configured to subscribe to the state of the
- following extensions:
- - station1_line1
- - station1_line2
-
- b) The line appearance buttons should be configured to dial the extensions
- that they are subscribed to when they are pressed.
-
- c) If you would like the phone to automatically connect to a trunk when it
- is taken off hook, then the phone should be automatically configured to
- dial "station1" when it is taken off hook.
--------------------------------------------------------------------------------
-
-
--------------------------------------------------------------------------------
-VOICEMAIL
-
-This is an example of how you could set up a single voicemail box for the
-phone system. The voicemail box number used in this example is 1234, which
-would be configured in voicemail.conf.
-
-For this example, assume that there are 2 trunks and 3 stations. The trunks
-are Zap/1 and Zap/2. The stations are SIP/station1, SIP/station2, and
-SIP/station3.
-
-In zapata.conf, channel 1 has context=line1 and channel 2 has context=line2.
-
-In sip.conf, all three stations are configured with context=sla_stations.
-
-When the stations pick up their phones to dial, they are allowed to dial
-NANP numbers for outbound calls, or 8500 for checking voicemail.
-
-
-sla.conf:
-
-[line1]
-type=trunk
-device=Local/disa@line1_outbound
-
-[line2]
-type=trunk
-device=Local/disa@line2_outbound
-
-[station](!)
-type=station
-trunk=line1
-trunk=line2
-
-[station1](station)
-device=SIP/station1
-
-[station2](station)
-device=SIP/station2
-
-[station3](station)
-device=SIP/station3
-
-
-extensions.conf:
-
-[macro-slaline]
-exten => s,1,SLATrunk(${ARG1})
-exten => s,n,Goto(s-${SLATRUNK_STATUS}|1)
-exten => s-FAILURE,1,Voicemail(1234|u)
-exten => s-UNANSWERED,1,Voicemail(1234|u)
-
-[line1]
-exten => s,1,Macro(slaline|line1)
-
-[line2]
-exten => s,2,Macro(slaline|line2)
-
-[line1_outbound]
-exten => disa,1,Disa(no-password|line1_outbound)
-exten => _1NXXNXXXXXX,1,Dial(Zap/1/${EXTEN})
-exten => 8500,1,VoicemailMain(1234)
-
-[line2_outbound]
-exten => disa,1,Disa(no-password|line2_outbound)
-exten => _1NXXNXXXXXX,1,Dial(Zap/2/${EXTEN})
-exten => 8500,1,VoicemailMain(1234)
-
-[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)
-
--------------------------------------------------------------------------------