diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/sla.txt | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/doc/sla.txt b/doc/sla.txt new file mode 100644 index 000000000..8a3eb71da --- /dev/null +++ b/doc/sla.txt @@ -0,0 +1,93 @@ +------------------------------------------------------------- +--- 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: + +[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 + +For the trunk side of SLA, the only channels that are currently supported are +Zap channels. Support for IP trunks is planned, but not yet implemented. + +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. + +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. +------------------------------------------------------------- + + +------------------------------------------------------------- +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. +------------------------------------------------------------- |