Skip to content

Add a Queue

A Queue holds callers in line and distributes them to agents according to a strategy. Use queues when you want hold music, position announcements, max wait times, or per-agent stats — features ring groups don't have.

Before You Start

  • The agent extensions exist.
  • You know whether agents will be static (always in the queue) or dynamic (log in/out via feature codes).
  • A fallback destination exists for callers who time out.

Steps

  1. Go to Group Attributes → Queues.
  2. Click Add Queue.
  3. General Settings:
    • Queue Number — pick from your queue range, e.g. 7000.
    • Queue Name — e.g. Sales Queue.
    • Queue No AnswerNo (callers stay in queue if an agent doesn't answer).
    • Call ConfirmNo for static internal agents, Yes if agents include cell phones.
    • CID Name Prefix — e.g. Sales:.
    • Wait Time Prefix — adds wait time to caller ID for the agent.
    • Static Agents — one extension per line. Add ,1 after for penalty (lower = picked first), e.g. 1001,0.
    • Dynamic Members — extensions allowed to log in dynamically.
    • Restrict Dynamic AgentsYes if only the listed dynamic members can log in.
    • Agent RestrictionsCall as Dialed is most common.
    • Ring Strategy — common: ringall, leastrecent, fewestcalls, random, rrmemory, linear.
    • AutofillYes (default) — multiple agents can take calls simultaneously when there are multiple callers waiting.
    • Skip Busy AgentsYes (+ ringinuse=no) keeps a busy agent from being rung again.
    • Queue Weight — when an agent is in multiple queues, higher-weight queues get the agent first.
    • Music on Hold Class — pick a MoH class.
    • Join Announcement — optional recording the caller hears once before MoH ("Thank you for calling, your call may be recorded…").
    • Call RecordingForce to always record, Yes to follow extension policy, No to never record.
    • Mark calls answered elsewhereYes keeps missed-call lists clean.
  4. Timing & Agent Options:
    • Max Wait Time — total seconds before forcing the failover destination. 0 = unlimited.
    • Max Wait Time ModeLoose (count from queue entry) or Strict.
    • Agent Timeout — seconds an individual agent rings before moving to next.
    • Retry — seconds before re-trying the same agent.
    • Wrap-Up Time — seconds an agent is unavailable after a call.
    • Member Delay — pause before connecting agent (gives agents time to prepare).
    • Service Level — for stats: target answer time in seconds.
  5. Capacity Options:
    • Max Callers0 = unlimited. Excess callers go to failover.
    • Join Empty / Leave Empty — controls behavior when no agents are logged in (Yes = allow joining even with no agents).
  6. Caller Announcements:
    • Frequency — how often to announce position/hold time, in seconds. 0 to disable.
    • Announce Position / Announce Hold TimeYes/No/Once.
  7. Set Fail Over Destination at the bottom (where they go when Max Wait expires or they press a key to bail out).
  8. Click Submit.
  9. Click Apply Config.

Verify

Dial the queue number. You should hear the join announcement (if set) then MoH. Have an agent log in (or use static agents) and confirm the call routes correctly. Watch the queue:

asterisk -rx "queue show 7000"

Common Issues

  • Agents don't ring. Static members aren't registered, dynamic members haven't logged in, or ringinuse=no is excluding them. Check queue show <num>.
  • Caller stuck forever. Max Wait Time is 0. Set a sane timeout and a failover.
  • Agent gets call after hangup. Lower Wrap-Up Time or check that the agent's phone properly signaled hangup.
  • MoH silent. The MoH class has no files. Check System Attributes → Music on Hold.