Formatting fixes
[asterisk/asterisk.git] / configs / queues.conf.sample
1 [general]
2 ;
3 ; Global settings for call queues
4 ;
5 ; Persistent Members
6 ;    Store each dynamic agent in each queue in the astdb so that
7 ;    when asterisk is restarted, each agent will be automatically
8 ;    read into their recorded queues. Default is 'yes'.
9 ;
10 persistentmembers = yes
11 ;
12 ; Note that a timeout to fail out of a queue may be passed as part of
13 ; an application call from extensions.conf:
14 ; Queue(queuename|[options]|[optionalurl]|[announceoverride]|[timeout])
15 ; example: Queue(dave|t|||45)
16
17 ;[markq]
18 ;
19 ; A sample call queue
20 ;
21 ; Musiconhold sets which music applies for this particular
22 ; call queue (configure classes in musiconhold.conf)
23 ;
24 ;musiconhold = default
25 ;
26 ; An announcement may be specified which is played for the member as
27 ; soon as they answer a call, typically to indicate to them which queue
28 ; this call should be answered as, so that agents or members who are
29 ; listening to more than one queue can differentiated how they should
30 ; engage the customer
31 ;
32 ;announce = queue-markq
33 ;
34 ; A strategy may be specified.  Valid strategies include:
35 ;
36 ; ringall - ring all available channels until one answers (default)
37 ; roundrobin - take turns ringing each available interface 
38 ; leastrecent - ring interface which was least recently called by this queue
39 ; fewestcalls - ring the one with fewest completed calls from this queue
40 ; random - ring random interface
41 ; rrmemory - round robin with memory, remember where we left off last ring pass
42 ;
43 ;strategy = ringall
44 ;
45 ; Second settings for service level (default 0)
46 ; Used for service level statistics (calls answered within service level time
47 ; frame)
48 ;servicelevel = 60
49 ;
50 ; A context may be specified, in which if the user types a SINGLE
51 ; digit extension while they are in the queue, they will be taken out
52 ; of the queue and sent to that extension in this context.
53 ;
54 ;context = qoutcon
55 ;
56 ; How long do we let the phone ring before we consider this a timeout...
57 ;
58 ;timeout = 15
59 ;
60 ; How long do we wait before trying all the members again?
61 ;
62 ;retry = 5
63 ;
64 ; Weight of queue - when compared to other queues, higher weights get 
65 ; first shot at available channels when the same channel is included in 
66 ; more than one queue.
67 ;
68 ;weight=0
69 ;
70 ; After a successful call, how long to wait before sending a potentially
71 ; free member another call (default is 0, or no delay)
72 ;
73 ;wrapuptime=15
74 ;
75 ; Autofill will follow queue strategy but push multiple calls through
76 ; at same time. WARNING: By setting this to yes, if you have a number
77 ; of calls waiting in queue, and only a single member becoming available
78 ; at a time, it is more than likely NOT going to be the caller that's
79 ; been waiting the longest that will get assigned to this newly available
80 ; queue member.
81
82 ;autofill=yes
83 ;
84 ; Autopause will pause a queue member if the y fail to answer a call
85 ;
86 ;autopause=yes
87 ;
88 ; Maximum number of people waiting in the queue (0 for unlimited)
89 ;
90 ;maxlen = 0
91 ;
92 ;
93 ; How often to announce queue position and/or estimated 
94 ; holdtime to caller (0=off)
95 ;
96 ;announce-frequency = 90 
97 ;
98 ;
99 ; How often to make any periodic announcement (see periodic-announce)
100 ;
101 ;periodic-announce-frequency=60
102 ;
103 ; Should we include estimated hold time in position announcements?
104 ; Either yes, no, or only once.
105 ; Hold time will be announced as the estimated time, 
106 ; or "less than 2 minutes" when appropriate.
107 ;
108 ;announce-holdtime = yes|no|once
109
110 ;
111 ; What's the rounding time for the seconds?
112 ; If this is non-zero, then we announce the seconds as well as the minutes
113 ; rounded to this value.
114 ;
115 ; announce-round-seconds = 10
116 ;
117 ; Use these sound files in making position/holdtime announcements.  The
118 ; defaults are as listed below -- change only if you need to.
119 ;
120                         ;       ("You are now first in line.")
121 ;queue-youarenext = queue-youarenext            
122                         ;       ("There are")
123 ;queue-thereare = queue-thereare
124                         ;       ("calls waiting.")
125 ;queue-callswaiting = queue-callswaiting
126                         ;       ("The current est. holdtime is")
127 ;queue-holdtime = queue-holdtime
128                         ;       ("minutes.")
129 ;queue-minutes = queue-minutes
130                         ;       ("seconds.")
131 ;queue-seconds = queue-seconds
132                         ;       ("Thank you for your patience.")
133 ;queue-thankyou = queue-thankyou
134                         ;       ("less than")
135 ;queue-lessthan = queue-less-than
136                         ;       ("Hold time")
137 ;queue-reporthold = queue-reporthold
138                         ;       ("All reps busy / wait for next")
139 ;periodic-announce = queue-periodic-announce
140 ;
141 ; Calls may be recorded using Asterisk's monitor resource
142 ; This can be enabled from within the Queue application, starting recording
143 ; when the call is actually picked up; thus, only successful calls are
144 ; recorded, and you are not recording while people are listening to MOH.
145 ; To enable monitoring, simply specify "monitor-format";  it will be disabled
146 ; otherwise.
147 ;
148 ; You can specify the monitor filename with by calling
149 ;    Set(MONITOR_FILENAME=foo)
150 ; Otherwise it will use MONITOR_FILENAME=${UNIQUEID}
151 ;
152 ; monitor-format = gsm|wav|wav49
153 ;
154 ; If you wish to have the two files joined together when the call ends, set this
155 ; to yes.
156 ;
157 ; monitor-join = yes
158 ;
159 ; This setting controls whether callers can join a queue with no members. There
160 ; are three choices:
161 ;
162 ; yes    - callers can join a queue with no members or only unavailable members
163 ; no     - callers cannot join a queue with no members
164 ; strict - callers cannot join a queue with no members or only unavailable
165 ;          members
166 ;
167 ; joinempty = yes
168 ;
169 ; If you wish to remove callers from the queue when new callers cannot join,
170 ; set this setting to one of the same choices for 'joinempty'
171 ;
172 ; leavewhenempty = yes
173 ;
174 ;
175 ; If this is set to yes, the following manager events will be generated:
176 ; AgentCalled, AgentDump, AgentConnect, AgentComplete
177 ; (may generate some extra manager events, but probably ones you want)
178 ;
179 ; eventwhencalled = yes
180 ;
181 ; If this is set to no, the following manager events will be generated:
182 ; QueueMemberStatus
183 ; (may generate a WHOLE LOT of extra manager events)
184 ;
185 ; eventmemberstatusoff = no
186 ;
187 ; If you wish to report the caller's hold time to the member before they are
188 ; connected to the caller, set this to yes.
189 ;
190 ; reportholdtime = no
191 ;
192 ; If you want the queue to avoid sending calls to members whose devices are
193 ; known to be 'in use' (via the channel driver supporting that device state)
194 ; uncomment this option. (Note: only the SIP channel driver currently is able
195 ; to report 'in use'.)
196 ;
197 ; ringinuse = no
198 ;
199 ; If you wish to have a delay before the member is connected to the caller (or
200 ; before the member hears any announcement messages), set this to the number of
201 ; seconds to delay.
202 ;
203 ; memberdelay = 0
204 ;
205 ; If timeoutrestart is set to yes, then the timeout for an agent to answer is
206 ; reset if a BUSY or CONGESTION is received.  This can be useful if agents
207 ; are able to cancel a call with reject or similar.
208 ;
209 ; timeoutrestart = no
210 ;
211 ; Each member of this call queue is listed on a separate line in
212 ; the form technology/dialstring.  "member" means a normal member of a
213 ; queue.  An optional penalty may be specified after a comma, such that
214 ; entries with higher penalties are considered last.
215 ;
216 ;member => Zap/1
217 ;member => Zap/2
218 ;member => Agent/1001
219 ;member => Agent/1002
220
221 ;
222 ; Note that using agent groups is probably not what you want.  Strategies do
223 ; not propagate down to the Agent system so if you want round robin, least
224 ; recent, etc, you should list all the agents in this file individually and not
225 ; use agent groups.
226 ;
227 ;member => Agent/@1             ; Any agent in group 1
228 ;member => Agent/:1,1           ; Any agent in group 1, wait for first
229                                 ; available, but consider with penalty
230