1. WHITE PAPER
BRISTLECONE FIORI PUSH
NOTIFICATION SYSTEM
Enabling Push Notification in SAP Fiori Client
BRISTLECONE PUSH NOTIFICATION SYSTEM HELPS COMPANIES
IN PROMPTLY ALERTING THEIR USERS OF THE NEED OF AN
ACTION, EVEN WHEN USERS ARE NOT USING AN
APPLICATION, AND THUS EXPEDITING DECISIONING.
2. 1
2016 Ankur Garg
WHITE PAPER
Expediting information-based decision making is key element of increasing employee
productivity and eventually optimizing the supply chain. Companies have extended
access of ERP systems on mobile devices to facilitate anytime-anywhere information-
based decision making. SAP user bases are achieving the same using SAP Fiori, which is
a simplified user experience guideline for applications that radically redefines the way
people should interact with an ERP system. SAP Fiori delivers a fundamentally different
user experience by being centered on tasks and activities that matters most to the user.
SAP Fiori extends role-based applications with consumer grade user experience across
lines of businesses, that can be accessed across devices – desktop, laptop, mobile
phones, and tablets. Since SAP Fiori applications can be accessed seamlessly across
devices, there is an inherent need to enable applications to make the best use of
underlying device features. SAP Fiori applications are already enabled to leverage many
of mobile devices’ native features like camera, barcode scanners, and geo-location
using default SAP Fiori Client. Perhaps the only, but very critical, unsupported mobile
device native feature by an SAP Fiori Client is Push Notification. This essentially means
that companies are losing the opportunities to engage with their end-users and
decision makers when they are not hooked onto the SAP application.
This paper discusses how Bristlecone Push Notification System helps companies to
engage with their end-users by swiftly alerting them for need of an action and thus
increasing employee productivity, expediting decision making, and optimizing supply
chain further.
Mobile Device Push Notifications
A push notification is an alert that pops up on a mobile phone with a voice and data
network enabled. App publishers can send the alert message at any time, and message
appears on the screen, often even on locked screen and when users are using some
other application. Yes! users don’t have to be in the application or actively using their
devices to see the notifications received on their device. Common examples where
push notification has been conventionally used so far is watching latest sports scores,
receiving an OTP (One Time Password), or receiving a sales promotion.
3. 2
2016 Ankur Garg
WHITE PAPER
In most aspects, Push notifications look like an SMS text, but they are only received by
the users who have an app installed. What differentiated Push notifications from SMS
is their ability to be branded with app logo, and when clicked, they launch the
application and often initiates a desired action - say downloading a coupon.
Push notification is a feature extended by mobile platform like iOS, Android, Fire OS,
Windows and BlackBerry, and is extended as a service by the platform provider, such
as Apple for IOS and Google for Android.
For app publishers, push notifications are a way to speak directly to a user. They don't
get caught in spam filters, or forgotten in an inbox — click-through rates can be twice
as high as email. They can also remind users to use an app, whether the app is open or
not. The only constraint is that users should have installed the application and have not
disabled push notification of the application using device settings. This effectively
means that Push Notification is not an intrusion into personal lives and likings of users.
How does Bristlecone Fiori Push Notification System work
Bristlecone Fiori Push Notification System is simplified by breaking complex
architecture into simplified and loosely coupled independent server components, and
leverages services extended by mobile device operating system providers.
Here is an overall architecture of BFPNS system.
OS Push Notification Services Platform
Push notification service platform is extended by all major mobile device operating
system providers to enable third party application developers to send notification data
4. 3
2016 Ankur Garg
WHITE PAPER
to their applications. IOS developers use the Apple platform called Apple Push
Notification Service (APNS) and Android developers use Google Cloud Messaging
(GCM) to send notifications to apps developed for respective platforms. Using these
platforms, registered mobile application can send notification containing information
including badges, sounds, or custom text alerts to the mobile device. APNS and GCM
handles device/application registration requests from the devices, as well as acts as a
gateway for the Provider to send the notification to the device.
Bristlecone Fiori Client
The Bristlecone Fiori Client is a native mobile application runtime container for SAP
Fiori. The Bristlecone Fiori Client overcomes limitations in the mobile browser by
providing a reliable asset caching mechanism for SAP Fiori, and also provides device
APIs (such as camera and barcode scanner) to Fiori web applications. While device APIs
are provided by standard SAP Fiori client also, Bristlecone Fiori Client further enhances
the application by including functionality using which devices can register on OS push
notification service platform, and also receive and interpret Push Notifications from
them.
Registration Server
Registration server is a cloud hosted server by Bristlecone that maintains a registry of
all mobile devices that has Bristlecone Fiori Client installed on them.
Bristlecone Fiori Client registers itself on the OS push notification service platform. This
registration process returns a unique registration token back to the application, which
can be used to send notification to the application at a later point in time. Bristlecone
Fiori Client registers the device with Registration Server along with device information
and this registration token received from service platform.
Same Registration Server maintains a register to SAP users and device information of
the user.
Relay Server
Relay Server is responsible of sending alerts from an SAP server to correct user. To
accomplish the same, when it receives messages to be sent to SAP User IDs, it asks
notification server for the registration details of the users concerned. It formats the
message with appropriate logo, sound, text message, and further information required,
and sends to appropriate push notification platform (APNS or GCM). In case message
needs to be sent to multiple users, it runs multiple threads to ensure optimal
performance.
Bristlecone Fiori
Client further
enhances the
application by
including
functionality using
which devices can
register on OS push
notification service
platform, and also
receive and
interpret Push
Notifications from
them
5. 4
2016 Ankur Garg
WHITE PAPER
Alerts are formatted so that when user clicks on the message, Bristlecone Fiori Client
is automatically launched for user to perform an action.
Push Workflow Modifier
Push Workflow Modifier is a simple ABAP transport that is imported in SAP server, an
ECC or S4Hana server, and configured for appropriate Registration Server, Relay Server,
and kind of messages to be sent as push notification to the users. This piece of code
uses User Exits in ABAP programs and gets triggered at appropriate moments to send
notifications to the users.
Subscribing to Bristlecone Fiori Push Notification System
Configuring Push Workflow Modifier creates a connection between SAP Server in which
the modifier is created and Relay server. SAP Server does not maintain any connection
with Registration Server. This also means that no user registration is needed at the time
of subscribing to the system. When a user uses Bristlecone Fiori Client, based on the
server to which user logs in, a registry of his device, registration token, and SAP user id
is created in the Registration Server.
Workflows – the ideal Use Case
Technology is enabler. Putting it to effective use is innovation. Same is the case with
Bristlecone Push Notification System. Best usage of this system to engage with a user
can be defined only by the business needs of a subscriber. Still, one ideal use case of
putting this system in action is to integrate it with the approval workflow. System can
be configured so that for every requisition or an order (purchase order, sales order,
work order etc.) that is created in the system, as soon as record moves to a manager
for approval, manager gets an alert with basic details of the requisition or order to be
approved displayed on the screen. This has actually reduced approval time of requests
from days to a few minutes. Additionally, the system can be configured to alert the
user, who raised the requisition, of the approvals.
Suggested Best Practices
Push notifications are a direct path of communication with users facilitated by OS
providers. Subscribers of Bristlecone Push Notification System should treat the ability
to communication with users via push notifications as a privilege, not a right.
Subscribers must provide prompt information to seek swift action; if they don't use it
rationally, users may ignore push notifications or turn it off. Some users may actually
shift to standard Fiori Client and uninstall the Bristlecone Fiori client altogether, closing
this valuable channel for subscribers to connect with users.
Treat the ability to
communication
with users via push
notifications as a
privilege, not a
right. Subscribers
must provide
prompt
information to seek
swift action; if they
don't use it
rationally, users
may ignore push
notifications or
turn it off.
6. 5
2016 Ankur Garg
WHITE PAPER
Analytics and measurement are important tools for improving your app's performance.
But it's important to send compelling push notifications that are valuable to users and
that drive action.
Messaging strategies and tactics need to be measured and tested. Strategies such as
maximizing opt-in rates, ensuring new users are properly onboarded and reducing app
user churn rates are all key to an app's success.
More innovation ahead
This year, Bristlecone’s Enterprise Mobility COE is working towards providing deep
linking of push notification messages into the Fiori Client. The idea is to allow an alert
message sent as push notification, which currently opens Bristlecone Fiori Client, to
take the user to the record that needs attention. It means, for example, if a user gets
an alert to approve a purchase order, taping on the alert message will not only launch
Bristlecone Fiori Client, but after authentication, takes user directly to the approval
application with record under consideration displayed for approval.
Future Opportunities
Possibilities are endless. I am sure Bristlecone Enterprise Mobility COE team working
on this system will soon pickup more exciting features, that may not excite many, but
will be a boon to the needy. Two such opportunities to consider are – First, real time
tracking and monitoring of conversion of notifications in real time and gamify the same
to rate users, and second, A/B test message wherein 2 differently formatted messages
are sent to same user group and tracked to find which formatting of the message got
better attention.
About Bristlecone Next Generation Business | Enterprise Mobility
Next Generation Business is competency group within Bristlecone helping its
customers optimize their supply chain through analytics and mobility solutions.
Enterprise mobility is focused Center of Excellence generating next generation
solutions.
References
Supported plugins for SAP Fiori Client:
http://help.sap.com/saphelp_smp3012sdkmfadev/helpdata/en/dd/84adc65a5e4a24
90e52d2394b7d954/content.htm?frameset=/en/fc/001ea645814b6d986669da2879a
b58/frameset.htm¤t_toc=/en/9e/a3834525da4350a2c1f46a68aca73b/plain.ht
m&node_id=72&show_children=false
About Author:
Ankur leads Enterprise
Mobility practice at
Bristlecone.
He has more than 16
years of experience in
practice and delivery
management.
He is responsible for
adopting and
operationalizing new
generation
technologies and
building feasible
business solutions
leveraging technology.
7. 6
2016 Ankur Garg
WHITE PAPER
How Push Notification works:
https://developer.apple.com/library/ios/documentation/NetworkingInternet/Concep
tual/RemoteNotificationsPG/Chapters/ApplePushService.html
https://developers.google.com/cloud-messaging/