Commit | Line | Data |
---|---|---|
3802e567 MN |
1 | ; |
2 | ; Sample Call Features (parking, transfer, etc) configuration | |
3 | ; | |
4 | ||
5 | [general] | |
a52025b1 | 6 | parkext => *22 ; What extension to dial to park. Set per parking lot. |
3802e567 MN |
7 | ;parkext_exclusive=yes ; Specify that the parkext created for this parking lot |
8 | ; will only access this parking lot. (default is no) | |
a52025b1 | 9 | parkpos => 22200-22299 ; What extensions to park calls on. (defafult parking lot) |
3802e567 MN |
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. | |
a52025b1 | 17 | parkingtime => 120 ; Number of seconds a call can be parked before returning. |
3802e567 MN |
18 | ; Set per parking lot. (default is 45 seconds) |
19 | ||
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 | ; Operates on all parking lots. | |
23 | ; | |
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. | |
27 | ; | |
28 | ; 'no' - This option is useful for performing custom dialplan functionality prior to | |
29 | ; sending the call back to the extension that initially parked the call, or to | |
30 | ; an entirely different destination. | |
31 | ; | |
32 | ; When the parked call times out, send it back to the dialplan. The location | |
33 | ; will be the 'parkedcallstimeout' context. The extension will be built from | |
34 | ; the saved channel name that parked the call. For example, if a SIP peer named | |
35 | ; '0004F2040001' parked this call, the extension will be 'SIP_0004F2040001'. | |
36 | ; (Note that an underscore is used here because the '/' character has a special | |
37 | ; meaning in extension names for CallerID matching.) If this extension does not | |
38 | ; exist, the call will be sent to the 's' extension, instead. Finally, if the 's' | |
39 | ; extension of 'parkedcallstimeout' does not exist, the call will fall back to the | |
40 | ; 's' extension of the 'default' context. | |
41 | ; | |
42 | ; Additionally, in this example an extension of 'SIP_0004F2040001' will be | |
43 | ; created in the 'park-dial' context. This extension will be set up to do a | |
44 | ; Dial() to 'SIP/0004F2040001'. | |
45 | ; | |
46 | ; During the timeout procedure, the following variable is set | |
47 | ; PARKINGSLOT - extension that the call was parked in prior to timing out | |
48 | ||
a52025b1 | 49 | courtesytone = beep ; Sound file to play to when someone picks up a parked call |
3802e567 MN |
50 | ; and also when the Touch Monitor is activated/deactivated. |
51 | ; Default is no tone. | |
52 | ;parkedplay = caller ; Who to play courtesytone to when picking up a parked call. | |
53 | ; One of: parked, caller, both (default is caller) | |
54 | ; Operates on all parking lots. | |
55 | ;parkedcalltransfers = caller ; Enables or disables DTMF based transfers when picking up a parked call. | |
56 | ; one of: callee, caller, both, no (default is no) | |
57 | ; Set per parking lot. | |
58 | ;parkedcallreparking = caller ; Enables or disables DTMF based parking when picking up a parked call. | |
59 | ; one of: callee, caller, both, no (default is no) | |
60 | ; Set per parking lot. | |
61 | ;parkedcallhangup = caller ; Enables or disables DTMF based hangups when picking up a parked call. | |
62 | ; one of: callee, caller, both, no (default is no) | |
63 | ; Set per parking lot. | |
64 | ;parkedcallrecording = caller ; Enables or disables DTMF based one-touch recording when picking up a parked call. | |
65 | ; one of: callee, caller, both, no (default is no) | |
66 | ; Set per parking lot. | |
67 | ;parkeddynamic = yes ; Enables dynamically created parkinglots. (default is no) | |
68 | ; Operates on all parking lots. | |
69 | ;adsipark = yes ; if you want ADSI parking announcements | |
70 | ; Operates on all parking lots. | |
71 | ;findslot => next ; Continue to the 'next' free parking space. | |
72 | ; Defaults to 'first' available | |
73 | ; Set per parking lot. | |
74 | ;parkedmusicclass=default ; This is the MOH class to use for the parked channel | |
75 | ; as long as the class is not set on the channel directly | |
76 | ; using Set(CHANNEL(musicclass)=whatever) in the dialplan | |
77 | ; Set per parking lot. | |
78 | ||
a52025b1 | 79 | transferdigittimeout => 3 ; Number of seconds to wait between digits when transferring a call |
3802e567 | 80 | ; (default is 3 seconds) |
a52025b1 MN |
81 | xfersound = beep ; to indicate an attended transfer is complete |
82 | xferfailsound = beeperr ; to indicate a failed transfer | |
83 | pickupexten = *# ; Configure the pickup extension. (default is *8) | |
84 | pickupsound = beep ; to indicate a successful pickup (default: no sound) | |
85 | pickupfailsound = beeperr ; to indicate that the pickup failed (default: no sound) | |
86 | featuredigittimeout = 500 ; Max time (ms) between digits for | |
3802e567 | 87 | ; feature activation (default is 1000 ms) |
a52025b1 | 88 | atxfernoanswertimeout = 15 ; Timeout for answer on attended transfer default is 15 seconds. |
3802e567 MN |
89 | ;atxferdropcall = no ; If someone does an attended transfer, then hangs up before the transferred |
90 | ; caller is connected, then by default, the system will try to call back the | |
91 | ; person that did the transfer. If this is set to "yes", the callback will | |
92 | ; not be attempted and the transfer will just fail. | |
93 | ; For atxferdropcall=no to work properly, you also need to | |
94 | ; define ATXFER_NULL_TECH in main/features.c. The reason the | |
95 | ; code is not enabled by default is spelled out in the comment | |
96 | ; block near the top of main/features.c describing ATXFER_NULL_TECH. | |
97 | ;atxferloopdelay = 10 ; Number of seconds to sleep between retries (if atxferdropcall = no) | |
98 | ;atxfercallbackretries = 2 ; Number of times to attempt to send the call back to the transferer. | |
99 | ; By default, this is 2. | |
100 | ||
101 | ; | |
102 | ;*** Define another parking lot | |
103 | ; | |
104 | ; You can set parkinglot with the CHANNEL dialplan function | |
105 | ; or by setting 'parkinglot' directly in the channel configuration file. | |
106 | ; | |
107 | ; (Note: Leading '0's and any non-numerical characters on parkpos extensions | |
108 | ; will be ignored. Parkext on the other hand can be any string.) | |
109 | ; | |
110 | ;[parkinglot_edvina] | |
111 | ;context => edvinapark | |
112 | ;parkext => 799 | |
113 | ;parkpos => 800-850 | |
114 | ;findslot => next | |
115 | ||
116 | ; Note that the DTMF features listed below only work when two channels have answered and are bridged together. | |
117 | ; They can not be used while the remote party is ringing or in progress. If you require this feature you can use | |
118 | ; chan_local in combination with Answer to accomplish it. | |
119 | ||
120 | ||
121 | [featuremap] | |
a52025b1 MN |
122 | blindxfer => ## ; Blind transfer (default is #) -- Make sure to set the T and/or t option in the Dial() or Queue() app call! |
123 | disconnect => *10 ; Disconnect (default is *) -- Make sure to set the H and/or h option in the Dial() or Queue() app call! | |
124 | automon => *13 ; 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! | |
125 | atxfer => ** ; Attended transfer -- Make sure to set the T and/or t option in the Dial() or Queue() app call! | |
3802e567 MN |
126 | ;parkcall => #72 ; Park call (one step parking) -- Make sure to set the K and/or k option in the Dial() app call! |
127 | ;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! | |
128 | ||
129 | [applicationmap] | |
130 | ; Note that the DYNAMIC_FEATURES channel variable must be set to use the features | |
131 | ; defined here. The value of DYNAMIC_FEATURES should be the names of the features | |
132 | ; to allow the channel to use separated by '#'. For example: | |
133 | ; | |
134 | ; Set(__DYNAMIC_FEATURES=myfeature1#myfeature2#myfeature3) | |
135 | ; | |
136 | ; (Note: The two leading underscores allow these feature settings to be set on | |
137 | ; on the outbound channels, as well. Otherwise, only the original channel | |
138 | ; will have access to these features.) | |
139 | ; | |
140 | ; The syntax for declaring a dynamic feature is any of the following: | |
141 | ; | |
142 | ;<FeatureName> => <DTMF_sequence>,<ActivateOn>[/<ActivatedBy>],<Application>[,<AppArguments>[,MOH_Class]] | |
143 | ;<FeatureName> => <DTMF_sequence>,<ActivateOn>[/<ActivatedBy>],<Application>[,"<AppArguments>"[,MOH_Class]] | |
144 | ;<FeatureName> => <DTMF_sequence>,<ActivateOn>[/<ActivatedBy>],<Application>([<AppArguments>])[,MOH_Class] | |
145 | ||
146 | ; | |
147 | ; FeatureName -> This is the name of the feature used when setting the | |
148 | ; DYNAMIC_FEATURES variable to enable usage of this feature. | |
149 | ; DTMF_sequence -> This is the key sequence used to activate this feature. | |
150 | ; ActivateOn -> This is the channel of the call that the application will be executed | |
151 | ; on. Valid values are "self" and "peer". "self" means run the | |
152 | ; application on the same channel that activated the feature. "peer" | |
153 | ; means run the application on the opposite channel from the one that | |
154 | ; has activated the feature. | |
155 | ; ActivatedBy -> This is which channel is allowed to activate this feature. Valid | |
156 | ; values are "caller", "callee", and "both". "both" is the default. | |
157 | ; The "caller" is the channel that executed the Dial application, while | |
158 | ; the "callee" is the channel called by the Dial application. | |
159 | ; Application -> This is the application to execute. | |
160 | ; AppArguments -> These are the arguments to be passed into the application. If you need | |
161 | ; commas in your arguments, you should use either the second or third | |
162 | ; syntax, above. | |
163 | ; MOH_Class -> This is the music on hold class to play while the idle | |
164 | ; channel waits for the feature to complete. If left blank, | |
165 | ; no music will be played. | |
166 | ; | |
167 | ||
168 | ; | |
169 | ; IMPORTANT NOTE: The applicationmap is not intended to be used for all Asterisk | |
170 | ; applications. When applications are used in extensions.conf, they are executed | |
171 | ; by the PBX core. In this case, these applications are executed outside of the | |
172 | ; PBX core, so it does *not* make sense to use any application which has any | |
173 | ; concept of dialplan flow. Examples of this would be things like Macro, Goto, | |
174 | ; Background, WaitExten, and many more. | |
175 | ; | |
176 | ; Enabling these features means that the PBX needs to stay in the media flow and | |
177 | ; media will not be re-directed if DTMF is sent in the media stream. | |
178 | ; | |
179 | ; Example Usage: | |
180 | ; | |
181 | ;testfeature => #9,peer,Playback,tt-monkeys ;Allow both the caller and callee to play | |
182 | ; ;tt-monkeys to the opposite channel | |
183 | ; | |
184 | ; Set arbitrary channel variables, based upon CALLERID number (Note that the application | |
185 | ; argument contains commas) | |
186 | ;retrieveinfo => #8,peer,Set(ARRAY(CDR(mark),CDR(name))=${ODBC_FOO(${CALLERID(num)})}) | |
187 | ; | |
188 | ;pauseMonitor => #1,self/callee,Pausemonitor ;Allow the callee to pause monitoring | |
189 | ; ;on their channel | |
190 | ;unpauseMonitor => #3,self/callee,UnPauseMonitor ;Allow the callee to unpause monitoring | |
191 | ; ;on their channel | |
192 | ||
193 | ; Dynamic Feature Groups: | |
194 | ; Dynamic feature groups are groupings of features defined in [applicationmap] | |
195 | ; that can have their own custom key mappings. To give a channel access to a dynamic | |
196 | ; feature group, add the group name to the value of the DYNAMIC_FEATURES variable. | |
197 | ; | |
198 | ; example: | |
199 | ; [myGroupName] ; defines the group named myGroupName | |
200 | ; testfeature => #9 ; associates testfeature with the group and the keycode '#9'. | |
201 | ; pauseMonitor => ; associates pauseMonitor with the group and uses the keycode specified | |
202 | ; ; in the [applicationmap]. |