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/branches/1.4@56277 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Russell Bryant
2007-02-22 23:08:36 +00:00
parent 4565c1483c
commit f314685447
4 changed files with 694 additions and 308 deletions

View File

@@ -1,17 +1,17 @@
-------------------------------------------------------------
--- Shared Line Appearances ---------------------------------
-------------------------------------------------------------
-------------------------------------------------------------------------------
--- 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
@@ -44,9 +44,9 @@ 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
@@ -57,10 +57,10 @@ Be sure to configure the trunk's context to be the same one that is set for the
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
@@ -90,4 +90,4 @@ a SIP phone for use with SLA:
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.
-------------------------------------------------------------
-------------------------------------------------------------------------------