Skip to content

Queues

A Queue holds incoming calls in line and distributes them to the right people, so callers are answered in a fair, controlled order instead of hitting a busy signal or ringing an empty desk. Queues are the foundation of a contact center: they decide which agents ring, in what order, what callers hear while they wait, and what data is captured for reporting. Use a queue any time more than one person should be able to answer a given number, or when you need hold music, announcements, recording, or call center analytics.

The Queues section lets you manage Queues, which allow you to accomplish the following:

  • Place incoming calls in multiple Queues in order the calls are received
  • Allow Agents (Queue members) to login and answer calls
  • Define strategies for how to handle calls and choose the agents for answering
  • Configure the Music-on-Hold played to callers while they are waiting in the Queues
  • Play periodic announcements to callers and Agents
  • Record calls
  • Real time monitoring of Queues and Agents
  • Allow managers to listen to the conversations and help Agents when necessary
  • Save the information for Call Center reports and analytics

Multi-Login Restriction: When users are assigned as static queue members or messaging queue members, their multi-login setting is automatically disabled. This ensures proper message assignment and call routing in the contact center. If any of the assigned users have multi-login enabled, the administrator will be warned and multi-login will be turned off for those users upon saving.

Queues vs. Hunt Groups

A Queue and a Hunt Group are often alternatives for the same goal - let one number reach several people - so it helps to know when to pick which.

  • Both ring multiple destinations, can play an announcement and music-on-hold, and can be reached from Inbound Routes, Voice Menus, and Feature Codes.
  • A Hunt Group rings destinations step by step and then falls through to a no-answer destination. It has no waiting-in-line, no agent login, and no reporting - ideal for a small team that just needs “ring these phones, then those, then voicemail.”
  • A Queue holds callers in line with hold music, position/hold-time announcements, ring strategies and penalties, agent login/logout, callback, and full contact-center metrics. Choose it when callers should wait on hold, when agents flex across shifts, or when you need reporting.

Combining the two: a Hunt Group can include a Queue as a step (with its own wait timeout), typically as the final step - so you can ring desk phones directly first and, if unanswered, drop the caller into a queue with agents and hold treatment. A Queue itself does not chain onward, so it belongs at the end of such a flow. For a full comparison table, see Hunt Groups vs. Queues.

Create/Edit Queue

Queue Settings

Queue name. Unique alphanumeric name for this queue.

Description. Queue description, optional.

Tag. Optional tag for organizing Queues.

Department. Optionally assign the Queue to a Department. Defaults to “Not assigned”.

Maximum Callers. Maximum number of callers that can wait in the Queue (0 is unlimited).

Ring busy members. Determines whether the queue will be sending calls to members whose devices are known to be in use.

Connect to members in parallel. Allow waiting callers to connect with available members until there are no more available members or no more waiting callers.

Announce Hold Time. Specify whether the hold time is to be announced and when.

Hold Time Announce frequency. Specify how frequently the hold time will be announced.

Periodic Announcement to caller. Specify whether the periodic announcements are played to the caller.

Periodic Announcement frequency. Specify frequency of periodic announcements.

Rounding of hold time. If this is non-zero, then seconds rounded to this value will be added to the wait time announcement.

Agent timeout. How long can the agents phone ring before a timeout.

Agent retry. Retry timer between attempts to call queue members.

Report hold time to agent. Specify whether the caller’s hold time will be announced to the agent when the call is connected.

Announcement to agent. Specify whether an announcement will be played to the agent when they answer a call.

Call Recording. Specifies whether the call recording will be enabled for this queue, as well as the recording format.

Combine recorded files. Specifies whether 2 files containing recorded conversation should be joined together.

Ring Strategy. Strategy for distributing calls to members (Agents or Static Queue Members) that may be:

  • ringall - ring all available members until one answers (default)
  • leastrecent - ring a member which was least recently called by the Queue
  • fewestcalls - ring the one with fewest completed calls from this Queue
  • random - ring randomly
  • rrmemory - next call will go the agent after the last one who answered
  • roundrobin - take turns ringing each available member
  • linear - ring in the order interfaces are listed in the configuration files
  • wrandom - ring randomly while using Penalty

Music-on-Hold. Specify music-on-hold for the queue.

Other queue options. Additional options for the queue.

Queue Join/Leave Conditions

Queue Join/Leave Conditions control when callers can join Queues and when they are forced to leave Queues, based on the statuses of the Queue Members.

Static Queue Members

Static Queue Members are phones (SIP Endpoints) that are always in the Queue with no login or logout required.

Penalty controls which members are called first - Queue won’t try to call a Static Queue Member if any Static Queue Member or an Agent with lower Penalty is available.

Static Agents (Messaging)

Messages to a queue are offered only to people on this list. Static Queue Members (voice) receive calls and are not used for SMS or WhatsApp.

The tab is shown when Messaging or Contact Center is enabled for the organization. A user appears as a candidate only after Enable Omnichannel Messaging is on for that user. Penalty on each messaging member controls offer order, together with the queue policy.

Without anyone on this list, inbound messages to the queue have nobody to take them. The customer is then sent the queue’s no-agent reply (the default is that no agents are available). The inbound messaging routes list shows None for that queue until someone is added.

Queue policies (greeting, no-agent reply, timeouts) stay on the Policies tab, which appears after Contact Center is enabled.

Agents

