# MQTT Subscribe (TLS-Beta)

Dieser Funktionsblock verbindet sich mit einem MQTT-Broker und hört auf Nachrichten zu einem gewählten Topic über eine TLS‑(sichere) Verbindung. Er empfängt eingehende Text‑Payloads und signalisiert, wenn neue Daten angekommen sind, sodass Sie diese in Ihrem Szenario weiterverarbeiten oder weiterleiten können.

## 📥 Eingänge

`Enable`\
Dieser boolesche Eingang steuert, ob das Abonnement aktiv ist. Auf TRUE setzen, um Nachrichten zu empfangen; FALSE deaktiviert die Verarbeitung.

## 📤 Ausgänge

`Data`\
Text‑Payload der zuletzt empfangenen Nachricht.

`New Data`\
Boolesches Flag, das für eine einzelne Auswertung TRUE wird, wenn eine neue Nachricht empfangen wurde.

## 🕹️ Steuerungen

`Server / Broker`\
Geben Sie die Adresse oder den Hostnamen des MQTT‑Brokers ein.

`Port`\
Setzen Sie den Broker‑Port (häufiger TLS‑Port ist 8883).

`Topic`\
Geben Sie das Topic an, auf das abonniert werden soll. Eingehende Nachrichten zu diesem Topic erscheinen am Ausgang `Data`.

`Client ID`\
Optionale Kennung für diesen Client beim Broker.

`Username`\
Optionaler Benutzername für die Broker‑Authentifizierung.

`Password`\
Optionales Passwort für die Broker‑Authentifizierung.

`Use TLS`\
Umschalter zum Aktivieren des sicheren (TLS) Verbindungsmodus.

`CA Certificate`\
Option, ein CA‑Bundle zur TLS‑Zertifikatsprüfung bereitzustellen oder darauf zu verweisen (der Block unterstützt System‑CA‑Verifizierung).

`Connect`\
Bedienelement, um die Verbindung mit den aktuellen Einstellungen zu initiieren oder neu herzustellen.

`Auto Reconnect`\
Umschalter, um bei Verbindungsverlust automatisch neu zu verbinden.

Hinweis: Falls die Block‑UI kompakt ist, können einige erweiterte Optionen gruppiert oder in einem "Advanced"‑Bereich liegen.

## 🎯 Funktionen

* Sicheres MQTT‑Abonnement mit TLS‑Unterstützung für verschlüsselte Kommunikation.
* Live‑Kennzeichnung neuer Nachrichten über den Ausgang `New Data`, damit nachgelagerte Verarbeitung nur bei Bedarf ausgelöst wird.
* Flexible Topic‑Auswahl zur Anmeldung bei jedem gültigen MQTT‑Topic.
* Verbindungsparameter und grundlegende Authentifizierungsoptionen für die meisten Broker‑Konfigurationen.
* Ruhiges Neuverbinden (graceful reconnect), sodass temporäre Netzstörungen keine manuelle Eingriffe erfordern.

## 📝 Nutzungshinweise

1. Konfigurieren Sie Ihre Broker‑Details mit `Server / Broker`, `Port` und ggf. den Authentifizierungsfeldern.
2. Tragen Sie das Topic ein, das Sie überwachen möchten, im Feld `Topic`.
3. Aktivieren Sie den Block, indem Sie TRUE an den Eingang `Enable` senden oder die Connect/Enable‑Steuerung in der Block‑UI verwenden.
4. Lesen Sie eingehende Text‑Payloads vom Ausgang `Data`. Verwenden Sie `New Data`, um nachgelagerte Blöcke nur bei neuen Nachrichten auszulösen.
5. Wenn Sie Verbindungsparameter ändern, verwenden Sie `Connect` (oder toggeln Sie `Enable`), um die Änderungen anzuwenden.

## 📊 Bewertung

Wenn der Block aktiv ist, hält er ein Abonnement auf das konfigurierte Topic aufrecht. Bei jedem Lauf gibt er die zuletzt empfangene Payload auf `Data` aus und setzt `New Data` nur dann auf TRUE, wenn seit der letzten Auswertung eine neue Nachricht angekommen ist.

## 💡 Tipps und Tricks

* Verwenden Sie `Parse Data Dictionary` oder `Data to JSON` nach `MQTT Subscribe (TLS-Beta)`, um eingehende JSON‑Texte in strukturierte Werte zu konvertieren.
* Zum Protokollieren eingehender Nachrichten verbinden Sie `Data` mit `CSV Export` oder `Data to JSON` und anschließend mit einem Export‑Block.
* Kombinieren Sie mit `Debug Input`, um Nachrichten während der Einrichtung anzuzeigen oder zu prüfen.
* Nutzen Sie `Logic Input` oder `Rising Edge`, um Aktionen nur auszulösen, wenn `New Data` TRUE wird.
* In verteilten Szenarien koppeln Sie diesen Block mit `Data Write Global` / `Data Read Global`, um die letzte Nachricht in verschiedenen Zweigen des Szenarios zu teilen.
* Enthält die Nachricht Bildreferenzen oder kodierte Bilddaten, dekodieren Sie das Bild und senden es an `Show Image`, um eine Vorschau zu sehen.
* Zum Senden von Antworten oder Bestätigungen verwenden Sie den entsprechenden `MQTT Publish (TLS-Beta)`‑Block.

## 🛠️ Fehlersuche

* Verbindungsfehler: Überprüfen Sie `Server / Broker`, `Port` und die Netzwerkverbindung. Stellen Sie sicher, dass TLS‑Port und Firewall‑Regeln korrekt sind.
* Authentifizierungsfehler: Prüfen Sie `Username` und `Password` und bestätigen Sie die Broker‑ACLs.
* Keine Nachrichten: Überprüfen Sie den genauen `Topic`‑String (Wildcards und Hierarchie sind relevant) und ob ein anderer Client tatsächlich veröffentlicht. Nutzen Sie einen einfachen Test‑Client zur Überprüfung.
* Unerwartetes Nachrichtenformat: Verwenden Sie `Parse Data Dictionary` oder `String Operations`, um Payloads zu analysieren und zu normalisieren.
* TLS‑Probleme: Wenn die Zertifikatsprüfung fehlschlägt, stellen Sie sicher, dass das CA‑Bundle verfügbar ist oder nutzen Sie die System‑CA‑Option. Nur zur Fehlersuche können Sie eine unverschlüsselte Verbindung (falls vom Broker erlaubt) testen, um die Ursache einzugrenzen.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.augelab.com/german/function-blocks/input-output/communication/mqtt-subscribe-tls-beta.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
