FHEM: Mit Alexa über HA-Bridge ein Gerät dimmen
Für den Fall das man eine Leuchte dimmen möchte, die nicht Philips HUE kompatibel ist, stößt man leicht auf einige hürden. Einige Dimmer können nicht jeden Prozentwert als Parameter verstehen, sodaß man zum nächstmöglichen Wert interpolieren muss.
Ein Script als Helferlein
Mit diesem Skript wird der von der ha-bridge übergebene Wert auf den nächst zulässigen Wert "aufgerundet"
#!/bin/sh
server="fhem.fritz.box:8089"
if [ -z "$1" ]
then
echo "No Devicename supplied"
exit 2
fi
case "$2" in
on)
link="http://$server/fhem?cmd=set%20$1%20on"
wget $link -o /dev/null
;;
off)
link="http://$server/fhem?cmd=set%20$1%20off"
wget $link -o /dev/null
;;
toggle)
link="http://$server/fhem?cmd=set%20$1%20toggle"
wget $link -o /dev/null
;;
*)
if [ -z "$2" ]
then
echo "No Percentage Value supplied"
exit 1
fi
for i in 0 6 12 18 25 31 37 43 50 56 62 68 75 81 87 93 100 110
do
if [ $2 -eq $i ] || [ $2 -lt $i ]
then
link="http://$server/fhem?cmd=set%20$1%20dim%20$i"
echo "Dimming $1 to $i%"
# echo $link
wget $link -o /dev/null
exit 0
fi
done
esac
Kommando in ha-bridge einbinden
In ha-bridge gilt noch die besonderheit, das man http und script aufrufe nicht vermischen darf. Das heisst, auch wenn für ein on/off Kommando ein direkter http-Aufruf vorhanden und möglich ist, darf dieser nicht benutzt werden, sobald für ein Dim Kommando ein Script aufgerufen werden soll.
In dem Bild heisst das fhem-gerät "stern" und die Parameter sind entweder on, off oder der Prozentwert, der von der ha-bridge dynamisch übergeben wird.
"Alexa, Stern 40%"
Wird das Gerät mit dem Namen Stern auf 43% dimmen, da 43 der nächst höhere Wert ist, den der FS20 Dimmer verstehen kann.
No Comments