Reflect new messages and operational changes without a manual refresh

An operator's open Inbox reflects new messages, status changes, tag changes and assignment changes as they happen, without a page reload.

When this happens: Any operational change to a conversation within the operator's scope — new message, status, tag, assignment, follow-up.

How it works

  • EasyCRM sends a new WhatsApp message.
  • Appends the message and updates the conversation's last-message preview and last-activity time.
  • Broadcasts the change to every connected client in scope.
  • Every open Inbox client refetches its current view page; the row's preview text, last-activity time, and unread marker update in place, without disturbing the operator's scroll position or open conversation.
  • If the changed conversation is the one currently open, the conversation panel also updates live, with the new message appended.

Other paths

Reconnect after a dropped connection

The real-time connection drops and automatically reconnects. System rejoins the operator's groups and performs one refetch of the current view and any open conversation to resynchronize anything missed while disconnected.

If something goes wrong

Real-time connection unavailable

The real-time connection cannot be established, e.g. A blocked WebSocket. The Inbox shows a Live updates unavailable — reconnecting indicator; the list still loads and can be refreshed manually until the connection recovers.

Good to know

  • No polling fallback substitutes for the real-time push. (FR-23-007, BRD §9)
  • Broadcast payloads carry an id and a change kind only; clients always refetch through the permission-checked API.