Push

Push Node allows you to configure and send push notifications to your customers across mobile and web applications.

The Push node enables you to send rich and interactive notifications to mobile and web apps that use Webex Connect SDKs.

83

Push Node

Prerequisites

  1. An App Asset created on Webex Connect.
  2. Webex Connect's SDK integrated within your app, with appropriate App ID and Client Key corresponding to the Mobile/Web App Asset configured in Webex Connect.

📘

Note:

The app should have at least one registered user, whose User-ID or Device-ID can be used as a destination.

Node Configuration

All the parameters and input fields that you need to define within the node window are explained below.

1031

Node Window

Destination Type

There are different types of identifiers supported in Webex Connect, namely:

  • Customer-ID is a master ID that is linked to all different channel-specific user IDs of a user within the customer profile. Webex Connect's customer profile is used to store multiple channel identifiers and customer communication preferences for various customers. It is useful in cross channel communication. For e.g: You want to send an exclusive promo code to a user’s app because of previous positive feedback that they have given via Messenger. If you have the customer profile configured with details of both Facebook Messenger PSID and user id linked with the same customer ID, you can use the Customer-ID of the user since it will remain constant across both the channels.
  • User-ID is the identifier specific to Push and In-App channels. This is generally created when a user registers on your mobile/web app. It is stored in the application profile.
  • AndroidPushId is the identifier for the Android application
  • iOSPushId is the identifier for the iOS application
  • ChromePushId is the identifier for the Chrome application
  • FirefoxPushId is the identifier for the Firefox application
  • SafariPushId is the identifier for the Safari application
  • Topic is used to broadcast notifications that come under a particular section of interest. Any user who subscribes to a topic starts receiving notifications published to that topic.

📘

Note

The destination type Topic is not visible in the list, if the Topic Messaging option is disabled for your tenant.

  • Segment comes into picture when you want to target users that have subscribed to a specific combination of topics. You can create a segment containing the desired combination of topics and publish notifications to that segment.

📘

The destination type Segment is not visible in the list, if the Segment Messaging option is disabled for your tenant

  • HMSPushId is the identifier for the HMS application

Destination

This field contains the destination value corresponding to the selected Destination Type. The value can be static or dynamic. For E.g: If the destination type is Customer-ID, the Destination can be kept dynamic by declaring it as $(customerID).

Message Configuration

This section explains the elements used to orchestrate the notification:

Notification Title

A heading displayed above the top of the notification text to summarize its content or purpose.

The message configuration varies for Android, iOS and Web Browsers. Here are the details for each of these.

Android

These are Android-specific configurations.

  • Notification Body: Enter the text for the notification body for Android.

  • Notification Action: There are five types of actions that can be executed when a user taps on the notification:

    1. OPEN_URL would open the respective link in your browser.

    2. OPENWEBVIEW launches a web view inside your app.

    3. DEEPLINK will take you to destination defined in the link.

    4. OPEN_HTML renders the HTML payload within the app.

    5. OPEN_APP simply opens the app corresponding to the notification

  • Sound File: To play a certain sound when a device receives the notification, you can provide the URL of the sound file in this field.

  • Collapse key: If you send multiple push notifications to a device with the same collapse key, and all of them are waiting in FCM server to be delivered to the device, FCM will only send the latest push notification for the collapse key you provide.

  • Time to live: The period of time for which a notification would reside in the notification tray.

  • Delay while idle: In-case when a notification is received, the device is in idle state, you can choose to wait for the user to be active before you display the notification on the device.

  • Priority: You can define the priority of a notification by assigning an integer from ranging 1 to 5, 5 being the highest.

  • Image URL: Used to send images in the notification.

  • Notification Icon

  • Notification channel ID: To target devices that run on Android Oreo or above, it's mandatory to assign a channel ID to each notification.

iOS

These are iOS specific configurations.

  • Attachment Type - Select the required type (Image, Audio, and Video) from the dropdown.
  • Attachment URL - Enter the attachment URL.
  • Collapse ID - Enter the unique key. Contains the details of all the notifications with the same collapse key except the latest, as they are hidden from the notifications.
  • Notification Body - Enter the text for the notification body for iOS.
  • Notification Action
    • OPEN_URL - Select this to navigate to the URL.
    • OPENWEBVIEW - Select this to open the web links.
    • DEEPLINK - Select this to navigate to the link.
    • OPEN_HTML - Select this to open the HTML links.
    • OPEN_APP - Select this to open the app when the notification link is clicked.
  • Notification Value - Enter the URL to be navigated to when the notification is clicked.
  • Sound File - Enter the url of the sound file that must be played during the notification.
  • Badge
  • Silent Push
  • Time to live: The period of time for which a notification would reside in the notification tray.

