Merged revisions 278023 via svnmerge from
[asterisk/asterisk.git] / configs / features.conf.sample
1 ;
2 ; Sample Call Features (parking, transfer, etc) configuration
3 ;
4
5 [general]
6 parkext => 700                  ; What extension to dial to park        (all parking lots)
7 parkpos => 701-720              ; What extensions to park calls on. (defafult parking lot)
8                                 ; These needs to be numeric, as Asterisk starts from the start position
9                                 ; and increments with one for the next parked call.
10 context => parkedcalls          ; Which context parked calls are in (default parking lot)
11 ;parkinghints = no              ; Add hints priorities automatically for parking slots (default is no).
12 ;parkingtime => 45              ; Number of seconds a call can be parked for
13                                 ; (default is 45 seconds)
14 ;comebacktoorigin = yes ; Whether to return to the original calling extension upon parking
15                                 ; timeout or to send the call to context 'parkedcallstimeout' at
16                                 ; extension 's', priority '1' (default is yes).
17 ;courtesytone = beep            ; Sound file to play to the parked caller
18                                 ; when someone dials a parked call
19                                 ; or the Touch Monitor is activated/deactivated.
20 ;parkedplay = caller            ; Who to play the courtesy tone to when picking up a parked call
21                                 ; one of: parked, caller, both  (default is caller)
22 ;parkedcalltransfers = caller   ; Enables or disables DTMF based transfers when picking up a parked call.
23                                 ; one of: callee, caller, both, no (default is no)
24 ;parkedcallreparking = caller   ; Enables or disables DTMF based parking when picking up a parked call.
25                                 ; one of: callee, caller, both, no (default is no)
26 ;parkedcallhangup = caller      ; Enables or disables DTMF based hangups when picking up a parked call.
27                                 ; one of: callee, caller, both, no (default is no)
28 ;parkedcallrecording = caller   ; Enables or disables DTMF based one-touch recording when picking up a parked call.
29                                 ; one of: callee, caller, both, no (default is no)
30 ;parkeddynamic = yes            ; Enables dynamically created parkinglots. (default is no)
31 ;adsipark = yes                 ; if you want ADSI parking announcements
32 ;findslot => next               ; Continue to the 'next' free parking space.
33                                 ; Defaults to 'first' available
34 ;parkedmusicclass=default       ; This is the MOH class to use for the parked channel
35                                 ; as long as the class is not set on the channel directly
36                                 ; using Set(CHANNEL(musicclass)=whatever) in the dialplan
37
38 ;transferdigittimeout => 3      ; Number of seconds to wait between digits when transferring a call
39                                 ; (default is 3 seconds)
40 ;xfersound = beep               ; to indicate an attended transfer is complete
41 ;xferfailsound = beeperr        ; to indicate a failed transfer
42 ;pickupexten = *8               ; Configure the pickup extension. (default is *8)
43 ;pickupsound = beep             ; to indicate a successful pickup (default: no sound)
44 ;pickupfailsound = beeperr      ; to indicate that the pickup failed (default: no sound)
45 ;featuredigittimeout = 1000     ; Max time (ms) between digits for
46                             ; feature activation  (default is 1000 ms)
47 ;atxfernoanswertimeout = 15 ; Timeout for answer on attended transfer default is 15 seconds.
48 ;atxferdropcall = no        ; If someone does an attended transfer, then hangs up before the transferred
49                             ; caller is connected, then by default, the system will try to call back the
50                             ; person that did the transfer.  If this is set to "yes", the callback will
51                             ; not be attempted and the transfer will just fail.
52 ;atxferloopdelay = 10       ; Number of seconds to sleep between retries (if atxferdropcall = no)
53 ;atxfercallbackretries = 2  ; Number of times to attempt to send the call back to the transferer.
54                             ; By default, this is 2.
55
56 ;
57 ;*** Define another parking lot
58 ;
59 ; You can set parkinglot with the CHANNEL dialplan function
60 ; or by setting 'parkinglot' directly in the channel configuration file.
61 ;
62 ;[parkinglot_edvina]
63 ;context => edvinapark
64 ;parkpos => 800-850
65 ;findslot => next
66
67 ; Note that the DTMF features listed below only work when two channels have answered and are bridged together.
68 ; They can not be used while the remote party is ringing or in progress. If you require this feature you can use
69 ; chan_local in combination with Answer to accomplish it.
70
71
72 [featuremap]
73 ;blindxfer => #1                ; Blind transfer  (default is #) -- Make sure to set the T and/or t option in the Dial() or Queue() app call!
74 ;disconnect => *0               ; Disconnect  (default is *) -- Make sure to set the H and/or h option in the Dial() or Queue() app call!
75 ;automon => *1                  ; One Touch Record a.k.a. Touch Monitor -- Make sure to set the W and/or w option in the Dial() or Queue() app call!
76 ;atxfer => *2                   ; Attended transfer  -- Make sure to set the T and/or t option in the Dial() or Queue()  app call!
77 ;parkcall => #72        ; Park call (one step parking)  -- Make sure to set the K and/or k option in the Dial() app call!
78 ;automixmon => *3               ; One Touch Record a.k.a. Touch MixMonitor -- Make sure to set the X and/or x option in the Dial() or Queue() app call!
79
80 [applicationmap]
81 ; Note that the DYNAMIC_FEATURES channel variable must be set to use the features
82 ; defined here.  The value of DYNAMIC_FEATURES should be the names of the features
83 ; to allow the channel to use separated by '#'.  For example:
84 ;
85 ;    Set(__DYNAMIC_FEATURES=myfeature1#myfeature2#myfeature3)
86 ;
87 ; (Note: The two leading underscores allow these feature settings to be set on
88 ;  on the outbound channels, as well.  Otherwise, only the original channel
89 ;  will have access to these features.)
90 ;
91 ; The syntax for declaring a dynamic feature is any of the following:
92 ;
93 ;<FeatureName> => <DTMF_sequence>,<ActivateOn>[/<ActivatedBy>],<Application>[,<AppArguments>[,MOH_Class]]
94 ;<FeatureName> => <DTMF_sequence>,<ActivateOn>[/<ActivatedBy>],<Application>[,"<AppArguments>"[,MOH_Class]]
95 ;<FeatureName> => <DTMF_sequence>,<ActivateOn>[/<ActivatedBy>],<Application>([<AppArguments>])[,MOH_Class]
96
97 ;
98 ;  FeatureName   -> This is the name of the feature used in when setting the
99 ;                   DYNAMIC_FEATURES variable to enable usage of this feature.
100 ;  DTMF_sequence -> This is the key sequence used to activate this feature.
101 ;  ActivateOn    -> This is the channel of the call that the application will be executed
102 ;                   on. Valid values are "self" and "peer". "self" means run the
103 ;                   application on the same channel that activated the feature. "peer"
104 ;                   means run the application on the opposite channel from the one that
105 ;                   has activated the feature.
106 ;  ActivatedBy   -> This is which channel is allowed to activate this feature. Valid
107 ;                   values are "caller", "callee", and "both". "both" is the default.
108 ;                   The "caller" is the channel that executed the Dial application, while
109 ;                   the "callee" is the channel called by the Dial application.
110 ;  Application   -> This is the application to execute.
111 ;  AppArguments  -> These are the arguments to be passed into the application.  If you need
112 ;                   commas in your arguments, you should use either the second or third
113 ;                   syntax, above.
114 ;  MOH_Class     -> This is the music on hold class to play while the idle
115 ;                   channel waits for the feature to complete. If left blank,
116 ;                   no music will be played.
117 ;
118
119 ;
120 ; IMPORTANT NOTE: The applicationmap is not intended to be used for all Asterisk
121 ;   applications. When applications are used in extensions.conf, they are executed
122 ;   by the PBX core. In this case, these applications are executed outside of the
123 ;   PBX core, so it does *not* make sense to use any application which has any
124 ;   concept of dialplan flow. Examples of this would be things like Macro, Goto,
125 ;   Background, WaitExten, and many more.
126 ;
127 ; Enabling these features means that the PBX needs to stay in the media flow and
128 ; media will not be re-directed if DTMF is sent in the media stream.
129 ;
130 ; Example Usage:
131 ;
132 ;testfeature => #9,peer,Playback,tt-monkeys  ;Allow both the caller and callee to play
133 ;                                            ;tt-monkeys to the opposite channel
134 ;
135 ; Set arbitrary channel variables, based upon CALLERID number (Note that the application
136 ; argument contains commas)
137 ;retrieveinfo => #8,peer,Set(ARRAY(CDR(mark),CDR(name))=${ODBC_FOO(${CALLERID(num)})})
138 ;
139 ;pauseMonitor   => #1,self/callee,Pausemonitor     ;Allow the callee to pause monitoring
140 ;                                                  ;on their channel
141 ;unpauseMonitor => #3,self/callee,UnPauseMonitor   ;Allow the callee to unpause monitoring
142 ;                                                  ;on their channel
143
144 ; Dynamic Feature Groups:
145 ;   Dynamic feature groups are groupings of features defined in [applicationmap]
146 ;   that can have their own custom key mappings.  To give a channel access to a dynamic
147 ;   feature group, add the group name to the value of the DYNAMIC_FEATURES variable.
148 ;
149 ; example:
150 ; [myGroupName]        ; defines the group named myGroupName
151 ; testfeature => #9    ; associates testfeature with the group and the keycode '#9'.
152 ; pauseMonitor =>      ; associates pauseMonitor with the group and uses the keycode specified
153 ;                      ; in the [applicationmap].