Communication & Engagement
The unified communication platform: notifications, announcements, real-time messaging, surveys and polls, communication analytics, and WhatsApp integration are available today on the Basic tier. Elite adds a Gemini-backed AI Translation Engine, an AI Communication Copilot for staff, and a live-data-grounded AI Parent Assistant reachable from the web app, mobile app, and WhatsApp.
Basic Tier Features
BasicNotifications
- Multi-channel delivery: in-app, Web Push (VAPID), email, and native mobile push (FCM)
- Real-time delivery over Socket.io to every connected session (room per user)
- Read/unread tracking with per-user pagination and unread counts
- Web UI: /dashboard/notifications · Mobile: shared notification center screen per role
Announcements & Notices
- Targeted by role, course, class, or specific user, with pinning and expiry
- Category (Information/Event/Holiday/Exam/Meeting/Urgent) and priority tagging
- File attachments via Cloudinary upload
- Admin/Teacher UI: notices list + create form · Mobile: broadcast screen for admins
Messaging & Conversations
- Real-time one-to-one messaging via Socket.io, with file/image attachments
- Direct parent ↔ teacher/admin conversations, decoupled from any specific course — New
- Admin monitoring: join/leave a conversation, flag messages, mute conversations
- Web UI: /dashboard/{role}/messages · Mobile: per-role chat screens
Surveys & Polls — New
- Build multi-question surveys or quick polls with text, single-choice, multiple-choice, or rating questions
- Targeted by role, course, class, or specific user, same audience model as Notices
- One response per user enforced; aggregated results with per-question breakdown
- Web UI: /dashboard/admin/surveys · Mobile: survey list + response screens
Communication Analytics — New
- Delivery: notifications sent, read rate, breakdown by type
- Engagement: daily read-rate trend, message volume, average messages per conversation
- Channel adoption: email, web push, mobile push, WhatsApp
- Language: preferredLanguage distribution across users
- Admin UI: /dashboard/admin/communication-analytics
WhatsApp Integration
- WhatsApp Business messaging via the SendZen API — notices, fee reminders, attendance alerts
- Menu-driven self-service flows: notices, fee reminders, attendance, progress reports, AI engagement reports, message-the-teacher, hardware consent responses, timetable, bus location & ETA (New) — all fully self-serve with no portal/app login required
- Bus location (option 10) replies with driver/bus/child pickup-dropoff status plus a tap-to-open Google Maps link, and a native WhatsApp location pin when the driver has an active trip in progress (New)
- Language selection on first contact (English, Hindi, Telugu, Tamil, Kannada) — parents can switch anytime by replying 9 or "language"; the full menu and every reply render in the chosen language
- Multi-child support: parents with more than one linked child are prompted to pick which child before attendance, reports, timetable, or teacher messaging
- Admission-inquiry flows for prospective parents who aren't yet registered users
Elite Tier Features
EliteAI Translation Engine
- On-demand translation via POST /api/communication-ai/translate
- Real-time messages auto-translate when sender/receiver preferredLanguage differ — delivered over Socket.io as message-translated
- Notices translate on demand via GET /api/notices/:id/translate, cached on the Notice document
AI Communication Copilot
- Drafts announcements and reminders from a topic — pre-fills the notice creation form for staff to review
- General Q&A copilot for communication drafting help
- Admin UI: /dashboard/admin/communication-copilot
AI Parent Assistant & WhatsApp AI Fallback
- Personalised answers about a child's attendance, fees, and recent notices, grounded in live data — never invents figures
- Free-text WhatsApp messages that don't match a menu command fall through to the same assistant for Elite schools
- Web UI: /dashboard/parent/ai-assistant · Mobile: (parent)/ai-assistant
Elite Tier — Still Planned
Voice-First Experience
- Speech-to-text and text-to-speech for parents with low digital literacy
- Requires a speech provider integration (not yet selected)
- Planned — not yet implemented
API Reference — Chapter 15
Notifications
/api/notificationsGet notifications for the current user (paginated, filter by unread)
/api/notifications/mark-readMark specific notifications as read
/api/notifications/mark-all-readMark all notifications as read
/api/notifications/:idDelete a notification
/api/notifications/subscribeRegister a Web Push subscription
/api/notifications/unsubscribeRemove a Web Push subscription
Messaging
/api/messages/conversationsList conversations for the current user
/api/messages/conversationStart a conversation — course-scoped, or direct with just a recipientId (New)
/api/messages/conversation/:conversationIdGet messages in a conversation
/api/messages/uploadSend a file or image message
/api/messages/students/:courseIdList students with linked parents for a course, for teacher-initiated messaging
/api/messages/school-conversationsAdmin monitoring — list all conversations school-wide
/api/messages/conversations/:id/monitor/joinAdmin joins a conversation as a silent monitor
/api/messages/conversations/:id/monitor/leaveAdmin leaves a monitored conversation
/api/messages/conversations/:id/flagFlag a conversation for review
/api/messages/conversations/:id/muteMute a conversation
/api/messages/conversations/:id/unmuteUnmute a conversation
/api/messages/messages/:msgId/flagFlag an individual message
Announcements
/api/noticesCreate and publish an announcement
/api/notices/myList announcements targeted at the current user
/api/noticesList all announcements (admin)
/api/notices/:idGet a single announcement
/api/notices/:idUpdate an announcement
/api/notices/:idDelete an announcement
/api/notices/upload-attachmentUpload a file attachment for an announcement
/api/notices/:noticeId/attachments/:attachmentIdRemove an attachment from an announcement
Surveys & Polls (New)
/api/surveysCreate a survey or poll (admin, teacher, super_admin)
/api/surveysList all surveys, school-scoped
/api/surveys/myList surveys targeted at the current user, with hasResponded flag
/api/surveys/:idGet survey details
/api/surveys/:id/respondSubmit a response (one per user)
/api/surveys/:id/resultsAggregated results (creator or admin)
/api/surveys/:idDelete a survey and its responses
Communication Analytics (New)
/api/communication/analytics/deliveryNotification delivery totals and read rate
/api/communication/analytics/engagementDaily read-rate trend and message volume
/api/communication/analytics/channelsChannel adoption across email, web push, mobile push, WhatsApp
/api/communication/analytics/languagePreferred-language distribution
/api/whatsapp/webhookReceive inbound WhatsApp messages — free-text falls through to the AI Parent Assistant on Elite schools (New)
AI Communication Suite Elite
/api/communication-ai/translateTranslate arbitrary text to a target language
/api/communication-ai/draft-announcementAI-drafted announcement title/body from a topic
/api/communication-ai/draft-reminderAI-drafted short reminder text
/api/communication-ai/copilotGeneral staff-facing communication Q&A
/api/communication-ai/parent-assistantLive-data-grounded Q&A about a parent's own child
/api/notices/:id/translateOn-demand notice translation, cached on the Notice document
Frontend Pages
| Path | Role | Description | Tier |
|---|---|---|---|
| /dashboard/{role}/messages | Teacher / Parent / Student | Conversation list and chat window | Basic |
| /dashboard/{role}/notices | Admin / Teacher / Student / Parent | Announcement feed | Basic |
| /dashboard/admin/notices/create | Admin | Announcement creation form with audience targeting | Basic |
| /dashboard/admin/surveys | Admin | Survey/poll list, create link, delete (New) | Basic |
| /dashboard/admin/surveys/create | Admin | Survey/poll builder with dynamic questions (New) | Basic |
| /dashboard/admin/surveys/[id]/results | Admin | Aggregated survey results (New) | Basic |
| /dashboard/teacher/surveys | Teacher | List, respond, and create surveys (New) | Basic |
| /dashboard/student/surveys | Student | List and respond to surveys (New) | Basic |
| /dashboard/parent/surveys | Parent | List and respond to surveys (New) | Basic |
| /dashboard/admin/communication-analytics | Admin | Delivery, engagement, channel, and language analytics (New) | Basic |
| /dashboard/admin/communication-copilot | Admin | AI draft-reminder tool and general Q&A copilot (New) | Elite |
| /dashboard/parent/ai-assistant | Parent | Child-scoped AI Q&A grounded in live attendance/fee/notice data (New) | Elite |
| /dashboard/parent/communication-preferences | Parent | Toggle WhatsApp, email, push, and SMS notification channels | Basic |
Mobile Screens
(student|parent|teacher|admin|accountant)/notifications(student|parent|teacher|admin|accountant|librarian|facilities-admin)/notices(admin)/notice-create(parent|teacher|student)/messages(student|parent|teacher)/surveys(student|parent|teacher)/survey-detail(parent)/ai-assistant