Using HCL Interact Outbound Gateway for HCL Mobile Push Notification

To use this mobile push outbound or publisher gateway, you must configure Interact, HCL® Marketing Cloud, and the gateway.

Use the following configurations as an example for your configuration.

You can download this gateway from https://www-945.ibm.com/support/fixcentral/swg/downloadFixes

Configuring HCL Marketing Cloud

  1. Make sure you have an HCL Marketing Cloud account with push access. Also make note of your Client ID, Client Secret, and Refresh Token.
  2. On the Data tab, create a new database. Add a new Mobile User ID to the database along with the default fields.
  3. On the Search tab, search by the Mobile User ID field. Hover the mouse key on first No email field. You will see the recipient ID at the bottom of browser window. Add this recipient ID to the Interact profile table.

Configuring the HCL Interact Outbound Gateway for HCL Mobile Push Notification

  1. Download and install the mobile push outbound gateway from https://www-945.ibm.com/support/fixcentral/swg/downloadFixes
  2. Configure the silverpopEngagePushConfig.properties file.

    For example:

    OauthServiceURL=https://apipilot.silverpop.com/oauth/token
    pushServiceURL=https://apipilot.silverpop.com/rest/channels/push/sends
  3. Configure the silverpopEngagePushContentMapping.properties file.

    For example:

    Interact Profile table attributes:
    appKey=appKey
    engageRecipientId=recipientId
    mobileUserId=mobileUserId
    deviceType=deviceType
    
    Interact Offer attributes:
    simpleSubject=simpleSubjectAttr
    simpleMessage=simpleMessageAttr
    simpleActionData=simpleActionDataAttr
    simpleActionType=simpleActionTypeAttr
    simpleActionLabel=simpleActionLabelAttr
    personalizeAttributeList=personalizeAttributeList
    contentId=ContentID
    campaignId=campaignId
    

Configuring Interact

  1. Create the following offer attributes.
    simpleActionDataAttr: string   
    simpleActionLabelAttr: String
    simpleActionTypeAttr: string
    simpleMessageAttr: string
    simpleSubjectAttr: string
    contentID: string
    campaignId=string
    personalizeAttributeList=string
  2. Create an offer template with the offer attributes and the following offer values.
    simpleActionDataAttr: www.ibm.com
    simpleActionLabelAttr: Open URL
    simpleActionTypeAttr: url
    simpleMessageAttr: <Enter your message text here>
    simpleSubjectAttr: <Enter subject here>
    contentID: ID of the push message template that is created in Engage.
    PersonalizeAttributeList: A comma separated list of attribute name 
    value pairs that you want to put in the personalizationDefaults 
    section of the payload to be sent to Engage.

    When you use the contentID attribute, the other simple.. attributes are ignored as the complete details are picked up from the Engage template.

    Example personalizedAttributeList
    personalizeAttributeList=discount=10,Offercost=20
    campaignId=campaignname that you want to use for this campaign.
  3. Your profile table has the following columns and values.
    appKey: gcsTQo6v79
    recipientId: 13472242  
    deviceType: android or ios
    
  4. Add the gateway under the Interact | triggeredMessage | gateways configuration property. Set ClassName to
    com.ibm.interact.offerorchestration.outboundgateway.silverpop.engage.push.
    SilverpopEngagePushOutboundGateway
    Set the ClassPath to file://<EngagePushGateway_home_dir>/lib/OMO_OutboundGateway_Silverpop_Engage_Push.jar.
  5. Add OMO-silverpopEngagePushConfig as a parameter under Interact | triggeredMessage | gateways | [gatewayName] | Parameter Data. Set the value to the file path of your silverpopEngagePushConfig.properties file.
  6. Add OMO-silverpopEngagePushContentMapping as a parameter under Interact | triggeredMessage | gateways | [gatewayName] | Parameter Data. Set the value to the file path of your silverpopEngagePushContentMapping.properties file.
  7. Add OMO-conf_outbound_common_httpConnectionConfig as a parameter under Interact | triggeredMessage | gateways | [gatewayName] | Parameter Data. Set the value to the file path of your httpConnectionConfig.properties file.

    In the httpConnectionConfig.properties file in the Interact folder, specify the timeout.

    For example:
    connectTimeoutMs=6000
  8. Create a channel and a handler under Interact | triggeredMessage and use the [Mobile_Push] gateway that you created above in that channel. This channel is used in the triggred message to send push messages.
  9. Create an interactive channel and add a triggered message that uses the offer you created previously to the trigger rule.
  10. Deploy the interactive channel.
  11. From the API Test client, perform a startSession for interactive channel where triggered message rule is configured and the postEvent which triggers the offer to Mobile Push.
  12. Check the Interact logs to make sure the push was sent successfully. The status code 202 means successful delivery.