Agents can log in into the Queues by either dialing a Feature Code (611 is the default) or using web UI. Penalty controls which agents are called first - Queue won’t try to call an Agent if any Agent or a Static Queue Member with lower Penalty is available.

Contact Center Policies

When Contact Center is enabled for a tenant, queue forms include a Policies tab with settings for ACW (After Contact Work), disposition codes, messaging session management, and customer idle detection. Policies follow an inheritance hierarchy: Global → Tenant → Queue. Each level can inherit from the parent or define its own values.

ACW & Disposition Settings

FieldDescription
Disposition requiredWhen enabled, agents must select a disposition code after each interaction
Disposition timeout (sec)Time allowed for agent to select a disposition code before the default is applied
Default disposition codeCode applied automatically when disposition times out or is not required
Disposition ends ACWWhen Yes, selecting a disposition immediately ends ACW. When No, agent stays in ACW until the time limit
ACW time limit (sec)Maximum time in ACW state before agent becomes available automatically
ACW extension duration (sec)Seconds added each time agent requests an ACW extension
Max ACW extensionsMaximum number of times agent can extend their ACW period

Messaging Session Settings

FieldDescription
No agent delay (sec)Wait time before retrying agent selection when none are available
No agent retriesMaximum retry attempts before returning a “no agents” error
Agent accept timeout (sec)Time for an agent to accept a request before trying another
Agent assign timeout (sec)Time to wait for a queue/assign response
Auto-close timeout (sec)Maximum session duration before auto-close, regardless of activity
Customer idle timeout (sec)Close session when customer has not responded for this long after agent’s last message. Disabled = no idle detection
Customer idle warning (sec)Warning message is sent this many seconds before session closes due to customer inactivity
Soft queue limitWarning threshold for messages in queue
Hard queue limitNew messages rejected when this limit is reached

Customer Idle Detection

The customer idle timeout provides a two-step warning-then-close mechanism for inactive messaging sessions:

  1. Timer starts when the agent sends a message and resets on every customer response
  2. Warning sent — at idle_timeout - idle_warning seconds of inactivity, the idle warning message is sent to the customer
  3. Session closed — at idle_timeout seconds, the session is auto-closed and the auto-close message is sent

For example, with a 5-minute idle timeout and 2-minute warning: after 3 minutes of customer silence the warning fires, and if the customer still hasn’t responded after 5 minutes total, the session closes.

The warning message supports a ${minutes} placeholder that is replaced with the remaining time before close.

Messages

FieldDescription
Greeting messageSent when agent connects with customer. Use ${name} for agent name
Goodbye messageSent when agent ends the conversation
Hold messageSent when agent puts customer on hold
Unhold messageSent when agent returns from hold
Auto-close messageSent when session is automatically closed
Idle warning messageSent when customer is idle and session may close soon. Use ${minutes} for remaining time

Choosing a ring strategy

The ring strategy is the single biggest decision for how a queue feels to both callers and agents:

  • Use ringall for small teams where any available person should grab the call as fast as possible.
  • Use roundrobin / rrmemory / leastrecent for larger teams where you want calls spread evenly rather than always hitting the same first agent.
  • Use fewestcalls to balance total volume across agents over a shift.
  • Combine any strategy with Penalty (on agents and static members) to build tiers - primary agents at penalty 0, backups at a higher penalty so they only ring on overflow.

Worked example: a tiered support queue with backup agents

You want the two senior support reps to take calls first, with three junior reps only ringing when both seniors are busy - and callers kept informed while they wait. (For a plain single-tier queue wired to a DID end to end, see the Contact Center Setup Guide; this example focuses on tiering and caller experience.)

  1. Create the queue. Add a queue support, Ring Strategy leastrecent (spread load within a tier evenly), Agent timeout 20, Agent retry 5, Maximum Callers 15 (so it never grows an endless line).
  2. Build the tiers with Penalty. Add the two seniors as Static Queue Members with Penalty 0, and the three juniors with Penalty 1. The queue never rings a penalty-1 member while any penalty-0 member is available, so juniors only get overflow.
  3. Keep waiting callers informed. Set Announce Hold Time on, add a Periodic Announcement to caller (“All agents are busy, please hold”) every 30-45s, and set Music-on-Hold. Turn on Report hold time to agent so the rep knows how long the caller waited.
  4. Handle overflow gracefully. Because Maximum Callers is 15, enable the Callback Option so callers past a threshold can request a callback instead of waiting - and point the queue’s timeout/full path at voicemail.
  5. Route and verify. Send the support DID into this queue via Inbound Call Routes, then watch it under Live Monitor: with both seniors idle, only they ring; mark them busy and the juniors start ringing.

To let juniors log in only during peak hours instead of always being members, make them dynamic Agents (penalty 1) who log in with 611 rather than static members.

Best practices

  • Set a sane Maximum Callers. An unlimited queue can grow a long, frustrating wait; a cap lets you send overflow somewhere better (voicemail, callback, or another queue).
  • Announce hold time and play periodic announcements. Callers wait more patiently when they hear position/hold-time updates and reassurance messages.
  • Offer callback during peaks. Enabling the Callback Option reduces abandoned calls when hold times climb.
  • Mix static members and dynamic agents intentionally. Static members guarantee baseline coverage; dynamic agents flex with shifts.
  • Enable recording where you need quality review or compliance - and confirm callers are notified as your local laws require.