Communication
Notices and messaging
School notices with scheduled publish, audience email, messages, and conversations.
Communication guide for day and boarding schools.
Last updated August 29, 2026
Notices broadcast to roles or classes appear on dashboards and the notices feed. Use scheduledPublishAt when a notice should go live later - audience email and in-app delivery run on publish. Messages are staff-sent formal mail; conversations support staff-student chat with school-configurable controls.
The three channels differ in who starts them and who can answer. Notices are broadcast and nobody replies. Messages are addressed mail that only staff can originate, so a parent can read and receive but never open a new thread. Conversations are live chat where students and parents can take part if school policy allows it. Pick the channel by the answer you want back, because moving a discussion between them later means retyping it.
- /notices - create, schedule, publish, and target audiences (optional audience email)
- /messages - formal inbox (send: teachers, support staff, admins; others receive only)
- /conversations - channel-based chat (poll-based refresh for pilot; WebSockets deferred)
- /notifications - user notification center with role-aware deep links
- /settings/message-templates - admin email/message templates
- /settings/notifications - per-user preference toggles
Notices
- Audience is one of ALL, STUDENTS, STAFF, PARENTS, or SPECIFIC. Choosing SPECIFIC requires at least one class, and class selection is rejected for any other audience.
- Category and priority are separate fields. Priority is LOW, NORMAL, HIGH, or URGENT, and only affects presentation plus the SMS counter.
- A notice can publish now or carry a future publish time, never both. A scheduled time in the past is rejected outright.
- An expiry date can be set so the notice drops off the feed without anyone having to delete it.
- Publishing sends an in-app alert to everyone in the audience who has not switched off general notices, then emails those who also allow email and have an address on file.
- Email failures are written to a notification dead-letter queue rather than being silently discarded, so a bad mail configuration is visible afterwards.
Messages
- Composing is limited to staff and administrator accounts, which covers Teacher, Admin, Principal, Vice Principal, Platform Admin, and the Support Staff roles. Students, parents, and vendors receive only.
- A bulk send picks an audience of staff, students, parents, one class of students, or one class of parents, and /api/messages/audience previews how many people that reaches before you send.
- One send is capped at 500 recipients. Above that the API refuses and tells you to narrow the group or use a notice instead.
- A bulk send writes one message row per recipient, so replies stay one-to-one rather than becoming a group thread.
- A reply must go to exactly one person, and only to the other participant in a thread you are already part of.
Who owns it
| Action | Who |
|---|---|
| Create, edit, schedule, and publish notices | Staff and administrator accounts, including the Teacher role. Students and parents cannot. |
| Read the notices feed | Everyone, scoped to the audiences that apply to them |
| Send messages and bulk sends | Staff and administrators only |
| Manage message templates | School leadership and office Admin, plus staff who sit on a committee |
Templates and preferences
Reusable wording lives at /settings/message-templates in three categories - fees, admissions, and general - each with a title, subject, and body. Template variables are validated on save and the template version is bumped, so a template that references an unknown placeholder is caught at edit time instead of at send time. Individual recipients control what reaches them at /settings/notifications; those toggles are read when a notice is published.
Common questions
Quick answers in plain language.
What is the difference between a notice and a message?+
A notice is a one-way broadcast to an audience - all users, students, staff, parents, or named classes - and it fans out to in-app alerts and email on publish. A message at /messages is addressed mail between named people with a subject line and a reply thread. Use notices for announcements and messages when you need a record of a conversation with one family.
Can I turn off the email when publishing a notice?+
Not per notice. Publishing always attempts email to recipients who have an address and have not switched off email or general notices in /settings/notifications. If a school does not want notice email at all, that has to be handled through those user preferences.
Do urgent notices send an SMS?+
No. For HIGH and URGENT notices the code counts the users who opted into SMS and logs the number, but no SMS is dispatched. There is no SMS provider wired in.
A scheduled notice did not go out. What went wrong?+
Scheduled publish is a cron step, not a timer in the app. POST /api/notices/cron/publish-scheduled is included in scripts/run-school-cron.sh, so the notice stays scheduled until that script runs with FEES_CRON_SECRET set.
Related searches
School leaders and IT teams often search for: how to notices and messages in school management software, best parent communication app schools for K-12 schools, Schoolyi notices and messages guide, school notice board software, school announcement system, and parent messaging platform schools.

