Intelligent solutions get even smarter with IBM Real-Time Asset Locator

IBM® recently introduced software to help organizations optimize their use of critical physical assets by integrating asset location tracking technologies with powerful IBM Tivoli® asset management software. IBM Real-Time Asset Locator is one of those new products. Coupled with IBM Maximo® Asset Management, IBM Real-Time Asset Locator can help you leverage location tracking sensor data and bring intelligence and visibility to aspects of your business that were previously not directly monitored in near real time. This article looks at the IBM Real-Time Asset Locator and its integration with Maximo Asset Mangement to see how the products interoperate and how they establish the foundation on which business solutions can be built. This content is part of the IBM WebSphere Developer Technical Journal.


Tim Hanis (, WebSphere Sensor Events Chief Architect, IBM

Author photoTim Hanis is the lead architect in WebSphere Sensor Events development at IBM in Research Triangle Park, NC. He has led a number of development projects within IBM and has extensive experience helping customers solve business problems with WebSphere products.

25 August 2010

Also available in Chinese


IBM Real-Time Asset Locator provides the intelligent integration of real-time location data and associated operational events between IBM Maximo Asset Management (hereafter referred to as Maximo) and the hardware providers who supply the location and condition event data. The primary integration point is the location tracking of tagged assets in real time. In some cases, depending on the capabilities provided by specific Real Time Location System (RTLS) hardware providers, environmental condition data might also be available (such as temperature, humidity, and so on), as well as operational events (like call buttons on tags that enable signaling back to the receiver to indicate some associated operational condition).

The base infrastructure that supports the integration with the RTLS hardware providers, as well as a set of internal component services (management and business services), has been available in recent products (such as IBM WebSphere® Sensor Events), while the direct integration with Maximo is a new capability provided with Real-Time Asset Locator.

Location tracking data acquisition and flow

Figure 1 shows the high-level data flow of sensor event data through Real-Time Asset Locator originating from a variety of device providers, being processed by event services on Real-Time Asset Locator, and subsequently integrated with business process service provided in Maximo. As you can see, Real-Time Asset Locator provides integration points for services that can be provided through a number of business systems. This is an important additional capability because a solution that leverages new sensor data could evolve beyond a single back-end processing system.

While it’s not a back-end business processing system, let’s look at the integration with the business event correlation engine, IBM WebSphere Business Events (which is included with Real-Time Asset Locator for use within sensor event solutions) to show the extended value that can be achieved with event processing systems.

Figure 1. Sensor event data flow through Real-Time Asset Locator
Figure 1. Sensor event data flow through Real-Time Asset Locator

The primary integration point between Real-Time Asset Locator and Maximo Asset Management is through the IBM Maximo Integration Framework. Depending on the specifics of the integration requirements, the synchronous HTTP interface will be used for operations like asset query requests, and the asynchronous JMS interface will be used for operations like asset move requests. In either case, the integration will flow through the IBM Maximo Enterprise Service as represented in the Maximo integration architecture shown in Figure 2. While this integration at first appears like it could be just a fairly direct communication path, there is actually more to providing an integration framework that supports intelligent location event processing. A few main aspects to the asset management integration provided by Real-Time Asset Locator will be discussed more closely in the next sections.

Figure 2. Maximo integration structure
Figure 2. Maximo integration structure

This is the basic scenario of real-time location updates provided by a RTLS hardware provider, delivered as location updates to Maximo. There are a number of steps involved in this process.

First, notice that the RTLS provider will report the location of a tag (by ID) for which you will need to update the location of an asset (by ID) in Maximo. The following assumptions are made:

  • The mapping of tag ID to asset ID needs to be performed.
  • Tags are assigned to assets but can be removed, reassigned, or replaced. These are not permanent associations.
  • Asset definition data is maintained solely within Maximo (that data is not replicated for Real-Time Asset Locator processing).
  • Initial provisioning (the definition of assets and the association of tags with assets) is performed in Maximo using Maximo function and interfaces.
  • Ongoing changes to those definitions or associations are performed in Maximo.
  • The tag ID is stored in the Maximo ASSETTAG field. This is a consistent use of that existing field in other solution scenarios.

Typically, RTLS providers report location data for each tag on a predetermined time interval. For example, tags might be set to "beacon" every second for tracking the movements of people in a secure area, or every 30 minutes for tracking relatively stable objects like IT assets. This is completely flexible and depends on the usage scenario. In any case, the flow of location events starts with the tag and the data is "pushed" to the server. The RTLS provider might provide location data on a coordination system in the form of x,y,z,id , or for two-dimensional data in the form of x,y,id. Alternatively, the RTLS provider can also provide that data in the form of location information with semantic meaning, such as in the form of a zone or room identified by name. This varies both by RTLS provider and by the interface used to access the location data.

When location events are reported from the RTLS provider, and Real-Time Asset Locator is configured to do an immediate update of the location field in Maximo for the asset associated with the RTLS tag, the following sequence of events occur:

  1. Real-Time Asset Locator will query Maximo with the ID of the RTLS tag to get the asset information. Again, the assets have been populated with this tag ID in their ASSETTAG fields.
  2. Attributes of the asset will be cached in Real-Time Asset Locator for subsequent interactions.
  3. If the RTLS provider returned location information as "zone-determined" data, then this location value will be directly used to update the location field for the asset in Maximo. Therefore, the location data configured in the RTLS provider system must be consistent with the location terminology understood in Maximo.
  4. If the RTLS provider returned location information coordinate data (like x,y,z,id or x,y,id), then Real-Time Asset Locator is responsible for determining the more semantically meaningful location information from this raw data. Real-Time Asset Locator has location services to provide this mapping. This requires a common reference with the RTLS provider and coordinate mapping scheme to identify zones or rooms in the correct relative positions. Also, the location information must be consistent with the location terminology understood in Maximo.
  5. Real-Time Asset Locator will update the location information for the asset in Maximo using the ASSETNUM and SITEID as keys to the asset.

Real-Time Asset Locator might need to query Maximo for asset management information during normal event processing, as you just saw in this initial scenario for getting the mapping from RTLS tag ID to Maximo asset ID. While this mapping could also have been done within the Maximo context through a user exit in an enterprise service for example, it makes sense to support a model of event enrichment outside of any single end-point (like Maximo) so that event correlation and business event determination can occur prior to distribution to application systems -- and also so that enriched events can be distributed to multiple back-end systems based on scenario requirements.

RTLS call buttons

In addition to basic location update information, RTLS providers can also support call buttons on the active tags. These buttons can be used as a signal so that a user can trigger an activity or business process. The specific business process request might be based solely on the asset itself, or perhaps the combination of the asset and its current location will determine the action to perform.

To keep consistent with the roles of the components involved in the solution, the RTLS provider is expected to send a "button press" event. Real-Time Asset Locator will be responsible for interpreting the button event and map it to a change in state of an asset. Solutions developed within Maximo will be responsible for monitoring that change in state and execute the appropriate business action or workflow. Similarly, for a deployment scenario that includes software components beyond Maximo, that call button press could also trigger a business process flow running in IBM WebSphere Process Server, or as input to event correlation in WebSphere Business Events.

You explicitly do not want Real-Time Asset Locator to both interpret the button press event and create the business activity, such as create the workflow in Maximo. This would not be a natural use of either the run time components of Real-Time Asset Locator or its tooling. The role of Real-Time Asset Locator here is to determine what the button press means and relay that information to Maximo or to other business processing systems.

So, the execution flow that happens here is similar to the flow that occurs for a location change event to Maximo. Here, Real-Time Asset Locator will:

  1. Receive the button press event, along with current location information, from the RTLS provider.
  2. Interpret the button press event and map it to a valid asset STATUS (more on this in the next section).
  3. Resolve the location information, if needed.
  4. Query Maximo with the ID of the RTLS-provided tag to get the asset information. Again, the assets have been populated with this tag ID in their ASSETTAG fields.
  5. Update the asset STATUS field to the interpreted value, along with the current location information using ASSETNUM and SITEID as keys.

Listing 1 shows a minimal example of the XML used to update the asset STATUS and LOCATION through the Maximo integration service.

Listing 1. Update STATUS and LOCATION
<SyncMXASSET xmlns="">
	<MXASSETSet action="AddChange">

Button press interpretation

A button press on a tagged asset might have a relatively fixed interpretation. For example, call button 1 might mean that the asset is operational, while call button 2 might mean the asset needs maintenance. For this direct mapping, IBM WebSphere Application Server administration is used to provide the framework to define those maps. The mapping will be created using custom properties defined within a WebSphere Application Server resource environment.

In more complicated scenarios, you might want to interpret the expected operational behavior of a button press based on coordinating more available information. For example, call button 1 on a tag being worn by a person might have a much different expected meaning than call button 1 on a tag affixed to mobile hospital equipment. Similarly, the same call button on the same mobile piece of hospital equipment might have a different expected interpretation if that equipment is in the emergency room than if it were in a storage or maintenance area. To support more complex scenarios like this, you can leverage the correlation engine shipped with Real-Time Asset Locator, which is WebSphere Business Events, to interpret the existing conditions based on a set of defined rules.

This scenario brings back a point made earlier. In order to support meaningful event correlation and interpretation using WebSphere Business Events, you need to know more about the events themselves than simply the location and tag ID information provided by the RTLS provider. You need to know some attributes of the asset associated with the RTLS tag so that intelligent business rules can determine what action might need to be performed.

Location tracking visualization

Real-Time Asset Locator also provides a browser-based user interface that graphically shows the real time location of tracked assets on a map. In WebSphere Sensor Events, this function utilized a Web browser-based graphics package. With Real-Time Asset Locator, IBM ILOG® jViews is the technology base used for the visualization component.

An ILOG jViews applet is the visualization component that links to a persistent store using a Real-Time Asset Locator-defined data interface to render the asset location map. Deployment scenarios of this UI can be flexible. For Maximo integration scenarios, you can put the visualization UI in a new application within Maximo. For other scenario usages, the visualization UI can be rendered independently in a Web browser.


The addition of real-time asset location capabilities to Maximo Asset Management can provide new visibility to part of an organization’s operation that previously was not directly monitored. This visibility enables an organization to monitor key metrics on valuable assets and improve asset utilization. This brings direct business value to an organization, such as the ability to:

  • Improve asset utilization and employee productivity by providing the current location of existing resources.
  • Reduce capital expenditure by reducing asset loss, shrinkage, and resulting over-purchasing of assets.
  • Enforce business rules and regulatory requirements with location-based events and automatically triggered workflows.



developerWorks: Sign in

Required fields are indicated with an asterisk (*).

Need an IBM ID?
Forgot your IBM ID?

Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.


All information submitted is secure.

Dig deeper into WebSphere on developerWorks

Zone=WebSphere, Information Management
ArticleTitle=Intelligent solutions get even smarter with IBM Real-Time Asset Locator