MQTT-API för RF-HUB

Avancerat Uppdaterad 2026-05-20

RF-HUB:s MQTT-API exponerar all funktionalitet via två topic-trädgrenar och följer Home Assistant Discovery-formatet. Det innebär att RF-HUB plug-and-play-integreras i Home Assistant och fungerar med praktiskt taget vilken MQTT-klient som helst.

För enkla anrop och script direkt mot hubben finns även ett REST API — se API för RF-HUB.

Förutsättningar

  • En MQTT-broker (typiskt Mosquitto, ofta tillsammans med Home Assistant).
  • RF-HUB konfigurerad mot samma broker — se Koppla RF-Hub till Home Assistant.
  • Din enhets UID — den hittar du i RF-HUB:s webbgränssnitt under fliken Info.

Topic-struktur

RF-HUB använder två topic-trädgrenar:

  • styrahem/rfhub/<UID>/... — egen state och kommandon
  • homeassistant/... — Home Assistant Discovery-konfigurationer (retained)

State (vad RF-HUB publicerar)

styrahem/rfhub/<UID>/rfhub/info                          # online-status + firmware-version
styrahem/rfhub/<UID>/<device-id>-<nr>/<type>           # aktuell status per enhet/ändpunkt

Kommandon (vad RF-HUB lyssnar på)

styrahem/rfhub/<UID>/<device>/<endpoint>/set/...        # skicka kommando hit

Discovery-konfiguration (retained, automatisk integration i HA)

homeassistant/<entity_type>/<unique_id>/<name>/config

Discovery-meddelandena innehåller bl.a. state_topic, command_topic och availability så att HA (eller annan klient som pratar HA-discovery) automatiskt sätter upp entiteterna.

Exempel — slå på en strömbrytare via mosquitto_pub

mosquitto_pub -h homeassistant.local -t   homeassistant/switch/rfhub_kok_taklampa/set -m ON

Exempel — lyssna på events i Python

import paho.mqtt.client as mqtt

UID = "ABCD1234"  # från Info-fliken i RF-HUB:s webbgränssnitt

def on_message(client, userdata, msg):
    print(f"{msg.topic} -> {msg.payload.decode()}")

c = mqtt.Client()
c.connect("homeassistant.local", 1883)
c.subscribe(f"styrahem/rfhub/{UID}/+/+")
c.on_message = on_message
c.loop_forever()

WebSocket-API:t

Webbgränssnittet använder WebSocket för realtidsuppdateringar, men det är ett internt protokoll som kan ändras mellan firmware-versioner. För integrationer rekommenderar vi REST eller MQTT.

Frågor

Behöver du detaljer på en specifik topic eller payload — hör av dig.