By using push notifications, you can notify workers about assigned work, such as
emergency work orders. Push notifications can be enabled for both the IBM® Maximo
Inspector app and the IBM
Maximo® Technician apps. You can enable push
notifications for both Android and iOS devices.
Before you begin
Before you configure push notifications for mobile apps, ensure that you:
-
Install the Maximo
Asset Management limited
availability fix for push notifications and the interim fix or limited availability fix for Maximo Integration Framework, depending on your version of
Maximo
Asset Management. For more information, see
Setting
up push notifications.
-
Install the Maximo Anywhere application container. For more information, see Installing the Maximo Anywhere application container.
In Maximo
Asset Management, ensure that the Java™ Message Service (JMS) queues are configured for either your WebLogic Server or your WebSphere® Application Server.
Android devices must be registered with
Google and have internet
connectivity to access Google
services. iOS devices must be
registered with Apple and have
internet connectivity to access Apple services.
If your organization has a firewall that restricts the traffic to or from the internet, ensure
that your firewall accepts outgoing connections from your Maximo
Asset Management server to android.googleapis.com.
For Maximo
Asset Management server, the Maximo Anywhere push notification rules are configured
as part of Maximo
Asset Management, which uses
Maximo Integration Framework, endpoints, and JMS services
to push notifications to the device.
About this task
Push notification is the ability of a mobile device to receive messages that are pushed from a
server. Notifications are received regardless of whether the app is running. Each app that is
enabled for push notifications has an adapter for this capability.
In Maximo Anywhere, the notifications
allow the user to launch-in-context to the specific record.
Procedure
-
On the Maximo
Asset Management administrative
workstation, in the
install_home\maximo\applications\maximo\mboejb\ejbmodule\META-INF, rename the
following files:
| File name |
New file name |
| ejb-jar.xml |
ejb-jar-old.xml |
| weblogic-ejb-jar.xml |
weblogic-ejb-jar-old.xml |
| ibm-ejb-jar-bnd.xmi |
ibm-ejb-jar-bnd-old.xmi |
- Edit and uncomment the
NOTF MDB text blocks in the following
files:
- ejb-jar-notf.xml
- weblogic-ejb-jar-notf.xml
- ibm-ejb-jar-bnd-notf.xmi
-
Rename the files that you edited files as follows:
| File name |
New file name |
| ejb-jar-notf.xml |
ejb-jar.xml |
| weblogic-ejb-jar-notf.xml |
weblogic-ejb-jar.xml |
| ibm-ejb-jar-bnd_notf.xmi |
ibm-ejb-jar-bnd.xmi |
-
Set up the Java Message Service (JMS).
| Option |
Description |
| In WebSphere Application Server
environments |
Add a logical address for the notification bus destination queue (NOTFBD) in the service
integration bus:
- In the WebSphere Application Server Network
Deployment administrative console, click Service Integration > Buses.
- Click intjmsbus and then, under Destination
resources, click Destination.
- Click New, ensure that the Queue option is
selected as the destination type, and click Next.
- In the Identifier field, enter NOTFBD and in the
Description field, enter Notification Queue, then
click Next. For the identifier, you must use this value and it must contain
only uppercase letters.
- In the Bus Member drop-down list, choose
Node=ctgNode01:Server=MXServer.
- Click Next, review your selections, and click
Finish to complete the creation of the NOTFBD bus destination queue.
- Click Buses > intjmsbus > Destinations and click
NOTFBD.
- Select None as the exception destination value, verify that
Keep count of failed deliveries per message is enabled, and click
Apply and then Save.
Create the NOTF JMS queue:
- From the WebSphere Application Server Network
Deployment administrative console, click Resources > JMS > Queues.
- In the Scope drop-down list, choose
Node=ctgNode01:Server=MXServer and click New.
- Verify that the Default Messaging Provider option is selected and click
OK.
- In the Name field, enter NOTF. This value must
contain only uppercase letters.
- In the JNDI name field, enter
jms/maximo/int/queues/notf.
- In the Bus name field, enter intjmsbus.
- In the Queue name field, enter NOTFBD and click
OK and then Save.
Enter the activation specifications:
- From the WebSphere Application Server Network
Deployment administrative console, click Resources > JMS > Activation
specifications.
- In the Scope field, enter Cell=ctgCell01,
Node=ctgNode01, and Server=WLServer, and click
New.
- Verify that Default Messaging Provider is selected and click
OK.
- In the Name field, enter notfact.
- In the JNDI name field, enter notfact.
- In the Destination JNDI name field, enter
jms/maximo/int/queues/notf.
- In the Bus name field, enter intjmsbus.
- In the Maximum batch size field, enter 10.
- In the Maximum concurrent MDB invocations per endpoint field, enter
5 and click OK and then
Save.
|
| In WebLogic Server
environments |
- In the WebLogic Server Administration
Console, go to Services > Persistent Stores, and create the following file stores:
- sqinstore
- cqinstore
- sqoutstore
For each file store, specify an existing directory in the system, for example,
c:\jms, and set each target value to
AdminServer.
- Go to Services > Messaging > JMS Servers and create three JMS Servers and
set each target value to AdminServer:
- sqinserver
- cqinserver
- sqoutserver
For the sqinserver JMS Server, enter sqinstore for the persistent
store. For the cqinserver JMS Server, enter cqinstore for the persistent
store. For the sqoutserver JMS Server, specify sqoutstore for the persistent
store.
- Go to Services > Messaging > JMS Modules, create a JMS module named
intjmsmodule, and set the descriptor file name value to
jms/intsmsmodule-jms.xml.
- Create four Queue type resources for the intjmsmodule module:
For the notf queue, specify jms/maximo/int/queues/notf for the JNDI
name, create a new subdeployment with the same name, notf, and select notf as
the target.
For the sqin module, specify jms/maximo/int/queues/sqin
for the JNDI name, create a new subdeployment with the same name, sqin, and select
sqinserver for the target.
For the sqout module, specify
jms/maximo/int/queues/sqout for the JNDI name, create a new subdeployment
with the same name, sqout, and select sqoutserver for the target.
For
the cqin module, specify jms/maximo/int/queues/cqin for the JNDI name, create
a new subdeployment with the same name, cqin, and select cqinserver for the
target.
- Create a Connection Factory type resource named intjmsconfact.
For the intjmsconfact
resource, specify jms/maximo/int/cf/intcf for the JNDI name.
Go to
Advanced Targeting and create a new subdeployment with the same name,
intjmsconfact.
Select AdminServer, sqinserver,
sqoutserver, cqinserver as the targets.
Set the
XA option for the connection factory and then activate all the changes.
- Restart WebLogic Server.
|
-
Start the Tivoli®'s process automation engine
configuration tool and select Update the database with the UpdateDB Lite
feature.
-
If you did not enable push notifications when you installed Maximo Anywhere, copy the Firebase push notification
certificates for each app to the Android and IOS directories. The certificates are the JSON files
that you download when you register the applications with Fire base Cloud Messaging in the Firebase
console.
Table 1. Directories for push notification
certificates
| Platform |
Application |
Directory |
| Android |
IBM Maximo
Inspector |
MaximoAnywhere\apps\Inspection\pushcertificate\android |
| Android |
IBM
Maximo Technician |
MaximoAnywhere\apps\WorkExecution\pushcertificate\android |
| iOS |
IBM Maximo
Inspector |
MaximoAnywhere\apps\Inspection\pushcertificate\ios |
| iOS |
IBM
Maximo Technician |
MaximoAnywhere\apps\WorkExecution\pushcertificate\ios |
-
If you did not enable push notifications when you installed Maximo Anywhere, in the
maximoanywhere_home\Anywhere\MaximoAnywhere\apps\app_name
directory, edit the app-feature.properties file for each app for which you are
enabling push notifications. Locate the pushnotification.enabled property, and
set this property to true. Save and close the file.
-
Run the build all command.
- Build the container for the applications to enable Push Notification support. For more
information, see Building the Maximo Anywhere application container.