Browse
On this page

See who a ticket goes to and why

Read the plain-sentence reason behind a ticket's assignment, see the order dispatch tries before it gives up, give one client a dedicated tech, and see what changes when a person reassigns a ticket by hand instead.

You need At least one pod with a member (Team > Pods) for the pod waterfall to have anyone to pick. · Elise Dispatch Mode set to On or Preview (Settings > AI Assistant > Actions & Automation) for dispatch to act automatically on ticket creation.

What you will have

  • See which tech a ticket landed on and read the reason recorded for it, in one sentence.
  • Know the order dispatch tries before it gives up: the owning pod's skill match, then its least-loaded free member, then the next tier up, then a specialty pod, then a human.
  • Give one client a dedicated tech so every one of their tickets goes straight to that person, ahead of the pod entirely.
  • See how a ticket's calendar block gets its length, and what the audit log records when a person reassigns a ticket by hand instead of leaving it to dispatch.

Why it works this way

The reason behind a ticket's assignment now lives in the History card as one plain sentence, since the Assigned To toolbar itself carries no chip for it.

A client's Default Ticket Assignee outranks everything else, so once one is set, dispatch skips the pod waterfall and sends every new ticket for that client straight to that person until a human reassigns it by hand.

The pod waterfall only runs when there is no dedicated tech to catch the ticket first, and it tries, in order, the owning pod's lowest tier with a skill match, that same tier's least-loaded free member, the next tier up on the same two tries, a specialty pod on a skill match, and only then a human.

