Messaging¶
Messaging is direct one-to-one or small-group conversations between admins and residents — the kind of thing you'd otherwise do over a group chat but with a proper audit trail and links to the billing/maintenance records being discussed.
What residents see¶
Residents see a Messages tab:
- Inbox — conversations with management or staff.
- New conversation — start a chat with management. They can pick a topic (Billing, Maintenance, Parking, General) which routes the conversation to the right person/team.
- Reply — text + up to 5 image attachments per message (configurable per facility; default 5; max ~5 MB each).
- Resolved — once management marks the thread resolved, it moves to Archived but the resident can re-open by replying.
Conversations are linked to the relevant record where possible — a billing question links back to the specific invoice; a maintenance issue links to the ticket — so context is one click away.
What facility admins do¶
Inbox triage¶
The Messages module shows: - Unread — needs attention - Open — replied to but conversation is still active - Resolved — closed - Archived — older conversations, kept for the audit trail
Each conversation shows the resident, the unit, the topic, and the last message. Click to open the full thread.
Multi-admin conversations¶
You can add a participant mid-thread (e.g. loop in the bookkeeper for a billing question). The added person sees the full history and can reply. The resident sees who's now in the conversation.
Inversely, you can remove yourself if the conversation is now in someone else's territory.
Topic routing¶
Settings → Messaging → Topic Routing lets you direct each topic to a default recipient: - Billing → bookkeeper - Maintenance → maintenance manager - Parking → security supervisor - General → facility admin
This way residents don't have to know who's responsible for what — the system routes the question to the right person.
File attachments¶
Each message can carry up to 5 image attachments (JPEG / PNG / WebP / GIF) at up to ~5 MB each. Both caps are per-facility-configurable (Settings → Facility → Photo storage). Files are stored encrypted at rest and signed-URL-served on the wire; the upload pipeline is the same as the maintenance + support-ticket photo flow, so existing operator guidance about that flow applies here too.
Notifications¶
Messages trigger notifications on the recipient's preferred channels (email, push, Telegram). Set channel priority in Settings → Notification Preferences — most facilities default push or Telegram first because residents see them faster than email.
Messaging vs Broadcast vs Community¶
- Messaging (this module) — private one-to-one or small-group. Visible only to participants.
- Broadcast — facility-wide announcements from management to all residents. One-way.
- Community — resident-to-resident discussion forums. Public to all residents.
If you need to tell every resident "water will be off Saturday" — use Broadcast. If a single resident is asking why their last invoice was higher than expected — use Messaging.
Tips¶
- Link the record when starting a billing conversation — pin the specific invoice. Residents and admins both see it inline, fewer back-and-forths to clarify "which charge are we discussing?"
- Mark resolved promptly — leaving threads "open" forever clutters your inbox. Resolved threads still re-open if the resident replies.
- Use topic routing aggressively — residents shouldn't have to guess who handles parking complaints.
- Audit trail — every message is logged with timestamp + author. Useful when there's a dispute about "I told you about that leak two weeks ago".
Process flows¶
End-to-end procedures the mgmt team runs day-to-day. Steps are anchored to the actual UI labels.
Start a conversation with a resident¶
Mgmt-initiated thread (e.g. following up on a complaint, a billing query, a maintenance schedule confirmation).
- Messages panel → + New conversation.
- Pick the resident (autocomplete by name, unit, or phone).
- Pick a topic from the dropdown (Billing / Maintenance / Visitors / Parking / HOA / Other) — drives routing rules + report categorisation.
- Subject + first message (free text + up to 5 image attachments, per the per-facility cap).
- Send — resident receives email + push + Telegram (per their notification preferences). The thread appears in their inbox.
Resolve a conversation¶
When a thread's outcome has been agreed.
- Open the thread → Resolve.
- Pick a resolution category (Resolved / No-action-needed / Escalated / Duplicate).
- Optional resolution note (visible only to mgmt; the resident sees the thread marked as resolved).
- Confirm — thread moves out of the active inbox into Resolved. If the resident replies, the thread automatically re-opens with a banner.
Add a participant to a group thread¶
When a conversation needs another resident, staff member, or board member looped in.
- Open the thread → Participants drawer (right panel).
- + Add participant → pick from the dropdown.
- New participant sees the full message history starting from the moment they were added (older messages stay private to the original participants for confidentiality — this is intentional and audit-logged).
- The thread's notification routing updates — added participant gets push + email on every subsequent message.
- To remove a participant, ⋯ next to their row → Remove. They retain access to messages they were already part of; new messages are no longer visible to them.