Chat Screens
Last updated on 2026-05-31
The Help Desk Kit includes 4 chat screens for real-time customer communication, queue management, conversation history, and chatbot configuration. All screens live under the /chat/ route within the (app) route group.
Chat Console
Route: /chat
Real-time chat workspace with a three-panel layout for managing live customer conversations.
Left Panel -- Conversation List
- Active conversations list -- each entry shows customer avatar, name, latest message preview, unread count badge, waiting time indicator, and priority dot
- Sorting -- sorted by waiting time (longest first) by default
- Search and filter -- search by customer name and filter by status or channel
Center Panel -- Chat Window
- Message bubbles -- customer messages left-aligned, agent replies right-aligned with avatars
- Typing indicator -- animated dots when the customer is typing
- File sharing -- inline file sharing with thumbnail previews
- Emoji picker -- emoji selection panel
- Message composer -- rich text input with attachment button, canned response shortcut (type
/to search), and transfer button - Chat info bar -- top bar showing customer name, company, previous tickets count, and CSAT score
Right Panel -- Customer Context
- Customer context card -- profile summary with recent tickets, recent purchases, and internal notes
- Suggested canned responses -- AI-powered suggestions based on the current conversation context
- Knowledge base suggestions -- relevant articles surfaced automatically based on conversation content
- Quick actions -- create ticket from chat, escalate to supervisor, transfer to another agent
Key Components
import { ConversationList } from "@/components/chat/conversation-list"
import { ChatWindow } from "@/components/chat/chat-window"
import { CustomerContext } from "@/components/chat/customer-context"
Data Sources
| Data | Source | Location |
|---|---|---|
| Conversations | chatConversations |
data/seed.ts |
| Messages | chatMessages |
data/seed.ts |
| Customer data | customers |
data/seed.ts |
Chat Queue
Route: /chat/queue
Manage incoming chat requests with wait time monitoring and agent assignment.
- Queue list -- sorted by wait time with each entry showing:
- Customer avatar and name
- Initial message preview
- Wait time indicator (color-coded: green < 1 min, yellow 1-3 min, red > 3 min)
- Channel badge (website/mobile/social) via
ChannelBadge - Priority indicator via
PriorityBadge
- Queue actions -- accept (assigns to current agent), transfer (to specific agent or team), auto-assign
- Metrics bar -- top row showing chats in queue, average wait time, agents available, and current load distribution
- Agent availability panel -- right panel listing agents with status indicators and current chat count
- Auto-assignment rules -- summary of assignment rules at the bottom
Key Components
import { QueueEntry } from "@/components/chat/queue-entry"
import { AgentAvailability } from "@/components/chat/agent-availability"
import { ChannelBadge } from "@/components/shared/channel-badge"
Chat History
Route: /chat/history
Browse and search past chat conversations with full transcript access and analytics.
- Search and filters -- search by customer name, agent name; filter by date range, satisfaction rating, and tags
- Results list -- each entry shows customer name and avatar, agent name, start/end time, duration, message count, CSAT rating (stars via
SatisfactionStars), and tags - Transcript view -- click to open full transcript in a side panel showing all messages chronologically, internal notes marked separately, file transfers, and timestamps
- Export options -- export individual transcripts or bulk export as PDF or CSV for compliance
- Analytics sidebar -- average chat duration, average CSAT, and busiest hours chart
Key Components
import { HistoryFilters } from "@/components/chat/history-filters"
import { HistoryTable } from "@/components/chat/history-table"
import { SatisfactionStars } from "@/components/shared/satisfaction-stars"
Chatbot Builder
Route: /chat/chatbot
Visual flow builder for configuring automated chat responses and triage workflows.
- Flow canvas -- main drag-and-drop canvas with node types:
- Greeting -- entry point node for the conversation
- Question -- captures user input
- Menu -- presents selectable options to the user
- Answer -- sends an automated response
- Handoff -- transfers the conversation to a human agent
- Condition -- branches the flow based on user input or data
- Node connections -- drag lines between nodes to define the conversation flow
- Node editor -- right panel for configuring each node: message text, variables, conditions, and routing
- Top toolbar -- save, publish, test (opens chat simulator), and version history buttons
- Flow list sidebar -- left sidebar listing all flows (Welcome Flow, FAQ Flow, Triage Flow, etc.) with status badges (active/draft)
- Test panel -- simulated chat window to test the flow in real time before publishing
Key Components
import { FlowCanvas } from "@/components/chat/flow-canvas"
import { FlowList } from "@/components/chat/flow-list"
import { NodeEditor } from "@/components/chat/node-editor"
Data Sources
| Data | Source | Location |
|---|---|---|
| Chatbot flows | chatbotFlows |
data/seed.ts |
| Flow nodes | chatbotNodes |
data/seed.ts |
Next Steps
- Reports Screens -- performance dashboards and satisfaction analysis
- Team Screens -- team management, scheduling, and workload
- Dashboard Screens -- agent dashboard and command center