Call Queues

From Kolmisoft Wiki
Revision as of 15:49, 20 May 2013 by Aisteb (talk | contribs)
Jump to navigationJump to search

Description

Call queue is a feature that allows an unlimited number of callers to wait for an available sales representative or for resources to become accessible to assist them. This allows you to provide each customer with the same quality service. In addition, it ensures your customers won’t end up in voicemail.

Queues consist of

  • Incoming calls being placed in the queue
  • Members that answer the queue (extensions or users that login as agents)
  • A strategy for how to handle the queue and divide calls between members
  • Music played while waiting in the queue
  • Announcements for members and callers

Queues are defined in queues.conf or in dynamic realtime. The latter allow storing queue configuration in a database so that changes are immediately available for new callers without the need for an explicit reload.

  • Agents are the people (or person) that answer call(s) that have been placed into a specific Queue. An agent logs in indicating that s/he is now ready to take calls. Asterisk transfers an inbound call to a queue, which is then in turn transfered to an available agent.
  • Members are those channels that are active answering the Queue. It can be agents or normal channels, like "sip/snom23"



Usage

Queue Options

Queue Name – name of Queue.
Assigned DID(s) – quantity of DIDs, which are assigned to current Queue.
Extention – a short number by which this queue can be reached; must be unique in the system.
Server – allows to choose server in multiple servers system. Server id on which server queue application will be executed
Ring Strategies – Calls are distributed among the members handling a queue with one of several strategies:

  • ringall: ring all available channels until one answers (default)
  • roundrobin: take turns ringing each available interface
  • leastrecent: ring interface which was least recently called by this queue
  • fewestcalls: ring the one with fewest completed calls from this queue
  • random: ring random interface
  • rrmemory: round robin with memory, remember where we left off last ring pass

Queue Weight – for comparing with other queues, higher weights get first shot at available channels when the same channel is included in more than one queue.
Autofill – makes sure that when the waiting callers are connecting with available members in a parallel fashion until there are no more available members or no more waiting callers.
Skip Busy Agents – lets do not send calls to members whose devices are known to be 'in use'(Note: only the SIP channel driver currently is able to report 'in use'.)
Fail Over Actions – set action what to do after Queue

  • Hangup
  • Transfer to Extension
  • Transfer to DID
  • Transfer to Device



Agent Options

CID Name Prefix – The CID Name Prefix is used to prefix the caller ID of callers in the queue with the value entered in this field. This is often used when agents are members of multiple queues so that they know which department a person has called(for example, a CID may be prefixed with "Sales" or "Tech Support").
Report Hold Time – If you wish to report the caller's hold time to the member before they are connected to the caller, set this to yes.
Agent Announcement – An announcement announce may be specified which is played for the member as soon as they answer a call, typically to indicate to them which queue this call hould be answered as, so that agents or members who are listening to more than one queue can differentiated how they should engage the customer
Agent Delay – If you wish to have a delay before the member is connected to the caller (or before the member hears any announcement messages), set this to the number of seconds to delay.
Agent Timeout – This timeout specifies the amount of time to try ringing a member's phone before considering the member to be unavailable.
Retry – How long do we wait before trying all the members again?
Wrap-Up-Time – After a successful call, how long to wait before sending a potentially free member another call (default is 0, or no delay)
Allow hangup by * – allow callee to hang up by pressing


Static Agents

To add Static Agent click on Add new Static Agent link and choose Device and Penalty.

Penalties

Queue members can be defined as having a penalty - e.g. member => SIP/200,1 member => SIP/201,2 member => SIP/202,3 member => SIP/203,2 If the strategy is defined as 'ringall', then only those available members with the lowest priorities will ring. In the example above, if 200 is not busy, then only 200 will ring. If 200 is busy, then only 201 and 203 will ring. If 200, 201 and 203 are busy, then 202 will ring.

NOTE that if extension 200 does not pick up it will not automatically go to extension 201. It will keep ringing 200 until they pick up. It will only go to the next extension if the current extension is either busy or unavailable.

