Overview
Real-time messaging ensures instant communication between your team and customers with no delays or page refreshes required.Messages appear instantly for both agents and customers, providing a seamless chat experience.
How It Works
Real-time updates are powered by WebSocket connections:Features
Instant Delivery
Messages appear within 2 seconds
Typing Indicators
See when customers are typing
Read Receipts
Know when messages are read
Presence Status
See who’s online in your team
Live Updates
Conversation status changes instantly
No Refresh Needed
Everything updates automatically
Message Delivery
Inbound Messages
When a customer messages you:- Received (< 1s): WhatsApp delivers to your webhook
- Processed (< 1s): System processes and stores message
- Broadcasted (< 500ms): Sent to all connected agents via WebSocket
- Displayed (instant): Appears in assigned agent’s inbox
Outbound Messages
When an agent sends a message:- Sent (instant): Message submitted from inbox
- Queued (< 100ms): Added to sending queue
- API Call (< 500ms): Sent to WhatsApp Business API
- Delivered (1-3s): WhatsApp delivers to customer
- Status Update (instant): Delivery status shown to agent
Typing Indicators
See real-time typing status:Read Receipts
Track message status in real-time:| Status | Icon | Meaning |
|---|---|---|
| Sending | ⏱️ | Message being sent |
| Sent | ✓ | Delivered to WhatsApp |
| Delivered | ✓✓ | Received by customer |
| Read | ✓✓ (blue) | Customer opened message |
| Failed | ❌ | Send failed |
Presence & Availability
Agent Presence
- Active typing → Online
- No activity 5 min → Away
- No activity 30 min → Offline
- Browser closed → Offline
Customer Presence
See when customers were last active:Live Conversation Updates
All changes sync instantly across team members viewing the same conversation:- Messages: New messages appear automatically
- Assignments: See who’s assigned in real-time
- Status: Conversation status updates instantly
- Tags: Tag additions/removals sync
- Notes: Internal notes appear for team
- Typing: See who’s typing a response
Connection Management
Automatic Reconnection
If connection is lost:- Try immediately
- Wait 2s, try again
- Wait 4s, try again
- Wait 8s, try again
- Wait 16s, try again
- If still failing, switch to polling
Fallback to Polling
If WebSocket unavailable:Performance Optimization
Message Batching
Multiple rapid messages are batched:Smart Loading
Technical Details
WebSocket Connection
Event Types
| Event | Trigger | Data |
|---|---|---|
message.new | New message received | Message object |
message.sent | Message sent successfully | Message ID, status |
message.read | Customer read message | Message ID, timestamp |
conversation.updated | Status/assignment changed | Conversation object |
user.typing | User is typing | User ID, conversation ID |
user.presence | User status changed | User ID, status |
Troubleshooting
Messages delayed or not appearing
Messages delayed or not appearing
Possible causes:
- WebSocket connection failed
- Browser blocking WebSocket
- Network firewall issues
- Check browser console for errors
- Verify WebSocket URL is accessible
- Check if fallback polling is active
- Refresh browser/clear cache
Frequent disconnections
Frequent disconnections
Possible causes:
- Unstable internet connection
- Load balancer timeout
- Browser throttling inactive tabs
- Check internet stability
- Increase server timeout settings
- Keep inbox tab active
- Use desktop app (if available)
Best Practices
Stable Connection
Ensure reliable internet for real-time updates
Active Tab
Keep inbox tab active for best performance
Modern Browser
Use latest Chrome, Firefox, or Safari
Monitor Status
Watch connection indicator