App developers can associate a single app with multiple Responsys accounts. If you have multiple Responsys accounts (each possibly corresponding to a separate brand, organization, or geographic region), but have a single app, you can configure and use the same app for each of your Responsys accounts.
This feature is available under our Controlled Availability program. To request access to this feature, please contact your Customer Success Manager or log in to My Oracle Support and create a service request.
Your organization's mobile apps must be built with the 19B Responsys Push SDK (version 6.41.0) or greater.
If you already have multiple Responsys accounts, this topic will guide you through how to associate a single app between those accounts.
Your app needs to be associated with each Responsys account. Ensure that the same iOS and Android credentials are configured for the app in each account.
[1.1] Log in to your Responsys account and navigate to the Mobile App Console.
[1.2] Find your app and click Edit. If you are creating the app for the first time, see Manage Apps and Platforms for instructions.
[1.3] Under Multiple Responsys Account, select Yes.
[1.4] Repeat these steps for each Responsys account for which you want to associate with the app.
You must download and bundle the configuration files from each Responsys account with your app.
[2.1] Log in to your Responsys account and navigate to the Mobile App Console.
[2.2] Find your app and click Edit. If you are creating the app for the first time, see Manage Apps and Platforms for instructions.
[2.3] Click the Platform link on the left-side navigation bar. The Platform page is displayed.
[2.4] Locate the platform for which you want to download the files, and then click Download. A menu list is displayed.
pushio_config.json. The file will download.
[2.6] Bundle the file with your app.
[2.7] Repeat these steps for each Responsys account for which you want to associate with the app.
Apps must maintain a mapping of the app configurations (different configurations might include geography, brand, or organization) to the “Responsys Account Configuration Profile”. The app will then invoke the Responsys SDK APIs for these scenarios.
When an app user installs the app, the app must use the Responsys Push SDK APIs to initialise the app configuration to a specific geography, brand, or organization. Thereby tying the app to a Responsys account.
Whenever an app user switches the app's configuration (geography, brand, or organization) the app must use the Responsys Push SDK APIs to re-configure the app to a new configuration, thereby dis-associating the app from the current account and tying the app to a new Responsys account.
The SDK APIs that enable these operations are detailed below.
The SDK provides several
configureAndRegister() APIs for app developers to setup the SDK without using the
boolean configure (String apiKey, String accountToken, String senderId, String conversionUrl, String riAppId, String accountName) void configureAndRegister (String apiKey, String accountToken, String senderId, String conversionUrl, String riAppId, String accountName)
accountName is a new parameter added to the
pushio_config.json file that indicates the account name used for logging into Responsys.
If you choose to have the SDK configured via
pushio_config.json, you are required to provide the file name of the config file.
boolean configure (String fileName) throws Exception void configureAndRegister (String fileName) throws Exception
fileName is the name of the config file. If the file is not found, an Exception/Error will be thrown.
The SDK will try to find the given file, parse it and initialize the SDK.
If the new
accountToken (provided via API or discovered in the config file) are found to be different than the stored ones, then the SDK will be reset.
It is important to note that the
configureXX() API calls are atomic. So, should the reset or re-initialization process fail for any reason, the SDK should be able to go back to the last successful configuration.
The SDK will make a Responsys unregistration API call
(PushIOManager.unregisterApp()) once the
configureXX() API calls return successfully. SDK reset should happen once the Responsys unregistration API call returns successfully.
PIOConfigurationManager maintains a list of excluded items that are not to be removed during a SDK reset.
installed_at // Install Time uuid // Device ID pushio_data_migrated // Data migration flag user_id // User ID // Push permission and other related (pmr) values
In addition to the above keys, the SDK will also not reset:
Message Center messages