A shared inbox earns its keep only when the team agrees on what "handled" means. Without that agreement the inbox degrades into a list of unread threads — every agent answers whichever messages they like, "closed" means whatever the last agent decided, and AI-drafted replies go out unchecked because nobody defined who checks them. The fix is not more discipline; it is three explicit mechanisms working as one loop: a queue that carries SLA clocks, a disposition whose meaning the org controls, and a reply-approval gate that decides which outbound replies require a human. On Devotel Orbit's Inbox those three are configuration, and this post walks through how they fit together.
Queues with clocks — SLAs as routing context, not reporting
An SLA clock is only useful if it runs where the work happens. On Orbit, web chat, WhatsApp, SMS, RCS, email, social and OTT chat, Viber, and voice tickets all land as one conversation timeline per customer, and the Inbox SLA timers hang first-response, next-response, and resolution clocks directly on that thread. Business hours count toward the clocks, so overnight waiting does not distort the numbers, and a breaching clock can do more than color a cell red — it can alert supervisors, post to Slack or Teams, fire a signed webhook, or reassign the thread, with a warning step ahead of the deadline rather than only after it.
Two clock levels run side by side. The conversation-level clocks answer this thread waited too long. The per-digital-queue escalation policy watches the queue as a whole — how many open threads have already breached, how long the oldest still-open thread has been waiting — and answers this queue is stalling, page someone now. When its conditions trip, the policy raises an alert to supervisors, fires your paging webhook, or walks an escalation ladder (reassign, post to Slack or Teams, call the webhook again) when nobody acts. Crucially, alerting never moves routing — it tells humans, and humans act. Overflow still owns routing, so a breach alarm can't silently reorder your queue.
If these surfaces are new to you, the shared-inbox overview covers the two SLA levels from the buyer's side. The SLA report then turns both sets of clocks into attainment numbers your leadership will actually read.
Dispositions with a lifecycle — "closed" the whole org understands
SLA clocks tell you how fast the team was. Dispositions tell you what happened — but only if the label itself is governed. On Orbit, a closed conversation's outcome label moves through a defined lifecycle: assigned, needs_review, approved, overridden. The rules for moving between those states live in one shared definition, rather than each surface re-deciding them.
The practical consequences:
- The AI auto-label is a participant, not an oracle. A high-confidence classification lands as
assigned. A low-confidence one lands asneeds_reviewand shows up in the Disposition review queue in the inbox. - Agent confirmation and override are distinct states. Confirming the label makes it
approved; replacing it makes itoverridden, and the audit trail keeps the original AI suggestion — so classifier accuracy stays measurable instead of being silently rewritten. - Terminal states stay terminal. Once approved or overridden, nothing can roll a disposition back to pending review, and a manual first-pass close resolves straight to
approved— it never clogs the review queue.
Labels are defined under Inbox → Dispositions, so the vocabulary on the reports is the vocabulary your org actually uses — not a vendor's fixed enum. This is what turns the SLA report from a speed measurement into an outcome measurement: breached-vs-attained split by what the thread was about.
Reply approvals — the gate between the AI draft and the customer
The same discipline applies to what leaves the building. Orbit's AI drafts replies inside the inbox, but a per-agent gate decides whether a given operator's outgoing replies require approval first. The safety posture is deliberate: the AI recommends, an operator decides.
When the gate is on for an agent, their drafted reply lands in the Pending replies queue instead of reaching the customer. An approver works that queue — approve, edit, or reject — and only then does the message send. The gate is configured per agent on the Team settings page (org owners are exempt by design), and it pairs with the AI deflection threshold: high-confidence answers can still flow automatically, and everything below the bar takes the human path. The reply-approval settings surface exposes the rule set, and the gating guide walks the operator workflow end to end.
For a team that runs AI assistance, this gate is what makes SLAs and dispositions honest: a fast first-response clock means little if the fast answer was wrong, and a resolution disposition means little if the reply that "resolved" the thread went out unreviewed.
Wiring the loop into your weekly review
The three mechanisms pay off when a supervisor reads them together in one ritual:
- Queue breach ladder. The SLA report shows which queues breach and when; the escalation policy shows whether breaches were paged or just logged.
- Approval pass rate. How much AI output ships unedited, and for which agents the gate is on. If pass rate climbs, widen the gate slowly — never in a hurry.
- Outcome mix. The disposition report splits breach volume by label, so "our worst SLA queue" becomes "our worst queue for billing disputes," which is a staffing or knowledge-base question, not an agent-blame question.
None of this is a big-bang rollout. Turn on one queue's clocks, define a handful of disposition labels, and gate the two newest agents — then widen from the report outward.
Frequently asked questions
Which channels can run under SLA clocks at once?
All of them that the inbox carries — web chat, WhatsApp, SMS, RCS, email, social and OTT chat, Viber, and voice tickets — because the clocks hang on the conversation timeline, not on a channel-specific queue. Business hours are honored, and the per-digital-queue escalation policy watches the backlog-level aggregates.
Does a queue SLA breach change routing?
No. A breach raises an alert to supervisors, posts to Slack or Teams, or fires your paging webhook — optionally chaining an escalation ladder. Routing stays with overflow rules by design, so an alert can never silently reshuffle the queue.
Where do agents see AI-assigned dispositions that need review?
Low-confidence AI labels land in the Disposition review queue inside the inbox, marked needs_review. Confirming one makes it approved; replacing it makes it overridden, and the audit trail retains the AI's original suggestion so classifier quality stays measurable. High-confidence labels land as assigned directly, and manual closes resolve straight to approved.
What exactly does the reply-approval gate catch?
Every reply an approval-gated agent sends — manual or AI-drafted — parks in the Pending replies queue until an approver approves, edits, or rejects it. Paired with the AI deflection threshold, that means low-confidence AI output takes the human path while high-confidence answers still flow automatically.
Is the approval gate all-or-nothing per org?
No. It is per agent — you set it on the Team settings page for the specific operators whose outbound replies should be screened, and org owners are exempt by design. Most teams gate new agents and low-confidence AI answers first, then widen coverage as the approval pass rate climbs.