MessageIn Event

Fired when an incoming message has been received and/or fully acknowledged.


class MQTTMessageInEventParams {
  int PacketId();
  const QString &Topic();
  int QOS();
  const QByteArray &Message();
  bool Retained();
  bool Duplicate();
  int EventRetVal();
  void SetEventRetVal(int iRetVal);
// To handle, connect one or more slots to this signal. void MessageIn(MQTTMessageInEventParams *e);
// Or, subclass MQTT and override this emitter function. virtual int FireMessageIn(MQTTMessageInEventParams *e) {...}


The MessageIn event fires once for each incoming message either immediately after it is received (QoS 0), or after it has been fully acknowledged (QoS 1 and 2).

  • PacketId: The message packet Id. This will always be -1 if QOS is 0.
  • Topic: The message's topic string.
  • QOS: The message's QoS level.
  • Message: The message data.
  • Retained: Whether or not this message was received as a result of subscribing to a topic.
  • Duplicate: Whether or not the server has indicated that this message is a duplicate of another message sent previously.

Refer to MessageAck for more information about QoS 1 and 2 message processing steps.

// MessageIn event handler.
mqtt1.OnMessageIn += (s, e) => {
  Console.WriteLine("Received message from topic '" + e.Topic + "' with QoS " + e.QOS + ":");

Copyright (c) 2022 /n software inc. - All rights reserved.
IPWorks MQ 2020 Qt Edition - Version 20.0 [Build 8162]