Webpush

These are Web-specific configurations. For Webpush, you first need to select all the browsers to be targeted.

  • Notification Body: Enter the text for the notification body for Webpush.
  • Notification title: A heading displayed above the top of the notification text to summarize its content or purpose.
  • Time to live: The period of time for which a notification would reside in the notification tray.
  • On-click URL: Enter the URL to navigate when clicked on notification.

Interactions

  • OS - the operating system for the interactions
  • Push Reference - unique value to make interaction result available as a trigger
  • Interactions - single button or two buttons
  • Category - the available category of interactions
    • Single button - Dismiss
    • Single button - Subscribe
    • Single button - Unsubscribe
    • Single button - Share
    • Single button - Open
    • Two button - Subscribe or Unsubscribe
    • Two button - Share or Cancel
    • Two button - Like or Share
    • Two button - Yes or No
    • Two button - Accept or Cancel
    • Two button - Shopnow or Cancel
    • Two button - Later or Now
    • Two button - Play now or PlayLater
    • Two button - Ok or Learn More
    • Two button - Buy Now or Buy Later

Extra Parameters

Along with the message, you can send additional information like some user-specific property, or any custom parameter that is required to display the message in a certain fashion within the app. This information can be sent in the form of extra parameters.

Correlation ID

You can assign a unique ID of your choice to each Push message. This ID is returned to the platform with the delivery report and can be used to identify the message.

Callback Data

In case there is additional data to be sent along with the delivery reports to the URL, you must specify that here.

Validations forCallback Data & Correlation ID:

  1. Callback Data, Correlation Id fields are optional for all the channels. Send node can be saved without providing these fields.
  2. All characters, Alphabets, Numbers, and special characters are accepted.
  3. Variables can be added.
  4. Hard coded values are accepted.
  5. On Platform side, there is no Max or Min length validation for these fields.

Notify URL

You can choose to notify a URL with the delivery report for the Push message. This field accepts only a valid URL or a variable. If an invalid URL is passed in API request or via a variable, then such request will not be considered eligible for retries.

Validations for Notify URL:

  1. It is an optional field optional for all the channels. Send node can be saved without providing these fields.
  2. Notify URL should be filled with proper URL format. Otherwise, error message ‘Invalid URL, field accepts only valid URL or variable’ will be displayed.
  3. When space is provided in front of the URL, Invalid URL, field accepts only valid URL or variable’ will be displayed.
  4. When space is provided at the end of the URL, space gets trimmed and ignored and DRs are received to the URL.
  5. No Max length validation.
  6. Variables can be added to this field.

Advanced Options

Wait For

The life-cycle of push notification has three stages. You can wait for a callback at any of the stages before proceeding further in the flow by selecting any one of the following:

  1. Gateway Submit: The first stage where the configured message along with the destination is submitted to the gateway for delivery.

  2. Delivery Report: The second stage, in which the message is delivered to the targeted device.

  3. Success Delivery Receipt: The third stage or option, when selected, the flow execution will only wait for a success Delivery Receipt. It will ignore the failures. If there are no Success Delivery Receipts returned before the expiry, the node will execute from Ontimeout edge.

    📘

    Success Delivery Receipt is only available as an option if the Destination Type is set as 'UserId'.

  4. Read Report: The last stage is when the target user actually reads the message.

Expiry

Time in seconds or UTC, after which node session will Webex Connect and the flow would proceed to the next node.

Node Outcomes

  • onsuccess: Node executed successfully.
  • onsubmit: Submitted to a gateway.
  • ondrsuccess: Received DR for the transaction.
  • Onread: Received RR for the transaction.
  • onpolicyfail: the flow exits through this node outcome when the expiry condition cannot be met.
  • ondrfail: Failed to receive DR.
  • onerror: the flow exits through this node outcome when there is an error.
  • Ontimeout: Session Webex Connect