Skip to content

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: 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:

{
 "assignee_id": "user-uuid"
}


Best Practices

  1. Response Time
  2. Respond within SLA (e.g., 24 hours)
  3. Use quick replies for common responses
  4. Set up automation for after-hours

  5. Organization

  6. Assign conversations promptly
  7. Use tags for categorization
  8. Close resolved conversations
  9. Add notes for context

  10. Communication

  11. Use appropriate channel for customer
  12. Maintain professional tone
  13. Be concise and clear
  14. Follow up when promised

  15. Efficiency

  16. Use quick replies for common questions
  17. Create templates for frequent scenarios
  18. Use automation for routine tasks
  19. Batch similar responses

  20. Quality

  21. Review before sending
  22. Check spelling and grammar
  23. Verify customer information
  24. 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



Last Updated: January 2025