Commit | Line | Data |
---|---|---|
b2e905a6 TN |
1 | [general] |
2 | ; | |
3 | ; Global settings for call queues | |
4 | ; | |
5 | ; Persistent Members | |
6 | ; Store each dynamic member in each queue in the astdb so that | |
7 | ; when asterisk is restarted, each member will be automatically | |
8 | ; read into their recorded queues. Default is 'yes'. | |
9 | ; | |
10 | persistentmembers = yes | |
11 | ; | |
12 | ; AutoFill Behavior | |
13 | ; The old/current behavior of the queue has a serial type behavior | |
14 | ; in that the queue will make all waiting callers wait in the queue | |
15 | ; even if there is more than one available member ready to take | |
16 | ; calls until the head caller is connected with the member they | |
17 | ; were trying to get to. The next waiting caller in line then | |
18 | ; becomes the head caller, and they are then connected with the | |
19 | ; next available member and all available members and waiting callers | |
20 | ; waits while this happens. The new behavior, enabled by setting | |
21 | ; autofill=yes makes sure that when the waiting callers are connecting | |
22 | ; with available members in a parallel fashion until there are | |
23 | ; no more available members or no more waiting callers. This is | |
24 | ; probably more along the lines of how a queue should work and | |
25 | ; in most cases, you will want to enable this behavior. If you | |
26 | ; do not specify or comment out this option, it will default to no | |
27 | ; to keep backward compatibility with the old behavior. | |
28 | ; | |
29 | autofill = yes | |
30 | ; | |
31 | ; Monitor Type | |
32 | ; By setting monitor-type = MixMonitor, when specifying monitor-format | |
33 | ; to enable recording of queue member conversations, app_queue will | |
34 | ; now use the new MixMonitor application instead of Monitor so | |
35 | ; the concept of "joining/mixing" the in/out files now goes away | |
36 | ; when this is enabled. You can set the default type for all queues | |
37 | ; here, and then also change monitor-type for individual queues within | |
38 | ; queue by using the same configuration parameter within a queue | |
39 | ; configuration block. If you do not specify or comment out this option, | |
40 | ; it will default to the old 'Monitor' behavior to keep backward | |
41 | ; compatibility. | |
42 | ; | |
43 | monitor-type = MixMonitor | |
44 | ; | |
45 | ; Note that a timeout to fail out of a queue may be passed as part of | |
46 | ; an application call from extensions.conf: | |
47 | ; Queue(queuename|[options]|[optionalurl]|[announceoverride]|[timeout]) | |
48 | ; example: Queue(dave|t|||45) | |
49 | ||
50 | ;[markq] | |
51 | ; | |
52 | ; A sample call queue | |
53 | ; | |
54 | ; Musicclass sets which music applies for this particular call queue. | |
55 | ; The only class which can override this one is if the MOH class is set | |
56 | ; directly on the channel using Set(CHANNEL(musicclass)=whatever) in the | |
57 | ; dialplan. | |
58 | ; | |
59 | ;musicclass = default | |
60 | ; | |
61 | ; An announcement may be specified which is played for the member as | |
62 | ; soon as they answer a call, typically to indicate to them which queue | |
63 | ; this call should be answered as, so that agents or members who are | |
64 | ; listening to more than one queue can differentiated how they should | |
65 | ; engage the customer | |
66 | ; | |
67 | ;announce = queue-markq | |
68 | ; | |
69 | ; A strategy may be specified. Valid strategies include: | |
70 | ; | |
71 | ; ringall - ring all available channels until one answers (default) | |
72 | ; roundrobin - take turns ringing each available interface | |
73 | ; leastrecent - ring interface which was least recently called by this queue | |
74 | ; fewestcalls - ring the one with fewest completed calls from this queue | |
75 | ; random - ring random interface | |
76 | ; rrmemory - round robin with memory, remember where we left off last ring pass | |
77 | ; | |
78 | ;strategy = ringall | |
79 | ; | |
80 | ; Second settings for service level (default 0) | |
81 | ; Used for service level statistics (calls answered within service level time | |
82 | ; frame) | |
83 | ;servicelevel = 60 | |
84 | ; | |
85 | ; A context may be specified, in which if the user types a SINGLE | |
86 | ; digit extension while they are in the queue, they will be taken out | |
87 | ; of the queue and sent to that extension in this context. | |
88 | ; | |
89 | ;context = qoutcon | |
90 | ; | |
91 | ; How long do we let the phone ring before we consider this a timeout... | |
92 | ; | |
93 | ;timeout = 15 | |
94 | ; | |
95 | ; How long do we wait before trying all the members again? | |
96 | ; | |
97 | ;retry = 5 | |
98 | ; | |
99 | ; Weight of queue - when compared to other queues, higher weights get | |
100 | ; first shot at available channels when the same channel is included in | |
101 | ; more than one queue. | |
102 | ; | |
103 | ;weight=0 | |
104 | ; | |
105 | ; After a successful call, how long to wait before sending a potentially | |
106 | ; free member another call (default is 0, or no delay) | |
107 | ; | |
108 | ;wrapuptime=15 | |
109 | ; | |
110 | ; Autofill will follow queue strategy but push multiple calls through | |
111 | ; at same time until there are no more waiting callers or no more | |
112 | ; available members. The per-queue setting of autofill allows you | |
113 | ; to override the default setting on an individual queue level. | |
114 | ; | |
115 | ;autofill=yes | |
116 | ; | |
117 | ; Autopause will pause a queue member if they fail to answer a call | |
118 | ; | |
119 | ;autopause=yes | |
120 | ; | |
121 | ; Maximum number of people waiting in the queue (0 for unlimited) | |
122 | ; | |
123 | ;maxlen = 0 | |
124 | ; | |
125 | ; If set to yes, just prior to the caller being bridged with a queue member | |
126 | ; the MEMBERINTERFACE variable will be set with the interface name (eg. Agent/1234) | |
127 | ; of the queue member that was chosen and is now connected to be bridged with | |
128 | ; the caller | |
129 | ; | |
130 | ;setinterfacevar=no | |
131 | ; | |
132 | ; How often to announce queue position and/or estimated | |
133 | ; holdtime to caller (0=off) | |
134 | ; | |
135 | ;announce-frequency = 90 | |
136 | ; | |
137 | ; | |
138 | ; How often to make any periodic announcement (see periodic-announce) | |
139 | ; | |
140 | ;periodic-announce-frequency=60 | |
141 | ; | |
142 | ; Should we include estimated hold time in position announcements? | |
143 | ; Either yes, no, or only once. | |
144 | ; Hold time will be announced as the estimated time, | |
145 | ; or "less than 2 minutes" when appropriate. | |
146 | ; | |
147 | ;announce-holdtime = yes|no|once | |
148 | ||
149 | ; | |
150 | ; What's the rounding time for the seconds? | |
151 | ; If this is non-zero, then we announce the seconds as well as the minutes | |
152 | ; rounded to this value. | |
153 | ; | |
154 | ; announce-round-seconds = 10 | |
155 | ; | |
156 | ; Use these sound files in making position/holdtime announcements. The | |
157 | ; defaults are as listed below -- change only if you need to. | |
158 | ; | |
159 | ; ("You are now first in line.") | |
160 | ;queue-youarenext = queue-youarenext | |
161 | ; ("There are") | |
162 | ;queue-thereare = queue-thereare | |
163 | ; ("calls waiting.") | |
164 | ;queue-callswaiting = queue-callswaiting | |
165 | ; ("The current est. holdtime is") | |
166 | ;queue-holdtime = queue-holdtime | |
167 | ; ("minutes.") | |
168 | ;queue-minutes = queue-minutes | |
169 | ; ("seconds.") | |
170 | ;queue-seconds = queue-seconds | |
171 | ; ("Thank you for your patience.") | |
172 | ;queue-thankyou = queue-thankyou | |
173 | ; ("less than") | |
174 | ;queue-lessthan = queue-less-than | |
175 | ; ("Hold time") | |
176 | ;queue-reporthold = queue-reporthold | |
177 | ; ("All reps busy / wait for next") | |
178 | ;periodic-announce = queue-periodic-announce | |
179 | ; | |
180 | ; Calls may be recorded using Asterisk's monitor/MixMonitor resource | |
181 | ; This can be enabled from within the Queue application, starting recording | |
182 | ; when the call is actually picked up; thus, only successful calls are | |
183 | ; recorded, and you are not recording while people are listening to MOH. | |
184 | ; To enable monitoring, simply specify "monitor-format"; it will be disabled | |
185 | ; otherwise. | |
186 | ; | |
187 | ; You can specify the monitor filename with by calling | |
188 | ; Set(MONITOR_FILENAME=foo) | |
189 | ; Otherwise it will use MONITOR_FILENAME=${UNIQUEID} | |
190 | ; | |
191 | ; Pick any one valid extension for monitor format recording. If you leave | |
192 | ; monitor-format commented out, it will not record calls. | |
193 | ; | |
194 | ; monitor-format = gsm|wav|wav49 | |
195 | ; | |
196 | ; Monitor Type | |
197 | ; By setting monitor-type = MixMonitor, when specifying monitor-format | |
198 | ; to enable recording of queue member conversations, app_queue will | |
199 | ; now use the new MixMonitor application instead of Monitor so | |
200 | ; the concept of "joining/mixing" the in/out files now goes away | |
201 | ; when this is enabled. If you do not specify or comment out this option, | |
202 | ; it will default to the old 'Monitor' behavior to keep backward | |
203 | ; compatibility. | |
204 | ; | |
205 | ; monitor-type = MixMonitor | |
206 | ; | |
207 | ; ----------------------- TYPE MIXMONITOR OPTIONS ----------------------------- | |
208 | ; | |
209 | ; | |
210 | ; You can specify the options supplied to MixMonitor by calling | |
211 | ; Set(MONITOR_OPTIONS=av(<x>)V(<x>)W(<x>)) | |
212 | ; The 'b' option for MixMonitor (only save audio to the file while bridged) is | |
213 | ; implied. | |
214 | ; | |
215 | ; You can specify a post recording command to be executed after the end of | |
216 | ; recording by calling | |
217 | ; Set(MONITOR_EXEC=mv /var/spool/asterisk/monitor/^{MONITOR_FILENAME} /tmp/^{MONITOR_FILENAME}) | |
218 | ; | |
219 | ; The command specified within the contents of MONITOR_EXEC will be executed when | |
220 | ; the recording is over. Any strings matching ^{X} will be unescaped to ${X} and | |
221 | ; all variables will be evaluated just prior to recording being started. | |
222 | ; | |
223 | ; The contents of MONITOR_FILENAME will also be unescaped from ^{X} to ${X} and | |
224 | ; all variables will be evaluated just prior to recording being started. | |
225 | ; | |
226 | ; | |
227 | ; This setting controls whether callers can join a queue with no members. There | |
228 | ; are three choices: | |
229 | ; | |
230 | ; yes - callers can join a queue with no members or only unavailable members | |
231 | ; no - callers cannot join a queue with no members | |
232 | ; strict - callers cannot join a queue with no members or only unavailable | |
233 | ; members | |
234 | ; | |
235 | ; joinempty = yes | |
236 | ; | |
237 | ; | |
238 | ; If you wish to remove callers from the queue when new callers cannot join, | |
239 | ; set this setting to one of the same choices for 'joinempty' | |
240 | ; | |
241 | ; leavewhenempty = yes | |
242 | ; | |
243 | ; | |
244 | ; If this is set to yes, the following manager events will be generated: | |
245 | ; AgentCalled, AgentDump, AgentConnect, AgentComplete; setting this to | |
246 | ; vars also sends all channel variables with the event. | |
247 | ; (may generate some extra manager events, but probably ones you want) | |
248 | ; | |
249 | ; eventwhencalled = yes|no|vars | |
250 | ; | |
251 | ; If this is set to yes, the following manager events will be generated: | |
252 | ; QueueMemberStatus | |
253 | ; (may generate a WHOLE LOT of extra manager events) | |
254 | ; | |
255 | ; eventmemberstatus = no | |
256 | ; | |
257 | ; If you wish to report the caller's hold time to the member before they are | |
258 | ; connected to the caller, set this to yes. | |
259 | ; | |
260 | ; reportholdtime = no | |
261 | ; | |
262 | ; If you want the queue to avoid sending calls to members whose devices are | |
263 | ; known to be 'in use' (via the channel driver supporting that device state) | |
264 | ; uncomment this option. (Note: only the SIP channel driver currently is able | |
265 | ; to report 'in use'.) | |
266 | ; | |
267 | ; ringinuse = no | |
268 | ; | |
269 | ; If you wish to have a delay before the member is connected to the caller (or | |
270 | ; before the member hears any announcement messages), set this to the number of | |
271 | ; seconds to delay. | |
272 | ; | |
273 | ; memberdelay = 0 | |
274 | ; | |
275 | ; If timeoutrestart is set to yes, then the timeout for an agent to answer is | |
276 | ; reset if a BUSY or CONGESTION is received. This can be useful if agents | |
277 | ; are able to cancel a call with reject or similar. | |
278 | ; | |
279 | ; timeoutrestart = no | |
280 | ; | |
281 | ; Each member of this call queue is listed on a separate line in | |
282 | ; the form technology/dialstring. "member" means a normal member of a | |
283 | ; queue. An optional penalty may be specified after a comma, such that | |
284 | ; entries with higher penalties are considered last. An optional member | |
285 | ; name may also be specified after a second comma, which is used in log | |
286 | ; messages as a "friendly name". Multiple interfaces may share a single | |
287 | ; member name. | |
288 | ; | |
289 | ; It is important to ensure that channel drivers used for members are loaded | |
290 | ; before app_queue.so itself or they may be marked invalid until reload. This | |
291 | ; can be accomplished by explicitly listing them in modules.conf before app_queue.so | |
292 | ; | |
293 | ;member => Zap/1 | |
294 | ;member => Zap/2,10 | |
295 | ;member => Zap/3,10,Bob Johnson | |
296 | ;member => Agent/1001 | |
297 | ;member => Agent/1002 | |
298 | ||
299 | ; | |
300 | ; Note that using agent groups is probably not what you want. Strategies do | |
301 | ; not propagate down to the Agent system so if you want round robin, least | |
302 | ; recent, etc, you should list all the agents in this file individually and not | |
303 | ; use agent groups. | |
304 | ; | |
305 | ;member => Agent/@1 ; Any agent in group 1 | |
306 | ;member => Agent/:1,1 ; Any agent in group 1, wait for first | |
307 | ; available, but consider with penalty | |
308 | ||
309 | ; AUF : surcharges locales | |
310 | #include "auf/queues.local" | |
311 |