MqttPublish
(FB)
FUNCTION_BLOCK MqttPublish EXTENDS AbbETrig
Publish a MQTT message to MQTT Broker. The properties of the Message (Topic, Payload, QOS, Retain Flag) can be set with the Message input. The Timeout specified in MqttConnectWithCertBuffer or MqttConnectWithCertFile only applies for QoS 1 or QoS 2 messages. If the POU returns an error for a message with QoS 1 OR QoS 2 then the message was NOT sent to the MQTT Broker and the application using this POU has to define if the message shall be re-published and how often that shall be done.
- InOut:
Scope
Name
Type
Initial
Comment
Inherited from
Input
Execute
BOOL
FALSE
A rising edge starts the operation, the output Busy goes to TRUE. In the first cycle all other inputs are read and stored, afterwards they are ignored. A falling edge does not stop the operation. After Done = TRUE or Error = TRUE and Execute = FALSE all outputs will be reset.
AbbETrig
Output
Done
BOOL
FALSE
Operation is completed without error (while outputs Busy and Error are FALSE). This output is TRUE for at least one cycle or until Execute is set to FALSE
AbbETrig
Busy
BOOL
FALSE
Operation is running (while outputs Done and Error are FALSE)
AbbETrig
Error
BOOL
FALSE
Operation is stopped with error (while outputs Busy and Done are FALSE). This output is TRUE for at least one cycle or until Execute is set to FALSE. The output ErrorID gives more details about the error.
AbbETrig
Input
Conn
POINTER TO MQTT_CONNECTION
0
Pointer to valid connection struct created by MqttConnect.
Message
Message to be published.
Output
ErrorID
ERROR_ID.MQTT_ERR_NO_ERROR
Error code description