MQTT Support and Configuring Integration Server for MQTT Messaging on IS 10.5

As you all know that IS 10.5 is released in October 2019 and the below post will give you information on MQTT Support on IS v10.5. Let us start exploring this feature.

Overview

MQTT (Message Queuing Telemetry Transport) is a publish-and-subscribe messaging protocol often used with devices in the Internet of Things (IoT) and machine-to-machine (M2M) communication. MQTT was designed to be light-weight and used with devices for which resources and network bandwidth are constrained, such as a sensor on a smart device. The protocol supports telemetry applications that measure and transmit data from sensors and devices.

Integration Server, which supports MQTT version 3.1.1, can act as an MQTT client that publishes messages to a topic on an MQTT server and an MQTT client that subscribes to topics on the MQTT server.

Supported MQTT Servers

Integration Server supports MQTT version 3.1.1. Integration Server is certified to work with the MQTT servers listed in the following table.

MQTT Server                                                                         Version

Eclipse Mosquito                                                                    1.5 and 1.6

Universal Messaging                                                              10.5

Note: Before reading further download the attached step-by-step document for screenshots.

Setting up MQTT Server on your machine (Windows)

  • Download the “mosquitto-1.6.7-install-windows-x64.exe” from https://mosquitto.org/download/ on your Windows machine and run the installer file as Administrator
  • Upon the successful installation, go to windows services and make sure “Mosquitto Broker” service is “Running” if the status is not “Running” start the service
  • You can also check if Mosquitto broker has started by running the command netstat -an or netstat -an|find "1883" from the command prompt
  • Note the default port is 1883
  • To monitor and administer the “Mosquitto Broker” you can download and install client tools for example "mqttfx-1.7.1-windows-x64.exe" from https://mqttfx.jensd.de/index.php/download you can then connect to MQTT server

Creating an MQTT Connection Alias

  • Open Integration Server Administrator.
  • In the Settings menu of the Navigation panel, click Messaging.
  • Under MQTT Configuration, click MQTT Settings.
  • Click Create MQTT Connection Alias

Demo on MQTT Server Publish and Subscribe using Integration Server

Refer to the demo package attached “MQTTDemov10_5” and step-by-step document for screenshots.

  • Integration Server can publish MQTT messages to an MQTT server using the built-in service pub.mqtt:publish.
  • Integration Server can subscribe to topics by creating an MQTT trigger. The MQTT trigger receives messages published to the topic on the MQTT server and then invokes a trigger service to process the messages.
  • Integration Server uses an MQTT connection alias to create a connection to the MQTT server. An invocation of the pub.mqtt:publish service requires the MQTT connection alias to publish the message to the MQTT server. Similarly, an MQTT trigger specifies the MQTT connection alias that it uses to identify the MQTT server from which it retrieves messages and on which the trigger creates subscriptions.
  • Run the Publisher service
  • Check the server.log file if the message is successfully subscribed from MQTT Server Topic

References: http://techcommunity.softwareag.com/ecosystem/documentation/webmethods/integration_server/pie10-5/10-5_Integration_Server_Administrators_Guide.pdf

http://techcommunity.softwareag.com/ecosystem/documentation/webmethods/integration_server/pie10-5/10-5_Integration_Server_Built_In_Services_Reference.pdf

In my next article, I will show you how to use UM as an MQTT server. For any questions leave a message in the comment section below or you can email me. Happy learning!