mirror of
https://github.com/asterisk/asterisk.git
synced 2026-05-27 13:13:07 +00:00
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r56277 | russell | 2007-02-22 17:08:36 -0600 (Thu, 22 Feb 2007) | 18 lines Merge changes from team/russell/sla_updates. This batch of changes to the SLA code does a few different things. * I made the SLA code event driven instead of having to act in a lot of busy loops while dialing things to wait for state changes. This makes the code more efficient and readable at the same time. * I have implemented a couple of new features. The first is inbound trunk ringing timeouts. This is an option that defines how long to let an incoming call on a trunk to ring. * I have also implemented ring timeouts for stations. They may be specified for the entire station, meaning it is how long to let the station ring before giving up. You can also specify a ring timeout for a specific trunk on a station. So, you can say that you only want a specific station to ring 5 seconds if it is line1 ringing, but otherwise, there is no timeout. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@56278 65c4cc65-6c06-0410-ace0-fbb531ad65f3
94 lines
3.9 KiB
Plaintext
94 lines
3.9 KiB
Plaintext
-------------------------------------------------------------------------------
|
|
--- 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.
|
|
-------------------------------------------------------------------------------
|