Skip to content

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. 5s1m 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.statusescalated
  • assigned_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