OBDX SERVICING APPLICATION

This document includes following topics:

1.1 Pre requisite

1.2 Create Project

1.3 Adding UI to workspace

Use any 1 option below

Extract unbuilt UIClosed User Interface and traverse to OBDX_Installer/installables/ui/channel/_build folder and perform below steps

npm install -g grunt-cli
npm install
set OBDX_IS_GRUNT=true
node render-requirejs/render-requirejs.js mobile
npm install cwebp-bin

Copy "vendor" directory from _build/node_modules/cwebp-bin/ to _build/node_modules/grunt-cwebp/node_modules/cwebp-bin

grunt --max_old_space_size=5120 grunt mobilebuild --platform=ios && node 
component.js && node integrity-generator.js && node listComponents.js
Linux -
sudo npm install -g grunt-cli
sudo npm install
export OBDX_IS_GRUNT=true
node render-requirejs/render-requirejs.js mobile
sudo npm install cwebp-bin

Copy "vendor" directory from _build/node_modules/cwebp-bin/ to _build/node_modules/grunt-cwebp/node_modules/cwebp-bin

node --max_old_space_size=5120 $(which grunt) mobilebuild --platform=ios && 
node component.js && node integrity-generator.js && node listComponents.js

Delete originations folder inside images (images/originations) and ensure webhelp folder is not copied.

1.4 Open project in Xcode

Open Xcode by clicking ZigBank.xcodeproj at zigbank/platforms/ios/

SERVER_TYPE NONOAM
KEY_SERVER_URL http://mum00chx.in.oracle.com:3333
WEB_URL http://mum00chx.in.oracle.com:3333
PinnedCertificateName PinnedCertificateName Name of SSL certificate without extension of OBDX App Server
SERVER_TYPE OAM
KEY_SERVER_URL Eg. http://mum00chx.in.oracle.com:8003 (This URL must be of OHS without webgate)
WEB_URL Eg.http://mum00chx.in.oracle.com:3333
KEY_OAUTH_PROVIDER_URL http://mum00aon.in.oracle.com:14100/oauth2/rest/token
APP_CLIENT_ID <Base64 of clientid:secret> of Mobile App client
APP_DOMAIN OBDXMobileAppDomain
WATCH_CLIENT_ID <Base64 of clientid:secret> of wearables
WATCH_DOMAIN OBDXWearDomain
SNAPSHOT_CLIENT_ID <Base64 of clientid:secret> of snapshot
SNAPSHOT_DOMAIN OBDXSnapshotDomain
LOGIN_SCOPE OBDXMobileAppResServer.OBDXLoginScope
PinnedCertificateOAMName Name of SSL certificate without extension of OAM Server
PinnedCertificateName Name of SSL certificate without extension of OBDX App Server
SERVER_TYPE IDCS
KEY_SERVER_URL Eg. http://mum00chx.in.oracle.com:8003 (This URL must be of OHS without webgate)
WEB_URL Eg.http://mum00chx.in.oracle.com:3333
KEY_OAUTH_PROVIDER_URL http://obdx-tenant01.identity.c9dev0.oc9qadev.com/oauth2/v1/token
APP_CLIENT_ID <Base64 of clientid:secret> of Mobile App client
WATCH_CLIENT_ID <Base64 of clientid:secret> of wearables
SNAPSHOT_CLIENT_ID <Base64 of clientid:secret> of snapshot
LOGIN_SCOPE obdxLoginScope
OFFLINE_SCOPE urn:opc:idm:__myscopes__ offline_access
CHATBOT_ID The tenant ID
CHATBOT_URL The web socket URL for the ChatApp application in IBCS
PaymentPurpose Payment purpose code for Siri Payments
CurrencyCode CurrencyClosed A generally accepted form of money, including coins and paper notes, which is issued by a government and circulated with in an economy. code for Siri Payments
PaymentPurposeRequiredFlag Payment purpose required for Siri payments
SUITENAME Group identifier for sharing keystore information. Same as given in app groups
BankName Name of bank to be shown on touch id / face id popup
CertificateType Extension of SSL Pinned certificates (Eg cer/der)