Steps

  1. Open a ticket dispatch has already assigned and look at Assigned To on the toolbar.

    Ticket #25, "VPN client crashes on wake from sleep" for Harbor Freight Logistics, came in through the client portal with nobody named to take it. Dispatch picked jordan.reyes the moment it landed. Assigned To on the toolbar shows the pick, same as any other assignment; there is no WHY chip here now, that lives on History, one card down the page.

    Open a ticket dispatch has already assigned and look at Assigned To on the toolbar.
  2. Open History and expand the row that reads Autonomous dispatch, to jordan.reyes, Dispatched.

    The row names what acted (Autonomous dispatch) and who it picked (to jordan.reyes) in one line, plain sentence, no archaeology needed. Expand it and the full pick shows underneath: Step 2, Step Label owning-pod:relaxed, Pod Name Help Desk, Load 4, Candidates Considered 2, Required Skills none, Reason ticket.created:client-portal. Step 2 is the pod waterfall's second rung: the owning pod's tier, any free member, least loaded first, no skill match needed. Two candidates were in the pod; jordan.reyes had the lighter load of the two, so jordan.reyes got it.

    Open History and expand the row that reads Autonomous dispatch, to jordan.reyes, Dispatched.
  3. Open Settings > System > Setup Wizards > Set up Dispatch and read the first lesson.

    "Prerequisite: pods + members" states the order the code runs, in the product's own words: dispatch can only assign a ticket to a tech who is a member of the client's owning pod, tiers (T1 to T2 to T3) set the escalation order inside that pod, and the pod's own Auto-Dispatch toggle is the final per-pod gate on whether Elise books the calendar herself or leaves the pick to the plain waterfall. Team > Pods > (a pod) > Members is where techs join a pod and get a tier; Config is where Auto-Dispatch lives.

    Open Settings > System > Setup Wizards > Set up Dispatch and read the first lesson.
  4. Open Clients > Bluebird Dental > Settings and set Default Ticket Assignee.

    This is the dedicated-tech door. Its own hint spells out the ruling: every new ticket for this client, however it arrives, goes straight to this person ahead of every other assignment mechanism, though the ticket still gets scheduled and tagged like any other. Set it to jordan.reyes and save. Owning Pod stays "- Unassigned -" here on purpose, since with a dedicated tech in place there is no waterfall left for a pod to run. This client edit screen does not print the client's name anywhere on it; the breadcrumb and page title both stay generic while you're on it, so the ticket number and Bluebird Dental context in the surrounding steps are what confirm you're on the right client's page.

    Note: Default Ticket Assignee locks every new ticket for this client to that person, ahead of dispatch and Ticket Rules, until a human reassigns it by hand.
    Open Clients > Bluebird Dental > Settings and set Default Ticket Assignee.
  5. Create a new ticket for Bluebird Dental and open its History.

    Ticket #26, "New hire needs a laptop set up before Monday," was created with no assignee picked. It landed on jordan.reyes before the page even finished loading, and History reads a different sentence than ticket #25's: "Dedicated tech (Client default assignee), Dedicated tech assigned," expanding to Assigned To jordan.reyes. No pod, no tiers, no candidates considered, because none of that ran; the dedicated-tech rule caught the ticket at creation, ahead of dispatch.

    Create a new ticket for Bluebird Dental and open its History.
  6. Open Scheduling on the ticket and click Schedule.

    The form pre-fills Tech to the ticket's current assignee and Duration (min) to 60, this tenant's Default Ticket Estimate (Settings > Dispatch & Scheduling > Dispatch Rules), because ticket #26 carries no tags with a learned average yet. A ticket whose tags do have history gets the rolling average for those tags instead, always the larger of the two if it carries more than one tag; the block is sized by whichever real fix-time number resolves, never a flat guess.

    Open Scheduling on the ticket and click Schedule.
  7. Reassign a dispatched ticket by hand: open Assigned To on ticket #25 and pick a different tech.

    Picking Northwind Demo from the Assigned To combobox moves the ticket immediately; Assigned To on the toolbar now reads Northwind Demo in place of jordan.reyes.

    Reassign a dispatched ticket by hand: open Assigned To on ticket #25 and pick a different tech.
  8. Open History again and expand the new Reassigned row.

    The row is named by the person who did it, Northwind Demo, badged user rather than system, with no WHY chip: a human made this choice, so there is no automated cause to explain. It expands to the plain diff every reassignment leaves: assignedTo changed, before jordan.reyes, after Northwind Demo, plus Old Assigned To and New Assigned To spelled out again underneath. Reassigning also erases the dispatch chip that used to explain the assignment: getAssignmentCause only shows an automated reason while the automated pick is still the ticket's current assignee, and a manual reassignment away from that pick is never automated again.

    Open History again and expand the new Reassigned row.
  9. Move a ticket to a different client: click the Organization field on the ticket toolbar and search for the new client.

    Ticket #46, "Front desk printer offline," started on Bluebird Dental with a reply and 5 minutes of logged time already on it. Clicking Organization opens a plain search box right there in the toolbar; typing "Harbor Point" lists Harbor Point Physio to pick. The same toolbar's Contact field does the same job the other way round: picking a contact who belongs to a different client moves the ticket to that client too.

    Move a ticket to a different client: click the Organization field on the ticket toolbar and search for the new client.
  10. Pick it, and the whole ticket moves in one step, with no confirmation.

    Organization now reads Harbor Point Physio, and the breadcrumb and page title switch to match. Nothing else about the ticket was touched to make this true: the Communication card still shows both the original note and the reply that carried 5 minutes of logged time, and the Time Entries card still totals 0:05 hrs logged. Replies, files and time entries all move with the ticket, in the same step.

    Note: Only closed and billed work blocks a move: a time entry locked because it is already on a live invoice. Time locked by a consolidation rollup, a closed period or a manager lock still travels with the ticket. To move a ticket with billed time on it, void the invoice first, then move it (owner ruling, src/lib/domains/tickets/org-move.ts:18-31).
    Pick it, and the whole ticket moves in one step, with no confirmation.

Other ways to do this

Auto-dispatch (the pod waterfall)

With Elise Dispatch Mode set to On or Preview (Settings > AI Assistant > Actions & Automation, mirrored at Settings > Dispatch & Scheduling > Dispatch Rules) and a client's Owning Pod set, an unassigned ticket runs the waterfall automatically the moment it is created: owning pod skill match, owning pod least-loaded free member, tier climb, specialty pod, human triage. Every pick writes a TICKET_DISPATCHED row with the Autonomous dispatch cause.

The default door for any client with no dedicated tech: staff never touch assignment, dispatch always tries first.

Dedicated tech

Set a client's Default Ticket Assignee (Clients > that client > Settings). Every new ticket for that client, however it arrives, is assigned to that person before dispatch, Ticket Rules, or any other automated door ever sees it, and stays theirs for the life of the ticket.

One client always goes to the same person, and nothing else should ever be allowed to move it.

Manual assign on the ticket

Open Assigned To on the ticket toolbar and pick a tech from the combobox (pod members and elevated co-managed contacts only). Writes a TICKET_REASSIGNED audit row with no cause; a human did it.

A tech should hold a ticket that dispatch either missed or got wrong.

Bulk assign on the list

Select several tickets on All Tickets and choose a bulk reassign action. Every selected ticket moves to the new tech through the same reassign path, one audit row per ticket.

