NEWS
.VIS Sonoff/MQTT Wechselschaltung
-
Jetzt habe ich eben noch gesehen, das bei jeden Tastendruck , Logeinträge erstellt werden.
javascript.0 2018-12-23 22:26:08.184 error at Object. <anonymous>(null.Skript2:15:5) javascript.0 2018-12-23 22:26:08.183 error Error in callback: ReferenceError: If is not defined javascript.0 2018-12-23 22:26:08.183 error at Object. <anonymous>(null.Skript1:15:5) javascript.0 2018-12-23 22:26:08.182 error Error in callback: ReferenceError: If is not defined javascript.0 2018-12-23 22:26:08.053 error at Object. <anonymous>(null.Skript2:5:1) javascript.0 2018-12-23 22:26:08.052 error Error in callback: ReferenceError: If is not defined javascript.0 2018-12-23 22:26:08.052 error at Object. <anonymous>(null.Skript1:5:1) javascript.0 2018-12-23 22:26:08.051 error Error in callback: ReferenceError: If is not defined</anonymous></anonymous></anonymous></anonymous>
Ich habe aber nur ein Skript am laufen, das nennt sich "Sync-Pumpe" . Laut Log, wie ich es verstehe, wird aber von Skript 1 und Skript 2 gesprochen.
Hast du davon Ahnung?
-
Hast du dort ggg. Noch If anstelle von if stehen?
-
Ich habe gar keine "if" mehr.
on({id:"mqtt.0.Garten.Laube.Schalter.stat.POWER1", change:"ne"}, function(obj){ setState("mqtt.0.Garten.Schuppen.Pumpe.cmnd.POWER", obj.state.val); }); on({id:"mqtt.0.Garten.Schuppen.Pumpe.stat.POWER", change:"ne"}, function(obj){ setState("mqtt.0.Garten.Laube.Schalter.cmnd.POWER1", obj.state.val); });
Das ist der Code und der läuft auch ohne Probleme, mal abgesehen, von der Fehlern im Log.
-
Da scheint noch irgendein Ghost script2 zu laufen. Ggg. Mal ioBroker neu starten?
-
Ja habe ich schon. Auch "alle" Skripte exportiert, aber da war auch nur das eine, aktive drinn.
Wobei ich den Broker eh neu aufsetzen werde, jetzt wo ich weiß, wie das funktioniert. So habe ich wenigstens ein sauberes System für den Dauereinsatz.
-
Huhu, darf ich noch mal stören?
Ich habe noch ein kleines Problem, aufbauend auf der erste Projekt.
Wenn ich Taster 1 drücke, bzw der Staus 0 wird, sollen andere Objekte abgeschaltet werden.
Also eine zentrale Licht AUS Schaltung bzw eine "Irgendwo ist noch Licht an" Schaltung.
on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER1", change:"ne"}, function(obj){ (obj.state.val === 0 ); setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER3", "OFF"); setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER4", "OFF"); });
Und wenn irgendeine Lampe an ist, soll die LED 1 Leuchten
if (getState("mqtt.0.Garten.Laube.Schalter1-4.stat.POWER3").val ===1 || getState("mqtt.0.Garten.Laube.Schalter1-4.stat.POWER4").val ===1) { setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER1", "ON"); }
Aber das will nicht. Ich verstehe das Javascript noch nicht. Habe es mir aber für nächstes Jahr zur Aufgabe gesetzt, zu lernen.
-
Probiere mal so
on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER1", change:"ne", val:0}, function(obj){ setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER3", "OFF"); setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER4", "OFF"); });
on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER3", change:"ne", val:1}, function(obj){ setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER1", });
Schau mal hier https://github.com/ioBroker/ioBroker.ja … rsubscribe
Vlt wäre auch blocky was für dich, aber da kann ich nicht weiterhelfen, aber wahrscheinlich viele andere
-
Danke, ja Blockly werde ich mir mal anschauen, klingt jedenfalls erst mal einfacher als Javascript.
Die beiden Scripte gehen nicht richtig. Also immer nur ein mal, dann nicht mehr. Als wenn dort war blockiert oder so.
Beim 2ten hat noch der Befehlt gefehlt, aber auch jetzt gehts nur beim ersten mal, dann nicht mehr.
on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER3", change:"ne", val:"ON"}, function(obj){ setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER1", "ON"); });
Ich will dich dann auch nicht weiter belästigen und probiere mich die Tage mal an Blockly, irgendwie muss ich ja mal vorankommen und nicht immer fragen müssen.
-
Hi AtomicIX,
Kein Thema, wenn ich helfen kann, mache ich das gerne. Ich hatte das mit dem Blocky geschrieben, da es für viele einfacher ist, die vorher noch nichts mit programmieren am Hut hatten. Genau dafür ist es ja auch da. Und dann kommt ja vlt. auch schneller der Erfolg.
Das beim 2. das "on" fehlte, war ein copy and apste fehler. Ich sitzte meistens am Tablet und da ist das mit dem Schreiben nicht immer so einfach, sorry dafür.
Ich kann dir leider nichts getestet geben, da ich diesen Adapter nicht habe.
Was du probieren könntest ist
on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER1", change:"ne", val:"OFF"}, function(obj){ setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER3", "OFF"); setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER4", "OFF"); });
oder
on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER1", change:"ne"}, function(obj){ if (obj.state.val === 0 ){ setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER3", "OFF"); setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER4", "OFF"); } });
-
Leider geht das auch nicht, es passiert nichts, auch im Log ist nichts zu finden.
Das mit der Synchron Schaltung läuft. Also generell läuft ja meine Maschine.
Ich werde mal im Bereich Blockly fragen. Damit hatte ich es auch eben probiert, aber dort sind mir einige Sachen noch unklar.
Prinzipiell ist ja ja nur "WENN - DANN"
-
Nur mal als Überlegung, darf die id ein - haben in "Schalter1-4"?
-
Hatte ich auch schon überlegt, aber
on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER1", change:"ne"}, function(obj){ setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER4", obj.state.val); });
läuft super, das ist auch 1-4 drinn
-
Okay, jetzt läuft alles, auch die vorigen Sachen gehen. Es war ein Fehler in den Adapter Einstellungen von MQTT. Der Hacken musste raus.
Was und wofür das ist, keine Ahnung, aber damit geht es.