Skip to main content
UnifiedPush
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Your setup

This page helps you resolve problems if an app is not working with UnifiedPush. It is aimed at general users who might be trying to use UnifiedPush for the first time.

Understand UnifiedPush

First check these requirements and expectations.

You need several components to use UnifiedPush.

  • Your App, for example a messaging app (on your device)
  • … listening to a UnifiedPush Distributor (also on your device)
  • … listening to a UnifiedPush Push Server (somewhere else)
  • … listening to Your App’s App Server (such as a messaging server).

For everything to work:

  • Your App must be able to communicate with the Distributor.

Any UnifiedPush-compatible application works with any Distributor. You have to be sure the application supports UnifiedPush. Some applications quietly detect and use your Distrbutor, so don’t expect Your App to need any UnifiedPush configuration.

In general, all UnifiedPush configuration (such as details of its Server) is done in the distributor, not in Your App.

For further details, see Check Your App Supports UnifiedPush.

  • Your distributor must be able to communicate with the Push Server.

There should not be any problem, except if you self-host your server. There is an Example application to test this setup.

For further details, see The Distributor.

  • The Push Server must be able to communicate with the App Server.

There might be network or configuration issues if you self-host the Push Server or the App Server. If you use public servers, your App Server may be rate-limited.

For further details, see The Push Server and Rate Limits.

Check Your App Supports UnifiedPush

Check that your specific app version and variant claims to support UnifiedPush.

  • See some Apps using UnifiedPush.
  • Some apps come in different variants, such as a Google Play store variant and an F-Droid variant, and they may support different push methods. Check that the variant you are using is documented as supporting UnifiedPush. In general it is more likely in a variant described with terms like “F-Droid” or “deGoogled” or “libre”.
  • An app can support multiple push methods, and if it detects more than one it might ask you to choose or might choose for you. If this seems a possible cause of it failing to use UnifiedPush, try force-stopping and then restarting the app, which may make it re-check or re-ask the question.

The Distributor

You need to choose, install and configure a UnifiedPush distributor, which is available as an app. Follow its instructions carefully. It will need special permissions as it has to stay running in the background.

To check if you already have a UnifiedPush distributor installed, you can:

On Linux, you can list registered and running distributors using the command dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.ListNames | grep org.unifiedpush.Distributor.

The Push Server and Rate Limits

  • Rate limits

Consider who provides the Push Server for you. It may have limitations, such as rate limits, especially if it’s provided to you free-of-charge. This is one case where a simple test may not show a problem, but real push notifications may not arrive.

For instance, see ntfy.sh limitations.

  • App server to Push Server

If you self-host your Push Server, the App Server may not be able to reach your Push Server. You can check if you have a problem with the App Server not able to reach your Push Server by testing with another Distriutor, see Troubleshooting with a Distributor App

If you self-host your App Server, there might be network errors, or specific configuration to add. You can check if another App Server can reach your push server, see Troubleshooting with Other Apps.

For ntfy self-hosters, there is a specific troubleshooting page : Troubleshooting Self-Hosted Ntfy Servers.

For matrix self-hosters, there is a specific troubleshooting page : Troubleshooting Self-Hosted UnifiedPush and Matrix Servers.

Troubleshooting with the UP-Example app (Android)

You can test the Distributor and Push Server using the simple UP-Example app. Install it from F-Droid.

Click the Register button and then the Send notification button. You should immediately receive an example notification.

  • If it won’t register, then your distributor is not correctly configured with your push server.
  • If you have an error while testing the push notifications, then your push server is not correctly configured.
  • If you don’t have an error and you don’t receive a notification, then your distributor is not correctly configured with your push server.
  • If you do receive this test notification, then the problem may be in Your App. See The Push Server and Rate Limits.

Troubleshooting with the example app (Linux)

You can test the Distributor and Push Server using the example app. Install it from codeberg:

Click the Register button and then the Notify button. You should immediately receive an example notification.

  • If it won’t register, then your distributor is not correctly configured with your push server.
  • If you have an error while testing the push notifications, then your push server is not correctly configured.
  • If you don’t have an error and you don’t receive a notification, then your distributor is not correctly configured with your push server.
  • If you do receive this test notification, then the problem may be in Your App. See The Push Server and Rate Limits.

Troubleshooting with a Distributor App

Your Distributor app may display all active UnifiedPush registrations made through it. When you click on the Register button of the example app, an entry appears immediately in this list. And when you unregister, it should disappear. Some application may register multiple time, since is normal

With KUnifiedPush, you can get this list with a command line grep ServiceName ~/.config/KDE/kunifiedpush-distributor.conf.

Your Distributor may also show a counter of push notifications received for a registration. When you click on Send notification or Notify, this counter should increase.

Troubleshooting with Other Apps

You can find notification troubleshooting tools and information in some apps. It might be worth installing one of them in order to use these tools.

Some Matrix apps including Element, Element-X and Schildichat contain a useful, active, troubleshooting tool in “Settings -> Notifications -> Troubleshoot Notifications”, which performs several checks and displays the results. Note the reported “Gateway” and “Endpoint” URLs.

Toubleshooting a Matrix app

In the “Settings -> Notifications -> “Troubleshoot notifications” screen in Element-X (or Element or Schildichat), the push gateway URL is shown.

If this URL shows some other server (such as up.schildi.chat, or matrix.gateway.unifiedpush.org) then push notifications are being routed through that other server. This other server is called a gateway and is required to convert the matrix protocol to Web Push, as Matrix don’t support Web Push yet.

Some distributors (such as ntfy and NextPush) have a built-in matrix gateway: the gateway should be your push server.