Hilfebereich Mobile push notifications

Mobile push notifications

Mobile push is the cheapest channel SMSBAT can reach a user on, and it fits at the front of a cascade: if the push is delivered, nothing else is sent and nothing else is billed.

How it fits the cascade

Push runs as the first channel. The app confirms receipt, and that confirmation is what stops the cascade:

app  --registerInstallation(externalUserId, firebaseInstallationId, fcmToken)-->  SMSBAT
                                                                                    |
                                                              FCM v1 message.token = fcmToken
                                                                                    v
app  <--------------------- data-only push -------------------------------  FCM / APNs
  |
  '---- POST /api/push/notifications/{guid}/status  {"status":"delivered"} -->  SMSBAT
  1. Registration. The app sends its Firebase installation id and its FCM registration token on sign-in.
  2. Send. Your backend starts a cascade with push as the first channel.
  3. Receipt. The app receives a data-only message and draws the notification itself.
  4. Callback. The app reports delivered, and seen when the user taps it.
  5. Stop. Either callback stops the cascade before Viber or SMS is charged for.

Without the delivered callback the backend assumes the push failed and falls through — so the client pays for a message the user already read.

What you need

  • A single Firebase project covering both platforms
  • An APNs auth key uploaded to Firebase, for iOS
  • An application key from the Omni panel (X-Push-App-Key)
  • A mobile app that draws notifications itself, in the foreground and the background

Messages are data-only

The service deliberately sends data-only messages. A notification block would make Android render the message itself and skip the JS handler entirely — and then no delivered callback would ever be sent.

The cost is that your app must build every notification from data: title, body, subtitle, sound, badge. Everything in data arrives as a string, including badge.

Where to go next

TaskPage
Set up Firebase, Android and iOSApp setup guide
Register devices and report statusPush API
Diagnose a failurePush error catalogue
Send push inside a cascadeCascade API