Search code examples
notificationsgenexusgenexus-sd

How to execute a SD Event on Notification Arrive


The following code works fine for receiving a messages on a SD Device and executing an event when the end user taps on the notification.

&ApplicationIdCharacter = 'xxxxx-xxxx-xxx-xxxxxx'
&TheNotification.Text.DefaultText  = "Notification Provider API"
&TheNotification.Actions.DefaultAction.Event.Name = "Insert_Msg" 
&TheNotification.Appearance.Icon.Small = !"GX15IconKB"
&TheNotificationDelivery.Expiration = 3000 
&TheNotificationDelivery.Priority   = PushNotificationPriority.Normal
&TheNotificationConfiguration.ApplicationId = &ApplicationIdCharacter
&DeviceToken = 'xxxxxx-xxxxx-xxxx-xxxx-xxxxxxxx'
GeneXus.Common.Notifications.SendNotification(&TheNotificationConfiguration,&DeviceToken,&TheNotification,&TheNotificationDelivery,&OutMessages,&IsSuccessful)

But I can´t find any example for doing this without user intervention.

On previous versions there was a parameter

&GXPushNotification.Event.Execution = EventExecution.OnNotificationArrive

Is it supported on GX 15?

Thanks, Rogelio Arosemena


Solution

  • Rogelio,

    If you want to fire an Event without user intervention, then use the API:

    GeneXus.Common.Notifications.SendEvent(..)

    SendNotification is for sending Text Messages that requires user intervention to fire Events (by opening the Notification)

    If you need Text and Event, then Send both (SendEvent & SendNotification)