2 ; Sample Call Features (parking, transfer, etc) configuration
6 parkext => 700 ; What extension to dial to park. Set per parking lot.
7 ;parkext_exclusive=yes ; Specify that the parkext created for this parking lot
8 ; will only access this parking lot. (default is no)
9 parkpos => 701-720 ; What extensions to park calls on. (defafult parking lot)
10 ; These need to be numeric, as Asterisk starts from the start position
11 ; and increments with one for the next parked call.
12 ; Set per parking lot.
13 context => parkedcalls ; Which context parked calls are in (default parking lot)
14 ; Set per parking lot.
15 ;parkinghints = no ; Add hints priorities automatically for parking slots (default is no).
16 ; Set per parking lot.
17 ;parkingtime => 45 ; Number of seconds a call can be parked before returning.
18 ; Set per parking lot. (default is 45 seconds)
20 ;comebacktoorigin = yes ; Setting this option configures the behavior of call parking when the
21 ; parked call times out (See the parkingtime option). The default value is 'yes'.
22 ; Set per parking lot.
24 ; 'yes' - When the parked call times out, attempt to send the call back to the peer
25 ; that parked this call. This is done by saving off the name of the channel
26 ; that parked the call. The call will return to the context 'park-dial' and
27 ; an extension created based on the name of the channel that originally parked
28 ; the call. This extension will be created automatically to do a Dial() to the
29 ; device that originally parked the call for comebacktodialtime seconds. If the
30 ; call is not answered, the call will proceed to the next priority (usually none
31 ; unless you deliberately set up a catch-all second priority in the park-call
32 ; context) in the dialplan for extension matching the peer name (same as how
33 ; peer names are flattened into extensions when comebacktoorigin is 'no').
35 ; 'no' - This option is useful for performing custom dialplan functionality prior to
36 ; sending the call back to the extension that initially parked the call, or to
37 ; an entirely different destination.
39 ; When the parked call times out, send it back to the dialplan. The location
40 ; will be defined by the comebackcontext option. The extension will be built from
41 ; the saved channel name that parked the call. For example, if a SIP peer named
42 ; '0004F2040001' parked this call, the extension will be 'SIP_0004F2040001'.
43 ; (Note that an underscore is used here because the '/' character has a special
44 ; meaning in extension names for CallerID matching.) If this extension does not
45 ; exist, the call will be sent to the 's' extension, instead. Finally, if the 's'
46 ; extension of 'parkedcallstimeout' does not exist, the call will fall back to the
47 ; 's' extension of the 'default' context.
49 ; Additionally, in this example an extension of 'SIP_0004F2040001' will be
50 ; created in the 'park-dial' context. This extension will be set up to do a
51 ; Dial() to 'SIP/0004F2040001'.
53 ; During the timeout procedure, the following variables are set
54 ; PARKINGSLOT - extension that the call was parked in prior to timing out
55 ; PARKEDLOT - name of the lot that the call was parked in prior to timing out
56 ; PARKER - name of the device that parked the call
58 ;comebackdialtime = 30 ; When a parked call times out, this is the number of seconds to dial the device that
59 ; originally parked the call. It is also available as a channel variable COMEBACKDIALTIME
60 ; after a parked call has timed out.
61 ; The default value is 30 seconds.
62 ; Set per parking lot.
64 ;comebackcontext = parkedcallstimeout
65 ; The context a timed out call will return to if comebcktoorigin=no.
66 ; The default value is 'parkedcallstimeout'.
67 ; Set per parking lot.
69 ;courtesytone = beep ; Sound file to play to when someone picks up a parked call
70 ; and also when the Touch Monitor is activated/deactivated.
72 ;parkedplay = caller ; Who to play courtesytone to when picking up a parked call.
73 ; One of: parked, caller, both (default is caller)
74 ; Operates on all parking lots.
75 ;parkedcalltransfers = caller ; Enables or disables DTMF based transfers when picking up a parked call.
76 ; one of: callee, caller, both, no (default is no)
77 ; Set per parking lot.
78 ;parkedcallreparking = caller ; Enables or disables DTMF based parking when picking up a parked call.
79 ; one of: callee, caller, both, no (default is no)
80 ; Set per parking lot.
81 ;parkedcallhangup = caller ; Enables or disables DTMF based hangups when picking up a parked call.
82 ; one of: callee, caller, both, no (default is no)
83 ; Set per parking lot.
84 ;parkedcallrecording = caller ; Enables or disables DTMF based one-touch recording when picking up a parked call.
85 ; one of: callee, caller, both, no (default is no)
86 ; Set per parking lot.
87 ;parkeddynamic = yes ; Enables dynamically created parkinglots. (default is no)
88 ; Operates on all parking lots.
89 ;adsipark = yes ; if you want ADSI parking announcements
90 ; Operates on all parking lots.
91 ;findslot => next ; Continue to the 'next' free parking space.
92 ; Defaults to 'first' available
93 ; Set per parking lot.
94 ;parkedmusicclass=default ; This is the MOH class to use for the parked channel
95 ; as long as the class is not set on the channel directly
96 ; using Set(CHANNEL(musicclass)=whatever) in the dialplan
97 ; Set per parking lot.
99 ;transferdigittimeout => 3 ; Number of seconds to wait between digits when transferring a call
100 ; (default is 3 seconds)
101 ;xfersound = beep ; to indicate an attended transfer is complete
102 ;xferfailsound = beeperr ; to indicate a failed transfer
103 ;pickupexten = *8 ; Configure the pickup extension. (default is *8)
104 ;pickupsound = beep ; to indicate a successful pickup (default: no sound)
105 ;pickupfailsound = beeperr ; to indicate that the pickup failed (default: no sound)
106 ;featuredigittimeout = 1000 ; Max time (ms) between digits for
107 ; feature activation (default is 1000 ms)
108 ;recordingfailsound = beeperr ; indicates that a one-touch monitor or one-touch mixmonitor feature failed
109 ; to be applied to the call. (default: no sound)
110 ;atxfernoanswertimeout = 15 ; Timeout for answer on attended transfer default is 15 seconds.
111 ;atxferdropcall = no ; If someone does an attended transfer, then hangs up before the transfer
112 ; target answers, then by default, the system will try to call back the
113 ; person that did the transfer. If this is set to "yes", the ringing
114 ; transfer target is immediately transferred to the transferee.
115 ;atxferloopdelay = 10 ; Number of seconds to sleep between retries (if atxferdropcall = no)
116 ;atxfercallbackretries = 2 ; Number of times to attempt to send the call back to the transferer.
117 ; By default, this is 2.
120 ;*** Define another parking lot
122 ; You can set parkinglot with the CHANNEL dialplan function
123 ; or by setting 'parkinglot' directly in the channel configuration file.
125 ; (Note: Leading '0's and any non-numerical characters on parkpos extensions
126 ; will be ignored. Parkext on the other hand can be any string.)
129 ;context => edvinapark
133 ;comebacktoorigin = no
134 ;comebackdialtime = 90
135 ;comebackcontext = edvinapark-timeout ; Make sure you create the context!
136 ;parkedmusicclass = edvina
138 ; Note that the DTMF features listed below only work when two channels have answered and are bridged together.
139 ; They can not be used while the remote party is ringing or in progress. If you require this feature you can use
140 ; chan_local in combination with Answer to accomplish it.
144 ;blindxfer => #1 ; Blind transfer (default is #) -- Make sure to set the T and/or t option in the Dial() or Queue() app call!
145 ;disconnect => *0 ; Disconnect (default is *) -- Make sure to set the H and/or h option in the Dial() or Queue() app call!
146 ;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!
147 ;atxfer => *2 ; Attended transfer -- Make sure to set the T and/or t option in the Dial() or Queue() app call!
148 ;parkcall => #72 ; Park call (one step parking) -- Make sure to set the K and/or k option in the Dial() app call!
149 ;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!
152 ; Note that the DYNAMIC_FEATURES channel variable must be set to use the features
153 ; defined here. The value of DYNAMIC_FEATURES should be the names of the features
154 ; to allow the channel to use separated by '#'. For example:
156 ; Set(__DYNAMIC_FEATURES=myfeature1#myfeature2#myfeature3)
158 ; (Note: The two leading underscores allow these feature settings to be set
159 ; on the outbound channels, as well. Otherwise, only the original channel
160 ; will have access to these features.)
162 ; The syntax for declaring a dynamic feature is any of the following:
164 ;<FeatureName> => <DTMF_sequence>,<ActivateOn>[/<ActivatedBy>],<Application>[,<AppArguments>[,MOH_Class]]
165 ;<FeatureName> => <DTMF_sequence>,<ActivateOn>[/<ActivatedBy>],<Application>[,"<AppArguments>"[,MOH_Class]]
166 ;<FeatureName> => <DTMF_sequence>,<ActivateOn>[/<ActivatedBy>],<Application>([<AppArguments>])[,MOH_Class]
169 ; FeatureName -> This is the name of the feature used when setting the
170 ; DYNAMIC_FEATURES variable to enable usage of this feature.
171 ; DTMF_sequence -> This is the key sequence used to activate this feature.
172 ; ActivateOn -> This is the channel of the call that the application will be executed
173 ; on. Valid values are "self" and "peer". "self" means run the
174 ; application on the same channel that activated the feature. "peer"
175 ; means run the application on the opposite channel from the one that
176 ; has activated the feature.
177 ; ActivatedBy -> ActivatedBy is no longer honored. The feature is activated by which
178 ; channel DYNAMIC_FEATURES includes the feature is on. Use predial
179 ; to set different values of DYNAMIC_FEATURES on the channels.
180 ; Historic values are: "caller", "callee", and "both".
181 ; Application -> This is the application to execute.
182 ; AppArguments -> These are the arguments to be passed into the application. If you need
183 ; commas in your arguments, you should use either the second or third
185 ; MOH_Class -> This is the music on hold class to play while the idle
186 ; channel waits for the feature to complete. If left blank,
187 ; no music will be played.
191 ; IMPORTANT NOTE: The applicationmap is not intended to be used for all Asterisk
192 ; applications. When applications are used in extensions.conf, they are executed
193 ; by the PBX core. In this case, these applications are executed outside of the
194 ; PBX core, so it does *not* make sense to use any application which has any
195 ; concept of dialplan flow. Examples of this would be things like Goto,
196 ; Background, WaitExten, and many more. The exceptions to this are Gosub and
197 ; Macro routines which must complete for the call to continue.
199 ; Enabling these features means that the PBX needs to stay in the media flow and
200 ; media will not be re-directed if DTMF is sent in the media stream.
204 ;testfeature => #9,peer,Playback,tt-monkeys ;Allow both the caller and callee to play
205 ; ;tt-monkeys to the opposite channel
207 ; Set arbitrary channel variables, based upon CALLERID number (Note that the application
208 ; argument contains commas)
209 ;retrieveinfo => #8,peer,Set(ARRAY(CDR(mark),CDR(name))=${ODBC_FOO(${CALLERID(num)})})
211 ;pauseMonitor => #1,self/callee,Pausemonitor ;Allow the callee to pause monitoring
213 ;unpauseMonitor => #3,self/callee,UnPauseMonitor ;Allow the callee to unpause monitoring
216 ; Dynamic Feature Groups:
217 ; Dynamic feature groups are groupings of features defined in [applicationmap]
218 ; that can have their own custom key mappings. To give a channel access to a dynamic
219 ; feature group, add the group name to the value of the DYNAMIC_FEATURES variable.
222 ; [myGroupName] ; defines the group named myGroupName
223 ; testfeature => #9 ; associates testfeature with the group and the keycode '#9'.
224 ; pauseMonitor => ; associates pauseMonitor with the group and uses the keycode specified
225 ; ; in the [applicationmap].