Chapter 23. Tigase Push Component

Table of Contents

Tigase Push Component
Workflow
Configuration
Enabling component
Usage
Sending notifications
Registering device
Unregistering device
Unregistering device via HTTPS
Providers
Tigase Push Component - FCM provider
Overview
Configuration
Tigase Push Component - APNs provider
Overview
Configuration

Tigase Team :toc: :numbered: :website: http://tigase.net

Welcome to Tigase Push component guide

Tigase Push Component

Tigase Push component is a Push notifications component implementing XEP-0357: Push Notifications. It is a gateway between Push Notification services and XMPP servers. It is configured by default to run under name of push.

Note

Tigase Push component requires at the minimum version 8.0.0 of Tigase XMPP Server.

Push notifications enable messages and pertinent information for clients, even if they are offline as long as they are registered with the push service. Tigase Messenger for iOS and Tigase Messenger for Android both have support for this feature.

Workflow

The workflow for enabling and using push notifications works as follows:

Enabling notifications

In order to receieve notifications, clients will require registration with a push service. Although this process is mainly invisible to the user, the steps in registration are listed here:

  • The client registers and bootstraps too it’s assicoated push service. This is done automatically.
  • The client registers itself with the push service server which then will dedicate a node for the device.
  • Node information is passed back to the client and is shared with necessary components.

Receiving notifications

Notifications sent from the server are recieved the following (simplified) way:

  • A message is published on the XMPP node which is then sent to the push service on the same server.
  • The push service will then inform the user agent (an application on the device running in the background) that a push notification has been sent.
  • The user agent will then publish the notification to the client for a user to see, waking up or turning on the client if is not running or suspended.