Skip to main content
Once your Front workspace is connected, OpenCX listens for conversation events via webhook and processes them in real time. This page covers the shared flow that applies to every channel — see the channel pages for per-channel specifics.

How conversations flow

What the AI listens for

OpenCX processes conversation events from the Front webhook:
EventWhat OpenCX does
Inbound messageCreates a session (or continues an existing one) and generates an AI reply.
Outbound (teammate reply)Skipped to avoid duplicate processing. The AI does not respond to teammate-sent messages.
Conversation archivedMarks the OpenCX session as resolved and logs a history entry.
Assignment changesLogged for debugging. No automatic state change.
Tags added/removedLogged for debugging. No automatic state change.

Who the AI responds to

The AI processes a conversation only when one of these conditions is met:
  1. The conversation is assigned to the AI teammate you selected during setup.
  2. The conversation is unassigned and Handle unassigned conversations is enabled.
Conversations assigned to other teammates are ignored — the AI does not interfere with your reps’ work.

Handoff to your team

When the AI decides it cannot resolve a conversation, it hands off in three steps:
1

Post an internal comment

OpenCX posts an internal comment to the Front conversation. The comment contains:
  • Summary of what the customer asked and the conversation so far.
  • Sentiment detected from the customer’s messages (e.g. frustrated, neutral, positive).
Your rep sees this immediately when they open the conversation.
2

Unassign the conversation

The AI teammate is removed from the conversation. The conversation enters your team’s unassigned queue, where your routing rules or reps can pick it up.
3

Session stays open

The OpenCX session remains open so the human rep’s replies are tracked. The conversation history stays intact for reporting and audit.

AI resolution

When the AI fully resolves a conversation without needing human help:
1

Post a resolution note

OpenCX posts an internal comment with the resolution summary and sentiment.
2

Archive the conversation

The conversation is in Front. Your team can still find it in the archived view and reopen it if needed.
The AI only archives conversations it owns. If the conversation has been reassigned to a human rep, the AI checks the current assignee and skips the archive step.

Tags

OpenCX can sync session tags to Front conversations. Tags are created in Front if they don’t already exist, then applied to the conversation. Your team can use these tags to:
  • Filter Front views by AI-handled conversations.
  • Build analytics rules and reports.
  • Route conversations based on AI-applied tags.

Contact resolution

When a customer sends the first message, OpenCX resolves their identity:
  1. The sender’s handle (email address, phone number, or username) is extracted from the webhook payload.
  2. OpenCX looks for an existing contact with a matching email.
  3. If no match is found, a new contact is created with the sender’s name and handle.
This ensures every conversation is linked to a contact for reporting and continuity across sessions.

Deduplication

OpenCX deduplicates inbound messages by content hash with a 24-hour window. If Front retries a webhook delivery or sends a duplicate event, the second instance is silently dropped.

Connect Front

API token, webhook, teammate selection, and settings.

Knowledge Sync

Train the AI on your Front Help Center articles.

Channels

Per-channel details for Email, Chat, SMS, and Phone.

Troubleshooting

Handoff not firing, AI not replying, duplicate messages.