Workspace Care Inbox & AI Copilot
The unified customer communication hub. Manage real-time WhatsApp conversations, enforce Meta's 24-hour customer service window, collaborate with AI smart suggestions, dispatch media attachments, and take over chats seamlessly.
1. Purpose of the Page
The Workspace Care Inbox is the primary interface for customer service teams and human agents. It provides a real-time, WebSocket-connected chat environment that integrates directly with Meta Cloud API v20.0. Agents can monitor AI bot interactions, review sentiment classifications, inspect conversation session timers, and reply via free-form text, media files, or pre-approved Meta message templates.
2. Who Uses It (Target Roles)
Handles inbound customer questions, escalations, troubleshooting, and order inquiries.
Engages with warm leads generated from broadcast campaigns and updates CRM lead statuses.
Monitors AI accuracy, intervenes in negative sentiment threads, and manages agent workload.
Interactive Visual Preview
Hi, I need help downloading my GST tax invoice for the enterprise renewal.
Hello Aarav! I have retrieved your GST invoice for order #8492. You can download the PDF directly below.
Directly search indexed policies and product documentation to draft answers.
3. Step-by-Step: Operating the Live Inbox
- Select an Active Conversation: Click on any thread from the left conversation list. Threads are sorted with the most recent messages on top and include unread counters and sentiment tags.
- Verify 24-Hour Session Status: Check the session countdown badge in the chat header. If the window is open (
Active session), free-form text and attachments can be dispatched. If expired, you must choose a Meta-approved template. - Toggle AI Auto-Reply vs. Human Takeover: If the bot is actively conversing and you wish to reply manually, click Take Over. This pauses Gemini auto-responses so you can guide the customer directly without conflicting bot replies.
- Send Media Attachments: Click the paperclip icon (📎) to attach images (PNG/JPEG), PDFs, videos (MP4), or audio. NotifyIQ uploads the file to server storage and dispatches a Meta Cloud API media payload.
- Send Pre-Approved Meta Templates: If the 24-hour window has expired or you need to send an authenticated notification, click Send Template, select an approved template, fill in dynamic variables (
{{1}}), and click Send.
4. Fields, Controls & Modals Reference
| Control / Field | Component | API Route | Operational Purpose |
|---|---|---|---|
| Take Over / Reactivate AI | Header Toggle | POST /api/conversations/:id/toggle-ai | Switches the thread state between autonomous Gemini bot handling and human agent control. |
| 24h Session Window | Header Countdown | windowExpiresAt | Calculates remaining time under Meta customer care policy (24 hours from the customer's last inbound message). |
| Text Input Field | Chat Footer | POST /api/messages/send | Dispatches standard text message to Meta Cloud API endpoint /v20.0/{phone_number_id}/messages. |
| Media Attachment Modal | Modal Dialog | POST /api/messages/media | Uploads multipart/form-data with mime-type validation and dispatches document/image/video to WhatsApp. |
| Template Picker Modal | Modal Dialog | POST /api/messages/send-template | Enables out-of-session communication with pre-approved Meta Cloud API templates and parameter interpolation. |
| RAG Assistant Query | Knowledge Tab | POST /api/ai/query | Performs MongoDB vector similarity search and returns synthesized answer with document citations. |
5. Behind the Scenes: Meta Platform Architecture
The live inbox relies on a bidirectional event pipeline between Meta Cloud API v20.0, Redis WebSockets, and MongoDB:
- 24-Hour Care Window Rule: Per Meta Platform Policy, businesses can only send free-form replies within 24 hours of the user's last inbound message. Each inbound message resets
windowExpiresAt = Date.now() + 24 * 3600 * 1000. - WebSocket Broadcast: When an inbound message arrives, BullMQ processes it and notifies all active browser tabs in that workspace via WebSocket event
message:new, appending the chat bubble in real time without refreshing. - Message Delivery Receipts: As Meta delivers the message to the user's phone, webhook events update message status from
senttodelivered(two grey checks) andread(two blue/green checks).
6. Common Errors & FAQs
More than 24 hours have passed since the customer last messaged. WhatsApp policy restricts outbound communication outside the 24-hour window to approved Meta Message Templates. Click “Send Template” to re-open the conversation.
No. When you send a manual message or click “Take Over”, the conversation sets isHumanTakeover: true, which immediately mutes the Gemini AI auto-reply engine for that specific thread until you manually reactivate it.
NotifyIQ supports standard Meta media formats: JPEG, PNG, MP4 video, PDF, and audio (AAC, MP3). Files are streamed using POST /v20.0/{phone_number_id}/messages with direct media object payloads.