Skip to content

Notification Settings

The Notification Settings allow you to configure how notifications are sent across your application, including email notifications, Slack integration, and in-app notifications for various modules and events.


Table of Contents

  1. Overview
  2. Accessing Notification Settings
  3. Notification Channels
  4. Module-Based Notifications
  5. Email Notifications
  6. Slack Notifications
  7. In-App Notifications
  8. Notification Preferences
  9. Best Practices

Overview

Features

  • ✅ Three notification channels (Email, Slack, In-App)
  • ✅ Module-based notification organization
  • ✅ Per-module, per-notification, per-channel preferences
  • ✅ Global notification settings
  • ✅ User-specific preferences
  • ✅ Notification templates
  • ✅ Critical notifications (cannot be disabled)
  • ✅ Real-time in-app notifications

Admin Routes

  • Notification Settings: /admin/notification-settings
  • Notification Center: /admin/notifications

Accessing Notification Settings

From Admin Panel

  1. Log in to admin panel
  2. Navigate to SettingsNotification Settings
  3. Or go directly to: /admin/notification-settings

Permissions Required

  • Manage Settings: manage-settings permission

Notification Channels

Available Channels

Email Notifications

  • Description: Traditional email notifications
  • Use Cases: Important updates, summaries, alerts
  • Configuration: SMTP settings required
  • Delivery: Sent to user's email address

Slack Notifications

  • Description: Slack webhook integration
  • Use Cases: Team notifications, real-time alerts
  • Configuration: Webhook URL required
  • Delivery: Sent to Slack channel

In-App Notifications

  • Description: Bell icon notifications in admin panel
  • Use Cases: Real-time updates, quick alerts
  • Configuration: Automatic (no setup needed)
  • Delivery: Shown in notification bell

Module-Based Notifications

Supported Modules

Core Modules

  • Settings: System configuration changes
  • Users: User management events
  • Pages: Page updates
  • Media: Media library events

Content Modules

  • Posts (Blog): Post published, updated, commented
  • Testimonials: Testimonial submitted, approved
  • FAQs: FAQ created, updated
  • Knowledge Base: Article created, updated

E-Commerce Modules

  • Products: Product created, updated, low stock
  • Pricing Plans: Plan created, updated
  • Services: Service booked, inquiry received

Learning Modules

  • Courses: Course published, enrollment, completion

Project Modules

  • Projects: Project created, updated
  • Case Studies: Case study published
  • Events: Event registration, ticket sales

Support Modules

  • Tickets: Ticket created, updated, replied

Business Modules

  • Quotes: Quote requested, approved, rejected
  • Causes: Donation received
  • Appointments: Appointment booked, cancelled
  • Jobs: Application received

Productivity Modules

  • Task Manager: Task assigned, status changed, due reminder

Email Notifications

Email Configuration

SMTP Settings

Required Settings:

  • SMTP Host: Mail server hostname
  • SMTP Port: Port number (587, 465, 25)
  • Encryption: TLS or SSL
  • Username: SMTP username
  • Password: SMTP password
  • From Address: Sender email
  • From Name: Sender name

See Also: Email Settings Documentation

Email Notification Types

User Notifications

  • User Created: New user registered
  • User Updated: User profile updated
  • Password Reset: Password reset requested
  • Email Verified: Email address verified

Content Notifications

  • Post Published: Blog post published
  • Post Commented: Comment on post
  • Page Updated: Page content updated

E-Commerce Notifications

  • Order Placed: New order received
  • Order Shipped: Order shipped
  • Order Cancelled: Order cancelled
  • Low Stock: Product stock low
  • Out of Stock: Product out of stock

Support Notifications

  • Ticket Created: New support ticket
  • Ticket Replied: Reply to ticket
  • Ticket Resolved: Ticket closed

Task Notifications

  • Task Assigned: Task assigned to user
  • Task Status Changed: Task status updated
  • Task Due Reminder: Task due soon
  • Task Overdue: Task past due date

Email Preferences

Per-Notification Settings

  1. Navigate to Module:

    • Go to notification settings
    • Select module
    • View notification types
  2. Toggle Email:

    • Enable/disable per notification
    • Critical notifications cannot be disabled
    • Changes apply immediately
  3. Save Preferences:

    • Click Save
    • Preferences saved
    • Applies to all users (unless user-specific)

Slack Notifications

Slack Setup

Create Slack Webhook

  1. Go to Slack:

    • Open Slack workspace
    • Go to Apps → Incoming Webhooks
  2. Create Webhook:

    • Click Add to Slack
    • Select channel
    • Copy webhook URL
  3. Configure in Admin:

    • Go to Notification Settings
    • Enter webhook URL
    • Test connection
    • Save settings

Global Slack Settings

Configuration:

  • Webhook URL: Slack webhook URL
  • Channel: Default channel (optional)
  • Username: Bot username (optional)
  • Icon: Bot icon (optional)

