{{ $title }}

Queue routing, wait policy, and call-center features.
Back to Queues
@if(session('success')) @endif @if(session('error')) @endif @if($errors->any())
Please fix the following:
@endif
@csrf @if($method !== 'POST') @method($method) @endif @php $selectedMembers = collect(old('members', isset($queue) && $queue ? $queue->members->pluck('agent_id')->all() : [])) ->map(fn($id) => (int) $id) ->all(); @endphp {{-- ── Tab navigation (extension-edit style) ── --}}
{{-- BASIC --}}
Display name shown in the GUI and reports.
e.g. 2000. This is what callers/extensions dial to enter the queue.
How long each agent's phone rings before the next agent is tried (5–300 seconds).
Pause after each call before agent receives the next one.
ring_in_use ?? true) ? 'checked' : '' }} id="qRingInUse">
When on, the queue rings agents even if they're already on a call. Turn off so a busy agent is skipped and the caller waits in the queue (hold music / announcements) until an agent is free — recommended when agents have Call Waiting disabled. Set Music on Hold (below) for the hold experience.
When this many callers are already waiting, new callers go to the failover destination.
After this many seconds in queue, the caller is sent to failover. 0 = unlimited.
Prepended to the caller's name so agents see which queue they're answering.
is_active ?? true) ? 'checked' : '' }} id="qActive">
record_calls ?? true) ? 'checked' : '' }} id="qRec">
{{-- CALLER EXPERIENCE --}}
Welcome Message
Played once when the caller enters, before the queue (e.g. "Welcome to Acme, all our agents are busy — please hold"). Leave as (none) to send callers straight into music/queue.
Upload prompts under Voice Prompts.

Periodic Announcement
Play a custom message at intervals while callers wait (e.g. "Your call is important to us, please continue holding"). This plays first, then the caller hears Music on Hold between repeats.
Upload prompts under Voice Prompts.
How often the announcement repeats. Typical: 60–120 seconds.

Played between periodic announcements while callers wait. Upload custom MoH classes under Music on Hold.

Position & Wait Time Announcements
announce_position ?? true) ? 'checked' : '' }} id="qAnnPos">
announce_hold_time ?? false) ? 'checked' : '' }} id="qAnnHold">
{{-- FAILOVER & BREAKOUT --}}
Failover Destination
When the queue is full or max wait time is exceeded, send the caller here. Strongly recommended — without a failover the call simply hangs up.
Extension number, mailbox number, ring group number, queue number, or external phone number.
Caller Break-Out
Let waiting callers press a digit to escape the queue and reach voicemail or another extension.
breakout_enabled ?? false) ? 'checked' : '' }} id="qBreakout">
{{-- AGENTS --}}
{{ count($selectedMembers) }} assigned / {{ count($agents ?? []) }} available
Tick the agents who should receive calls in this queue. Untick to remove. Agents need an extension assigned to ring.
@forelse(($agents ?? collect()) as $agent) @php $isAssigned = in_array((int) $agent->id, $selectedMembers, true); $hasExt = !empty($agent->extension); @endphp @empty
No active agents available. Create agents under Call Center → Agents.
@endforelse
Cancel