Introduction to IBM WebSphere MQ Telemetry
People, businesses, and governments increasingly want to use IBM® WebSphere® MQ Telemetry to interact more smartly with the environment we live and work in. IBM WebSphere MQ Telemetry connects all kinds of devices to the internet and to the enterprise, and reduces the costs of building applications for smart devices.
The following diagrams demonstrate some typical uses of IBM WebSphere MQ Telemetry:
![Image of every house's energy usage data being sent in MQTT messages to a service provider, and WebSphere MQ Telemetry sending back to the houses control commands based on analysis of energy usage data.](q001030a.gif)
- An MQTT message that contains energy usage data sent to service provider.
- A telemetry application sends control commands that are based on analysis of energy usage data.
- For more information, see Telemetry scenario: Home energy monitoring and control.
![Image of MQTT messages containing health data being sent to your hospital or doctor, and returning message alerts or feedback.](q001030b.gif)
- A telemetry application sends your health data to your hospital and doctor.
- MQTT message alerts or feedback are returned, based on analysis of your health data.
- For more information, see Telemetry scenario: Home patient monitoring.
![Image of card transaction data being sent to the bank's server and WebSphere MQ Telemetry identifying and notifying the one person from the thousands.](q001030c.gif)
- A simple card transaction is sent to the bank's server.
- IBM WebSphere MQ Telemetry identifies the one person from the thousands, alerting the customer that their card has been used.
- IBM WebSphere MQ Telemetry can use the simplest input of information, and locate that individual.
What is WebSphere MQ Telemetry?
- It is a feature of IBM WebSphere MQ that extends the universal messaging backbone provided by IBM WebSphere MQ to a wide range of remote sensors, actuators and telemetry devices. IBM WebSphere MQ Telemetry extends IBM WebSphere MQ so that it can interconnect intelligent enterprise applications, services, and decision makers with networks of instrumented devices.
- The two core parts of WebSphere MQ Telemetry are:
- The IBM WebSphere MQ Telemetry service that runs inside of the IBM WebSphere MQ server.
- IBM WebSphere MQ Telemetry clients that are distributed to devices together with the applications.
What can it do for me?
- MQ Telemetry uses the MQ Telemetry Transport (MQTT) to send and receive data between your applications and the IBM WebSphere MQ Queue Manager.
- MQTT is an open messaging transport that allows MQTT implementations to be created for a wide variety of devices.
- MQTT clients can run on small footprint devices that might have limited resources.
- MQTT works efficiently on networks where the bandwidth might be low, where cost of sending data is expensive or which might be fragile.
- Message delivery is assured and decoupled from the application.
- Application programmers do not need to have communications programming knowledge.
- Messages can be exchanged with other messaging applications. These may be other telemetry applications, MQI, JMS or enterprise messaging applications.
How do I use it?
- Use the IBM WebSphere MQ Explorer and its associated tools to administer the WebSphere MQ Telemetry feature of MQ.
- Use MQTT clients in your applications to connect to a queue manager, publish and subscribe for messages.
- Distribute your application with the MQTT client to the device where your application is to run.
How does it work?
- The MQ Telemetry (MQXR) service turns an IBM WebSphere MQ queue manager into an MQTT server
- The MQTT server understands the MQTT message transport and can receive messages from and send messages to MQTT clients.
- MQ Telemetry ships with a number of Telemetry clients that implement the MQTT message transport. These are often referred to as MQTT clients.
- A basic Telemetry client works like a standard MQ client but can run on a much wider variety of platforms and networks.
- An Advanced Telemetry Client acts as a network concentrator to connect an even greater number of MQTT clients to a single queue manager. It can also provide store and forward for small devices that lack a means to buffer messages during short network outages.
- IBM WebSphere MQ Telemetry daemon for devices is an Advanced Telemetry client that is part of IBM WebSphere MQ Telemetry. See Telemetry daemon for devices for more information.
- MQTT is a publish subscribe protocol:
- An MQTT client application can publish messages to an MQTT server.
- When an IBM WebSphere MQ queue manager acts as the MQTT server other applications that connect to the queue manager can subscribe for and receive the messages from the MQTT client.
- An MQTT client can subscribe for messages that are sent by applications that connect to an MQ queue manager.
- The queue manager acts as router distributing messages from publishing applications to subscribing applications.
- Messages can be distributed between different types of client applications. For instance, between Telemetry clients and JMS clients.
IBM WebSphere MQ Telemetry replaces the SCADA nodes that were withdrawn in version 7 of WebSphere Message Broker and runs on Windows, Linux®, and AIX®. Migration of telemetry applications from using WebSphere Message Broker version 6 to use IBM WebSphere MQ Telemetry and WebSphere Message Broker version 7.0 provides information to help you migrate applications from using the SCADA nodes in WebSphere Message Broker V6. Telemetry applications using WebSphere Message Broker version 7 subscribe to topics that are common to MQTT clients. They receive publications from MQTT clients using MQInput nodes and publish to MQTT clients using publication nodes.