Oracle Help Center | Oracle Responsys Mobile App Platform Cloud Service title

Message Center

Mobile App Message Center enables Marketers to persist their sent Push campaign messages, so that mobile app users can view them later in the mobile app. Mobile App Developers can fetch these messages from Responsys and display them to mobile app users.

The Oracle Responsys Mobile App Platform Cloud Service SDK provides an API for fetching the Message Center messages data from Responsys. You must work with the Marketing team to design and develop the user experience in your mobile app.

BEFORE YOU BEGIN:

Platform-specific topics: This topic provides Developer information common to all platforms. To view information for the platform(s) you support for your mobile app, refer to the topics for each supported platform:

"Screenshot illustrating an example message center"

 


How Message Center Works

Message Center requires implementation by the Mobile App Developers, and it must be enabled in a Push Campaign by Marketers using Responsys. At runtime, Responsys and the mobile app interact to provide the messages to a known user or device. This section provides details about how Message Center is set up and how it behaves at runtime.

Development

[1.] The Responsys Integrated Push customer decides to implement Message Center and submits a service request to Oracle Support.

[2.] Oracle enables the customer’s Responsys account for Message Center.

[3.] Mobile App Developers create the user experience in their mobile app, with input from the Marketing team.

[4.] If the team requires additional, custom message centers, Mobile App Developers log in to the Mobile App Developer Console and add message centers to their mobile app. You can add up to four message centers. (Responsys supports five message centers total: Primary plus four custom message centers.)

"Screenshot illustrating where to add custom Message Centers"

[5.] Mobile App Developers add the SDK call for fetching messages to their code, and then handle the response from Responsys. Depending on your mobile app design, you may choose to use all or some of the data that Responsys returns to the mobile app.

Campaign Design

Marketers use the Push Message Designer in Responsys to design their Push campaign or, as of 18D, they can create a Message Center campaign. They select whether Responsys should save their Push campaign to the Message Center after the campaign launch, and they configure additional information about the message, such as the subject, message icon, message center name (if using one other than Primary), and message expiration date. For a Message Center campaign, campaign messages are available to the mobile apps but a Push notification is not sent to mobile app users.

Runtime

[1.] Marketers launch the campaign. If the Message Center message is part of a Push campaign, Responsys sends the Push notification to the audience that the Marketers define. Otherwise, the Message Center message becomes available for the next fetch from the mobile apps.

[2.] If the Message Center message is part of a Push campaign, mobile app users receive the Push notification.

[3.] On the first mobile app launch after installation, and at fixed intervals after that (currently every two hours), the SDK can fetch messages from Responsys. The SDK will cache the messages on the device. Responsys returns a list of up to 20 for each Message Center defined for the app. These messages are the most recent and unexpired messages stored in the message center, for either a logged-in user or for this specific device. The messages received may vary, depending on whether the user is logged in to the app. Processing occurs in the background, and the user can continue using in the app.

[5.] The mobile app user access the Message Center in the mobile app.

[6.] The mobile app displays the cached messages.

[7.] The mobile app user sees the messages listed in the mobile app’s Message Center.

[8.] If the Message Center message is part of a Push campaign, and depending on the Push Notification Action defined by the Marketer, App Developers could build varying user experiences for mobile app users. Expected actions for each type:

App Icon Badges

App Icon Badges are supported through Message Center messaging Campaigns. Marketers can display a Badge Count on the App Icon on an end user's device to indicate to the app user the number of new Message Center messages available. Marketers can Increment the Badge Count for every message sent to user's device. App Icon Badging with Message Center Messages can drive increased app user engagement rates.

 

Development Notes

 

Fetching Messages from Message Center

This section describes how the SDK obtains the messages and the data Responsys that is available to your mobile app. The platform-specific sections describe how to use the calls described in this section in mobile apps supporting iOS and Android.

Messages are pre-fetched (for all Message Centers) when the application is first launched after installation. Messages are refreshed at fixed intervals (currently every two hours). If the mobile app user exits the mobile app, and then re-opens it, the SDK refreshes Message Center messages from Responsys only if it is due for a refresh.

Data fetched may vary as as follows:

When your mobile app calls fetchMessageForMessageCenter, the SDK fetches messages from the SDK's managed local storage. Once the mobile app fetches a list of messages by calling fetchMessagesForMessageCenter, the app must maintain its own storage for the fetched messages.

Transactions with the Responsys servers are asynchronous. The SDK and Responsys process the calls in the background, and the user can continue using the app.

Using the Cached Messages

When the SDK pre-fetches the messages, Responsys returns the most recent 20 non-expired Message Center messages for each Message Center configured for the app, for the user or device:

Data retention policy

The duration Oracle caches Message Center messages is subject to change at anytime. Currently, messages are retained for 7 days from the fetched date, and then they are deleted. Apps should not rely on the SDK cache to act as storage for their app's Message Center messages. Apps must maintain their own storage and be developed to either retain messages for as long as messages are required, or delete messages when no longer needed. Each message has a unique message ID. Apps should check a message's ID to check whether or not the app has already retrieved and stored a message.

Retrieving rich content

Your mobile app needs to fetch the rich content for the individual Rich Push message. Rich content is served only once for a message, therefore apps must store the rich content upon retrieval.

Message Properties

For each message fetched from Responsys by the SDK, the following message properties are stored in the mobile app's Message Center data store:

Property Description Type Notification action Required/Optional
id Unique message ID Text All Required
sent_ts Sent timestamp - when the campaign was launched UTC Time in ISO 8601 format All Required
subject Subject line of the message Text All Required
message Push notification text, composed by the Marketer. Text All Required
deeplink_url Deep link destination URL. Set by the Marketer. URL Encoded Open URL (Deep link) Optional
richmessage_url External content URL for Rich Push. Set by the Marketer. URL Encoded Open Rich Message (Where rich message content is provided from an external URL) Optional
richmessage_html External content URL for Rich Push. Set by the Marketer. Text Open Rich Message (Where rich message HTML content is selected from the Content Library or entered in the Push Message Designer) Optional
icon_url Message icon image URL. Set by the Marketer. URL Encoded All Optional
expiry_ts Expiration time stamp for time-sensitive messages. Set by the Marketer in the account’s time zone. UTC Time in ISO 8601 format All Optional
message_center_name Message Center name - Destination message center when an App implements multiple message centers. Defaults to Primary. Text All Required

Refer to the platform-specific sections for more information about the data returned for the mobile app SDK calls to the local Message Center data store.


 

Troubleshooting Message Center

As of the 18B Update and SDK version 6.37.0, the SDK handles any error messages returned when it tries to pre-fetch the Message Center messages from Responsys. Please refer to the platform-specific sections for additional troubleshooting information.

 


Platform-specific topics

To enable Message Center in your mobile app code, refer to the platform-specific topics: