NEWS
Grundverständnis Blockly
-
Aber das ist doch genau das was ich nicht möchte. Ich möchte den Trigger bei änderung von 1 ODER 2 und bei 1 UND 2 schalten. Muss doch beides irgendwie gehen. Versteht Ihr mich?
-
ich hab das was du vorhast auch gerade am Samstag gemacht aber nicht mit Blockly sondern mit JavaScript und hab mir statt eine Variable ein Schalter genommen der den Wert Anwesend = true und Abwesend = false hat.
falls es dir etwas hilft.
Gesendet von meinem SM-G935F mit Tapatalk
-
Vielen Dank für das Angebot, Aber ich muss nochmal betonen, es geht mir nicht um die IP. Es geht mir darum auf eine ODER bzw. UND Verknüpfung zu triggern.
Ich versuche mal ein paar Bsp.:
Triggern wenn Lampe 1 UND Lampe 2 an sind.
Triggern wenn Lampe 1 ODER Lampe 2 true sind.
Triggern wenn IP 1 ODER IP 2 true sind.
P.S. Der erweiterte Trigger mit mehreren ID's funktioniert glaube ich wie eine ODER-Verknüpfung? Fehlt noch UND.
-
Vielen Dank für das Angebot, Aber ich muss nochmal betonen, es geht mir nicht um die IP. Es geht mir darum auf eine ODER bzw. UND Verknüpfung zu triggern.
Ich versuche mal ein paar Bsp.:
Triggern wenn Lampe 1 UND Lampe 2 an sind.
Triggern wenn Lampe 1 ODER Lampe 2 true sind.
Triggern wenn IP 1 ODER IP 2 true sind.
P.S. Der erweiterte Trigger mit mehreren ID's funktioniert glaube ich wie eine ODER-Verknüpfung? Fehlt noch UND. `
Es gibt nur den "oder" Trigger. Wenn man auf "und" Triggern will, muß man den "oder" Trigger nehmen und innen drin auf "und" hin prüfen.Gesendet von meinem SM-N910F mit Tapatalk
-
Triggern wenn Lampe 1 UND Lampe 2 an sind. `
Ein Trigger sagt erst mal nur, dass sich ein Datenpunkt geändert hat. Zwei gleichzeitig können sich nicht ändern, das funktioniert IMMER nacheinander. Die Vorgehensweise hier ist:-
Trigger auf Lampe 1 und 2 (im Sinne von Lampe 1 oder 2 wurden geändert).
-
Im Trigger-Block überprüfen, ob Lampe 1 und Lampe 2 an sind.
-
-
Na klar!!!
genau so einen Lichtblick habe ich benötigt! VIELEN DANK!!! Es ist jetzt alles so logisch!
Also so:
3801_blcc5.png -
Aber das funktioniert leider immernoch nicht.
Was mache ich da noch falsch?
Der Trigger müsste doch alle 10s den Status von der IP abfragen. Dieser ändert sich aber nicht.
3801_blcc6.png -
Ändert sich denn der Datenpunkt zur IP? Im Skript vergleichst du nur die Datenpunkte, für deren Aktualisierung ist der jeweilige Adapter zuständig. Wenn der bspw. nur alle 60 Sekunden prüft, ändert sich der DP auch nur frühestens alle 60s.
-
Ja der ändert sich. Hab ping zu testzwecken alle 10s aktuallisieren lassen.
-
selbst das geht nicht. Erscheint nichts im Log
3801_blcc7.png -
Und der JS-Adapter sowie dein Skript stehen auf aktiv?
-
ja, natürlich.
-
Dann weiß ich auch nicht was faul ist.
-
Ich habe manche Scripte in common und manche in global. Kann das was ausmachen? Was ist da der Unterscheid?
-
Ich habe manche Scripte in common und manche in global. Kann das was ausmachen? Was ist da der Unterscheid? `
Wenn man den Unterschied nicht kennt, dann alles ins common packen.Global ist nur für globalen Funktionen.
Gesendet von meinem SM-N910F mit Tapatalk
-
Aber ich benutze Datenpunkte als Variablen. Ist das im common noch möglich? Was sind denn globale Scripte?
-
Aber ich benutze Datenpunkte als Variablen. Ist das im common noch möglich? Was sind denn globale Scripte? `
Ja, das geht mit common.Globale Scripte sind Scripte, die von anderen Scripten aus gerufen werden können. (Das funktioniert aber mit Blockly nicht wirklich.)
Gesendet von meinem SM-N910F mit Tapatalk
-
Also Wenn Das, dann starte Script Sowieso?
-
Also Wenn Das, dann starte Script Sowieso? `
Global functions
You can define the global scripts in the "global" folder. All global scripts are available on all instances. If global script is disabled, it will not be used. Global script will be just prepend to the normal script and compiled, so you cannot share data between scripts via global scrips. Use states for it.
Lies Mich mal : >>> https://github.com/ioBroker/ioBroker.javascript
-
Also Wenn Das, dann starte Script Sowieso? `
Dem Blockly fehlt aber ein Block, um globale Funktionen aufrufen zu können.Man kann lediglich in Blockly eine Freitextfunktion definieren und dort eine globale Funktion aufrufen. Das ist aber arg arg umständlich.
Gesendet von meinem SM-N910F mit Tapatalk