Loading...
Help Center / Getting Started / Chat App Overview

Chat App Overview

Chat App Overview

Connect your workforce in real time with the Chat App — a full-featured messaging platform for direct messages, group chats, channels, threaded replies, @mentions, emoji reactions, presence indicators, and AI-powered search.


What is the Chat App?

The Chat App is a Pusher-powered real-time messaging platform built into MangoApps Workforce. It provides one-to-one direct messages, multi-person group chats, and channels — all tenant-isolated, searchable, and auditable. Every message, reaction, and mention stays within your organization’s security boundary while giving employees the speed and familiarity of consumer-grade chat.

Core Value Proposition:

  • 💬 Instant Communication — Real-time direct messages, group chats, and channels with typing indicators and read receipts
  • 🔍 Searchable History — Full-text and AI-powered semantic search across every conversation you have access to
  • 👥 Team Collaboration — @mentions, threaded replies, emoji reactions, and file attachments in every room
  • 🛡️ Enterprise Control — Admin-configurable feature toggles, analytics dashboard, and CSV export — all business-scoped

At a Glance

⏱️ Setup Time 🔗 Integrations 📱 Mobile Ready 🖥️ Desktop Client
5 minutes Pusher (real-time) ✅ Yes ✅ Mac & Windows

Perfect For:

  • 🏢 All employees — Quick 1:1 messages and team conversations without leaving the platform
  • 📱 Frontline & mobile workers — Lightweight mobile views for room list, messaging, and mentions
  • 📈 Admins — Company-wide adoption analytics, engagement metrics, and feature control

How It Works

Messaging Flow

┌───────────────────────────────────────────────────────────────────────────────┐
│                           CHAT MESSAGING FLOW                                  │
├───────────────────────────────────────────────────────────────────────────────┤
│                                                                               │
│  ┌──────────────┐         ┌──────────────┐         ┌──────────────┐          │
│  │  START CHAT   │───▶     │ PICK PEOPLE  │───▶     │  ROOM OPENS  │          │
│  │  (1 or 2+)   │         │  (modal)     │         │  (real-time) │          │
│  └──────────────┘         └──────────────┘         └──────────────┘          │
│                                                           │                   │
│                     ┌─────────────────────────────────────┤                   │
│                     │                                     │                   │
│                     ▼                                     ▼                   │
│  ┌──────────────────────────────────┐  ┌──────────────────────────────────┐  │
│  │          1 PERSON = DM           │  │       2+ PEOPLE = GROUP          │  │
│  │  • Single-column layout          │  │  • Two-column with members panel │  │
│  │  • No members panel              │  │  • Room admin manages members    │  │
│  │  • Cannot leave                  │  │  • Add / remove / leave          │  │
│  │  • Reuses existing room          │  │  • Auto-named from member names  │  │
│  └──────────────────────────────────┘  └──────────────────────────────────┘  │
│                                                                               │
│        ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐               │
│        │ Messages │  │ Threads  │  │Reactions │  │  Files   │               │
│        │ & @Mention│  │ (flat)   │  │ (emoji)  │  │ (attach) │               │
│        └──────────┘  └──────────┘  └──────────┘  └──────────┘               │
│                                                                               │
└───────────────────────────────────────────────────────────────────────────────┘

Real-Time Architecture

                              ┌─────────────────┐
                              │    CHAT APP     │
                              └────────┬────────┘
                                       │
         ┌─────────────┬───────────────┼───────────────┬─────────────┐
         ▼             ▼               ▼               ▼             ▼
   ┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐
   │  Pusher   │ │ PostgreSQL│ │   Active   │ │ pgvector  │ │  Desktop  │
   │ (realtime)│ │  (FTS)    │ │  Storage   │ │ (semantic)│ │  Client   │
   └─────┬─────┘ └─────┬─────┘ └─────┬─────┘ └─────┬─────┘ └─────┬─────┘
         │             │             │             │             │
         ▼             ▼             ▼             ▼             ▼
   ┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐
   │  Typing   │ │ Full-text │ │   File    │ │ "Find a   │ │   Mac &   │
   │ indicators│ │  search   │ │ uploads & │ │ message   │ │  Windows  │
   │  presence │ │  keyword  │ │ drag-drop │ │  about…"  │ │   apps    │
   │  receipts │ │  matching │ │           │ │   search  │ │           │
   └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘

