Voraussetzung ist ein laufender MQTT-Server und die installierten Kommandozeilen Tools. Beides in meinem Falle von Mosquitto.
Ist der Shelly ins eigen WLAN integriert und erreichbar lässt sich unter Internet & Security → Adavanced – Developer Settings MQTT einschalten/konfigurieren. Username/Passwort sowie die IP Adresse und der Port des MQTT-Servers werden vergeben.
Der Shelly Plug S tritt als MQTT-Client auf und die Topics sind fest von Shelly vergeben. Einen Überblick kann man sich per Wildcard verschaffen.
:~$ mosquitto_sub -h 10.10.10.100 -p 1883 -v -t shellies/# -u Username -P Passwort shellies/shellyplug-s-XXXXXXXXXX/relay/0 off shellies/shellyplug-s-XXXXXXXXXX/relay/0/energy 4747 shellies/shellyplug-s-XXXXXXXXXX/relay/0/power 0.00 shellies/shellyplug-s-XXXXXXXXXX/online true [...]
Weitere Infos zu den von Shelly vergebenen Topics finden sich auf der Shelly Website.
Das XXXXXXXXXX entspricht der <deviceid> des Shelly die der MAC Adresse entspricht. Diese lässt sich auch unter Settings → Device Info einsehen.
Schalten lässt sich der Shelly damit ebenfalls.
An:
:~$ mosquitto_pub -h 10.10.10.100 -p 1883 -t shellies/shellyplug-s-XXXXXXXXXX/relay/0/command -m "on" -u Username -P Passwort
Aus:
:~$ mosquitto_pub -h 10.10.10.100 -p 1883 -t shellies/shellyplug-s-XXXXXXXXXX/relay/0/command -m "off" -u Username -P Passwort
Der Schaltzustand lässt sich mittels
:~$ mosquitto_sub -h 10.10.10.100 -p 1883 -v -t shellies/shellyplug-s-XXXXXXXXXX/relay/0 -u Username -P Passwort shellies/shellyplug-s-XXXXXXXXXX/relay/0 off shellies/shellyplug-s-XXXXXXXXXX/relay/0 on
abfragen bzw. beobachten.