NEWS
homematic hmip-dbb mit Alexasprachausgabe als Türgong
-
Wir teste ich das im log?
@paul53 said in homematic hmip-dbb mit Alexasprachausgabe als Türgong:
Tastendruck
-
@Kurvenschreck sagte:
Wir teste ich das im log?
Im Tab "Objekte" mit dem Mauszeiger über den Wert fahren, dann werden auch Zeitstempel, letzte Änderung ... angezeigt.
-
Gerade getestet, der Zeitstempel steht noch auf 15 Uhr obwohl ich den Taster mehrmals danach gedrückt hatte.
-
Korrigiere der Zeitstempel steht noch auf dem 3.5.2020
-
@Kurvenschreck sagte in homematic hmip-dbb mit Alexasprachausgabe als Türgong:
Gerade getestet, der Zeitstempel steht noch auf 15 Uhr obwohl ich den Taster mehrmals danach gedrückt hatte.
Dann hilft eine Dummy-Programm auf der CCU (Forum-Suche) oder versuche es mit folgendem Script, das nur einmal kurz ausgeführt werden muss:
const channel = '001498A99876B4:1'; const dp = 'PRESS_SHORT'; sendTo('hm-rpc.3', 'reportValueUsage', {ID: channel, paramType: dp, params: 1}, res => { log(JSON.stringify(res)); });
-
@paul53 Vielen Dank ich teste gerade.
-
Auf jedenfall den Dummy anlegen in der CCU und dann würde ich sagen musste auf "aktualisiert" triggern ( nicht auf wahr).
-
@haselchen sagte:
Auf jedenfall den Dummy anlegen in der CCU und dann würde ich sagen musste auf "aktualisiert" triggern ( nicht auf wahr).
Das Script sollte das Gleiche machen wie ein Dummy-Programm, wobei ich allerdings nicht weiß, ob es auch bei HmIP funktioniert. "PRESS_SHORT" ist immer true, weshalb man auch auf "wahr" triggern kann.
-
Habe die gleiche Konstellation wie der TE und da es bei mir so geht , gebe ich das natürlich so weiter
Aber ich probiere das mit "true" auch mal.
Man lernt nie aus. -
@paul53 und @haselchen
Auch wenn der Thread 2 Jahre her ist,
Habe auf der Raspimatic das Dummyprogramm angelegt, dann hat es funktioniert, seit dem stehen die Datenpunkte im ioBroker alle auf True
Die gehen jedoch nicht zurück auf "false"
Die Zeitstempel jedenfalls ändern sich.
Muss ich am trigger was ändern wenn ich auf den Zeitstempel gehe?const idAlexa_Echo1 = 'alexa2.0.Echo-Devices.G0922MxxxxxxxxGU.Commands.speak'; // Alexa Textausgabe const idAlexa_Echo1_Vol = 'alexa2.0.Echo-Devices.G0922MxxxxxxxxGU.Commands.speak-volume'; // Alexa Lautstärke SOLL const idKlingelReni_L = 'hm-rpc.0.00149F299F0548.1.PRESS_LONG'; // Klingel Reni Long const idKlingelReni_S = 'hm-rpc.0.00149F299F0548.1.PRESS_SHORT'; // Klingel Reni Short const idKlingelTextReni = '0_userdata.0.Haus.TuerklinelReni'; // Textausgabe für Reni const idKlingelDreas_L = 'hm-rpc.0.00149F299F0548.1.PRESS_LONG'; // Klingel Dreas const idKlingelDreas_S = 'hm-rpc.0.00149F299F0548.1.PRESS_SHORT'; // Klingel Dreas const idKlingelTextDreas = '0_userdata.0.Haus.TuerklingelDreas'; // Textausgabe für Dreas function klingelReni(dp) { // function = js befehl / frei vergebener Name für die Funktion / dp = temporäre Variable für die funktion let alexa_vol = getState(idAlexa_Echo1_Vol).val; setState(idAlexa_Echo1_Vol, 40,false); setState(idAlexa_Echo1,getState(idKlingelTextReni).val,false); setState(idAlexa_Echo1_Vol, alexa_vol,false); } on([idKlingelReni_L,idKlingelReni_S], function(dp) { // Triggern bei Wertänderung klingelReni(dp.state.val); // //log(("Klingel ist: " + dp.state.val),"info"); });
-
@ostseeskipper sagte: Muss ich am trigger was ändern wenn ich auf den Zeitstempel gehe?
Ja.
on({id: [idKlingelReni_L,idKlingelReni_S]}, function() { // Triggern bei Aktualisierung klingelReni(); });
-
@paul53
Danke, echt genial das du hier bist und hilfst.
Weisst du zufällig warum die Taster sich nicht auf "false" zurücksetzen ? -
@paul53
Eine Frage: Möchte noch eine 2te Klingel einbauen.
Wie bekomme im Trigger heraus welches der 4 Events der Auslöser war? -
@paul53
letzte Frage konnte ich inzwischen selbst lösen, hattest mir damals auch schon geholfen, den Auslöser des Triggers herauszufinden.Falls Einsteiger gleiche Herausforderung haben, so siehts nun aus.
Die idxxxx müssen natürlich Datenpunkten zugewiesen ahbenon({id: [idKlingelReni_L, idKlingelReni_S, idKlingelDreas_L, idKlingelDreas_S]}, function(obj) { // Trigger bei Aktualisierung //log('Auslöser: ' + obj.id,"debug"); let alexaEcho1_vol = getState(idAlexa_Echo1_Vol).val; // ursprungsvolume let alexaHandy1_vol = getState(idAlexa_Handy1_Vol).val; // ursprungsvolume setState(idAlexa_Echo1_Vol, 60,false); if( obj.id == idKlingelReni_L || obj.id == idKlingelReni_S) { setState(idAlexa_Echo1,getState(idKlingelTextReni).val,false); setState(idAlexa_Handy1,getState(idKlingelTextReni).val,false); } if( obj.id == idKlingelDreas_L || obj.id == idKlingelDreas_S) { setState(idAlexa_Echo1,getState(idKlingelTextDreas).val,false); setState(idAlexa_Handy1,getState(idKlingelTextDreas).val,false); } setState(idAlexa_Echo1_Vol, alexaEcho1_vol,false); // Ursprungsvolume zurücksetzen setState(idAlexa_Handy1_Vol, alexaHandy1_vol,false); // Ursprungsvolume zurücksetzen });