Home Assistant & MQTT
Verbinden Sie SUPLA über MQTT mit Home Assistant. MQTT Discovery kann die meisten unterstützten Gerätefunktionen automatisch erkennen.
Integration entdeckenVerbinden Sie SUPLA mit Home Assistant, nutzen Sie MQTT und die REST API, betreiben Sie einen eigenen Server oder entwickeln Sie eigene Geräte.
SUPLA ist eine offene Plattform. Sie können fertige Integrationsmechanismen nutzen, eigene Lösungen entwickeln und zum Projekt beitragen.
Wählen Sie, womit Sie beginnen möchten.
Verbinden Sie SUPLA über MQTT mit Home Assistant. MQTT Discovery kann die meisten unterstützten Gerätefunktionen automatisch erkennen.
Integration entdeckenEntwickeln Sie eigene Smart-Home-Geräte mit dem SDK supla-device.
Geräteentwicklung beginnenEntwickeln Sie Apps, Automatisierungen und Verbindungen zu anderen Systemen mit REST API, OAuth 2.0 und MQTT.
API-Möglichkeiten entdeckenBetreiben Sie eine eigene SUPLA-Instanz und verwalten Sie die Infrastruktur in Ihrer eigenen Umgebung.
Self-Hosting entdeckenSUPLA stellt MQTT und eine REST API bereit, um Geräte und Daten mit anderen Automationssystemen, Anwendungen und eigenen Diensten zu verbinden.
SUPLA empfiehlt MQTT als primären Weg zur Integration mit Home Assistant.
SUPLA unterstützt zwei MQTT-Szenarien: kontoweites MQTT über den SUPLA-Server und direktes lokales MQTT bei unterstützten Geräten.
Kontoweites MQTT stellt Geräte und Kanäle Ihres SUPLA-Kontos über den SUPLA-Server bereit und unterstützt MQTT Discovery.
Einige SUPLA-Geräte können für die lokale Kommunikation außerdem eine direkte Verbindung zu Ihrem eigenen MQTT-Broker herstellen.
supla-device ist ein offenes SDK zur Entwicklung von Geräten, die mit dem SUPLA-Ökosystem zusammenarbeiten.
Nutzen Sie fertige Komponenten, Beispiele und Kommunikationsmechanismen, anstatt die SUPLA-Integration von Grund auf zu entwickeln.
Die Bibliothek bietet fertige Komponenten für Relais, Taster, Sensoren und andere typische Funktionen von Smart-Home-Geräten.
supla-device auf GitHub ansehen Öffnet sich in einem neuen TabDer folgende Ausschnitt zeigt die Relais- und Tasterlogik. Das vollständige Beispiel enthält außerdem die WLAN- und Netzwerkkonfiguration.
#include <SuplaDevice.h>
#include <supla/control/button.h>
#include <supla/control/relay.h>
void setup() {
auto relay = new Supla::Control::Relay(12);
relay->setDefaultFunction(SUPLA_CHANNELFNC_POWERSWITCH);
auto button = new Supla::Control::Button(0, true, true);
button->addAction(Supla::TOGGLE, relay, Supla::ON_CLICK_1);
SuplaDevice.begin();
}
void loop() {
SuplaDevice.iterate();
}Mit der REST API können Sie Geräte- und Kanalzustände lesen, unterstützte Funktionen steuern, Messdaten abrufen und Anwendungen oder Integrationen rund um Ihr SUPLA-Konto entwickeln.
Der Zugriff kann über OAuth 2.0 autorisiert werden; die API-Dokumentation ist im OpenAPI-Format verfügbar.
Möchten Sie die Infrastruktur selbst verwalten? Sie können eine eigene SUPLA-Instanz in Ihrer eigenen Umgebung betreiben.
Die empfohlene Grundlage für Self-Hosting ist das Projekt supla-docker, mit dem sich die erforderlichen Komponenten über Docker Compose ausführen lassen. Ein eigener Server gibt Ihnen mehr Kontrolle über Infrastruktur und Daten, überträgt Ihnen aber auch die Verantwortung für den Betrieb.
Gehen Sie nicht davon aus, dass jeder externe Dienst auf einer privaten Instanz genauso funktioniert wie in der offiziellen Cloud. Einige Funktionen können zusätzliche Schlüssel, Zertifikate oder Konfigurationen erfordern.
supla-docker auf GitHub Öffnet sich in einem neuen TabDer Quellcode der wichtigsten Plattformkomponenten ist öffentlich verfügbar. Sie können ihn gemäß den Lizenzen der einzelnen Projekte untersuchen, ausführen, verändern und weiterentwickeln.
SDK zur Entwicklung von IoT- und Smart-Home-Geräten (Arduino, ESP32, ESP8266, Linux)
C++Öffnet sich in einem neuen TabWebanwendung zur Verwaltung (PHP, Symfony)
PHP, JavaScript, Vue.js, SymfonyÖffnet sich in einem neuen TabZentraler Kommunikationsserver (C++)
C++Öffnet sich in einem neuen TabEmpfohlene Self-Hosting-Lösung (Docker)
DockerÖffnet sich in einem neuen TabNative Android-App
Java/KotlinÖffnet sich in einem neuen TabNative iOS-App
Swift, Objective-CÖffnet sich in einem neuen TabWichtige Technologien in den SUPLA-Projekten
Hauptprogrammiersprache
Entwicklungsumgebungen
Natives Framework für ESP32
Hauptsprache des Kommunikationsservers (supla-core)
Webanwendung (supla-cloud)
Hauptdatenbank
Datenbank zur Speicherung historischer Daten
Containerisierung
Android-App
iOS-App
Client-Bibliotheken
SUPLA wird als Open-Source-Projekt entwickelt. Sie können Fehler melden, Änderungen vorschlagen, Pull Requests einreichen oder eigene Projekte mit SUPLA entwickeln. Im Forum treffen sich Nutzer, Entwickler, Hobbyisten und Menschen, die eigene Geräte und Integrationen entwickeln.