Key Features

💬 Direct Messages & Group Chats

Start conversations instantly with anyone in your organization.

Feature Description
Direct Messages (1:1) Private conversations between two people — room is reused if one already exists
Group Chats Multi-person rooms with auto-generated names (comma-joined first names)
Channels Named rooms with a bullhorn icon for broader team communication
Start a Chat Modal Unified modal with people picker — select 1 person for DM, 2+ for group
Room Reuse Starting a chat with someone you already have a DM with opens the existing room
Self-Chat Prevention You cannot create a conversation with only yourself

Use Case: A project lead starts a group chat with three teammates to coordinate a product launch. The room auto-names itself from member names, and the lead becomes room admin.


📝 Messaging & Composer

Rich messaging with threaded replies, reactions, and attachments.

Feature Description
Text Messages Compose with Shift+Enter for newlines; send with the paper-plane button
Threaded Replies Click “Reply” on any message to open an offcanvas thread panel — flat, one-level threads
Emoji Reactions Hover to reveal the reaction picker with 10 supported emojis; click again to remove
File Attachments Paperclip button opens drag-and-drop upload panel with configurable size limits
@Mention Autocomplete Type @ to see matching room members (up to 10 suggestions, excludes yourself)
Message Pagination “Load older” link at the top for cursor-based history loading
Empty Room Prompt New rooms show “No messages yet — say hi.”

Use Case: An engineer replies in a thread to keep the main conversation clean, while a manager reacts with a thumbs-up to acknowledge a status update.

💡 Pro Tip: Use @mentions to ensure teammates get notified — mentioned messages appear in their dedicated Mentions inbox.


⚡ Real-Time Features (Pusher-Powered)

See who’s online, who’s typing, and when messages are read — all in real time.

Feature Description
Online Presence Green dot on avatars in room list and header; presence avatar strip shows who is viewing
Typing Indicators “Alice is typing…” appears below messages when a teammate is composing
Read Receipts “Seen by [name]” on sent messages in DMs and group chats (channels excluded)
Live Message Delivery Messages appear instantly via Pusher broadcast — initially queued (202), then rendered
Heartbeat Keeps presence status up to date as long as the tab is open

Behind the Scenes: Seven background jobs power the real-time pipeline — CreateMessageJob persists and broadcasts via Pusher, UpdateUnreadCountsJob manages badge counts, NotifyMentionedUsersJob creates platform notifications for @mentions, BroadcastReadReceiptJob and BroadcastReactionJob push receipts and reactions to all room members, and EmbedMessageJob / BackfillEmbeddingsJob generate pgvector embeddings for semantic search.

Note: Real-time features require Pusher configuration. Without Pusher, the app still works for all CRUD operations — only typing indicators, read receipts, and presence are degraded.


📋 Mentions Inbox

A dedicated feed of every @mention directed at you across all chat rooms.

