Skip to content

MQTT Broker

Max Janorschke edited this page Sep 19, 2022 · 6 revisions

Die Topics des MQTT-Brokers werden im groben durch conf und status unterschieden. Über die conf-Topics lassen sich anfragen an die einzelnen Geräte formulieren, über die status-Topics erfolgen die Antworten der entsprechenden Arduinos.

conf-Topics

Topic Beschreibung
conf/devices Befehle
list-devices Alle aktiven Geräte zur Registrierung auffordern.
conf/DEVICE_ID Befehle
color: r;g;b Animationsfarbe im RGB-Format - wird bei der `rainbow`-Animation ignoriert
orientation: value Animationsrichtung
l von rechts nach links
c von der Mitte ausgehend - wird bei der `rainbow`-Animation ignoriert
r von links nach rechts
animation-typ: value Animationsart
fade von rechts nach links
rainbow von der Mitte ausgehend - wird bei der `rainbow`-Animation ignoriert
toColor von links nach rechts
animation-time: value Zeit für die Animation pro LED
brightness: value Helligkeit regeln
restart-animation Neustart der Animation
active LED-Streifen in den Zustand aktiv setzen - LED-Streifen einschalten
idle LED-Streifen in den Zustand Leerlauf setzen - LED-Streifen ausschalten
reload-conf Standardkonfiguration wiederherstellen
save-conf Konfiguration speichern
get-conf DEVICE_CONFIG nach status/DEVICE_ID publishen

status-Topics

Topic Beschreibung
status/devices Alle aktiven Geräte publishen hier ihre DEVICE_DATA
status/DEVICE_ID DEVICE_CONFIG des einzelnen Gerätes publishen

Typen

Name Datentyp Struktur
DEVICE_INFO JSON
{
  deviceId: string,
  name: string
}
DEVICE_CONFIG JSON
{
  status: boolean,
  color: {
    red: number,
    green: number,
    blue: number
  },
  orientation: 'l' | 'c' | 'r',
  brightness: number,
  animationTyp: "fade" | "rainbow" | "toColor",
  animationTime: number
}
DEVICE_DATA JSON
{
  info: DEVICE_INFO,
  config: DEVICE_CONFIG
}
Clone this wiki locally