Caller Options

Max Callers – Maximum number of people waiting in the queue (0 for unlimited)
Join Announcement – The Join Announcement drop-down menu is used to select a sound file to be played back to the caller before they are dropped into the queue. This file must be pre-recorded or uploaded to the system. This announcement is optional, but will usually state that the caller is being placed into a queue, and that their call will be answered in priority sequence.
Ringing instead of MOH – ring instead of playing MOH.
Music On Hold Class – Musicclass sets which music applies for this particular call queue. The only class which can override this one is if the MOH class is set directly on the channel using Set(CHANNEL(music class)=whatever) in the dialplan.
Ring at once when Agent is ringing – stops MOH and rings once an agent is ringing (Asterisk Trunk)
Join Empty – This setting controls whether callers can join a queue with no members.

  • paused - a member is not considered available if he is paused
  • penalty - a member is not considered available if his penalty is less than QUEUE_MAX_PENALTY
  • inuse - a member is not considered available if he is currently on a call
  • ringing - a member is not considered available if his phone is currently ringing
  • unavailable - This applies mainly to Agent channels. If the agent is a member of the queue but has not logged in, then do not consider the member to be available
  • invalid - Do not consider a member to be available if he has an "invalid" device state. This generally is caused by an error condition in the member's channel driver.
  • unknown - Do not consider a member to be available if we are unable to determine the member's current device state.
  • wrapup - A member is not considered available if he is currently in his wrapuptime after taking a call.

Leave When Empty – if you wish to remove callers from the queue when new callers cannot join, set this setting to one of the same choices for 'Join Empty' described above.
Allow hangup by * – allow caller to hang up by pressing *
IVR Brake-Out Menu – A context may be specified, in which if the user types a SINGLE digit extension while they are in the queue, they will be taken out of the queue and sent to that extension in this context.
Max Wait Time – 'timeout' sets the time in seconds that a call will wait in the queue before it is routed to the next priority in the dialplan. It defaults to 300 seconds (5 minutes).


Caller Announcements

Repeat Frequency – How often to announce queue position and/or estimated holdtime to caller
Min. Announce Frequency – The absolute minimum time between the start of each queue position and/or estimated holdtime announcement This is useful for avoiding constant announcements when the caller's queue position is changing frequently (see announce-frequency)
Announce Position – Queue position announce? Valid values are "yes," "no," "limit," or "more." If set to "no," then the caller's position will never be announced. If "yes," then the caller's position in the queue will be announced to the caller. If set to "more," then if the number of callers is more than the number specified by the announce-position-limit option, then the caller will hear that there are more than that many callers waiting (i.e. if a caller number 6 is in a queue with the announce-position-limit set to 5, then that caller will hear that there are more than 5 callers waiting). If set to "limit," then only callers within the limit specified by announce-position-limit will have their position announced.
If you have specified "limit" or it "more" for the announce-position option, then the following value is what is used to determine what announcement to play to waiting callers. If you have set the announce-position option to anything else, then this will have no bearing on queue operation
Announce Hold Time – Should we include estimated hold time in position announcements? Either yes, no, or only once. Hold time will be announced as the estimated time, or "less than 2 minutes" when appropriate.
Round Seconds – What's the rounding time for the seconds? If this is non-zero, then we announce the seconds as well as the minutes rounded to this value.


Periodic Announcements

This block allows a message like "Thank you for holding, your call is important to us." to be played at regular intervals while a caller is in the queue.

Repeat Frequency – How often to make any periodic announcement (see periodic-announce)
Random – Should the periodic announcements be played in a random order? Default is no.
Relative – If set to yes, the periodic announcment frequency will be timed from the end of each announcment rather than from the start of each announcment. This defaults to off.
Announcment – sound message


Vizualization

Queue visualization.png

From Reseller/Reseller PRO

Reseller/Reseller PRO is not able to use Queue functionality.

From Accountant

Accountant can manage Admins Queues if there are set Mange Queues permission in Accountant permissions.