ActionConnect Library¶
Die ActionConnect Library ist die Bibliothek für die ESP seitige Implementierung unseres Action-Connect-Protokolls. Zusammen mit unseren Beispielen und dem Thing Model bildet sie unser komplettes Action-Connect Template. Sie ist für dei Verbindungen über WLAN, MQTT und BLE zuständig. Sie verbindet die einzelnen Komponenten miteinander und sorgt dafür, dass eingehende und ausgehende Daten an die richtige Stelle weitergeleitet werden. Außerdem übernimmt sie das Provisioning und unterstützt damit die Erstkonfiguration des Geräts.
Funktion¶
Die Library verarbeitet Nachrichten sowohl über BLE als auch über MQTT. BLE wird vor allem für die Einrichtung und das Übermitteln von WLAN-Zugangsdaten genutzt, während MQTT für die Verbindung zum Server und den regulären Datenaustausch verwendet wird. Wenn neue WLAN-Daten empfangen werden, speichert die Library diese, stellt die Verbindung her und initialisiert anschließend die MQTT-Kommunikation.
Aufbau¶
Die Action Connect Library bietet Anwendern die Methoden, die für die Kommunikation mit dem Backend und der App benötigt werden. Dabei sind die Methoden oft nur Wrapper für Methoden in den spezifischen Teilbibliotheken für Wlan und BLE. Das Ziel ist, die Actionconnect Methoden möglicht einfach zu halten, damit ein Anwender leicht nachvollziehen kann, was zu tun ist. Die Actionconnectlibrary Included die "BLEManager.h" und die "Wlan.h" Dateien, in denen die genauen Funktionalitäten Implementiert sind.
Ablauf¶
Beim Start führt connectHubInit() die Grundinitialisierung durch und versucht zunächst, eine bestehende WLAN-Verbindung zu verwenden. Falls keine Verbindung möglich ist, wird der Access-Point-Modus aktiviert, damit neue Zugangsdaten übermittelt werden können. connectHubProcessTransport() hält die Kommunikationswege im laufenden Betrieb aktiv und sorgt dafür, dass MQTT und BLE regelmäßig verarbeitet werden.
