I understand that geofence triggered notifications are actually downloaded and triggered upon fence transitions - not a PUSH notification.
Like the poster of this question, I have a data extension with hotel bookings. I would like to display a message to matching subscribers based on data contained within a DE in SFMC - not just anyone using the app entering the geolocation.
If this were PUSH, I would setup a some SQL logic to return a list of valid recipients.
I see how to configure geofence notifications in Mobile Studio but these don't allow for inclusions/exclusion data nor updating of a DE.
The Mobile Cloud API contains a create push message POST with a geofences
array parameter:
Array of string values indicating the geofences associated with the message send. Use only when sendInitiator value equals 1.
But we don't want PUSH with some geofencing logic, we want a geofenced triggered notification.
So I'm a bit confused as to how to link the SFMC-based DE data logic with the recipient list if it's a geolocation notification, since the message already resides on the device.
However, since the DE resides in the SFMC cloud, what is the process for connecting that data with the mobile push notification? Also once the notification has been received, I would like to track who has received the notification and update a subscriber flag ensuring they only receive one message. I would also need to update the DE.
-- UPDATE --
Looking at the SDK, NotificationManager.ShouldShowNotificationListener
, within the shouldShowNotification(NotificationMessage message)
can I make a call back to SFMC to not only check but also update DE attributes?
ShouldShowNotificationListener
interface is the key here, but I am unclear on how to implement this in the app. Is it able to make a SFMC call to check various DE attributes and can the displayed message be templated, using personalization strings rather than unique messages for each geofence?