1.5 Generating Certificates for Development, Production and Push Notifications

Create all certificates (by uploading CSR for keychain utility), provisioning profiles and push certificates as shown below by login in developer console. For development add device UUIDs and add same to provisioning profiles. Add capabilities as shown below and ensure the bundle identifier matches the one of the application in Xcode

Mobile Application Builder-iOS

Mobile Application Builder-iOS

Mobile Application Builder-iOS

Ensure AppGroups capability is added to all profiles and for mobile profile SiriKit, App Groups, Push Notifications must by added.

Mobile Application Builder-iOS

Note the certificate/bundle name

Mobile Application Builder-iOS

Note the Team ID from top right corner

Navigate to the “Keys” section and create APNS key

Note APNS key and download the .p8 file. Copy the .p8 to config/resources\mobile

Mobile Application Builder-iOS

Update the password as shown below –

Sr. No. Table PROP_ID CATEGORY_ID PROP_VALUE Purpose
1 DIGX_FW_CONFIG_ALL_B ios_cert_path DispatchDetails resources/mobile/AuthKey_RBPLJN6ZU5.p8 Update the certificate path/name if required. Should be relative to config directory
2 DIGX_FW_CONFIG_ALL_B APNS DispatchDetails <Password> Eg - RBPLJN6ZU5 Provides id of .p8 certificate
3 DIGX_FW_CONFIG_ALL_B APNSKeyStore DispatchDetails DATABASE or CONNECTOR Specifies whether to pick certificate password from database or from connector. Default DB (No change)
4 DIGX_FW_CONFIG_ALL_B Proxy DispatchDetails <protocol,proxy_address> Provides proxy address, if any, to be provided while connecting to APNS server. Delete row if proxy not required. Example: HTTP,148.50.60.8:80
5 DIGX_FW_CONFIG_ALL_B CERT_TYPE DispatchDetails For dev push certs add row with value ‘dev’ For prod push certificates this row is not required
6 DIGX_FW_CONFIG_ALL_B APNS_BUNDLE DispatchDetails Eg. com.ofss.digx.obdx.zigbank BundleClosed The practice of grouping related products features and/or services such as home loan, transaction account, and insurance, together to give customers better prices, incentives, or more favorable terms, is known as bundling. Name
7 DIGX_FW_CONFIG_ALL_B APNS_TEAMID DispatchDetails Eg. 3NX1974C93 Team ID of Apple developer account

If CONNECTOR is selected in Step 2 update certificate id as below

Mobile Application Builder-iOS

Adding Bundle Identifiers

Bundle identifiers needs to be added in the Info.plist of each the frameworks along with the Signing Capabilities tab in Xcode. For example, the bundle identifier used is abc.def.ghi.jkl. The steps to be followed are,

1.6 Removal of iMessage Extension and WatchKit Extension

a. Remove the iMessage extension from "Target Dependencies"

b. For removal of WatchKit Extension, click on the corresponding x(cross button) of “Embed Watch Content”

Mobile Application Builder-iOS

c. Remove the targets ObdxImessageExtension, OBDXWatchApp and OBDXWatchApp Extension under Targets section of Project.

d. Select ObdxImessageExtension, OBDXWatchApp and OBDXWatchApp Extension folders and OBDXWatchFramework.framework under Project Navigator; Right Click then select Delete; select Remove References when prompted. The said folders and framework should be deleted from the Finder as well.

Mobile Application Builder-iOS

e. Select “Manage Schemes”

Mobile Application Builder-iOS

f. Remove the schemes for Watch and iMessage

Mobile Application Builder-iOS

g.OBDXWatchFramework.framework should be removed from the simulator folder shipped.

Back