Messaging System - Quick Start Guide¶
🎯 How to Access Messages¶
For Students & Teachers¶
The messaging system is accessible in 3 easy ways:
1. Sidebar Navigation (Always Visible)¶
- Look for the Messages menu item with mail icon 📧
- Located in the left sidebar menu
- Shows unread badge when you have new messages
2. Dashboard Quick Stats (Top Row)¶
- Click the Messages card in the dashboard stats row
- Shows your unread count at a glance
- Quick one-click access to inbox
3. Quick Actions Panel (Dashboard Right Side)¶
- Messages button (blue, most prominent)
- Shows unread badge
- Direct link to your inbox
📬 Getting Started¶
Step 1: Access Your Inbox¶
- Click any Messages link from navigation, dashboard, or quick actions
- You'll see your Inbox with all conversations
Step 2: Start a New Conversation¶
Option A - From Inbox: 1. Click "New Message" button (top right of inbox) 2. Select a recipient from the list 3. Start chatting!
Option B - Direct Message:
1. Navigate to /messages/conversation/{userId} (for specific user)
2. System will auto-create conversation if needed
Step 3: View Messages¶
- Click any conversation in your inbox
- Chat interface opens with full message history
- Messages automatically marked as read when viewed
Step 4: Send Messages¶
- Type your message in the text box at bottom
- Optionally attach files (images, PDFs, MusicXML)
- Click send button or press Enter
🎨 Visual Indicators¶
Unread Messages Badge¶
- Red circle with number appears on:
- Sidebar Messages menu item
- Dashboard Messages card
- Quick Actions Messages button
- Auto-updates every 30 seconds
Conversation List¶
- Bold text = Unread conversation
- Blue background = Unread messages
- Timestamp shows last message time
Read Receipts¶
- Double check mark (✓✓) = Message read by recipient
- Appears next to your sent messages
🔑 Who Can Message Whom?¶
Students Can Message:¶
✅ Their teacher
✅ Members of their organization
✅ Classmates in same organization
Teachers Can Message:¶
✅ Their students
✅ Members of their organization
✅ Other teachers in same organization
Organization Admins Can Message:¶
✅ Anyone in their organization
✅ All teachers and students in org
❌ Cannot message: - Random users outside your network - Yourself
💬 Using the Messaging Interface¶
Chat Window Layout¶
┌─────────────────────────────────────────┐
│ [Conversations] │ [Chat with User] │
│ │ │
│ Sidebar with │ Message History │
│ all your │ (scrollable) │
│ conversations │ │
│ │ ────────────────── │
│ (clickable) │ [Type message...] │
│ │ [📎] [Send] │
└─────────────────────────────────────────┘
Features in Chat:¶
- Auto-scrolling to latest message
- Attachment preview for images
- User avatars next to messages
- Timestamps for each message
- Typing area resizes automatically
📎 Sending Attachments¶
Supported File Types:¶
- Images: JPG, PNG, GIF
- Documents: PDF
- Music: MusicXML, XML files
How to Attach:¶
- Click 📎 paperclip icon
- Select file (max 5MB)
- File name shows below input
- Send as normal
Image Preview:¶
- Images show inline in chat
- Click to open full size
- Documents show as download link
⚡ Premium Features¶
Free Users (10 messages/day):¶
- Limited to 10 messages per day
- Counter resets at midnight
- Warning shown when limit reached
- Can still receive unlimited messages
Premium Users (Unlimited):¶
- Unlimited messaging
- No daily limits
- No restrictions
- Full access to all features
Upgrade prompt appears when free users reach limit.
🔔 Notifications¶
Real-time Updates:¶
- Unread count refreshes every 30 seconds
- Badge updates automatically
- No page refresh needed
Browser Notifications (Optional):¶
- System may request notification permission
- Get desktop alerts for new messages
- Can be enabled in browser settings
🛠️ Technical Details¶
Auto-refresh:¶
- Messages don't auto-reload in conversation
- Page refresh shows new messages
- Polling checks for unread count only
For Real-time (Future):¶
- Currently uses 30-second polling
- Can be upgraded to WebSockets/Mercure
- See documentation for upgrade path
📱 Mobile Responsive¶
Mobile View:¶
- Sidebar auto-hides on mobile
- Chat takes full width
- Back button to return to inbox
- Touch-friendly interface
🆘 Troubleshooting¶
"You can't message this user"¶
Cause: No relationship between you and recipient
Solution:
- Students: Add teacher first (teacher code)
- Teachers: Student must connect to you
- Join same organization
"Daily message limit reached"¶
Cause: Free account sent 10 messages today
Solution:
- Wait until tomorrow (resets at midnight)
- Upgrade to Premium for unlimited messaging
Unread badge not updating¶
Solution: - Wait 30 seconds for auto-refresh - Hard refresh page (Ctrl+F5) - Check browser console for errors
Attachment won't upload¶
Check: - File size under 5MB - File type is supported - Internet connection stable
🎓 Best Practices¶
For Teachers:¶
- Check messages daily for student questions
- Respond to assignment-related messages promptly
- Use messages for quick feedback
- Consider office hours for complex discussions
For Students:¶
- Ask clear, specific questions
- Include assignment/piece references
- Check for teacher response before re-asking
- Be respectful in all communications
📊 Privacy & Security¶
Message Privacy:¶
✅ Only conversation participants can read messages
✅ Messages stored securely in database
✅ Attachments stored in protected directory
✅ No message content in URLs
Data Retention:¶
- Messages kept indefinitely
- Users can delete their own sent messages
- Deleted messages removed immediately
🚀 Quick Tips¶
- Use Enter to send - No need to click button
- Check unread badge - Glance at sidebar for new messages
- Attach files directly - No need to upload separately
- Mark as read automatically - Just view the conversation
- Dashboard shortcut - Fastest way to messages from home
📞 Need Help?¶
- Check the full documentation:
/docs/MESSAGING_SYSTEM.md - Contact support: info@practito.com
- Report bugs through the platform
Last Updated: February 12, 2025
Version: 1.0.0