Přejít na hlavní obsah

Integrujte a tvořte se SUPLA

Propojte SUPLA s Home Assistant, používejte MQTT a REST API, spusťte vlastní server nebo vytvářejte vlastní zařízení.

SUPLA je otevřená platforma. Můžete využívat hotové integrační mechanismy, vytvářet vlastní řešení a podílet se na vývoji projektu.

Co chcete dělat?

Vyberte oblast, ve které chcete začít.

Home Assistant a MQTT

Propojte SUPLA s Home Assistant prostřednictvím MQTT. MQTT Discovery dokáže automaticky rozpoznat většinu podporovaných funkcí zařízení.

Prozkoumat integraci

REST API

Vytvářejte aplikace, automatizace a propojení s dalšími systémy pomocí REST API, OAuth 2.0 a MQTT.

Prozkoumat API

Spustit vlastní server SUPLA

Spusťte vlastní instanci SUPLA a spravujte infrastrukturu ve svém prostředí.

Prozkoumat self-hosting

Integrujte SUPLA s dalšími systémy

SUPLA nabízí MQTT a REST API pro propojení zařízení a dat s dalšími automatizačními systémy, aplikacemi a vlastními službami.

Home Assistant přes MQTT

SUPLA doporučuje MQTT jako hlavní způsob integrace s Home Assistant.

SUPLA podporuje dva scénáře MQTT: MQTT pro celý účet poskytované serverem SUPLA a přímé místní MQTT dostupné v podporovaných zařízeních.

MQTT pro celý účet zpřístupňuje prostřednictvím serveru SUPLA zařízení a kanály z vašeho účtu SUPLA a podporuje MQTT Discovery.

Některá zařízení SUPLA se mohou pro místní komunikaci připojit také přímo k vašemu vlastnímu brokeru MQTT.

  • MQTT pro celý účet SUPLA
  • MQTT Discovery
  • Home Assistant
  • místní MQTT v podporovaných zařízeních
Více o Home Assistant a MQTT ve FAQ

Vytvářejte vlastní zařízení se supla-device

supla-device je otevřené SDK pro tvorbu zařízení spolupracujících s ekosystémem SUPLA.

Využijte hotové komponenty, příklady a komunikační mechanismy namísto vytváření integrace se SUPLA od začátku.

ESP32ESP8266ArduinoLinux

Knihovna obsahuje hotové komponenty pro relé, tlačítka, snímače a další běžné funkce zařízení chytré domácnosti.

Zobrazit supla-device na GitHubu Otevře se na nové kartě

Příklad: logika jednoduchého spínače Wi-Fi

Níže uvedený úryvek ukazuje logiku relé a tlačítka. Úplný příklad obsahuje také konfiguraci Wi-Fi a sítě.

#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();
}

REST API

REST API a OAuth

Pomocí REST API můžete číst stavy zařízení a kanálů, ovládat podporované funkce, získávat měření a vytvářet aplikace nebo integrace využívající váš účet SUPLA.

Přístup lze autorizovat pomocí OAuth 2.0 a dokumentace API je k dispozici ve formátu OpenAPI.

  • REST API
  • OAuth 2.0
  • OpenAPI
  • vlastní aplikace a automatizace
Zobrazit dokumentaci API

Spusťte vlastní server SUPLA

Chcete infrastrukturu spravovat sami? Můžete spustit vlastní instanci SUPLA ve svém prostředí.

Doporučeným základem pro self-hosting je projekt supla-docker, který umožňuje spustit potřebné komponenty pomocí Docker Compose. Vlastní server vám poskytne větší kontrolu nad infrastrukturou a daty, ale také znamená převzetí odpovědnosti za jeho údržbu.

  • Docker Compose
  • vlastní infrastruktura a doména
  • aktualizace a monitoring
  • certifikáty TLS
  • zálohování a obnova
  • zabezpečení serveru

Nepředpokládejte, že všechny externí služby budou na soukromé instanci fungovat úplně stejně jako v oficiálním cloudu. Některé funkce mohou vyžadovat další klíče, certifikáty nebo konfiguraci.

supla-docker na GitHubu Otevře se na nové kartě

Použité technologie

Hlavní technologie používané v projektech SUPLA

Firmware

C/C++

Hlavní programovací jazyk

Arduino IDE, PlatformIO, Visual Studio Code

Vývojová prostředí

ESP-IDF

Nativní framework pro ESP32

Server

C++

Hlavní jazyk komunikačního serveru (supla-core)

PHP/Symfony, JavaScript/Vue.js

Webová aplikace (supla-cloud)

MySQL/MariaDB

Hlavní databáze

TimescaleDB

Databáze pro ukládání historických dat

Docker

Kontejnerizace

Klientské aplikace

Java, Kotlin

Aplikace pro Android

Objective-C, Swift

Aplikace pro iOS

C++

Klientské knihovny

Podílejte se na vývoji SUPLA

SUPLA je vyvíjena jako open-source projekt. Můžete hlásit chyby, navrhovat změny, odesílat pull requesty nebo vyvíjet vlastní projekty využívající SUPLA. Na fóru se setkávají uživatelé, vývojáři, kutilové a lidé vytvářející vlastní zařízení a integrace.