Help / WLanguage / WLanguage functions / Communication / MQTT functions
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WindowsLinuxPHPWEBDEV - Browser code
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Stored procedures
Used to subscribe to a MQTT notification.
Remark: This subscription can be stopped by MQTTUnsubscribe and MQTTUnsubscribeAll.
gMqttSession is mqttSession
lbResult is boolean
lbResult = MQTTSubscribe(gMqttSession, "sensors/sensor1/temperature1", mqttQualityAtLeastOnce, ...
// The procedure specified in MQTTSubscribe must be a project global procedure
PROCÉDURE Proc_MQTTSubscribe(pMqttSession is mqttSession, ...
Topic is string, abuffer is Buffer)
<Result> = MQTTSubscribe(<MQTT session> , <Topic> , <Quality> , <Procedure>)
<Result>: Boolean
  • True if the subscription is implemented,
  • False otherwise.
<MQTT session>: mqttSession variable
Name of the mqttSession variable corresponding to the MQTT session to be used.
<Topic>: Character string
Topic for which the subscription is requested.
<Quality>: Integer constant
Requested quality:
mqttQualityAtLeastOnceThe message will be delivered at least once. The client will transmit the message several times if necessary until the server (broker) confirms that the message was transmitted on the network.
mqttQualityAtMostOnceThe message will be delivered once at most. The message is not stored. It is sent without guarantee of receipt. The MQTT (broker) does not inform the sender that the message was received. The message can be lost if the client is disconnected or if the server is stopped.
mqttQualityExactlyOnceThe message will be necessarily saved by the issuer. It will be transmitted as long as the receiver does not confirm its sending on the network. The issuer is using a sophisticated recognition with the server (broker) to avoid duplicating messages. This mode is slower but it is more secure.
<Procedure>: Name of the WLanguage procedure
Name of the WLanguage procedure ("callback") executed each time a new notification is received.
It must be a global procedure of the project: using an internal procedure is not allowed. This procedure has the following format:
PROCEDURE <Procedure name>(<Connection> is mqttSession,
<Topic> is string, <Message> is Buffer)
  • <Connection> corresponds to a mqttSession variable containing the characteristics of MQTT session.
  • <Topic> corresponds to the message topic.
  • <Message> corresponds to the message content.
Business / UI classification: Business Logic
Component: wd290com.dll
Minimum version required
  • Version 22
This page is also available for…
Click [Add] to post a comment

Last update: 05/26/2022

Send a report | Local help