Zustimmung Endbenutzerlizenzvertrag (EULA)
Vielen Dank für Ihr Interesse an unseren Produkten. Gerne stellen wir Ihnen den gewünschten Download zur Verfügung.
Vor dem Herunterladen der Software bestätigen Sie bitte, dass Sie den Endbenutzerlizenzvertrag gelesen haben und in allen Punkten akzeptieren…
Zustimmung Endbenutzerlizenzvertrag (EULA)
Vielen Dank für Ihr Interesse an unseren Produkten. Gerne stellen wir Ihnen den gewünschten Download zur Verfügung.
Vor dem Herunterladen der Software bestätigen Sie bitte, dass Sie den Endbenutzerlizenzvertrag gelesen haben und in allen Punkten akzeptieren…
Zustimmung Endbenutzerlizenzvertrag (EULA)
Vor dem Herunterladen der Software bestätigen Sie bitte, dass Sie den Endbenutzerlizenzvertrag gelesen haben und in allen Punkten akzeptieren…
Zustimmung Endbenutzerlizenzvertrag (EULA)
Vor dem Herunterladen der Software bestätigen Sie bitte, dass Sie den Endbenutzerlizenzvertrag gelesen haben und in allen Punkten akzeptieren…
PLCcom für MQTT – Downloads und Ressourcen
SDK – Informationen
EU-Konformität (CRA)
Cyber Resilience Act (EU 2024/2847)
Changelog PLCcom für MQTT
Version 2.2.2
- Korrektur der TLS-Vertrauensprüfung: Als vertrauenswürdig eingestufte Zertifikate (Trusted-Ablage oder bekannte Zertifizierungsstelle) werden jetzt regelkonform auch bei Verbindungen über IP-Adressen akzeptiert.
- Behebung zyklischer Verbindungsabbrüche zu Java-basierten MQTT-Brokern über TLS beim Keep-Alive.
- Vereinheitlichung der PKI-Zertifikatsablage mit den PLCcom-OPC-UA-Produkten (Ordner own, trusted, issuer, rejected).
Version 2.2.1
- Verbesserungen an Stabilität, Fehlerbehandlung und Broker-Kompatibilität.
- Erweiterung der Konfigurationsmöglichkeiten des MQTT Brokers um Ressourcengrenzen und Zeitüberwachung der Nachrichtenzustellung.
- Erweiterung der öffentlichen APIs um zusätzliche Komfortfunktionen für Client und Broker.
- Weitere Vereinheitlichung des Funktionsumfangs der .NET- und Java-Fassung.
- Bereitstellung für die aktuellen unterstützten .NET- und Java-Zielplattformen.
- Aktualisierung der Standalone-Test-Apps für MQTT Client und Broker.
Version 2.1.3 (nur Java Version)
- Aktualisierung der Java-Komponenten PLCcom MQTT Core, Client und Broker.
- Verbesserungen an Stabilität, Fehlerbehandlung und Kompatibilität.
- Überarbeitung der Java-Workshops und API-Dokumentation.
- Aktualisierung der Standalone-Test-Apps für MQTT Client und Broker.
- Optimierungen am Build-, Paketierungs- und Releaseprozess.
Version 2.1.2
- Aktualisierung der Pakete und Artefakte für PLCcom MQTT Core, Client und Broker.
- Erweiterung und Vereinheitlichung der MQTT Client- und Broker-Komponenten für .NET und Java.
- Überarbeitung der öffentlichen APIs und Konfigurationsmöglichkeiten.
- Bereitstellung für die aktuellen unterstützten .NET- und Java-Zielplattformen.
- Aktualisierung der C#-, Visual-Basic- und Java-Workshops.
- Aktualisierung der Standalone-Test-Apps für MQTT Client und Broker.
- Ergänzung der Release-Unterlagen um SBOM und Ergebnisse der Schwachstellenprüfung.
- Bereitstellung der CRA-relevanten Produkt-, Security- und Integrationsdokumentation für die Produktlinie 2.x.
Version 2.1.1
- Vereinheitlichung der gemeinsamen Produktlinie für .NET und Java.
- Konsolidierung der Client-, Broker- und Core-Komponenten.
- Ausbau der Unterstützung für MQTT 3.1.1 und MQTT 5.0.
- Erweiterung der Tests für Verbindungsaufbau, Nachrichtenverarbeitung und fehlerhafte MQTT-Pakete.
- Verbesserungen bei Diagnose, Fehlerbehandlung und Konfiguration.
- Überarbeitung der deutschen und englischen Produktdokumentation.
Version 2.0
- Grundlegende Überarbeitung der MQTT-Architektur.
- Aufteilung in eigenständige Core-, Client- und Broker-Komponenten.
- Ausbau des einbettbaren MQTT Brokers für den direkten Betrieb innerhalb eigener Anwendungen.
- Unterstützung von TCP, TLS, WebSocket und Secure WebSocket.
- Ausbau der Unterstützung für MQTT 3.1.1 und MQTT 5.0.
- Erweiterung der Unterstützung für QoS 0, 1 und 2.
- Erweiterung der Sicherheitsfunktionen für Zertifikate, Authentifizierung und Topic-bezogene Autorisierung.
- Einführung von Workshops und Standalone-Test-Apps für Client und Broker.
Version 1.5.1
- Konsolidierung der MQTT-Komponenten für den Einsatz in weiteren PLCcom-Produkten.
- Vereinheitlichung der Projektstruktur für Core, Client und Broker.
- Erweiterung der automatisierten Tests für Client-, Broker- und Core-Funktionen.
- Überarbeitung des gemeinsamen Build- und Paketierungsprozesses.
- Verbesserungen an Stabilität, Diagnose und Fehlerbehandlung.
Version 1.4.x
- Ausbau der Broker-Funktionen für den eingebetteten Betrieb in eigenen Anwendungen.
- Erweiterung der Session- und Subscription-Verwaltung.
- Verbesserungen bei Retained Messages und der Nachrichtenverteilung.
- Ausbau der Unterstützung für mehrere Clients und parallele Verbindungen.
- Erweiterung der Diagnose- und Konfigurationsmöglichkeiten.
Version 1.3.x
- Ausbau der Unterstützung für MQTT 5.0.
- Erweiterung der MQTT-5-Eigenschaften für Nachrichten und Verbindungen.
- Verbesserungen an QoS-Verarbeitung, Last Will und Retained Messages.
- Erweiterung der Unterstützung für Sessions und Subscriptions.
- Erweiterung der internen Tests für Protokoll-, Verbindungs- und Fehlerfälle.
Version 1.2.x
- Erweiterung der MQTT-Client-Funktionen für Publish und Subscribe.
- Ausbau der Unterstützung für QoS 0, 1 und 2.
- Verbesserungen am Verbindungsaufbau und an der Wiederverbindung.
- Erweiterung der Unterstützung für Last Will und Retained Messages.
- Aufbau gemeinsamer technischer Grundlagen für Client- und Broker-Komponenten.
Version 1.1.2
- Korrekturen an der Paketierung der Java-Artefakte.
- Bereinigung der ausgelieferten JAR-Dateien von internen Build-Informationen.
- Überarbeitung der Signier- und Releasekonfiguration.
- Verbesserungen am internen Veröffentlichungsprozess.
- Kleinere Korrekturen an Client-, Broker- und Core-Komponenten.
Version 1.1.1
- interner Paketstand der PLCcom MQTT Komponenten.
- Bereitstellung der grundlegenden MQTT-Client-Funktionen für interne Anwendungen.
- Grundlegende Unterstützung für Verbindungsaufbau, Publish und Subscribe.
- Erste Broker-Funktionen für die interne Verwendung.
- Einsatz und Erprobung innerhalb eigener Softwareprodukte.
Version 1.1.0
- Interner Entwicklungsstand zur Vorbereitung der späteren Versionen 1.1.x.
- Aufbau der grundlegenden MQTT-Kommunikation und der ersten API-Struktur.
- Erste Implementierung von Verbindungsaufbau, Publish und Subscribe.
- Erste Integrations- und Verbindungstests innerhalb eigener Anwendungen.
Dokumentation PLCcom für MQTT
Den kompletten Funktionsumfang PLCcom für MQTT finden Sie hier:
- MQTT Client SDK für .NET und Java
- einbettbares MQTT Broker SDK für .NET und Java
- Client und Broker einzeln oder gemeinsam innerhalb derselben Anwendung einsetzbar
- gemeinsame Core-Komponente für Protokollverarbeitung, Diagnose, Grenzwerte und Zertifikatsverwaltung
- Unterstützung von MQTT 3.1.1 und MQTT 5.0
- Übertragungswege TCP, TLS, WebSocket und Secure WebSocket
- vollständiger In-Process-Betrieb innerhalb der eigenen Anwendung
- kein separater Dienst, kein externer Broker-Prozess und keine Cloud-Komponente erforderlich
- keine nativen C- oder C++-Bibliotheken und keine nativen Protokoll-Wrapper erforderlich
- mehrere MQTT-Client-Instanzen innerhalb einer Anwendung möglich
- mehrere MQTT-Broker-Instanzen innerhalb eines Prozesses möglich
- blockierende und asynchrone Client-API
- asynchrone Client-API über Task unter .NET und CompletableFuture unter Java
- High-Level-Builder-API sowie direkte Publish-, Subscribe-, Unsubscribe- und Receive-Operationen
- konfigurierbare Verbindungs-, Operations-, Lese- und Keep-Alive-Zeitüberschreitungen
- konfigurierbare Grenzwerte für Paketgrößen, Warteschlangen und weitere Protokollressourcen
- wahlweise automatische oder explizite Auswahl der MQTT-Protokollversion
- Unterstützung von MQTT 3.1.1 und MQTT 5.0
- Verbindungsaufbau über mqtt://, mqtts://, ws:// und wss://
- Publish und Subscribe mit QoS 0, QoS 1 und QoS 2
- vollständige QoS-Verarbeitung einschließlich PUBACK sowie PUBREC, PUBREL und PUBCOMP
- Veröffentlichen von binären und textbasierten Payloads
- Abonnieren einzelner Topics und Topic-Filter
- Validierung von Topic-Namen und Topic-Filtern
- Unterstützung der Topic-Wildcards + und #
- Unterstützung von Shared Subscriptions über $share//
- Retained Messages senden, empfangen, überschreiben und löschen
- Retain-Kennzeichnung an empfangenen Nachrichten auswertbar
- Last-Will-Nachricht mit Topic, Payload, QoS und Retain
- MQTT-5-Eigenschaften der Last-Will-Nachricht, darunter Will Delay Interval, Message Expiry Interval, Content Type, Response Topic, Correlation Data und User Properties
- Clean Start und Session Expiry Interval
- Auswertung der vom Broker gemeldeten Session-Present-Information
- MQTT-5-Subscription-Identifier
- MQTT-5-Subscription-Option No Local
- MQTT-5-Subscription-Option Retain As Published
- MQTT-5-Subscription-Option Retain Handling
- MQTT-5-User-Properties für Nachrichten, Request/Response und Last-Will-Nachrichten
- MQTT-5-Payload Format Indicator
- MQTT-5-Content Type
- MQTT-5-Message Expiry Interval
- MQTT-5-Response Topic und Correlation Data
- Auswertung von MQTT-5-Topic-Aliasen in empfangenen Nachrichten
- Request/Response als High-Level-Operation mit automatischer Korrelation und Timeout
- Nachrichtenempfang über Callback-Handler
- Nachrichtenempfang über blockierendes Receive mit Timeout
- optionaler automatischer Wiederverbindungsaufbau
- exponentieller Backoff beim Wiederverbindungsaufbau
- automatisches Wiederherstellen registrierter Subscriptions nach einer Wiederverbindung
- Benutzername- und Passwortauthentifizierung
- MQTT-5 Enhanced Authentication während des Verbindungsaufbaus
- Authentifizierung mit Client-Zertifikaten
- konfigurierbare Client-ID, Keep-Alive-Zeit und Session-Einstellungen
- JSON-Komfortfunktionen für Publish und Payload-Auswertung in der .NET-Version
- vollständig einbettbarer MQTT Broker für den Betrieb innerhalb einer .NET- oder Java-Anwendung
- automatische Verarbeitung von MQTT 3.1.1 und MQTT 5.0 entsprechend der jeweiligen Client-Verbindung
- mehrere Broker-Listener gleichzeitig innerhalb einer Broker-Instanz
- paralleler Betrieb von TCP-, TLS-, WebSocket- und Secure-WebSocket-Listenern
- eigener Port und eigene Bind-Adresse je Listener
- eigene TLS- und Client-Zertifikatskonfiguration je Listener
- mehrere Broker-Instanzen im selben Prozess
- QoS 0, QoS 1 und QoS 2 für eingehende und ausgehende Nachrichten
- automatische QoS-Herabstufung auf die für eine Subscription gewährte QoS-Stufe
- Retained Messages speichern, überschreiben und löschen
- automatische Zustellung von Retained Messages beim Anlegen einer Subscription
- Last-Will-Nachrichten einschließlich Will Delay Interval
- Unterdrückung der Last-Will-Nachricht bei regulärem DISCONNECT
- persistente MQTT-Sessions
- Speicherung von Subscriptions innerhalb persistenter Sessions
- Offline-Warteschlange für nicht verbundene Clients
- Speicherung unbestätigter ausgehender QoS-1- und QoS-2-Nachrichten
- Unterstützung und Durchsetzung des Session Expiry Interval
- Unterstützung und Durchsetzung des Message Expiry Interval
- konfigurierbare Obergrenze für Offline-Warteschlangen
- Shared Subscriptions mit Round-Robin-Verteilung innerhalb einer Gruppe
- MQTT-5-Subscription-Identifier
- MQTT-5-Subscription-Option No Local
- MQTT-5-Subscription-Option Retain As Published
- MQTT-5-Subscription-Option Retain Handling
- Berücksichtigung der MQTT-5-Subscription-Optionen bei Retained Replay und Offline-Zustellung
- MQTT-5-Topic-Aliase
- MQTT-5-Receive-Maximum-Flusskontrolle
- konfigurierbare maximale Paketgröße
- konfigurierbare maximale Anzahl gleichzeitiger Verbindungen
- In-Process-Publish direkt aus der Hostanwendung ohne zusätzlichen MQTT-Client
- In-Process-Listener zum direkten Empfang von Nachrichten innerhalb der Hostanwendung
- optionale Zustellung vorhandener Retained Messages an In-Process-Listener
- Batch-Publish mehrerer Nachrichten aus der Hostanwendung
- Zustellung von In-Process-Nachrichten an lokale Listener und verbundene Netzwerk-Clients
- öffentliche Store-Schnittstelle für eigene Persistenzimplementierungen
- Persistenz von Retained Messages über eine eigene Store-Implementierung
- Persistenz von Session-Zuständen über eine eigene Store-Implementierung
- Read-only-Administrations- und Statistik-Schnittstelle
- Statistiken zu Verbindungen, Sessions, Subscriptions, Warteschlangen und Retained Messages
- zurücksetzbare Broker-Zähler
- JSON-Komfortfunktionen für Publish und Payload-Auswertung in der .NET-Version
- öffentliche Access-Validator-Schnittstelle zur Anbindung eigener Benutzer-, Rollen- und Rechtesysteme
- Access Validator für .NET über IPlccomMqttBrokerAccessValidator
- Access Validator für Java über PlccomMqttBrokerAccessValidator
- Registrierung einer eigenen Validator-Implementierung in den Broker-Optionen
- getrennte Zugriffsprüfung für CONNECT, PUBLISH, SUBSCRIBE und UNSUBSCRIBE
- Prüfung des Verbindungsaufbaus anhand anwendungseigener Regeln
- Prüfung von Publish-Berechtigungen anhand von Benutzer, Topic und Nachricht
- Prüfung von Subscribe-Berechtigungen anhand von Benutzer und Topic-Filter
- Prüfung von Unsubscribe-Berechtigungen anhand anwendungseigener Regeln
- topicbezogene Autorisierung für Publish- und Subscribe-Operationen
- Anbindung eigener Benutzerverwaltungen, Datenbanken, Rollenmodelle, Claims oder Verzeichnisdienste möglich
- Anbindung kundenspezifischer Identity-, Mandanten- oder Lizenzsysteme möglich
- Übergabe von Client-ID, Benutzername, Passwort, Protokollversion und Verbindungsinformationen an die eigene Validierungslogik
- Zuordnung eines anwendungseigenen Principal-Objekts beim erfolgreichen Verbindungsaufbau
- Weitergabe des Principal-Objekts an nachfolgende Publish-, Subscribe- und Unsubscribe-Prüfungen
- einmalige Auflösung eines Benutzers oder einer Rolle beim Verbindungsaufbau möglich
- anschließende Wiederverwendung der Benutzer-, Rollen- oder Claim-Informationen für Topic-Berechtigungen
- eigene Entscheidung über Erlaubnis oder Ablehnung einer MQTT-Operation
- Rückgabe passender MQTT-5-Reason-Codes bei abgelehnten Operationen
- kein fest vorgegebenes Benutzer- oder Rollenmodell
- keine Bindung an eine bestimmte Datenbank, Benutzerverwaltung oder Identity-Lösung
- Benutzername- und Passwortauthentifizierung für MQTT-Clients
- anwendungseigener Validator für Benutzername und Passwort
- MQTT-5 Enhanced Authentication für Client und Broker
- öffentliche Schnittstelle für eigene MQTT-5-Enhanced-Authentication-Verfahren
- Unterstützung anwendungseigener Token-, Challenge- oder mehrstufiger Authentifizierungsverfahren
- Authentifizierung über Client-Zertifikate
- optionale oder verpflichtende Client-Zertifikate je Broker-Listener
- Kombination aus TLS-Client-Zertifikat und anwendungseigener MQTT-Authentifizierung möglich
- verschlüsselte MQTT-Verbindungen über TLS und Secure WebSocket
- Unterstützung von Server-Zertifikaten
- Unterstützung von Client-Zertifikaten für gegenseitige TLS-Authentifizierung
- Client-Zertifikatsmodi None, Optional und Required je Broker-Listener
- dateibasierter PLCcom-PKI-Store
- getrennte Bereiche für eigene, vertrauenswürdige, ausstellende und abgelehnte Zertifikate
- Erzeugung und Verwaltung eigener Zertifikate
- Import und Verwendung vorhandener Zertifikate
- Import und Verwendung vorhandener privater Schlüssel
- Validierung der Zertifikatskette
- Prüfung von Hostname und IP-Adresse des Gegenstellen-Zertifikats
- eigene Vertrauensanker und CA-Zertifikate konfigurierbar
- öffentlicher Zertifikatsvalidator für eine anwendungsspezifische Zertifikatsprüfung
- anwendungsspezifische Entscheidung über Annahme oder Ablehnung eines Zertifikats möglich
- konfigurierbare TLS-Protokolle
- Durchsetzung zulässiger Cipher Suites auf den jeweils unterstützten Zielplattformen
- öffentliche Schnittstellen zur Erweiterung zentraler Broker-Funktionen
- eigene Access-Validator-Implementierung
- eigene Benutzername- und Passwortvalidierung
- eigene Enhanced-Authentication-Implementierung
- eigene Zertifikatsvalidierung
- öffentliche Broker-Store-Schnittstelle für eigene Persistenzimplementierungen
- eigene Speicherung von Retained Messages
- eigene Speicherung persistenter Sessions
- Anbindung relationaler oder dokumentenbasierter Datenbanken über eine eigene Store-Implementierung möglich
- Anbindung einer anwendungseigenen Datei-, Speicher- oder Cloud-Persistenz möglich
- öffentliche Diagnose-Listener-Schnittstelle
- Übergabe von Diagnoseereignissen an ein eigenes Logging- oder Monitoring-System
- keine feste Bindung an ein bestimmtes Logging-Framework
- Diagnoseereignisse für Client, Broker, Transport, Protokoll und Sicherheit
- Diagnoseereignisse des Brokers für Verbindungsaufbau und Verbindungsabbau
- Diagnoseereignisse des Brokers für Publish-, Subscribe- und Unsubscribe-Abläufe
- Diagnoseereignisse zum TLS-Verbindungsaufbau
- Diagnose-Listener mit sechs konfigurierbaren Stufen
- Diagnosestufe während der Laufzeit umschaltbar
- Integration der Diagnoseereignisse in das eigene Logging-System möglich
- Read-only-Zugriff auf Broker-Status und Statistiken
- Auswertung aktiver Verbindungen
- Auswertung vorhandener Sessions
- Auswertung registrierter Subscriptions
- Auswertung von Offline-Warteschlangen
- Auswertung vorhandener Retained Messages
- zurücksetzbare Broker-Zähler
- umfangreiche Workshops für MQTT Client und MQTT Broker
- C#-Beispiele für .NET
- Visual-Basic-Beispiele für .NET
- Java-Beispiele und Workshops
- kostenloses MQTT Client Tool zum Testen von Verbindungen sowie Publish- und Subscribe-Abläufen
- kostenloses MQTT Broker Tool als direkt nutzbare Gegenstelle für externe MQTT-Clients
- API-Referenz für .NET
- separate JavaDoc-Referenzen für Core, Client und Broker
- Erste-Schritte-Dokumentation für .NET und Java
- Security Guides für .NET und Java
- Client Guides für .NET und Java
- Broker Guides für .NET und Java
- GitHub-Workshop-Repositories für .NET und Java
- .NET Framework 4.7.2
- .NET Framework 4.8
- .NET Standard 2.1
- .NET 8
- .NET 9
- .NET 10
- Java 11 bis Java 26
Cyber Resilience Act (CRA) – EU-Konformitätsdokumente (EU 2024/2847)
PLCcom for MQTT .NET
PLCcom for MQTT Java

