Queues
Heedify supports call and chat queuing via four hunt methods (Attendant, Serial, Round Robin, Longest Idle), configurable SLA targets, fallback routing, VIP prioritization and per-agent skill weighting, integrated with Microsoft Teams presence, Teams Phone and CRM webhooks so inbound voice and Microsoft Teams chat conversations reach the right agent. A queue holds inbound calls and chats until an eligible agent is available. Each queue carries its own agent pool, hunt strategy, SLA target, wait-time behavior, fallback destination, VIP list, CRM integration, reason-code set and channel selection (call, chat or both).
Creating a queue
- Open Queues from the sidebar.
- Click +Add.
- Fill in the tabs (see the field reference below).
- Click Save.
Only two fields are required to create the queue: Queue name and Entity. Every other field uses a default value and can be edited later.
General
The General tab carries identity, routing behavior, audio, capacity and channels.
Identity & channels
| Field | Description |
|---|---|
| Queue name | Display name. Required. |
| Entity | Entity the queue belongs to. Required and immutable after creation. |
| Language | Default language for prompts and announcements. Defaults to en-US. |
| Queue Type | Channels the queue serves. Two switches: Call (on by default) and Chat. A queue can serve calls only, chats only, or both. |
Behavior toggles
| Toggle | Description |
|---|---|
| Keep agent on requeue | When on, a call returned to the queue stays on the same agent rather than being redistributed. |
| Announce position in queue | Plays the caller’s position in queue. |
| Announce estimated wait time | Plays the estimated wait time using the Wait time list (see below). |
Wait time intervals
Visible when Announce estimated wait time is on. Enter minute values and click Save to append them to the Wait time list (sorted ascending). The estimate is rounded up to the next interval. Example: with intervals [3, 5, 10] and a forecast of 4 minutes, the caller hears “your estimated wait time is less than 5 minutes”. Default list: 1, 3, 5.
How position and estimated wait time are calculated
Heedify computes both values live as calls enter and leave the queue:
- Position in queue — the caller’s rank among the calls currently waiting. VIP callers (see the VIP tab) are placed ahead of everyone else; the remaining callers keep their arrival order. Position
1is next to be answered. A VIP entering the queue therefore pushes non-VIP callers back by one. - Estimated wait time —
average wait time × number of calls ahead. The average wait time is measured from the calls already handled today (total time those callers spent waiting ÷ number of them answered), so the estimate automatically reflects how fast the queue is moving right now. It resets at the start of each day and adapts as the day goes on. - Announcement — the raw estimate is then rounded up to the nearest value in the Wait time list above before it is played to the caller.
Because the average is built from the day’s answered calls, the estimate is least accurate for the very first callers of the day (little history yet) and stabilizes as more calls are handled.
Capacity & timing
| Field | Description |
|---|---|
| Music on hold | Audio file played while the caller waits, picked from Media. |
| Max wait time (Seconds) | Time a call can wait in queue before being treated as overflow. Default 1200. |
| Max calls in queue | Maximum concurrent waiting calls. Default 30. |
| Max agent alert time in seconds | How long a single agent’s phone is alerted before the call moves to the next agent in the hunt sequence. Default 40. Distinct from Max wait time, which applies to the call’s total time in queue. |
| Wrap up time in seconds | Period after a call ends during which the agent receives no new offers. Default 0. |
Agent configuration
The Agent configuration tab covers hunt strategy, Teams presence mapping, agent activities and the agent roster with per-agent skill.
Agent hunt strategy
| Strategy | Behavior |
|---|---|
| Attendant | All available agents are alerted simultaneously. |
| Serial | Agents are alerted one after another in order. |
| Round Robin | Calls rotate evenly across agents. Default. |
| Longest Idle | Calls are offered to the agent who has been idle the longest. |
Authorized activity values (Teams presence to Ready)
Selects which Microsoft Teams presence states are accepted as Ready for routing. By default only Available counts as Ready; an agent in any other state is not offered new calls. Pick from these 14 Teams presence values:
Available, Away, Be right back, Busy, In a conference call, Inactive, Offline, In a meeting, Off work, Out of office, Presence unknown, Presenting, Urgent interruptions only, In a call.
An agent must be both in an authorized Teams presence AND in the Ready activity to receive calls.
Agent activities
Agent activities are the labels agents pick to describe why they are unavailable. They live on the queue and are fully editable. The default list is:
- READY
- COFFEE BREAK
- ADMIN WORK
- OUT OF SHIFT
- UNAVAILABLE
Use the input + + button to add an activity, the pencil to rename one, and the trash icon to delete one.
Default activity — picks the activity an agent lands in when first added to the queue. Deleting the default clears the default; renaming it updates the default automatically.
Agents list
Search for a Teams user and click to add. Each agent row shows:
| Column | Description |
|---|---|
| Agent name | Display name (read-only). |
| Agent email (read-only). | |
| Skill | A slider from 0 to 100% that weights how often this agent is offered calls relative to peers in the queue. New agents start at 100%. |
| Action | Delete the agent from this queue. |
SLA
| Field | Description |
|---|---|
| SLA (seconds) | Target answer time. Default 60. |
| SLA threshold (in percent) | Target percentage of calls answered within the SLA. Default 50. |
Queue fallback
Defines what happens when the queue overflows (no agent connected within Max wait time, or Fall back if no agent connected is on).
| Field | Description |
|---|---|
| Fall back if no agent connected | When on, callers are routed to the fallback immediately when no agent is logged-in or Ready. |
| Queue fallback | The destination. Pick a type — Disconnect, Transfer to user, Transfer to phone or Queue — and the target. |
| Play message before queue fallback | When on, plays a fallback announcement before transferring. Generate the audio (text-to-speech or upload). |
VIP
The VIP tab manages a list of priority callers who jump to the front of the queue.
| Field | Description |
|---|---|
| VIP priority | Master switch. When off, the VIP list is ignored. |
| + (Add VIP) | Adds an entry. Pick Phone (name + number) or User (Graph search). |
Each VIP appears in the list with edit and delete controls. There is no “priority level” number; presence in the list is what grants priority.
Service integration
Configures a webhook or CRM call that fires on queue events (for example, opens a CRM screen for the agent on call ring).
| Field | Description |
|---|---|
| Type | None, WebHook, CRM, In agent console or Open new browser tab. Selecting CRM reveals the CRM-specific fields. |
| CRM Name | (CRM only) Name shown to the agent. |
| Close CRM popup on | (CRM only) Call ring end or Call disconnected. |
| URL | Endpoint that is called. Supports template variables. |
| HTTP Method | One of GET, POST, PUT, DELETE, PATCH. Default POST. |
| HTTP Headers | Key/value map. Add a key and value then click + to append. Click the trash icon to remove. Used for Authorization, serviceApiKey, content type etc. |
Editing and deleting
Open the queue from the list to edit. The Entity is locked after creation.
Deleting a queue cannot be undone. Any call flow node that pointed to this queue must be re-targeted.
FAQ
Can a Heedify queue serve both voice calls and Microsoft Teams chats?
Yes. The General tab’s Queue Type exposes two channel switches — Call and Chat — that can be turned on independently. A queue can serve calls only, chats only, or both with the same agent pool, SLA target and fallback rules.
How does Heedify map Microsoft Teams presence to agent activity?
Each queue lists 14 Microsoft Teams presence values under Authorized activity values. Only the values selected count as Ready for routing. By default only Available is accepted. An agent must also be in the Ready activity to receive calls.
Can I integrate my CRM with a Heedify queue?
Yes. The Service integration tab supports WebHook and CRM types. Configure the URL, HTTP method (GET, POST, PUT, DELETE or PATCH) and HTTP headers (for example Authorization or serviceApiKey) so Heedify calls your CRM on queue events such as call ring.
What is the difference between Max wait time and Max agent alert time?
Max wait time is the total seconds a call can wait in queue before being treated as overflow (default 1200). Max agent alert time is how long a single agent’s phone is alerted before the call moves to the next agent in the hunt sequence (default 40).
How are VIP callers prioritized in Heedify?
Add the caller under the VIP tab as either a Phone (name + number) or a User (Microsoft Graph search). With VIP priority on, every caller in the list jumps to the front of the queue. There is no numeric priority level — presence in the list is what grants priority.
Works with: Microsoft Teams, Teams Phone, Microsoft Graph (agent and VIP search), webhook-based CRMs, Media (music on hold).