Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Image Modified

This section contains one example for the MQTT agent.

MQTT Agent

In this workflow example for the MQTT agent

 

MQTT workflow example


The In the above example, the MQTT agent sends any of these 3 UDR types: Error, PublishAck or SubscribeResponse to the Analysis agent, which contains the following code:

Code Block
consume {

...


    debug(input);

...


    if(instanceOf(input, MQTT.SubscribeResponse)){

...


        MQTT.SubscribeResponse resp = (MQTT.SubscribeResponse)input;

...


        MQTT.Publish pub = udrCreate(MQTT.Publish);   

...


        pub.qos = 1;

...


        pub.retain = true;

...


        pub.topic = "test/";

...


        pub.data = resp.data;

...


        udrRoute(pub);

...


    } 

...


}

With this code, the Analysis agent will:

  • Debugs Debug the output of the MQTT agent.
  • If the received UDR is of the SubscriberResponse type, the UDR will be populated into a SubscribeResponse type UDR called resp.
  • Create a UDR of Publish type called pub.
  • Set the qos to 1, to indicate that the message will be publish with the At Least once QoS.
  • Set retain to true.
  • Set the topic to test/
  • Populate the Data with the Data field from the resp UDR.
  • Routes the pub UDR back to the MQTT agent.


Scroll pagebreak