ConsumeMQTT 2025.5.31.15

Bundle

org.apache.nifi | nifi-mqtt-nar

Beschreibung

Abonniert ein Thema und empfängt Meldungen von einem MQTT-Broker

Tags

IOT, MQTT, verarbeiten, lauschen, abonnieren

Eingabeanforderung

FORBIDDEN

Unterstützt sensible dynamische Eigenschaften

false

Eigenschaften

Eigenschaft

Beschreibung

Broker-URI

Die URI(s), die Sie für die Verbindung mit dem MQTT-Broker verwenden (z. B. tcp://localhost:1883). Die Schemas „tcp“, „ssl“, „ws“ und „wss“ werden unterstützt. Um „ssl“ zu verwenden, muss die Eigenschaft „SSL Context Service“ eingestellt sein. Wenn eine durch Kommas getrennte URI-Liste festgelegt ist (z. B. tcp://localhost:1883,tcp://localhost:1884), verwendet der Prozessor einen Round-Robin-Algorithmus, um bei einem Verbindungsausfall eine Verbindung zu den Brokern herzustellen.

Client-ID

Zu verwendende MQTT-Client-ID. Wenn nicht festgelegt, wird eine UUID generiert.

Connection Timeout (seconds)

Maximales Zeitintervall, das der Client auf den Aufbau der Netzwerkverbindung zum MQTT-Server wartet. Das Standard-Timeout beträgt 30 Sekunden. Ein Wert von 0 deaktiviert die Timeout-Verarbeitung, d. h. der Client wartet, bis die Netzwerkverbindung erfolgreich hergestellt wurde oder fehlschlägt.

Gruppen-ID

Zu verwendende MQTT-Verbrauchergruppen-ID. Wenn die Gruppen-ID nicht festgelegt ist, verbindet sich der Client als einzelner Verbraucher.

Keep Alive Interval (seconds)

Legt den maximalen Zeitabstand zwischen gesendeten oder empfangenen Meldungen fest. Es ermöglicht es dem Client zu erkennen, wenn der Server nicht mehr verfügbar ist, ohne auf das TCP/IP-Timeout warten zu müssen. Der Client sorgt dafür, dass innerhalb jedes Keep-Alive-Zeitraums mindestens eine Meldung über das Netzwerk übertragen wird. Wenn innerhalb dieses Zeitraums keine datenbezogene Meldung eingeht, sendet der Client eine sehr kleine „Ping“-Meldung, die vom Server bestätigt wird. Ein Wert von 0 deaktiviert die Keep-Alive-Verarbeitung auf dem Client.

Last Will Message

Die Meldung, die als „Last Will“ des Clients gesendet werden soll.

Last Will QoS Level

QoS-Ebene, die bei der Veröffentlichung der „Last Will“-Meldung verwendet werden soll.

Last Will Retain

Ob der „Last Will“ des Clients aufbewahrt werden soll.

Last Will Topic

Das Thema, an das der „Last Will“ des Clients gesendet werden soll.

MQTT Specification Version

Die Version der MQTT-Spezifikation bei der Verbindung mit dem Broker. Weitere Informationen finden Sie in den Beschreibungen der zulässigen Werte.

Max Queue Size

Die MQTT-Meldungen werden immer an die Abonnenten eines Themas gesendet, unabhängig davon, wie häufig der Prozessor ausgeführt werden soll. Wenn der „Run Schedule“ (Ausführungzeitplan) deutlich hinter der Geschwindigkeit zurückliegt, mit der die Meldungen bei diesem Prozessor eintreffen, kann es zu einem Rückstau in der internen Warteschlange dieses Prozessors kommen. Diese Eigenschaft gibt die maximale Anzahl von Meldungen an, die dieser Prozessor gleichzeitig in der internen Warteschlange im Speicher halten kann. Diese Daten würden im Falle eines Neustarts von NiFi verloren gehen.

Password

Kennwort, das bei der Verbindung mit dem Broker verwendet wird

Quality of Service(QoS)

Die Dienstgüte (QoS), mit der die Meldung empfangen werden soll. Akzeptiert die Werte „0“, „1“ oder „2“: „0“ für „höchstens einmal“, „1“ für „mindestens einmal“, „2“ für „genau einmal“.

SSL Context Service

Der SSL Context Service wird verwendet, um Client-Zertifikatsinformationen für TLS/SSL-Verbindungen bereitzustellen.

Session Expiry Interval

Nach diesem Intervall beendet der Broker den Client und löscht den Sitzungsstatus.

Sitzungsstatus

Ob ein neuer Ablauf gestartet oder ein vorheriger Ablauf fortgesetzt werden soll. Weitere Informationen finden Sie in den Beschreibungen der zulässigen Werte.

Topic Filter

Der MQTT-Themenfilter zum Festlegen der Themen, die abonniert werden sollen.

Username

Benutzername, der bei der Verbindung zum Broker verwendet werden soll

add-attributes-as-fields

Wenn Sie diese Eigenschaft auf „true“ setzen, werden in jedem Datensatz Standardfelder hinzugefügt: _topic, _qos, _isDuplicate, _isRetained.

message-demarcator

Mit dieser Eigenschaft haben Sie die Möglichkeit, FlowFiles auszugeben, die mehrere Meldungen enthalten. Mit dieser Eigenschaft können Sie eine Zeichenfolge (interpretiert als UTF-8) angeben, die zur Abgrenzung mehrerer Meldungn verwendet wird. Dies ist eine optionale Eigenschaft. Wenn sie nicht angegeben ist und wenn kein Record Reader/Writer definiert ist, resultiert jede empfangene Meldung in einem separaten FlowFile. Zur Eingabe von Sonderzeichen wie z. B. einen Zeilenumbruch verwenden Sie je nach OS CTRL+Enter oder Shift+Enter.

record-reader

Der Record Reader, der zum Parsen empfangener MQTT-Meldungen in Datensätzen verwendet wird.

record-writer

Der Record Writer, der für die Serialisierung von Datensätzen verwendet wird, bevor diese in ein FlowFile geschrieben werden.

Beziehungen

Name

Beschreibung

Meldung

Die MQTT-Meldungsausgabe

parse.failure

Wenn eine Meldung nicht mit dem konfigurierten Record Reader analysiert werden kann, wird der Inhalt der Meldung als eigenes FlowFile an diese Beziehung weitergeleitet.

Schreibt Attribute

Name

Beschreibung

record.count

Die Anzahl der empfangenen Datensätze

mqtt.broker

MQTT-Broker, der die Meldung gesendet hat

mqtt.topic

MQTT-Thema, zu dem die Meldung empfangen wurde

mqtt.qos

Die Qualität des Dienstes für diese Meldung

mqtt.isDuplicate

Ob diese Meldung möglicherweise ein Duplikat einer bereits empfangenen Meldung ist

mqtt.isRetained

Ob diese Meldung von einem aktuellen Herausgeber stammt oder vom Server als letzte zu diesem Thema veröffentlichte Meldung „aufbewahrt“ wurde.

Siehe auch: