How conversations flow
What the AI listens for
OpenCX processes conversation events from the Front webhook:| Event | What OpenCX does |
|---|---|
| Inbound message | Creates 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 archived | Marks the OpenCX session as resolved and logs a history entry. |
| Assignment changes | Logged for debugging. No automatic state change. |
| Tags added/removed | Logged for debugging. No automatic state change. |
Who the AI responds to
The AI processes a conversation only when one of these conditions is met:- The conversation is assigned to the AI teammate you selected during setup.
- The conversation is unassigned and Handle unassigned conversations is enabled.
Handoff to your team
When the AI decides it cannot resolve a conversation, it hands off in three steps: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).
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.
AI resolution
When the AI fully resolves a conversation without needing human help: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:- The sender’s handle (email address, phone number, or username) is extracted from the webhook payload.
- OpenCX looks for an existing contact with a matching email.
- If no match is found, a new contact is created with the sender’s name and handle.
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.Related Documentation
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.