> ## Documentation Index
> Fetch the complete documentation index at: https://docs.contactship.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Queues and skills

> Define eligible agents, distribution, waiting times and fallback destinations.

export const Availability = ({lang = 'es', plan, addon, permission, route, status}) => {
  const L = lang === 'en' ? {
    plan: 'Plan',
    addon: 'Add-on',
    permission: 'Permission',
    route: 'Where',
    status: 'Status',
    addonNote: 'enabled on request',
    allPlans: 'All plans',
    beta: 'Beta',
    nuevo: 'New',
    soon: 'Coming soon'
  } : {
    plan: 'Plan',
    addon: 'Add-on',
    permission: 'Permiso',
    route: 'Dónde',
    status: 'Estado',
    addonNote: 'se activa a pedido',
    allPlans: 'Todos los planes',
    beta: 'Beta',
    nuevo: 'Nuevo',
    soon: 'Próximamente'
  };
  const items = [];
  if (plan) items.push([L.plan, plan]);
  if (addon) items.push([L.addon, `${addon} · ${L.addonNote}`]);
  if (permission) items.push([L.permission, permission]);
  if (route) items.push([L.route, route]);
  if (status) items.push([L.status, L[status] || status]);
  return <div style={{
    display: 'flex',
    flexWrap: 'wrap',
    gap: '6px 22px',
    padding: '12px 16px',
    margin: '4px 0 24px',
    border: '1px solid rgba(2, 82, 255, 0.28)',
    borderLeft: '3px solid #0252ff',
    borderRadius: '8px',
    background: 'rgba(2, 82, 255, 0.05)',
    fontSize: '13.5px',
    lineHeight: '1.5'
  }}>
      {items.map(([k, v]) => <div key={k} style={{
    display: 'flex',
    gap: '6px',
    alignItems: 'baseline'
  }}>
          <span style={{
    fontSize: '10.5px',
    fontWeight: 600,
    letterSpacing: '0.07em',
    textTransform: 'uppercase',
    opacity: 0.65
  }}>{k}</span>
          <span style={{
    fontWeight: 500
  }}>{v}</span>
        </div>)}
    </div>;
};

<Availability lang="en" route="Settings → Telephony → Contact Center → Queues" permission="contact_center.read" addon="Contact center" />

Queues distribute calls among eligible people. Contact center must be enabled for the organization. Creating or configuring queues requires module creation or editing permissions.

## Create a queue

1. Open **Queues → New queue** and name it.
2. Choose membership by skills or a fixed agent list.
3. Select the distribution strategy.
4. Review maximum wait, ringing timeout and wrap-up time.
5. Configure fallback when nobody answers and save.
6. Point a routing rule to the queue and verify a test call.

## Membership and distribution

| Option       | Purpose                                                |
| ------------ | ------------------------------------------------------ |
| By skills    | Finds people with required skills                      |
| Agent list   | Uses explicitly selected people                        |
| Ring all     | Rings eligible phones simultaneously                   |
| Round robin  | Offers to one person at a time, rotating               |
| Least recent | Prioritizes whoever has gone longest without answering |

Assign skills in **Agents and skills**. They describe human capabilities, not AI tools. Membership alone is insufficient: the softphone must be online and **Available** to receive queue calls.

## Waiting and fallback

Maximum queue wait and ringing time for each attempt are different. Ringing options are 15, 20, 25, 30, 45 and 60 seconds.

Fallback options are hang up, voicemail or an AI agent. For AI fallback, configure an available destination. Wrap-up provides post-call work time before receiving another call.

## Frequently asked questions

<AccordionGroup>
  <Accordion title="Why does a member’s phone not ring?">
    Check skills or list eligibility, softphone connection and Available status. Also verify the call reaches that queue.
  </Accordion>

  <Accordion title="Does a support skill activate AI tools?">
    No. Skills belong to people and determine which queues they can handle.
  </Accordion>

  <Accordion title="Why does a call reach voicemail?">
    Check fallback, waiting time and whether eligible people were available.
  </Accordion>
</AccordionGroup>

## See also

* [Softphone](/en/contact-center/softphone)
* [Routing](/en/contact-center/routing-rules)
