Theme
OmniBots Engagement Hub
The OmniBots Engagement Hub integration enables bot-to-agent escalation without an external contact center platform. When a Handoff node fires, the conversation is routed directly to an agent queue in the OmniBots Agent Desktop via the internal adapter.
This is the simplest escalation option -- no third-party credentials, no webhook configuration, no external platform to manage.
How It Works
Bot Flow (Handoff Node)
|
v
OmniBots Internal Adapter
|
v
WorkItem created in agent queue (shared database)
|
v
Redis pub/sub offer event --> Agent Desktop
|
v
Agent accepts --> live conversation begins1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
Unlike external CCaaS integrations (Genesys, 8x8, Amazon Connect, Google CCAI) that make API calls to a remote platform, the OmniBots adapter writes directly to the shared database and delivers real-time events through Redis pub/sub.
imageInternal escalation architecture diagram showing Handoff Node to Internal Adapter, WorkItem creation in database, Redis pub/sub event, and Agent Desktop accepting the work item
Prerequisites
- At least one agent queue configured in the Agent Desktop (a default queue is created automatically)
- One or more agents assigned to the queue and signed in as Online
- No external credentials or platform accounts required
Configuring the Integration
1. Add the Integration in OmniBots
Go to Settings > Integrations > Add Integration and select OmniBots Agent Desktop:
| Field | Description |
|---|---|
| Name | A label for this integration (e.g., "Internal Support Queue") |
| Default Queue | Optional -- the queue to route to when the Handoff node does not specify one |
No credentials are needed. Click Save to create the integration.
2. Use the Integration in a Flow
- Add a Handoff node to your bot flow
- Select the OmniBots integration from the CCaaS Integration dropdown
- Optionally set the Queue (by name or ID) in the routing data -- if omitted, the default queue is used
- Connect the success and failure output handles
Queue Routing
The adapter resolves the target queue using this priority:
| Priority | Source | Example |
|---|---|---|
| 1 | queue_id in routing data | Explicit UUID from a flow variable |
| 2 | queue or queue_name in routing data | Queue name like "Billing" |
| 3 | default_queue in integration config | Configured when setting up the integration |
| 4 | Tenant's default queue | The queue marked is_default in Agent Desktop |
| 5 | First active queue | Fallback to any active queue |
TIP
Use flow variables to route dynamically. For example, set {{selected_queue}} based on the user's issue type and pass it as the queue name in the Handoff node.
Context Data Passed to Agents
When the handoff occurs, the agent sees the following in their work item:
| Data | Description |
|---|---|
| Conversation transcript | Full message history between user and bot |
| AI summary | Auto-generated summary of the conversation so far |
| Intent | Detected user intent or escalation reason |
| Sentiment | Real-time sentiment score at the time of escalation |
| Custom attributes | Any flow variables marked for handoff |
| Contact info | Customer name, email, and phone if available from the contact record |
| Channel | Originating channel (web, SMS, WhatsApp, voice) mapped to work item type |
Channel-to-Work-Item Mapping
| Channel | Work Item Type |
|---|---|
| Web, SMS, WhatsApp | Chat |
| Voice, Phone | Call |
Agent Offer and Accept
When a work item is created:
- The adapter queries the queue for online agents
- The work item is offered to the first available agent
- A Redis pub/sub event notifies the Agent Desktop in real time
- The agent can accept or decline the offer
- If the agent's profile has auto-accept enabled, the work item is assigned immediately
If no agents are online, the work item stays in waiting status until an agent becomes available.
WARNING
If the Handoff node has a timeout configured and no agent accepts within that window, the flow follows the failure path. Design this path to offer alternatives such as leaving a message or trying again later.
Transfers
Agents can transfer a conversation to a different queue from the Agent Desktop. The adapter:
- Records the transfer in the work item's transfer history
- Resets the work item to waiting status in the new queue
- Clears the current agent assignment
- Offers the work item to agents in the new queue
The full conversation context and transcript travel with the transfer.
Capabilities
| Capability | Supported |
|---|---|
| Message history | Yes |
| Typing indicators | Yes |
| File transfer | Yes |
| Queue transfer | Yes |
| Read receipts | No |
| Queue callback | No |
imageAgent Desktop inbox showing an incoming work item from a bot conversation, with conversation transcript, AI summary, detected intent, and sentiment score in the context panel
Testing the Escalation
- Ensure at least one agent is Online in the target queue
- Publish your bot with a flow that includes the Handoff node
- Start a conversation and trigger the escalation path
- Verify the work item appears in the Agent Desktop inbox
- Accept the work item and confirm the conversation transcript is visible
Troubleshooting
| Issue | Resolution |
|---|---|
| Work item not appearing | Verify the agent is Online and assigned to the target queue |
| Escalation fails immediately | Check that at least one active queue exists for the tenant |
| Agent not receiving offer | Confirm the agent's WebSocket connection is active (check browser console) |
| Wrong queue | Verify the queue name in routing data matches an active queue exactly (case-sensitive) |
| Context data missing | Ensure flow variables are set before the Handoff node executes |
Comparison with External CCaaS
| OmniBots Engagement Hub | External CCaaS (Genesys, 8x8, etc.) | |
|---|---|---|
| Setup | No credentials needed | OAuth/API key required |
| Latency | Lowest (direct DB + Redis) | Higher (HTTP API calls) |
| Agent desktop | OmniBots Agent Desktop | External platform's desktop |
| Dependencies | None | External platform account |
| Best for | Teams using OmniBots as their primary agent tool | Teams with existing contact center platforms |