A batch of tickets all need to move to the same person at once.

Elise

A tech asks Elise, in chat, to assign or reassign a ticket; her ticket.assign capability writes the same assignment fields and an audited row, credited to Elise with the asking tech named underneath ("for <name>") rather than to the automated dispatch cause.

A tech is already talking to Elise about the ticket and wants her to hand it off.

Ticket Rules / automations

An operator-authored rule with a ticket.assign action, or the ticket.route_on_status_entry action tied to a board move, can assign or unassign a ticket on its own trigger, subject to the same dedicated-tech protection dispatch honors: it will never strip an assignment from a client's dedicated tech.

The same assignment move should happen automatically every time a condition repeats.

If it did not work

  • If the client has no Owning Pod and no Default Ticket Assignee, dispatch has nowhere to send the ticket: it stays unassigned and is flagged Needs Attention for the pod's techs to claim.
  • If Elise Dispatch Mode is Off, no ticket is ever auto-dispatched; every ticket falls back to whatever the creating door does (admin tickets self-assign to the creating admin, client-portal and email tickets stay unassigned until claimed).
  • If the pod's lowest tier has nobody eligible (no members, or everyone inactive, blacklisted, or PASSIVE), dispatch climbs to the next tier automatically rather than stopping.
  • If a required skill matches nobody in the owning pod or any specialty pod, dispatch falls back to the full candidate set rather than stranding the ticket on a skills miss.
  • If Elise Dispatch Mode is On for a pod whose own Auto-Dispatch toggle is off, that pod still self-serves the plain waterfall pick; only a pod with both switches on lets Elise book the tech's real calendar herself.
  • If a move is refused, it is because the ticket carries time already invoiced on a live invoice; void that invoice first, then move it.

Questions this page answers

What is Dispatch?

Dispatch is where you tune how tickets get auto-routed and time-estimated. Pods (one level over) decide WHO works on a ticket; Dispatch decides HOW the system estimates effort, blocks calendar slots, and prioritizes work. It has two surfaces: Tag Estimates (the fix-time estimate strategy for each ticket tag) and Preview (review and grade the assistant's would-be dispatch picks before going live). The engine's own knobs, Dispatch Mode, default estimates, and the scheduling-window tuning, live in Settings → Dispatch & Scheduling. The day-timeline board of what each tech is scheduled to work now lives under Service Desk > Schedule.

What are Pod Scheduling Rules?

This doorway explains that scheduling rules, hours, tiers, and how dispatch loads a pod belong to each pod. They live on the pod itself, not on a global Settings page. The tenant-wide dispatch defaults nearby are only the starting point each pod builds on.

What does Dispatch Mode (off / preview / on) do?

Off = no auto-dispatch; you schedule manually. Preview = Elise records who + when she WOULD schedule (no calendar writes) so you can review her picks on the Preview page - the safe on-ramp. On = Elise dispatches live, per pod, only for pods whose Auto-Dispatch toggle is on. This row only shows the value. It is not editable here. Click its Edit link, or go to Settings > AI Assistant > Actions & Automation, to change it.

How do I create or configure a pod?

Click "Open Pods" on this page, or go straight to Team → Pods. Pick the pod to configure, or create a new one. Open its Configuration. Then manage its members, board assignments, and tier coverage.

What is on the Dispatch Settings page?

This page holds every knob for the dispatch engine. It covers the default ticket estimate and auto-tune, plus the quick-fix threshold and handling. It also covers the calendar reconcile interval and scheduling-window tuning (slot granularity, tier fill and overflow). The Dispatch Rules page also shows the master Dispatch Mode (off, preview, on). That row is a read-only mirror here, though. Click its Edit link, or go to Settings > AI Assistant > Actions & Automation, to change it. Techs get booked into the company's default working window: Business Hours (Service Levels → Business Hours & Holidays). The SLA clock uses that same value. Calendar Sync shows it too, with a link. The "Set up Dispatch" wizard writes these same settings with recommended values. This page is where you adjust them afterward.

Can I move a ticket to a different client?

Yes. Use the Reassign card on the ticket. Change the Organization, or pick a contact at another client. The whole ticket moves in one step. Replies, files and time entries move with it. Only billed time blocks a move. That means a time entry locked by an invoice that is still live. Time locked by a roll up, a closed period or a manager still moves. To move a ticket with billed time, void the invoice first.

Was this helpful?

Last validated 2026-09-24