User-Specific Slack

Per-User Webhooks:

  • Users can set own webhook
  • Personal notifications
  • Overrides global settings

Slack Notification Format

Message Structure

Includes:

  • Title: Notification title
  • Description: Notification details
  • Module: Source module
  • Action Buttons: Quick actions
  • Timestamp: When occurred

Rich Formatting

Features:

  • Blocks: Structured layout
  • Colors: Status-based colors
  • Links: Direct links to content
  • Actions: Interactive buttons

Slack Preferences

Per-Notification Settings

  1. Navigate to Module:

    • Select module
    • View notification types
  2. Toggle Slack:

    • Enable/disable per notification
    • Critical notifications always enabled
    • Changes apply immediately

In-App Notifications

Notification Bell

Location

  • Top-right corner of admin panel
  • Bell icon with badge
  • Unread count displayed
  • Click to open dropdown

Features

  • Unread Count: Number of unread notifications
  • Recent Notifications: Last 10 notifications
  • Mark as Read: Click to mark read
  • View All: Link to notification center
  • Auto-Refresh: Updates every 30 seconds

Notification Center

Route: /admin/notifications

Features:

  • All Notifications: Complete list
  • Filtering: By module, type, status
  • Mark as Read/Unread: Toggle status
  • Delete: Remove notifications
  • Navigate: Click to related content

In-App Notification Types

Real-Time Updates

  • Task Assigned: Immediate notification
  • Ticket Replied: Instant alert
  • Order Placed: Real-time notification
  • Comment Added: Immediate notification

Notification Display

Notification Card Includes:

  • Icon: Module/type icon
  • Title: Notification title
  • Description: Brief details
  • Time: When occurred
  • Link: Navigate to content
  • Actions: Quick actions

In-App Preferences

Per-Notification Settings

  1. Navigate to Module:

    • Select module
    • View notification types
  2. Toggle In-App:

    • Enable/disable per notification
    • Critical notifications always enabled
    • Changes apply immediately

Notification Preferences

Global Preferences

Default Settings

Configuration:

  • Default Channels: Which channels enabled by default
  • Critical Notifications: Cannot be disabled
  • Notification Frequency: How often to send
  • Quiet Hours: When to suppress notifications

User Preferences

Per-User Settings

User Can Configure:

  • Channel Preferences: Enable/disable channels
  • Module Preferences: Per-module settings
  • Notification Preferences: Per-notification settings
  • Quiet Hours: Personal quiet hours

Accessing User Preferences

  1. User Profile:

    • Go to user profile
    • Click Notification Preferences
    • Configure settings
  2. Settings Page:

    • Go to Settings → Notifications
    • Configure preferences
    • Save changes

Module Preferences

Per-Module Configuration

Settings Available:

  • Enable Module: Turn on/off module notifications
  • Default Channels: Which channels enabled
  • Notification Types: Per-type settings
  • Frequency: How often to notify

Best Practices

Notification Management

  1. Avoid Over-Notification:

    • Don't enable everything
    • Focus on important events
    • Use quiet hours
    • Group similar notifications
  2. Use Appropriate Channels:

    • Email: Important, summary notifications
    • Slack: Team alerts, real-time updates
    • In-App: Quick alerts, immediate updates
  3. Test Notifications:

    • Test all channels
    • Verify delivery
    • Check formatting
    • Test user preferences

Channel Selection

When to Use Email

  • Important Updates: Critical information
  • Summaries: Daily/weekly summaries
  • External Users: Customers, clients
  • Documentation: Detailed information

When to Use Slack

  • Team Alerts: Internal team notifications
  • Real-Time: Immediate updates needed
  • Collaboration: Team discussions
  • Quick Actions: Fast responses needed

When to Use In-App

  • Quick Alerts: Immediate attention needed
  • User Actions: Task assignments, updates
  • Status Changes: Real-time status updates
  • Navigation: Quick access to content

Notification Content

  1. Clear Messages:

    • Use clear titles
    • Include relevant details
    • Provide context
    • Add action links
  2. Consistent Format:

    • Use templates
    • Maintain branding
    • Include module info
    • Add timestamps

Troubleshooting

Notifications Not Sending

Solutions:

  1. Verify channel enabled
  2. Check SMTP settings (for email)
  3. Verify webhook URL (for Slack)
  4. Check notification preferences
  5. Review error logs

Slack Not Working

Solutions:

  1. Verify webhook URL is correct
  2. Test webhook manually
  3. Check Slack app permissions
  4. Verify channel exists
  5. Check webhook format

In-App Notifications Not Showing

Solutions:

  1. Check browser notifications enabled
  2. Verify in-app channel enabled
  3. Clear browser cache
  4. Check notification preferences
  5. Refresh page


Last Updated: [Date will be updated during final review]

Released under the MIT License.