Inbox — Reading & Replying to Conversations
Purpose
This page explains how to use the HUPH Inbox to read prospective- student conversations, provide feedback on Aria's (the AI) replies, and take over conversations when the bot isn't enough. Intended for counselors running the daily reply workflow.
Prerequisites
- Logged in — see Getting started
- Role: counselor or higher
- WhatsApp Business Channel active (360dialog) — Telegram and Web channels are no longer used as of April 2026
Steps
1. Open Conversations
Click Conversations in the sidebar. You will see a 3-pane layout:
┌──────────────────────────────────────────────────────────┐
│ [Filter] │ Lead Info │ │
│ │ • Name: Budi S. │ │
│ Convers. │ • Phone: +62812… │ Chat thread │
│ ┌───────┐ │ • Stage: interest. │ │
│ │ Budi │ │ │ Aria : hi there... │
│ │ Siti │ │ [Take Over] │ User : medical fee? │
│ │ Rini │ │ │ Aria : IDR ... │
│ └───────┘ │ │ │
│ │ │ [Reply box ___] │
└──────────────────────────────────────────────────────────┘
Left: conversation list with filters. Middle: lead info + action buttons. Right: chat thread + reply box.
2. Filter conversations
Use filters to show conversations by status:
- Active (green) — in-progress threads
- Pending (yellow) — awaiting response
- Escalated (orange) — already taken over by a counselor (bot paused)
- Closed (gray) — finished threads
3. Open a conversation
Click an item in the left list. You will see lead info in the middle
(name, formatted phone like +62 812 3456 7890, lead stage, cluster
ownership) and the chat thread on the right.
The chat thread shows user messages and Aria's replies. Each bubble
has a small label (Aria or the user name), a time stamp (like
14:32), and the message body.
4. New messages appear in realtime
When a user sends a new message from WhatsApp, it appears in the Inbox
without refresh thanks to the Socket.io connection. Time labels
also auto-update (e.g. 5s → 1m every 30 seconds). If new messages
don't appear, see Troubleshooting below.
5. Feedback on Aria's reply (thumbs)
Under each Aria bubble there are 👍 and 👎 buttons. Click:
- 👍 if the reply is correct and helpful — marks it as a golden example for training/eval
- 👎 if the reply is wrong, incomplete, or misleading — triggers the correction flow
6. Correction — fix Aria's reply
After clicking 👎, a correction panel appears. Type the reply that should have been given. The correction is stored and can later be promoted to a FAQ (see FAQ page for the promote flow).
7. Take Over — claim the thread from the bot
Click the Take Over button in the middle panel when the conversation needs counselor intervention. A ConfirmDialog appears ("Are you sure you want to take over?"). After confirming:
conversations.status→escalatedassigned_agent_id→ you- Aria auto-pauses — no bot replies until released
From here you can type manual replies in the reply box and send to the user via WhatsApp (via the 360dialog backend).
8. Reply manually
Type in the reply box, press Enter to send. The message reaches the user via WhatsApp in about 2 seconds.
Example scenarios
Prospective student asks about medical school fees, Aria answers correctly. User: "How much is the medical school tuition?" → Aria: "Medical school fees 2026/2027: IDR … per semester, plus the application form IDR …". Counselor reads, clicks 👍, moves on. No take-over needed.
Prospective student asks about scholarships, Aria's answer is incomplete. User: "Are there scholarships?" → Aria: "UPH has several scholarships". Counselor clicks 👎 → correction panel → types the full answer covering three scholarship types (merit, economic, alumni) with form links. Correction is saved. Then clicks Take Over → sends the same reply manually to answer the user immediately.
Troubleshooting
New messages don't appear without refresh. Symptom: a user has
sent a message but it doesn't show up; it only appears after a manual
refresh. Cause: Socket.io connection dropped (network or session).
First fix: refresh the page once to reset the connection. If it keeps
happening, contact dev team — they can check
GET /api/v1/health/realtime.
Take Over button missing. Symptom: the "Take Over" button is gone
from the middle panel. Cause: the conversation is already taken over
by another counselor, or you lack the counselor role. Fix: check who
assigned_agent_id is in the middle panel, or verify your role in
Settings.
Reply not delivered — red icon. Symptom: the reply shows a red error icon. Cause: WhatsApp 24-hour session window expired (360dialog restricts outbound replies). Fix: the user must send a message first (initiate a new session), then the counselor can reply.
Time label stuck at "7 hours ago" for very recent events.
Symptom: a new message appears but the time label shows 7 hours ago.
Cause: timezone trigger bug (fixed as of April 2026, but can return if
a new trigger is added without the AT TIME ZONE 'UTC' cast). Fix:
refresh; if it returns, report to dev team.
See also
- FAQ — promote a correction into a permanent FAQ
- Escalation — how cluster ownership and routing work after take-over
- Troubleshooting — more common issues