Skip to main content
Unlisted page
This page is unlisted. Search engines will not index it, and only users having a direct link can access it.

Enable push notifications

With self-hosted deployments, you can configure mobile push notifications for Mattermost by going to System Console > Environment > Push Notification Server, or by editing the config.json file as described in the following tables. Changes to configuration settings in this section require a server restart before taking effect.

Enable or disable Mattermost push notifications.

  • Do not send push notifications: Mobile push notifications are disabled.
  • Use HPNS connection with uptime SLA to send notifications to iOS and Android apps: (Default) Use Mattermost's hosted push notification service.
  • Use TPNS connection to send notifications to iOS and Android apps: Use Mattermost's test push notification service.
  • Manually enter Push Notification Service location: When building your own custom mobile apps, you must host your own mobile push proxy service, and specify that URL in the Push Notification Server field.
  • System Config path: Environment > Push Notification Server
  • config.json setting: EmailSettings > SendPushNotifications
  • Environment variable: MM_EMAILSETTINGS_SENDPUSHNOTIFICATIONS

Hosted Push Notifications Service (HPNS)

Mattermost Enterprise, Professional, and Cloud customers can use Mattermost's Hosted Push Notification Service (HPNS). The HPNS offers:

  • Access to a publicly-hosted Mattermost Push Notification Service (MPNS) available on GitHub.
  • An explicit privacy policy for the contents of unencrypted messages.
  • Encrypted TLS connections:
    • Between HPNS and Apple Push Notification Services
    • Between HPNS and Google’s Firebase Cloud Messaging Service
    • HPNS and your Mattermost Server
  • Production-level uptime expectations.
  • Out-of-box configuration for new servers means nothing is required to enable HPNS for new deployments. HPNS can be enabled for existing deployments.

Test Push Notifications Service (TPNS)

Non-commercial self-hosted customers can use Mattermost's free, basic Test Push Notifications Service (TPNS).

ID-only push notifications

Admins can enable mobile notifications to be fully private to protect a Mattermost customer against breaches in iOS and Android notification infrastructure by limiting the data sent to Apple and Google through a Mattermost configuration setting.

The standard way to send notifications to iOS and Android applications requires sending clear text messages to Apple or Google so they can be forwarded to a user’s phone and displayed on iOS or Android. While Apple or Google assure the data is not collected or stored, should the organizations be breached or coerced, all standard mobile notifications on the platform could be compromised.

To avoid this risk, Mattermost can be configured to replace mobile notification text with message ID numbers that pass no information to Apple of Google. When received by the Mattermost mobile application on a user’s phone, the message IDs are used to privately communicate with their Mattermost server and to retrieve mobile notification messages over an encrypted channel. This means that, at no time, is the message text visible to Apple or Google’s message relay system. The contents of the message also won't reach Mattermost.

See our configuration settings documentation to learn more about the ID-only push notifications configuration setting. See our Mobile Apps FAQ documentation for details on using ID-only push notifications for data privacy.

Push notification server location

The region of the Mattermost Hosted Push Notification Service (HPNS) server.

Select a region to automatically populate the Push Notification Server field with the corresponding URL:

  • System Config path: Environment > Push Notification Server
  • config.json setting: EmailSettings > PushNotificationServer
  • Environment variable: MM_EMAILSETTINGS_PUSHNOTIFICATIONSERVER

Maximum notifications per channel

The maximum total number of users in a channel before @all, @here, and @channel no longer send desktop, email, or mobile push notifications to maximize performance.

Numerical input. Default is 1000.

  • System Config path: Environment > Push Notification Server
  • config.json setting: TeamSettings > MaxNotificationsPerChannel > 1000
  • Environment variable: MM_EMAILSETTINGS_MAXNOTIFICATIONSPERCHANNEL