ha-bridge durch FHEM Connector ersetzen
Hi, ich möchte die in die Jahre gekommene ha-bridge durch den FHEM Connector für Amazon Alexa vollständig ersetzen.
Dazu habe ich mal eine Testlampe definiert, die mit deinem Dummy und 2 Notifies auskommt.
Zur Steuerung der Lampe verwende ich einen Arilux AL-LC06 oder einen H801 mit Tasmota,
SetOption68 1, um die Kanäle einzeln steuern zu können.
Unten folgen die Definitionen.
Was mir nicht gefällt, ist das devStateIcon des Dummies (0:general_aus@red 100:general_an@green off:general_aus@red on:general_an@green .*:general_an@orange).
Damit kann ich über Alexa und auch von der Weboberfläche die Lampe korrekt schalten kann, mußte ich in dem Notify eine Anweisung ({fhem "set Testlampe:state ".ReadingsNum("Arilux157","CHANNEL1",0)}) integrieren, um den eingestellten Wert zu behalten.
Frage ist, geht das auch eleganter? Ich muß ca. 30 Lampen anpassen
Code: (Fehler beseitigt 24.01.2023 22:00)
#
define Arilux157 MQTT_DEVICE
attr Arilux157 IODev MQTTSRV
attr Arilux157 comment
http://192.168.211.157attr Arilux157 event-on-change-reading .*
attr Arilux157 group Testlampe
attr Arilux157 icon light_control
attr Arilux157 publishSet_CHANNEL1 Garage/Testlampe/cmnd/CHANNEL1
attr Arilux157 publishSet_CW Garage/Testlampe/cmnd/POWER1
attr Arilux157 room test
attr Arilux157 stateFormat {sprintf("LED: %.1f %% <br>POWER1 %s", ReadingsVal($name,"Channel1",0), ReadingsVal($name,"POWER1","") )}
attr Arilux157 subscribeReading_Power Garage/Testlampe/stat/POWER1
attr Arilux157 subscribeReading_Status Garage/Testlampe/tele/STATE
attr Arilux157 subscribeReading_state Garage/Testlampe/stat/RESULT
attr Arilux157 subscribeReading_tele Garage/Testlampe/tele/LWT
#
define Arilux157_expandJSON expandJSON Arilux157.*:.*:.*
attr Arilux157_expandJSON addStateEvent 1
#
define Testlampe dummy
attr Testlampe alexaName Testlampe
attr Testlampe devStateIcon 0:general_aus@red 100:general_an@green off:general_aus@red on:general_an@green .*:general_an@orange
attr Testlampe event-on-change-reading .*
attr Testlampe eventMap on:100 off:0
attr Testlampe genericDeviceType light
attr Testlampe group Testlampe
attr Testlampe homebridgeMapping On=state,valueOn=ON,valueOff=OFF Brightness=brightness::brightness,minValue=0,maxValue=100,max=255,factor=2.55
attr Testlampe icon message_light_intensity
attr Testlampe room test
attr Testlampe setList state:slider,0,5,100 on off
attr Testlampe userReadings brightness {my $reading = ReadingsNum($NAME,"state","");; $reading =~ s/^brightness.//;; return $reading;;}
attr Testlampe webCmd state
#
define n_TestlampeAnAus notify Testlampe.on|Testlampe.off set Arilux157 CW $EVENT
attr n_TestlampeAnAus group Testlampe
attr n_TestlampeAnAus room test
attr n_TestlampeAnAus setList on off
#
define n_TestlampeDim notify Testlampe:brightness:.* {fhem "set Arilux157 CHANNEL1 ".ReadingsVal("Testlampe","brightness",0)}
attr n_TestlampeDim group Testlampe
attr n_TestlampeDim room test
attr n_TestlampeDim setList 0-100
#