Skip to main content

🔔 Notifications

Notifications is a Go-based notification service used by MOS to deliver system and service notifications. Notifications can be displayed directly within the MOS WebUI and optionally forwarded to external notification providers.

Multiple providers can be enabled at the same time. If no provider is configured, notifications will still be shown inside MOS only.

Notify Overview

The Notifications configuration page showing all available providers.


📦 Accessing Notifications

The Notifications configuration is available under Settings.

  1. Navigate to Settings in the sidebar
  2. Go to System ConfigurationNotifications

📡 Supported Providers

MOS Notify supports the following notification providers:

ProviderTypeDescription
EmailSMTPSend notifications via email using an SMTP server
DiscordWebhookSend notifications to a Discord channel via webhook
GotifyAPISend notifications to a self-hosted Gotify server
PushbitsAPISend notifications to a self-hosted Pushbits instance
info

Multiple providers can be enabled simultaneously. If no external provider is configured, notifications will still be displayed inside the MOS WebUI.


⚙️ Provider Configuration

Each provider can be toggled on or off independently. Click on a provider name in the list to expand its configuration fields.

✉️ Email

The Email provider sends notifications via SMTP.

Email Provider

Email provider configuration.

FieldTypeDefaultDescription
EnabledToggleOffEnables or disables the Email provider
SMTP HostTextSMTP server hostname (e.g., smtp.gmail.com)
SMTP PortNumber587SMTP server port (587 for TLS, 465 for SSL)
SMTP TLSToggleOnEnables TLS encryption for the SMTP connection
SMTP UserTextSMTP authentication username
SMTP PasswordPasswordSMTP authentication password
SenderEmailEmail address used as the sender
ReceiverTextEmail address that receives the notifications
SubjectText{{.Title}}Email subject template (supports template variables)
BodyText{{.Message}}Email body template (supports template variables)
Alert Mapping (JSON)JSON{}Maps alert types to specific notification behavior
tip

Use template variables like {{.Title}} and {{.Message}} in the Subject and Body fields to include dynamic notification content.

💬 Discord

The Discord provider sends notifications to a Discord channel via a webhook URL.

Discord Provider

Discord provider configuration.

FieldTypeDefaultDescription
EnabledToggleOffEnables or disables the Discord provider
UserTextUsername to display in Discord messages
TokenTextDiscord webhook token
URLTextDiscord webhook URL
MethodDropdownPOSTHTTP method for the webhook request
Headers (JSON)JSONCustom HTTP headers for the webhook request
Body (JSON)JSONRequest body payload (supports template variables)
Alert Mapping (JSON)JSONMaps alert types to specific notification behavior
Color Priority (JSON)JSONDefines embed colors based on priority levels
Delete ProviderButtonRemoves this provider configuration

📱 Gotify

The Gotify provider sends notifications to a self-hosted Gotify server.

Gotify Provider

Gotify provider configuration.

FieldTypeDefaultDescription
EnabledToggleOffEnables or disables the Gotify provider
UserTextGotify username
TokenTextGotify application token
URLTextGotify server URL
MethodDropdownPOSTHTTP method for the API request
Headers (JSON)JSONCustom HTTP headers
Body (JSON)JSONRequest body payload (supports template variables)
Alert Mapping (JSON)JSONMaps alert types to specific notification behavior
Color Priority (JSON)JSONDefines notification colors based on priority
Delete ProviderButtonRemoves this provider configuration

🔔 Pushbits

The Pushbits provider sends notifications to a self-hosted Pushbits instance.

Pushbits Provider

Pushbits provider configuration.

FieldTypeDefaultDescription
EnabledToggleOffEnables or disables the Pushbits provider
UserTextPushbits username
TokenTextPushbits application token
URLTextPushbits server URL
MethodDropdownPOSTHTTP method for the API request
Headers (JSON)JSONCustom HTTP headers
Body (JSON)JSONRequest body payload (supports template variables)
Alert Mapping (JSON)JSONMaps alert types to specific notification behavior
Color Priority (JSON)JSONDefines notification colors based on priority
Delete ProviderButtonRemoves this provider configuration

➕ Adding Custom Providers

Custom providers can be added via the + (floating action button) in the bottom-right corner of the Notifications page.

This allows you to configure additional webhook-based notification providers that follow the same field structure as Discord, Gotify, and Pushbits (User, Token, URL, Method, Headers, Body, Alert Mapping, Color Priority).

tip

If you have implemented a new provider and would like to share it, please open a Pull Request at: github.com/mos-nas/mos-boot-files


🔧 Manual Configuration (Advanced)

In addition to the WebUI configuration, provider settings can also be managed manually via configuration files:

  • Config directory: /boot/config/notify/providers/
  • Each provider has its own configuration file

After changing any provider configuration file manually, the service must be restarted:

/etc/init.d/notify restart

Logs are available at /var/log/notify or via the MOS Frontend under Settings → Logs.

warning

Manual configuration changes may be overwritten by the WebUI. Use the WebUI as the primary configuration method and manual editing only for advanced scenarios.


📋 Alert Mapping (JSON)

The Alert Mapping field allows you to map different alert types to specific notification behavior. The mapping is defined as a JSON object.

Example:

{
"warning": {
"priority": 5,
"suppress_repeat": true
},
"critical": {
"priority": 10,
"suppress_repeat": false
}
}

This allows fine-grained control over how different types of alerts are delivered through each provider.


📚 Best Practices

  • Start with one provider — Configure Email first, as it's the most universally useful
  • Use app passwords — For Gmail, Outlook, etc., use app-specific passwords instead of your account password
  • Test notifications — After configuring a provider, trigger a test notification to verify it works
  • Enable multiple providers — Use Email for important alerts and Discord/Gotify for real-time notifications
  • Use Alert Mapping — Configure different behavior for warnings vs. critical alerts
  • Check logs — If notifications aren't working, check /var/log/notify or Settings → Logs

✅ Summary

The Notify service provides flexible notification delivery for MOS system events.

Key points:

  • Four built-in providers — Email, Discord, Gotify, Pushbits
  • WebUI configuration — all providers can be configured directly from the browser
  • Custom providers — add additional webhook-based providers via the + button
  • Template variables — use {{.Title}} and {{.Message}} in subject/body fields
  • Alert Mapping — fine-grained control over alert types and priorities
  • Multiple providers — enable several providers simultaneously
  • Manual config — advanced configuration via /boot/config/notify/providers/

Proper notification configuration ensures you stay informed about system events, disk warnings, backup status, and other important alerts.


Parts of this documentation were created with the assistance of AI tools. All AI-generated content has undergone review, but it may still contain inaccuracies, omissions, or outdated information.