How is Push Message sent through Notification Hub?

Architecture design

The diagram below shows the architecture design for push message functionality:


  1. Plexure Platform Push Message Job makes request in batches spanning over 60-90mins to Azure Notification Hub (NH) to send out push messages
  2. NH sends out push messages based on GCM/FCM or APNS devices to respective messaging networks.
  3. Messaging networks send out push messages to mobile devices.
  4. Mobile apps Push Message Receive, Seen, Click activities are captured on Plexure Platform
  5. Plexure Platform requests Push Message Sent Telemetry data from NH

Notification Hub

The notification hub is a service which we use to send push notifications to users/devices. In order for a user to receive a push notification from the platform, the user needs to be synced to this service first before a push notification is sent from the Plexure platform. The frequency in which a user is "resynced" to the notification hub is dependent upon what changes have been made to the user's account, however normally this will be whenever a tag update request has been triggered for a user. 

E.g. on the Mobile app that has multi-country feature, if a user changed from country Denmark to New Zealand, this would trigger a resync as the country tag has changed from ‘Denmark-tag’ to ‘New Zealand-tag’. 

It also should be considered that a tag update can be triggered through an action from the app side, through the use of our external tagging merchant API's or during an overnight tagging job we have setup on the platform side. 

"SYNC TO MSG SERVICE" Checkbox must be checked

To send out push message to consumers based on specific tags, eg. Female-tag and Country-tag, make sure you checked the checkbox "SYNC TO MSG SERVICE" for the tags in TagValue Setup page. This will enable the tags for the consumer getting synced to NH. The maximum limit of 60 tags per device is allowed on NH.

Device Registered consumers

device registration is normally triggered when the user installs the app for the first time and basically registers the user as a "device user" in the Plexure platform. As the user has not signed in with any personal details, we do not have any personal data of this user e.g. First name, Last name, Gender etc. In short, this user has simply downloaded and installed the app however has not logged in. Therefore, in the Plexure platform this user will be tagged with the "Registration Status > Device Registration" tag.

Email Registered consumers

An email registration is a user who has registered on the app with their details, i.e. their email address etc. When the user signs up, in the Plexure platform this "email user" is created as a new account and subsequently tagged with the "Registration Status > Email Registration" tag. This means typically for each "email registered user" this user will be associated to 2 user accounts in the Plexure platform i.e. a device registered account and an email registered account.

'Reach Estimate'

The reason why the reach estimate (as shown in Push Message setup page) is double, let say 1 million mark, even though user registrations is half a million, is because the wrong tag is used in the filtering selection. To better describe this, take the scenario below for a user who has downloaded the app (for the first time) and signed up with their email address. 

  1. User downloads and installs the Mobile app
  2. When the user launches the app and selects their country/language of choice e.g. Denmark, this user is then created in the Plexure platform as a "device user" and is tagged with "Registration Status > Device Registration" tag (tag is added from the platform side)
  3. From here the country tag e.g. Denmark is then added to this device user (tag is added from the app side)
  4. If user then decides to register via their email address, a call is made to the platform to create this user as a newaccount in the Plexure backend. Subsequently this "email user" is tagged with "Registration Status > Email Registration" tag (handled by the platform)
  5. After the email user is created, the country tag e.g. Denmark is then added to this email user (tag is added from the app side)

As a result, although the above scenario describes the flow of 1 user, this user is now associated to 2 accounts in the Plexure platform i.e. a device registered account and an email registered account. Since the country tag e.g. Denmark is tagged to both device and email registered accounts the platform, this explains why the reach estimate is showing close to 1 million as this is counting all users who have the Denmark tag. If you add the "Registration Status > Email Registration" tag to the reach count, the platform will only show an estimate of users who have the "Denmark" plus the "Email Registration" tag (which should be half a million users) which are users who have actually signed up with their email addresses.




Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request


Please sign in to leave a comment.