FB_IotMqtt5SubscribeProperties

FB_IotMqtt5SubscribeProperties 1:

Der Funktionsbaustein ermöglicht die Definition von verschiedenen Properties, welche beim Anlegen einer Subscription gesetzt werden können. Hiermit können für eine Subscription zusätzliche Eigenschaften definiert und vom Client an den Message Broker übertragen werden.

Allgemeine Beschreibung der Subscribe Properties:

Eigenschaft

Beschreibung

No Local

Wenn bei Verwendung von MQTTv3 eine Nachricht auf demselben Topic gesendet wird, auf das man sich auch subscribed hat, so empfängt man die gesendete Nachricht nochmals. Durch Verwendung dieses Flags empfängt man bereits gesendete Nachrichten nicht noch einmal.

Retained Message Control

Retain-Nachrichten funktionieren weiterhin wie bei MQTTv3, durch dieses Flag werden jedoch Optionen hinzugefügt, welche definieren was beim Empfang von Retain-Nachrichten passieren soll.

Subscription Identifier

Ein numerischer Wert zur Identifizierung einer Subscription.

User Properties

User Properties sind Key/Value Paare, welche zusätzliche Metadaten transportieren können. Diese werden über den Baustein FB_IotMqtt5UserProperties verwaltet. Die Bedeutung der UserProperties ist nicht Bestandteil der MQTT5 Spezifikation und somit applikationsspezifisch.

Syntax

Definition:

FUNCTION_BLOCK FB_IotMqtt5SubscribeProperties EXTENDS FB_IotMqtt5UserProperties
VAR_OUTPUT
    bError           : BOOL;
    hrErrorCode      : HRESULT;
END_VAR

FB_IotMqtt5SubscribeProperties 2: Ausgänge

Name

Typ

Beschreibung

bError

BOOL

Wird TRUE, sobald eine Fehlersituation eintritt.

hrErrorCode

HRESULT

Liefert bei einem gesetzten bError-Ausgang einen Fehlercode. Eine Erläuterung zu den möglichen Fehlercodes befindet sich im Anhang.

FB_IotMqtt5SubscribeProperties 3: Eigenschaften

Name

Typ

Zugriff

Beschreibung

bNoLocal

BOOL

Get, Set

Gibt an, ob die NoLocal-Eigenschaft gesetzt werden soll, siehe oben.

bRetainAsPublished

BOOL

Get, Set

Gibt an ob das Retain Flag eines Publishers bei einer empfangenen Nachricht gesetzt bleiben soll.

nRetainHandling

BYTE

Get, Set

Gibt an wie der Empfang von Retain-Nachrichten erfolgen soll.

0: Retain-Nachrichten werden vom Broker gesendet wenn sich der Client subscribed. (Default-Verhalten von MQTTv3)

1: Retain-Nachrichten werden nur dann vom Broker gesendet, wenn sich der Client subscribed wenn die Subscription nicht existiert.

2: Retain-Nachrichten werden nicht vom Broker gesendet wenn sich der Client subscribed.

nSubId

UDINT

Get, Set

Numerischer Wert zur optionalen Identifizierung einer Subscription.

pSubscribeProperties

POINTER TO MqttSubscribeProperties

Get

Pointer auf ein Objekt vom Typ MqttSubscribeProperties.

Beim Aufruf von FB_IotMqtt5Client.Subscribe() ist es möglich dies direkt zu übergeben.

FB_IotMqtt5SubscribeProperties 4: Methoden

Name

Beschreibung

SetSubscribeProperties

Ermöglicht das Setzen der Subscribe Properties.

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken

TwinCAT v3.1.4026.0

IPC oder CX (x86, x64, ARM)

Tc3_IotBase (>= v3.4.2.0)