Feature Description
Mention Feed Shows sender avatar, name, room context (“in #Engineering”), timestamp, and truncated body
Jump to Message Click any mention to navigate directly to the message in its room (anchor link)
Cursor Pagination “Load older mentions” link when more exist
Empty State “No mentions yet. When someone @mentions you in a chat room, it’ll show up here.”

Find any message across every room you have access to with keyword or AI-powered semantic search.

Feature Description
Keyword Search PostgreSQL full-text search with highlighted <mark> tags on matching terms
Semantic Search AI-powered “find a message about…” mode using pgvector embeddings (admin-enabled)
Filter by Room Dropdown to narrow results to a specific room (default: “All rooms”)
Filter by Sender Autocomplete “From” field to search messages from a specific person
Filter by Date Date range picker scoped to the last 90 days
Thread Badge Thread replies show a blue “reply” badge in results
Jump to Message Each result includes a link to navigate directly to the message in its room
Reset Filters One-click button clears all filters and returns to the clean search page

Use Case: An employee searches for “quarterly budget” filtered to the #Finance channel and last 30 days, instantly finding the relevant discussion thread.

💡 Pro Tip: When Semantic Search is enabled by your admin, switch to “Semantic” mode to find messages by meaning — ask “messages about project deadline changes” instead of guessing exact keywords.


👥 Group Member Management

Room admins control membership; regular members can leave at any time.

Feature Description
Room Admin Role The creator of a group/channel becomes its admin (blue “Admin” badge)
Add Members Room admins click “+” to open the “Add members to group” modal with people picker
Remove Members Room admins click the red user-minus icon to remove a member
Leave Group Any member clicks “Leave group” to exit voluntarily
Sole Admin Guard The last admin cannot leave without promoting another member first
Re-Join Re-adding someone who previously left re-joins them to the room
DM Restriction DMs have no members panel, no add/remove, and no leave button

📊 Analytics & Insights (Admin Only)

Company-wide adoption and engagement metrics with CSV export.

Analytics Dashboard (4 Metric Cards):

Metric Description
Adoption Percentage of employees actively using chat, with 12-week trend chart
DAU/MAU Stickiness Daily active / monthly active ratio with 30-day trend
Cross-Department Communication Percentage of messages crossing department boundaries, with department-pair breakdown
Mention Response Rate Response percentages at 1h, 4h, and 24h thresholds, plus median response time

Export: CSV download with filename chat_analytics_[business_id]_[date].csv containing summary metrics, daily DAU (30 days), adoption trend (12 weeks), and top department-pair message volume.


📈 Personal Dashboard

Every user sees a personal activity dashboard with five widgets.

Widget Description
Active Conversations Count of rooms with both inbound + outbound messages in the past 7 days, with 4-week sparkline
Mention Response Time Your median vs. team median response time to @mentions, with answered mention counts
Download Desktop Client Platform-appropriate button (“Get it on Mac” or “Get it on Windows”) for Messenger
Messaging Hours Heatmap of your messaging activity patterns
Top Conversations List of your most active rooms with trend indicators

Empty State: New users with no activity see “0” for active conversations, “—” for response times, and a helpful info alert explaining that response time will appear once teammates start looping them in.


⚙️ Admin Settings

Admins configure chat features and behaviors for the entire organization. Changes take effect immediately.

Section Toggle/Field Default Description
Messaging features Direct messages ✅ ON Allow users to start 1-on-1 chats
Messaging features Group chats ✅ ON Allow users to create multi-person group chats and channels
Messaging features File uploads ✅ ON Allow users to attach files to chat messages
Attachments Max attachment size (MB) 25 Per-file size limit (range 1–500 MB)
Realtime Typing indicators ✅ ON Show “name is typing…” in rooms
Realtime Read receipts ✅ ON Show “Seen by name” on sent messages
Search Semantic search ❌ OFF Enable AI-powered vector search (requires embeddings backfill)

Runtime Effects:

  • Disabling both DMs and Group chats hides the “Start a Chat” button entirely
  • Disabling File uploads hides the paperclip attachment button in the composer
  • Toggling Typing indicators and Read receipts controls real-time feedback per room

📱 Mobile Access

Chat is available on mobile devices with a streamlined interface optimized for on-the-go messaging.

Feature Description
Room List Browse all conversations with unread indicators
Room View Read and send messages from any room
Mentions View your @mentions feed on mobile
Create Messages Post messages using the same background job pipeline as desktop

Mobile URL: /m/apps/chat — served by dedicated mobile controllers and views with no Stimulus overhead.


🔌 REST API

A full JSON API mirrors every web feature, enabling integrations and custom clients.

Endpoint Group Capabilities
Rooms List, create, show, pin/unpin, mark read, list files
Messages Create, edit (author only), soft-delete (author or room admin)
Members List, add, update role, remove/leave
Threads Fetch parent + replies
Reactions Add/remove emoji reactions
Search Keyword + semantic search with sender autocomplete
Mentions Cursor-paginated mentions feed
Presence Heartbeat + online status (per user or per room)
Settings Read config (any user) + update (admin only)
Pusher Bearer-token channel auth + public config (key/cluster)

Base URL: /api/v1/chat/ — authenticated via Bearer token or session.


🔔 Notifications

Type Description
@Mention Notification Instant notification when someone @mentions you in a chat room
Mentions Inbox Dedicated feed aggregating all your mentions across rooms
Unread Badge Blue pill badge on rooms with unread messages in the room list

User Roles & Permissions

Role Capabilities
Employee View Dashboard, Chats, Search, Mentions; start DMs and groups; send messages, react, reply in threads; search chat history; manage members if room admin
Room Admin All employee capabilities + add/remove members from their group/channel
Admin All employee capabilities + Analytics dashboard, CSV export, Settings configuration

Key Access Boundaries:

  • Employees cannot access Analytics (/apps/chat/analytics → 403 Forbidden)
  • Employees cannot access Settings (/apps/chat/settings → redirect with “Admin access required”)
  • Analytics and Settings tabs are hidden from the sidebar for non-admins
  • All room data is scoped to user membership — direct URL access to non-member rooms returns 403

How We Compare

See how MangoApps Workforce Chat stacks up against leading enterprise messaging solutions:

Feature MangoApps Workforce Slack Microsoft Teams Google Chat
Direct Messages
Group Chats & Channels
Threaded Replies
Emoji Reactions
Typing Indicators
Read Receipts
AI-Powered Semantic Search 💰
Built-in Analytics Dashboard 💰 💰
Unified HR Platform
Admin Feature Toggles
Legend: ✅ Included ❌ Not Available 💰 Paid Add-on ⚡ Limited

Why MangoApps Workforce?

  • 🔗 Unified Platform — Chat works seamlessly alongside Recognition, Performance, Tasks, Workspaces, and 70+ other apps in one system — no switching between tools
  • 💰 No Hidden Costs — Analytics dashboard and semantic search included, not sold as enterprise add-ons
  • 🏢 Multi-Tenant by Design — Every message, room, and search result is automatically tenant-isolated — no configuration needed

Getting Started

For Employees

  1. Navigate to Apps → Chat in the left sidebar
  2. Click “Start a Chat” to begin a DM (select 1 person) or group (select 2+)
  3. Send messages, react with emoji, and reply in threads
  4. Use Search to find past messages by keyword, sender, room, or date
  5. Check the Mentions feed for messages where you were @mentioned

For Administrators

  1. Go to Apps → Chat → Settings to configure feature toggles
  2. Enable or disable Direct Messages, Group Chats, and File Uploads as needed
  3. Set the Max attachment size appropriate for your organization
  4. Toggle Typing indicators and Read receipts based on user preferences
  5. Review Analytics regularly to track adoption and cross-department communication
  6. Export CSV data for executive reporting or external analysis

Best Practices

  • ✅ Use @mentions to direct messages to specific people — they get a dedicated notification
  • ✅ Keep conversations organized by starting group chats for project teams rather than long DM chains
  • ✅ Use threaded replies to keep side discussions out of the main conversation flow
  • ✅ Check the Search page when looking for past decisions or shared links — filter by room and date range for faster results
  • ✅ Admins should review Analytics monthly to identify departments with low adoption and encourage usage
  • ✅ Set reasonable file size limits to prevent storage issues while allowing practical document sharing

Frequently Asked Questions

Q: What happens if I start a chat with someone I already have a DM with?
A: The app automatically opens your existing DM room instead of creating a duplicate — you’ll never have two conversations with the same person.

Q: Can I leave a direct message conversation?
A: No. DMs are permanent 1:1 conversations. You can leave group chats and channels, but not DMs.

Q: Who can add or remove members from a group chat?
A: Only the room admin (the person who created the group). Room admins see a “+” button and remove icons in the members panel. Regular members only see a “Leave group” option.

Q: What does the semantic search toggle do?
A: When enabled by your admin, it adds an AI-powered “Semantic” search mode alongside keyword search. Instead of matching exact words, semantic search understands meaning — so “messages about project deadline changes” finds relevant discussions even if those exact words weren’t used.



The Chat App brings your team’s conversations together in one secure, searchable, real-time platform. Start chatting today.

Ask AI Product Advisor

Hi! I'm the MangoApps Product Advisor. I can help you with:

  • Understanding our 40+ workplace apps
  • Finding the right solution for your needs
  • Answering questions about pricing and features
  • Pointing you to free tools you can try right now

What would you like to know?