Conversation Management (Inbox) Feature¶
Overview¶
The Inbox (/inbox) is the unified messaging center where all customer conversations across channels (WhatsApp Lite, WhatsApp Cloud, Facebook Messenger, Instagram Direct Messages, Telegram, and Email) are managed in one place. It provides real-time messaging, conversation assignment, quick replies, and integration with CRM features. (SMS is broadcast-only and does not appear in the inbox.)
Features¶
1. Unified Conversation List¶
Multi-Channel View: - All conversations in one list - WhatsApp (Lite & Cloud) - Facebook Messenger - Instagram Direct Messages - Telegram - Email
Real-Time Updates: - Live conversation sync - Unread indicators - Last message preview - Contact information (name, avatar, channel badge) - Status indicators (Open/Closed) - Channel badges for visual identification
Filtering Options: - Quick filters by channel type - Quick filters by status (Open/Closed) - Quick filters by message type - Saved filters (persisted per user)
Additional Features: - Search functionality - Bulk actions (clear all conversations) - Refresh control - Split view toggle - Full-screen mode (Esc to exit) - Online agents count and list - "Analyze Interest" conversation analysis - Online/offline connection status indicator
2. Message Thread View¶
Complete Message History: - Full conversation timeline - Real-time message delivery - Message status tracking: - Sent ✓ - Delivered ✓✓ - Read ✓✓ (blue) - Failed ✗ - Pending ⏳
Message Types Support: - Text messages - Images (JPG, PNG, GIF, WebP) - Videos (MP4, MOV, AVI) - Audio files (MP3, WAV, OGG) - Documents (PDF, DOCX, XLSX, etc.) - Location sharing - Contact cards (vCard)
Message Information: - Precise timestamps - Sender information (contact details and channel) - Message actions: - Reply - Forward - Delete - Copy message text - Download attachments - View full details
3. Message Composer¶
Rich Text Input: - Full message composition - Media attachments (upload images, videos, documents) - Quick reply templates - Emoji support (full emoji picker) - Typing indicators - Message scheduling
Channel-Specific Features: - WhatsApp: Templates, media, location - Messenger: Quick replies, buttons - Instagram: Stories, media - Telegram: Stickers, polls
4. Contact Panel¶
Contact Details: - Full contact information (name, email, phone) - Company association - Tags - Custom fields
Contact History: - All past interactions - Related deals - Related tasks - Related notes
Quick Actions: - Send message - Create deal - Create task - Add note - Edit contact - View full profile
5. Conversation Management¶
Conversation Actions: - Assign conversations to team members - Status management (Open/Close conversations) - Add tags to organize conversations - Add notes (internal notes) - Create deal (convert conversation to deal) - Create task (create follow-up task) - Delete conversation - Conversation search
Mobile Optimization: - Responsive layout (optimized for mobile devices) - Touch-friendly interactions - Sheet panels (slide-out panels for mobile) - Swipe actions (gesture-based controls)
6. Quick Replies¶
Features:
- Pre-defined message templates
- Variable substitution
- Category organization
- Quick access (type /)
- Recent replies
- Favorite replies
7. Real-time Updates¶
Real-time Features: - New message notifications - Typing indicators - Message status updates - Conversation status changes - Assignment notifications - Online/offline status
8. Mobile Responsive¶
Mobile Features: - Touch-optimized interface - Swipe actions - Mobile notifications - Offline support - Quick actions menu
Use Cases¶
Use Case 1: Customer Support Agent Responding to Inquiries¶
Scenario: Support agent receives customer inquiry via WhatsApp.
Steps: 1. Agent opens Inbox 2. Sees new unread conversation 3. Clicks on conversation 4. Reads customer message 5. Reviews contact panel for customer history 6. Types response 7. Uses quick reply template if applicable 8. Sends message 9. Marks conversation as assigned to self 10. Updates conversation status if resolved
Expected Outcome: Customer receives timely response, conversation tracked in system.
Use Case 2: Sales Team Managing Lead Conversations¶
Scenario: Sales team receives lead inquiry, needs to qualify and convert.
Steps: 1. Lead message received in Inbox 2. Sales agent assigns conversation to self 3. Reviews contact information 4. Qualifies lead through conversation 5. Adds tags: "Qualified Lead", "Interested" 6. Creates deal from conversation 7. Links deal to contact 8. Updates deal stage based on conversation 9. Schedules follow-up task 10. Closes conversation when deal won
Expected Outcome: Lead qualified, deal created, follow-up scheduled.
Use Case 3: Multi-Channel Customer Engagement¶
Scenario: Customer contacts via multiple channels, needs unified view.
Steps: 1. Customer sends WhatsApp message 2. Customer sends Instagram DM 3. Customer sends email 4. Agent sees all conversations in Inbox 5. Agent identifies same customer across channels 6. Agent merges conversations (if needed) 7. Agent responds via preferred channel 8. Agent maintains context across channels
Expected Outcome: Unified customer view, consistent experience across channels.
Use Case 4: Team Collaboration on Complex Issue¶
Scenario: Complex customer issue requires team collaboration.
Steps: 1. Agent receives complex inquiry 2. Agent assigns conversation to specialist 3. Specialist reviews conversation history 4. Specialist adds internal notes 5. Specialist escalates to manager (via assignment) 6. Manager reviews and responds 7. Manager adds notes with resolution 8. Agent follows up with customer 9. Conversation closed with resolution documented
Expected Outcome: Issue resolved through team collaboration, full history maintained.
Use Case 5: Automated Response with Bot Flow¶
Scenario: Customer inquiry triggers automated bot flow.
Steps: 1. Customer sends message 2. Bot flow automatically triggered 3. Bot sends initial greeting 4. Bot collects customer information 5. Bot provides automated responses 6. Bot escalates to human agent if needed 7. Agent sees conversation with bot history 8. Agent takes over conversation 9. Agent completes customer request
Expected Outcome: Initial interaction automated, seamless handoff to human agent.
Test Cases¶
Test Case 1: Receive Message¶
Test: Verify message reception
Steps: 1. Send test message via WhatsApp to connected number 2. Open Inbox 3. Verify message appears in conversation list 4. Verify unread indicator 5. Click conversation 6. Verify message displayed in thread 7. Verify contact information displayed 8. Verify timestamp correct 9. Verify channel badge displayed
Expected Result: Message received and displayed correctly
Test Case 2: Send Message¶
Test: Verify message sending
Steps: 1. Open conversation 2. Type message: "Hello, this is a test" 3. Click "Send" 4. Verify message appears in thread 5. Verify message status: "Sending" 6. Wait for delivery 7. Verify message status: "Sent" 8. Wait for read receipt (if enabled) 9. Verify message status: "Read"
Expected Result: Message sent successfully with status updates
Test Case 3: Assign Conversation¶
Test: Verify conversation assignment
Steps: 1. Open unassigned conversation 2. Click "Assign" 3. Select team member 4. Confirm assignment 5. Verify conversation assigned 6. Verify assignee sees conversation in "Assigned to me" filter 7. Verify assignment notification (if enabled) 8. Reassign to different team member 9. Verify reassignment works
Expected Result: Conversation assigned and reassigned correctly
Test Case 4: Change Conversation Status¶
Test: Verify status changes
Steps: 1. Open conversation (status: Open) 2. Click "Close Conversation" 3. Verify status changed to "Closed" 4. Verify conversation moved to closed filter 5. Send new message to closed conversation 6. Verify conversation reopened automatically 7. Verify status changed to "Open"
Expected Result: Status changes work correctly, auto-reopen on new message
Test Case 5: Quick Replies¶
Test: Verify quick reply functionality
Steps: 1. Go to Settings → Quick Replies 2. Create quick reply: "Thank you for contacting us!" 3. Open conversation 4. Type "/" 5. Verify quick replies menu appears 6. Select quick reply 7. Verify message inserted 8. Customize if needed 9. Send message 10. Verify message sent correctly
Expected Result: Quick replies work correctly
Test Case 6: Create Deal from Conversation¶
Test: Verify deal creation from conversation
Steps: 1. Open conversation 2. Click "Create Deal" 3. Fill in deal details: - Title: "Deal from Conversation" - Value: 5000 - Stage: "Lead" 4. Save deal 5. Verify deal created 6. Verify deal linked to contact 7. Verify deal linked to conversation 8. Go to Deals page 9. Verify deal appears
Expected Result: Deal created and linked correctly
Test Case 7: Add Note to Conversation¶
Test: Verify note addition
Steps: 1. Open conversation 2. Click "Add Note" 3. Enter note: "Customer requested callback" 4. Save note 5. Verify note appears in contact panel 6. Verify note timestamp 7. Verify note author 8. Edit note 9. Delete note
Expected Result: Notes can be added, edited, and deleted
Test Case 8: Real-time Updates¶
Test: Verify real-time functionality
Steps: 1. Open Inbox in Browser A 2. Open Inbox in Browser B (different user) 3. Send message from Browser A 4. Verify message appears in Browser B without refresh 5. Assign conversation in Browser A 6. Verify assignment updates in Browser B 7. Close conversation in Browser A 8. Verify status updates in Browser B
Expected Result: Real-time updates work across multiple clients
Test Case 9: Multi-Channel Conversation¶
Test: Verify multi-channel support
Steps: 1. Create conversation via WhatsApp 2. Send message via WhatsApp 3. Create conversation via Messenger (same contact) 4. Verify both conversations appear 5. Merge conversations (if feature available) 6. Send message via Messenger 7. Verify message appears in merged conversation 8. Verify channel badges displayed
Expected Result: Multi-channel conversations handled correctly
Test Case 10: Message Search¶
Test: Verify message search functionality
Steps: 1. Create conversation with multiple messages 2. Use search in conversation 3. Search for specific text 4. Verify matching messages highlighted 5. Navigate between matches 6. Search across all conversations 7. Verify search results displayed
Expected Result: Message search works correctly
Test Case 11: Attachment Handling¶
Test: Verify attachment support
Steps: 1. Open conversation 2. Click "Attach File" 3. Select image file 4. Upload attachment 5. Verify attachment uploaded 6. Send message with attachment 7. Verify attachment displayed in thread 8. Download attachment 9. Verify download works 10. Test with different file types (PDF, video, audio)
Expected Result: Attachments handled correctly for all supported types
Test Case 12: Conversation Filtering¶
Test: Verify filtering functionality
Steps: 1. Create multiple conversations: - Open, assigned - Open, unassigned - Closed - Different channels 2. Filter by status: "Open" 3. Verify only open conversations shown 4. Filter by assignee 5. Verify only assigned conversations shown 6. Filter by channel 7. Verify only selected channel shown 8. Combine filters 9. Verify combined filter works
Expected Result: All filters work correctly individually and combined
API Integration¶
List Conversations¶
Endpoint: GET /rest/v1/conversations
Query Parameters:
- organization_id - Filter by organization
- status - Filter by status (OPEN/CLOSED)
- assignee_id - Filter by assignee
- channel_account_id - Filter by channel
Response:
{
"conversations": [
{
"id": "conv-uuid",
"contact_id": "contact-uuid",
"channel_account_id": "channel-uuid",
"status": "OPEN",
"last_message_at": "2025-01-15T10:30:00Z",
"contact": {
"first_name": "John",
"last_name": "Doe"
}
}
]
}
Send Message¶
Endpoint: POST /functions/v1/whatsapp-lite-send
Request:
{
"to": "201001383533",
"message": "Hello!",
"organizationId": "org-uuid",
"conversationId": "conv-uuid"
}
Assign Conversation¶
Endpoint: PATCH /rest/v1/conversations?id=eq.{conversation_id}
Request:
Best Practices¶
- Response Time
- Respond within SLA (e.g., 24 hours)
- Use quick replies for common responses
-
Set up automation for after-hours
-
Organization
- Assign conversations promptly
- Use tags for categorization
- Close resolved conversations
-
Add notes for context
-
Communication
- Use appropriate channel for customer
- Maintain professional tone
- Be concise and clear
-
Follow up when promised
-
Efficiency
- Use quick replies for common questions
- Create templates for frequent scenarios
- Use automation for routine tasks
-
Batch similar responses
-
Quality
- Review before sending
- Check spelling and grammar
- Verify customer information
- Document important details
Troubleshooting¶
Messages Not Appearing¶
Issue: Messages not showing in inbox
Solutions: - Check channel connection status - Verify webhook configuration - Check message filters - Refresh inbox - Check real-time connection
Messages Not Sending¶
Issue: Messages fail to send
Solutions: - Check channel connection - Verify message format - Check rate limits - Review error messages - Test channel separately
Real-time Updates Not Working¶
Issue: Updates not appearing in real-time
Solutions: - Check browser connection - Verify WebSocket connection - Refresh page - Check Supabase real-time status - Review browser console
Related Documentation¶
Last Updated: January 2025