NEWS
Kleine Alarmanlage - mit Blockly?
-
Hi Ihr, Also ich muss den Post wieder hoch holen.
Also vorerst, @Rantaplan du hast recht man sollte klein anfangen.
Aber. wenn du etwas möchtest, was du nicht kannst. hast du doch auch einen weg in die richtung wo es hin gehen soll.
Klein anfangen hin und her. Ich habe nun mal gesucht und es gibt keine Anleitung in die Richtung oder ich habe sie nicht gefunden. Was einen demotiviert. Ich finde Forum hier Toll weil einem geholfen wird. aber nur durch fragen und Antwort wächst ein Forum.
Suche Alarm mit Blockly ergab 2 Threats.
Daher fange ich nochmal an.
Ich neuling, würde gerne mit Blockly lernen und habe nur ein paar Haufen an fragen ^^.
Ich sage was ich möchte und hoffe Antworten zu bekommen 8-)
Die hauptfrage wie lang darf ein ablauf sein bevor er instabil wird und laggt das sys bei zu grossen aufgaben.
Kenne es noch von eventscripts, das die scripts immer wieder komplett durchlaufen und dann bei zu grossen Inhalten laggy werden.
Weiter verstehe ich das mit der ID nicht. wie kann ich denn einen reinen Block ohne aktivierung erstellen ?
Ich schreibe mal was ich jetzt habe
Habe zur Zeit: 9 Fenster Sensoren. 3 Steckdosen und ein Alarm, ein Lautsprecher für Say it alles brav eingerichtet und funktioniert ( doppelte Say it Ausgabe, aber geht)
Ich erkläre mal: würde gerne am Pad ect. auf den button scharf stellen und dann werden alle Sensoren überpüft und nach 5 min scharf gestellt mit ton und Alarm an. "für ausser Haus"
Gedacht Blockly: Info Block 1 : Button Alarm an wird gedrückt ( Wie id / Vis verknüpfung erstellen ? )
Überwacht alle Sensoren. Sollte einer nicht geschlossen sein, kommt eine rückmeldung an das Pad fenster XX ist auf und sendet eine Sprachnachricht . ist alles zu, spring der 5 min Timer an und schaltet dann Scharf.
Wird dann weitergehend doch etwas geöffnet soll die Alarmanlagen und Steckdosen Id eingeschaltet werden und nur durch Pad Eingabe wieder entsperrt werden können.
Wie bekommt man das hin ? mit den blöcken oder muss man das trennen
Hoffe ihr könnt mir das erklären damit ich da irgendwie rein komme.
Später soll dann noch ein Alarm nachtmodus dazu kommen und die wärend der nachtfunktion einen 5min raucher button ^^ Wobei sich die frage stellt in wie fern diese sich später blockieren durch überschneidende abläufe
Lg Desa
-
Hallo Desa,
ich bin auch noch nicht weiter, ich habe mir etwas Zeit gegeben, da meine Hardware für die Alarmanlage nicht vollständig war. In der Zwischenzeit habe ich alle Türe im EG und Fenster mit Fensterkontakten versehen.
Auch eine Selbstbau-Außensirene ist fast vollständig aufgebaut. Zwei verschiedene Stromkreise für LED Blitzlicht und Hupe an einem "HomeMatic 4-Kanal-Funk-Schaltaktor". :mrgreen: Das ganze soll mit einem Lithium-Ionen-Akku 20000mAh funktionieren. Im Gehäuse ist auch genug Platz vorhanden.
5 fensterkontakte und drei Bewegungsmelder sollen den EG des Hauses überwachen. Um die Alarmanlage scharf/unscharf zu stellen, wollte ich die Funk-Handsender von der Homematic nutzen.
Erst zu deinem Vorhaben. Du willst die Alarmanlage über den Pad scharf/unscharf stellen.
Wie willst Du deine Alarmanlage unscharf schalten wenn Du außer Haus bist und herein möchtest? Willst Du immer dein Pad mit dabei tragen?
Ich habe mich für die Funk-Handsender entschieden. Am Schlüsselbund ist es kein Problem ein Handsender mitzuführen. Zumindest besser und schneller zu bedienen als ein Pad aus der Tasche auszupacken…
Desweiteren hast Du nur die Fensterkontakte, womit Du den Alarm auslösen könntest. Hierbei besteht natürlich eine hohe Wahrscheinlichkeit für die Fehlalarme. Deshalb möchte ich erst dann ein Alarm auslösen wollen, sobald ein Fensterkontakt und zusätzlich auch noch eine Bewegung über einen Bewegungsmelder erkannt wird. In dieser Konstellation ist die Wahrscheinlichkeit für den Fehlalarm sehr gering!
Ein passendes Widget zum scharf/unscharf stellen aus dem VIS wird sich sicherlich ohne Probleme finden, das soll Dir nicht jetzt den Kopf zerbrechen.
Ich weiß auch nicht womit man hier anfangen soll. Vermutlich vorerst eine neue Systemvariable für Alarm mit einem Logikwert scharf/unscharf erstellen.
Danach ein Programm um die Variable der Alarmanlage aktivieren und deaktivieren zu können.
Danach wieder ein Programm mit der Abfrage aller Sensoren und Überprüfung der zuvor erstellten Systemvariable der Alarmanlage.
Das ist aber die Theorie! :mrgreen:
Wer kennst sich aus? Wie kann ich mit Blockly eine Systemvariable mit einem Logikwert erstellen? Ich muß erst irgendwo anfangen...Hilfe
1526_cf7dc06f4cfcb07fb0f285bf4138.jpg -
Lol nee ich hab nur 6Zoll taschen an der Hose und für 10 Zoll wollte ich keine Nähmaschiene kaufen.
zurück, also das was du hast soll im etwa dem entsprechen was ich zu hause habe. möchte halt nur langsam anfangen und auch was lernen.
Genau den Verteiler habe ich auch zu hause und ein blitzlich mit piezo dran hängen.
Natürlich sollen später auch noch 2 bis 3 Bewegungsmelder dazu kommen. Nur bringt mir nichts wenn ich nicht weiss wie man es am besten programmiert.
Pass uff mein Endgedanke zum entschärfen war. ohne Fernbedienung, sondern mit einem Nur zum freischalten altes Handy zu benutzen. dieses ist im Eingang. man soll nach eintritt durch die haustür 1 min. Zeit haben zum entschärfen mit Ansage. kommt jemand durch die küche oder Wohnzimmer rein. und der bewegungsmelder wie auch der fensterkontakt reagiert. geht innerhalb von 15 sec. ein alarm los.
Aber ist ist die theorie. jetzt muss ich nur wissen wie man es am besten umsetzt ^^
Warte machen wir mal Anders
:!: :!: :!: :!: <size size="200">HILFEEEEE</size> :!: :!: :!: :!:
-
Hallo Desa
Also vorerst, @Rantaplan du hast recht man sollte klein anfangen. `
Das mit dem "klein anfangen" betrifft auch die Fragen.
"Ich möchte eine Alarmfunktion mit Blockly realisieren, wie mache ich das?" ist einfach zu komplex.
Zumal man den Wissensstand des Fragenden nicht kennt. Wo soll der Helfende da anfangen?
"Kleine Fragen" wie "Ich möchte mit Blockly einen Bewegungsmelder abfragen, wie geht das?"
Und am besten noch ein Screenshot von dem Versuch. Da kann ein Helfender schnell reagieren.
Aus Deinem Beitrag entnehme ich, dass Du bei Blockly und bei VIS noch ziemlich am Anfang stehst.
Ich glaube Du bist noch auf der Suche nach dem "AHA-Erlebnis".
Mal schauen, ob ich Dir einen Schubser geben kann.
Ich sage was ich möchte und hoffe Antworten zu bekommen 8-) `
Jawoll Sir!Die hauptfrage wie lang darf ein ablauf sein bevor er instabil wird und laggt das sys bei zu grossen aufgaben. `
Das kommt darauf an, wodrauf Dein ioBroker läuft. Aber alles ist perfomanter als die CCU.Riesen Scripts sollte man sowieso nicht bauen. Lieber alles in kleinen überschaubaren Häppchen.
Weiter verstehe ich das mit der ID nicht. `
Schau mal im ioBroker.admin im Reiter Objekte.Klappe dann mal z.B. "hm-rpc.0" auf (kleines Pfeilchen ganz links).
Da werden alle Deine Geräte aufgeführt. Jedes Gerät kann man weiter aufklappen und die jeweitigen Datenpunke werden angezeigt.
Diese Anzeige/Auswahl bekommst Du auch, wenn man in Blockly oder VIS auf das Eingabefeld klickt wo "Objekt-ID" steht.
Wenn Du die Solltemperatur an einem Wandthermostat anzeigen/ändern willst klickst Du Dich bis zu dem Datenpunkt "setpoint" durch und klicktst "übernehmen" an.
Fertig!
Noch ein kleiner Tip. Wenn Du viele Geräte/Variablen hast, ist der Filter "Name" sehr hilfreich.
Deine System Variablen auf der CCU findest Du unter "hm-rega.0".
wie kann ich denn einen reinen Block ohne aktivierung erstellen ? `
Was soll das bringen? Das Script wird bei Programmstart einmal durchlaufen und das war's.Bei der Automation läuft es nach Zeitabschitten (alle 5 Min, 1x die Woche…) oder nach Zustandsänderungen (Bewegungmelder hat Bewegung erkannt...mach was.)
Hoffe ihr könnt mir das erklären damit ich da irgendwie rein komme. `
Ich hoffe das ein oder andere "AHA-Erlebnis" war dabei.Probiere einfach mal etwas aus.
Wenn es dann klemmt, Bildchen rein und Frage stellen.
Hier gibt es eine angefangene deutsche Übersetzung.https://github.com/Homoran/ioBroker.jav … schreibung
Grüße
-
Wer kennst sich aus? Wie kann ich mit Blockly eine Systemvariable mit einem Logikwert erstellen? Ich muß erst irgendwo anfangen…Hilfe `
Hallo knoper1
Du kannst auch die Systemvariablen Deiner CCU nehmen. 90% meiner Variablen liegen auf der CCU.
Wie man Variablen, mit Blocky, auf ioBroker anlegt, habe ich hier mal beschrieben.http://forum.iobroker.net/viewtopic.php?f=21&t=4818
Grüße
-
Jaa da isser ^^ Aha leider nein :oops:
Also vorerst zur Hardware, ich habe nen Raspi 2 und 3 mit jessi min liegen. arbeite zur zeit mit dem zweier.
Zur verbindung. Hm Modul gesteckt, Zwave über dongle / Stick.
Wo ich die i her bekomme und wie ich sie schalten muss ist mir alles klar.
mir macht der ablauf in blocky probleme.
Hoffe ich kann es dir erklären . nehmen wir mal das beispiel auf der Seite,
Woher bekommt man die ID "Bewegung". wie kann ich die Anlegen ?
Der Haltepunkt fehlt mir zur Sortierung
-
Jaa da isser ^^ Aha leider nein :oops:
Hoffe ich kann es dir erklären . nehmen wir mal das beispiel auf der Seite,
Woher bekommt man die ID "Bewegung". wie kann ich die Anlegen ?
Der Haltepunkt fehlt mir zur Sortierung `
Ja, ich muss gestehen, dass ist etwas verwirrend. :oops:
"Bewegung" ist eine Variable, die man natürlich nicht hat, wenn man das Blockly importiert.
"Bewegung" steht da nur symbolisch für den Datenpunkt "MOTION" eines Bewegungsmelder.
Genau so wie "Außentemperatur". Das steht symbolisch für den Datenpunkt "aktuelle Temperatur" eines Temperatur-Außenfühlers.
Ich wollte das immer nochmal in die Beschreibung einfügen.
Aber die Übersetzung stockt zur Zeit etwas, weil ich den Ableich auf Github nicht hinbekomme.
Grüße
-
aber wie bekomme ich das Bild mit Blockly verknüpft.
Dazu muss ich doch iwie einen Ablauf zu einer id machen oder nicht
Glaube zu verstehen was du meinst. aber die verbidnung zur vis fehlt mir
wie hier z.b. http://forum.iobroker.net/viewtopic.php … =countdown
Hätte das gerne ähnlich wie hier. weiss aber auch net wie er das mit dem Schild gemacht hat
-
So, Also habe das jetzt mal zusammengesetzt wie ich das dachte. fehlen nur die verbindungen
http://www.bilder-upload.eu/show.php?file=3321c9-1485374749.jpg ~~Ich hoffe das ist so richtig. das halt mal 4
! // VIS Schalter Alarm aus
! on({id: "Object ID", val: true, ack: false}, function (obj) {
! var value = obj.state.val;
! var oldValue = obj.oldState.val;
! (function () {if () {clearSchedule(); = null;}})();
! });
! // VIS Schalter Alarm an
! on({id: 'default', val: true, ack: false}, function (obj) {
! var value = obj.state.val;
! var oldValue = obj.oldState.val;
! // Fensterkontakt WZ 1
! on({id: "hm-rpc.0.NEQ1507095.1.STATE"/HM-Sec-SCo NEQ1507095:1.STATE/, val: true, ack: false}, function (obj) {
! var value = obj.state.val;
! var oldValue = obj.oldState.val;
! // Bewegungsmelder WZ
! on({id: 'default', change: "ne", ack: false}, function (obj) {
! var value = obj.state.val;
! var oldValue = obj.oldState.val;
! setState("sayit.0.tts.text", "de;" + 'Stiller Alarm ist Aktiv ');
! console.log("sayIt[de]: " + 'Stiller Alarm ist Aktiv ');
! setState("Object ID", );
! setStateDelayed("zwave.0.NODE4.SWITCH_BINARY.Switch_1"/Switch/, 'default', 6000, false);
! setState("Object ID", );
! setState("sayit.0.tts.text", "de;" + 'Lauter Alarm wird aktiviert');
! console.warn("sayIt[de]: " + 'Lauter Alarm wird aktiviert');
! });
! });
! on({id: "hm-rpc.0.NEQ1507113.1.STATE"/HM-Sec-SCo NEQ1507113:1.STATE/, val: true, ack: false}, function (obj) {
! var value = obj.state.val;
! var oldValue = obj.oldState.val;
! // Bewegungsmelder WZ
! on({id: 'default', change: "ne", ack: false}, function (obj) {
! var value = obj.state.val;
! var oldValue = obj.oldState.val;
! setState("sayit.0.tts.text", "de;" + 'Stiller Alarm ist Aktiv ');
! console.log("sayIt[de]: " + 'Stiller Alarm ist Aktiv ');
! setState("Object ID", );
! setStateDelayed("zwave.0.NODE4.SWITCH_BINARY.Switch_1"/Switch/, 'default', 6000, false);
! setState("Object ID", );
! setState("sayit.0.tts.text", "de;" + 'Lauter Alarm wird aktiviert');
! console.warn("sayIt[de]: " + 'Lauter Alarm wird aktiviert');
! });
! });
! on({id: "hm-rpc.0.NEQ1109723.1.STATE"/HM-Sec-SC-2 NEQ1109723:1.STATE/, val: true, ack: false}, function (obj) {
! var value = obj.state.val;
! var oldValue = obj.oldState.val;
! // Bewegungsmelder WZ
! on({id: 'default', change: "ne", ack: false}, function (obj) {
! var value = obj.state.val;
! var oldValue = obj.oldState.val;
! setState("sayit.0.tts.text", "de;" + 'Stiller Alarm ist Aktiv ');
! console.log("sayIt[de]: " + 'Stiller Alarm ist Aktiv ');
! setState("Object ID", );
! setStateDelayed("zwave.0.NODE4.SWITCH_BINARY.Switch_1"/Switch/, 'default', 6000, false);
! setState("Object ID", );
! setState("sayit.0.tts.text", "de;" + 'Lauter Alarm wird aktiviert');
! console.warn("sayIt[de]: " + 'Lauter Alarm wird aktiviert');
! });
! });
! on({id: "hm-rpc.0.NEQ0758032.1.STATE", val: true, ack: false}, function (obj) {
! var value = obj.state.val;
! var oldValue = obj.oldState.val;
! // Bewegungsmelder WZ
! on({id: 'default', change: "ne", ack: false}, function (obj) {
! var value = obj.state.val;
! var oldValue = obj.oldState.val;
! setState("sayit.0.tts.text", "de;" + 'Stiller Alarm ist Aktiv ');
! console.log("sayIt[de]: " + 'Stiller Alarm ist Aktiv ');
! setState("Object ID", );
! setStateDelayed("zwave.0.NODE4.SWITCH_BINARY.Switch_1"/Switch/, 'default', 6000, false);
! setState("Object ID", );
! setState("sayit.0.tts.text", "de;" + 'Lauter Alarm wird aktiviert');
! console.warn("sayIt[de]: " + 'Lauter Alarm wird aktiviert');
! });
! });
! });
! // Vis Schalter Alarm an
! // Bewegungsmelder
! // Vis Alarm Bild
! // Alarm Sirene~~ -
Bitte keine verlinkten Bilder hier reinstellen!!
Die schaut sich keiner an.
Und nicht das javasript einstellen, sondern den EXPORT.
(Die kleinen Pfeilchen links neben "Blöcke prüfen"
Grüße
-
aber wie bekomme ich das Bild mit Blockly verknüpft.
Dazu muss ich doch iwie einen Ablauf zu einer id machen oder nicht
Glaube zu verstehen was du meinst. aber die verbidnung zur vis fehlt mir
wie hier z.b. http://forum.iobroker.net/viewtopic.php … =countdown
Hätte das gerne ähnlich wie hier. weiss aber auch net wie er das mit dem Schild gemacht hat `
Hallo Desa
Du stellst von VIS keine direkte Verbindung zum Blockly her.
Die Verbindung sind immer Geräte-Datenpunke oder Variablen.
Nimm mal in VIS das hqWidget, wo eine Glühlampe drauf ist.
Dieses Widget verbindest Du (Objekt ID) mit Deiner Systemvariablen "Anwesenheit" auf der CCU.
Finden tust Du die in der Auswahl unter "hm-rega"
Beende "VIS-Edit" und klicke dann auf das Lampen Widget.
Bei jedem Klick wird die Lampe anders dargestellt. Mal hell (an) mal dunkel (aus).
Du "schaltest" jetzt aber keine Lampe sondern Deine Variable "Anwesenheit"
Kannste in der CCU WebUI überprüfen.
Widget AN –> "Anwenheit" = wahr
Widget AUS --> "Anwesenheit = falsch
"Anwesenheit" ist eine sogenannte "boolsche" Variable.
Die kann nur zwei Zustände / Werte annehmen falsch/wahr 0/1.
Jetzt baust Du Dir ein Blockly mit einem Trigger, der die Variable "Anwesenheit" überwacht.
Falls Objekt (ID Deiner Anwesenheit)
geändert wurde
Falls Wert von Anwe.. ist wahr
mache .........
sonst ...........
usw. usw.
Grüße
-
Ok. Jetzt ist offiziell ich bin komplett verwirrt.
Warte also nicht das ich jetzt ganz doof bin oder werde. Ich fang mal nochmal an.
Ich habe einen zweier Pi mit HM Modul und Zwave Stick. benutze die SW nur zum einloggen / anmelden / registrieren der Geräte. habe dort nichts weiter eingetragen. Zum Zuordnen habe ich Vis genommen. Mein Hauslayout erstellt, fenster kontakte eingetragen mit kleinen Lämpchen und einzelnd dargestellten fenstern unten.
Weiter habe ich dort jetzt 3 Steckdosen eingebettet und kann auch sauber schalten. wird angezeigt alles io. kann auch mit sprache ein aus schalten soweit alles ok.
Das mit dem Bild verwirrt mich nun ein wenig. Entweder reden wir an einander vorbei und ich verstehe nicht was du damit meinst, vorallem da ich nichts in dem verzeichnis habe oder du vermutest ich stehe noch gaaaaanz weit am anfang ^^
Ich würde gerne eine Objekt ID ( Blanko ) erstellen die es mir erlaubt den Baum zu vervollständigen.
Das etwas wann geschaltet werden soll ist OK. aber ich dachte an einen zwischenpunkt
Also ich erstelle einen ID Punkt wohnzimmer und wenn der reagiert kann ich den nächsten ablauf zu den geräten ansteuern oder halt say ect.
-
ich bin Stück weiter… vielen Dank Rantanplan
Auf der CCU2 habe ich eine neue Systemvariable mit dem Namen Alarmanlage erstellt.
Als Variabletyp habe ich den Logikwert genommen, mit den Werten wahr=scharf & falsch=unscharf
Diese Variable finde ich jetzt im Iobroker unter HM-Rega. Mit dem Lampen-Widget kann ich aus dem VIS den Zustand der Alarmanlage scharf/unscharf schalten. Der Wert ändert sich auch von true auf false, wenn ich den Lampenwidget betätige.
So wie es aussieht, funktioniert das schalten aus dem VIS ohne Probleme. Jetzt würde ich gerne noch zwei Funk-Handsender implementieren, damit ich die Alarmanlage damit scharf/unscharf schalten kann.
Meine Frage. Spricht etwas dagegen wenn ich parallel dazu unter CCU2 die zwei Funk-Handsender von der Homematic hinzufüge?
als Beispiel:
Bedingung: Wenn…
Geräteauswahl - Handsender Taste 1 - bei Tastendruck kurz
ODER
Geräteauswahl - Handsender Taste 1 - bei Tastendruck lang
Aktivität: Dann...
Systemzustand - Alarmanlage - sofort – scharf (oder mit verzögerung)...
Bedingung: Sonst Wenn...
Geräteauswahl - Handsender Taste 2 - bei Tastendruck kurz
ODER
Geräteauswahl - Handsender Taste 2 - bei Tastendruck lang
Aktivität: Dann...
Systemzustand - Variable Alarmanlage - sofort – unscharf
Denn so, hätte ich bereits ein Programm auf der CCU2 um die Alarmanlage schalten zu können ohne dass ich dazu Blockly benutzen müßte. Deswiteren gibt es weiterhin die Möglichkeit mit dem Widget aus dem VIS haraus die Alarmanlage zu schalten.
Den rest würde ich gerne mit Blockly weitermachen, da ich einige Bewegungsmelder nicht von der Homematic mit einbinden wollte.
Spricht etwas dagegen?
-
Ok. Jetzt ist offiziell ich bin komplett verwirrt.
Warte also nicht das ich jetzt ganz doof bin oder werde. Ich fang mal nochmal an.
Ich habe einen zweier Pi mit HM Modul und Zwave Stick. benutze die SW nur zum einloggen / anmelden / registrieren der Geräte. habe dort nichts weiter eingetragen. Zum Zuordnen habe ich Vis genommen. Mein Hauslayout erstellt, fenster kontakte eingetragen mit kleinen Lämpchen und einzelnd dargestellten fenstern unten.
Weiter habe ich dort jetzt 3 Steckdosen eingebettet und kann auch sauber schalten. wird angezeigt alles io. kann auch mit sprache ein aus schalten soweit alles ok.
Das mit dem Bild verwirrt mich nun ein wenig. Entweder reden wir an einander vorbei und ich verstehe nicht was du damit meinst, vorallem da ich nichts in dem verzeichnis habe oder du vermutest ich stehe noch gaaaaanz weit am anfang ^^
Ich würde gerne eine Objekt ID ( Blanko ) erstellen die es mir erlaubt den Baum zu vervollständigen.
Das etwas wann geschaltet werden soll ist OK. aber ich dachte an einen zwischenpunkt
Also ich erstelle einen ID Punkt wohnzimmer und wenn der reagiert kann ich den nächsten ablauf zu den geräten ansteuern oder halt say ect. `
Hallo Desa
Ich kann mich Dir anschließen, weis jetzt selbst nicht mehr wo oben und unten ist :roll:
Keine Ahnung was Du vorhast. Wir reden wahrscheinlich wirklich aneinander vorbei.
Ich rede hier über Blockly und VIS auf ioBroker.
PI, Zwave Stick usw. interessieren dabei nicht.
@Desa:benutze die SW nur zum einloggen / anmelden / registrieren der Geräte. habe dort nichts weiter eingetragen. `
Was meinst Du damit? Ist SW bei Dir ioBroker oder was?Was willst Du mit einer "Blanko ID" (so etwas gibt es auch nicht).
Von welchem "Baum" und "Bild" redest Du?
Fangen wir nochmal bei Null an.
Versuche mir nochmal Dein Anliegen zu erklären aber laß diesmal das ganze Drumherhum weg.
Das kriegen wir schon irgendwie hin. Wäre doch gelacht 8-)
Grüße
-
Denn so, hätte ich bereits ein Programm auf der CCU2 um die Alarmanlage schalten zu können ohne dass ich dazu Blockly benutzen müßte. Deswiteren gibt es weiterhin die Möglichkeit mit dem Widget aus dem VIS haraus die Alarmanlage zu schalten.
Den rest würde ich gerne mit Blockly weitermachen, da ich einige Bewegungsmelder nicht von der Homematic mit einbinden wollte.
Spricht etwas dagegen? `
Grundsätzlich spricht nichts dagegen. Zu Begin hatte ich auch noch Scripte auf der CCU.
Jetzt gibt es da nur noch Systemvariablen und Direktverknüpfungen.
Mein ganzes System (ioBroker/CCU) läuft schon seit Monaten so stabil und zuverlässig wie nie zuvor.
Grüße
-
Hab mal Ein Bild angehangen wie ich mir das vorstelle
Also soll noch viel mehr rein, aber ohne punkt wird das nix ^^
Im Rega Verzeichnis habe ich nichts eingetragen . Die angemeldeten Adapter liegen alle im rpc verzeichnis ( und Zwave )
Vorstellung
! <xml 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml">
! <block type="comment" id="Z22BrYaZcq=d@t4Egngz" x="63" y="-437"><field name="COMMENT">VIS Schalter Alarm aus</field>
! <next><block type="on" id="/hH~1sjd]t?r}(-{Ou"><field name="OID">Object ID</field>
! <field name="CONDITION">true</field>
! <field name="ACK_CONDITION">false</field>
! <statement name="STATEMENT"></statement>
! <next><block type="comment" id="bTX1!Jg{E%0X}rx%!%hS"><field name="COMMENT">VIS Schalter Alarm an</field>
! <next><block type="on_ext" id="-{Hx6T/sZ#v+!5l-3LPy"><mutation items="1"></mutation>
! <field name="CONDITION">true</field>
! <field name="ACK_CONDITION">false</field>
! <value name="OID0"><shadow type="field_oid" id="%R6ZF~I%jNLYv[WHpx^K"><field name="oid">default</field></shadow></value>
! <statement name="STATEMENT"><block type="comment" id="I!.D#,itjKUDMIJl/.:"><field name="COMMENT">Fensterkontakt WZ 1</field>
! <next><block type="on" id="Ew|.;i35!}b1}tdU|6m"><field name="OID">hm-rpc.0.NEQ1507095.1.STATE</field> ! <field name="CONDITION">true</field> ! <field name="ACK_CONDITION">false</field> ! <statement name="STATEMENT"><block type="comment" id="(JPt3!E?oln(,b_2Ml,:"><field name="COMMENT">Bewegungsmelder WZ</field> ! <next><block type="on_ext" id="R^k2mThONX_2}JqK8A-R"><mutation items="1"></mutation> ! <field name="CONDITION">ne</field> ! <field name="ACK_CONDITION">false</field> ! <value name="OID0"><shadow type="field_oid" id="2RqB(Xfhrfk~hJARy:.Z"><field name="oid">default</field></shadow></value> ! <statement name="STATEMENT"><block type="sayit" id="fGS3.)F#+8ns3Z/n^VKJ"><field name="INSTANCE">.0</field> ! <field name="LANGUAGE">de</field> ! <field name="LOG">log</field> ! <value name="MESSAGE"><shadow type="text" id="6ymsOAjm/jpYhD9mHthd"><field name="TEXT">Stiller Alarm ist Aktiv</field></shadow></value> ! <next><block type="control" id="am%-jiA!VEk8;M%}@@q]"><mutation delay_input="false"></mutation> ! <field name="OID">Object ID</field> ! <field name="WITH_DELAY">FALSE</field> ! <next><block type="control" id="
+Bo5L;1d#lG)0QG3H"><mutation delay_input="true"></mutation>
! <field name="OID">zwave.0.NODE4.SWITCH_BINARY.Switch_1</field>
! <field name="WITH_DELAY">TRUE</field>
! <field name="DELAY_MS">6000</field>
! <field name="CLEAR_RUNNING">FALSE</field>
! <value name="VALUE"><block type="field_oid" id="H~N=iIM7IRTrg;+=3@V!"><field name="oid">default</field></block></value>
! <next><block type="control" id="BK{KLPb1NnRffQYs+;8W"><mutation delay_input="false"></mutation>
! <field name="OID">Object ID</field>
! <field name="WITH_DELAY">FALSE</field>
! <next><block type="sayit" id="EVKegjRE6{NJqFmUvmD~"><field name="INSTANCE">.0</field>
! <field name="LANGUAGE">de</field>
! <field name="LOG">warn</field>
! <value name="MESSAGE"><shadow type="text" id="__pOj!|cfxK9.Giw-x;"><field name="TEXT">Lauter Alarm wird aktiviert</field></shadow></value></block></next></block></next></block></next></block></next></block></statement></block></next></block></statement>
! <next><block type="on" id="jNd!pi6H]n;}q1O[.N]R" collapsed="true"><field name="OID">hm-rpc.0.NEQ1507113.1.STATE</field>
! <field name="CONDITION">true</field>
! <field name="ACK_CONDITION">false</field>
! <statement name="STATEMENT"><block type="comment" id="3;MLs4a:7h%z@D_Wl-"><field name="COMMENT">Bewegungsmelder WZ</field>
! <next><block type="on_ext" id="{]4|1Bbz_;ElWSY{CB"><mutation items="1"></mutation>
! <field name="CONDITION">ne</field>
! <field name="ACK_CONDITION">false</field>
! <value name="OID0"><shadow type="field_oid" id="4TLZ-%/Eao7E[JmKdg(k"><field name="oid">default</field></shadow></value>
! <statement name="STATEMENT"><block type="sayit" id=",1y?=*_,-yWnjUhlt+Jc"><field name="INSTANCE">.0</field>
! <field name="LANGUAGE">de</field>
! <field name="LOG">log</field>
! <value name="MESSAGE"><shadow type="text" id="9Vf]g,*H)^}:BqDTU?U"><field name="TEXT">Stiller Alarm ist Aktiv</field></shadow></value> ! <next><block type="control" id="#G:~s)z!AKrqLY#GL*F_"><mutation delay_input="false"></mutation> ! <field name="OID">Object ID</field> ! <field name="WITH_DELAY">FALSE</field> ! <next><block type="control" id="a=XCA}ytoSAZ_{ya;8.P"><mutation delay_input="true"></mutation> ! <field name="OID">zwave.0.NODE4.SWITCH_BINARY.Switch_1</field> ! <field name="WITH_DELAY">TRUE</field> ! <field name="DELAY_MS">6000</field> ! <field name="CLEAR_RUNNING">FALSE</field> ! <value name="VALUE"><block type="field_oid" id="@8E{@y!m!*YcXUx;5^DE"><field name="oid">default</field></block></value> ! <next><block type="control" id="09~4fS?Xfxtf/gb~=q3x"><mutation delay_input="false"></mutation> ! <field name="OID">Object ID</field> ! <field name="WITH_DELAY">FALSE</field> ! <next><block type="sayit" id="X|?HFF_cs6e
;(mf#IML"><field name="INSTANCE">.0</field>
! <field name="LANGUAGE">de</field>
! <field name="LOG">warn</field>
! <value name="MESSAGE"><shadow type="text" id="cQYZIZ~[Sj{N#57{UjF6"><field name="TEXT">Lauter Alarm wird aktiviert</field></shadow></value></block></next></block></next></block></next></block></next></block></statement></block></next></block></statement>
! <next><block type="on" id="k[aexMz~;Y1lA9Jr?hg0" collapsed="true"><field name="OID">hm-rpc.0.NEQ1109723.1.STATE</field>
! <field name="CONDITION">true</field>
! <field name="ACK_CONDITION">false</field>
! <statement name="STATEMENT"><block type="comment" id="2u5)v)(JoEG?^mcO}S8r"><field name="COMMENT">Bewegungsmelder WZ</field>
! <next><block type="on_ext" id="g%m]N{opnn.|AnQ32^.@"><mutation items="1"></mutation>
! <field name="CONDITION">ne</field>
! <field name="ACK_CONDITION">false</field>
! <value name="OID0"><shadow type="field_oid" id="v8|C+yD!HxXHiGi!sn};"><field name="oid">default</field></shadow></value>
! <statement name="STATEMENT"><block type="sayit" id="}F4p]G7Vp/Bx?7hu/dx?"><field name="INSTANCE">.0</field>
! <field name="LANGUAGE">de</field>
! <field name="LOG">log</field>
! <value name="MESSAGE"><shadow type="text" id="16~U(po}#
ogY3Y?!:"><field name="TEXT">Stiller Alarm ist Aktiv</field></shadow></value> ! <next><block type="control" id="D?9;T|[qceyv:b%##Aev"><mutation delay_input="false"></mutation> ! <field name="OID">Object ID</field> ! <field name="WITH_DELAY">FALSE</field> ! <next><block type="control" id="l_AH6#%CsUSQuwPd]NKM"><mutation delay_input="true"></mutation> ! <field name="OID">zwave.0.NODE4.SWITCH_BINARY.Switch_1</field> ! <field name="WITH_DELAY">TRUE</field> ! <field name="DELAY_MS">6000</field> ! <field name="CLEAR_RUNNING">FALSE</field> ! <value name="VALUE"><block type="field_oid" id=":J[@;1YTYeI=h^AIME8V"><field name="oid">default</field></block></value> ! <next><block type="control" id="J|JnJ@UU54ZO]ZCDaMts"><mutation delay_input="false"></mutation> ! <field name="OID">Object ID</field> ! <field name="WITH_DELAY">FALSE</field> ! <next><block type="sayit" id="3|1AJ}C+#%pg%;5q8b]i"><field name="INSTANCE">.0</field> ! <field name="LANGUAGE">de</field> ! <field name="LOG">warn</field> ! <value name="MESSAGE"><shadow type="text" id="2D4zz#CV;OkZ~Zo#qQCm"><field name="TEXT">Lauter Alarm wird aktiviert</field></shadow></value></block></next></block></next></block></next></block></next></block></statement></block></next></block></statement> ! <next><block type="on" id="t*-HWfuv.}hOaldpD4.E" collapsed="true"><field name="OID">hm-rpc.0.NEQ0758032.1.STATE</field> ! <field name="CONDITION">true</field> ! <field name="ACK_CONDITION">false</field> ! <statement name="STATEMENT"><block type="comment" id="dJ/qEj~/t+JWm%81jqeH"><field name="COMMENT">Bewegungsmelder WZ</field> ! <next><block type="on_ext" id="PU5LPQ,J8gjk?D5z6,dC"><mutation items="1"></mutation> ! <field name="CONDITION">ne</field> ! <field name="ACK_CONDITION">false</field> ! <value name="OID0"><shadow type="field_oid" id="y#rZ2nN3_!XTZi_=hZVB"><field name="oid">default</field></shadow></value> ! <statement name="STATEMENT"><block type="sayit" id="Og?}_vMGn{a5f(iDJm4W"><field name="INSTANCE">.0</field> ! <field name="LANGUAGE">de</field> ! <field name="LOG">log</field> ! <value name="MESSAGE"><shadow type="text" id="5e-o+EgQPVQvB_~aQjl~"><field name="TEXT">Stiller Alarm ist Aktiv</field></shadow></value> ! <next><block type="control" id=":}??-82owrnU,_Jg.45;"><mutation delay_input="false"></mutation> ! <field name="OID">Object ID</field> ! <field name="WITH_DELAY">FALSE</field> ! <next><block type="control" id="iTwogL]v79vX1K___B{N"><mutation delay_input="true"></mutation> ! <field name="OID">zwave.0.NODE4.SWITCH_BINARY.Switch_1</field> ! <field name="WITH_DELAY">TRUE</field> ! <field name="DELAY_MS">6000</field> ! <field name="CLEAR_RUNNING">FALSE</field> ! <value name="VALUE"><block type="field_oid" id="DeO,gvFDsPPv=/z?ExVT"><field name="oid">default</field></block></value> ! <next><block type="control" id="8}WL7KAlY?d4gteTQ(B1"><mutation delay_input="false"></mutation> ! <field name="OID">Object ID</field> ! <field name="WITH_DELAY">FALSE</field> ! <next><block type="sayit" id="!NQHK~baG/5TnA(TQ0LE"><field name="INSTANCE">.0</field> ! <field name="LANGUAGE">de</field> ! <field name="LOG">warn</field> ! <value name="MESSAGE"><shadow type="text" id="F|A;_ra%KTJ(|qWeB:ni"><field name="TEXT">Lauter Alarm wird aktiviert</field></shadow></value></block></next></block></next></block></next></block></next></block></statement></block></next></block></statement></block></next></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block> ! <block type="comment" id="GB3@AfC2Ycp^(NOI|^F-" x="413" y="-237"><field name="COMMENT">Vis Schalter Alarm an</field></block> ! <block type="comment" id="P9Zh26lTA,=RbrP;r]65" x="462" y="-13"><field name="COMMENT">Bewegungsmelder</field></block> ! <block type="comment" id="b);E1)!dZCXknR,Hm3+i" x="463" y="187"><field name="COMMENT">Vis Alarm Bild</field></block> ! <block type="comment" id="0Ef#_84EQciiTmOD
xFB" x="463" y="262"><field name="COMMENT">Alarm Sirene</field></block></xml>Lg Desa ( Heiße Stefan ^^ )
1812_alarm_wz_1.jpg -
Wau! Da hast Du Dir ja richtig Mühe gegeben.
Wollen mir mal schauen ob ich es jetzt verstanden habe.
1. Keine CCU
2. Alle Geräte in ioBroker angemeldet (über was auch immer)
3. Alle Gerate über VIS steuerbar
4. Sonst Nichts. Keine weitere, eigene Variablen/Objekte in ioBroker
Sind wir da auf einer Linie?
[edit] Dein Blockly konnte ich nicht importieren. Ich tippe mal wenn Du auf "Blöcke prüfen" klickst, gibt es eine Fehlermeldung.
Grüße
-
Stimmt, Stimmt, Stimmt und stimmt
Und ja es gibt eine Fehlermeldung da die Zwischenräume fehlen :oops:
Deswegen hatte ich das Bild gemacht
1812_bild.jpg -
Na also wenn wer lust hat, kann auch jemand anderes etwas dazu beitragen Ist ja nen Forum
So ein Counter des Bildes hat schon was :geek:
Oder ist Rantaplan der einzige der sich damit auskennt :lol: Ich bin gerade sehr wissbegierig
Lg Desa
-
Hallo Desa
Hat etwas länger gedauert. Aber ich habe auch noch ein Leben neben ioBroker, Blockly usw.
Ich habe da mal etwas vorbereitet, auf das Du hoffendlich aufbauen kannst.
Das Zusammenspiel von Geräten, Variablen, VIS und Scripte (Blockly) sollte klarer werden.
Wenn nicht…Fragen...Ich gebe so schnell nicht auf
(Die Anwort kann aber auch mal etwas dauern)
Für das Beispiel werden 2 Variabel und 2 Scripte benötigt.
Du möchtest ja, dass bevor der Alarm scharf geschaltet wird, einige Dinge überprüft werden.
Und die Scharfschaltung innerhalb eines Zeitraumes abbrechen können.
Also brauchen wir so etwas wie einen "Zündschlüssel" und "Zündvorgang".
Der "Zündschlüssel" in dem Beispiel ist eine boolsche Variable/Objekt (bolAlarmSchalten).
Diese muss von irgendwo her auf Wahr/Unwahr gesetzt werden können.
Sei es über VIS, Handsender, Wandtaster, Pin-Eingabe usw. usw.
Über "bolAlarmSchalten" wird also der Alarmzustand aktiviert/deaktiviert.
Der eigentliche Alarmzustand wird über die boolsche Variable/Objekt "bolAlarm" dargestellt.
Diese wird im zweiten Script benötigt.
Dort werden die "Überwachungsgeräte" (Tür-/Fensterkontakt, Bewegungsmelder usw.) getriggert.
Jedesmal! wenn ein dort eingetragener Fensterkontakt geöffnet wird, wird das dort erkannt.
Wenn bolAlarm = unwahr passiert nichts.
Wenn bolAlarm = wahr werden die gewünschten Aktionen ausgelöst.
Da ich den SayIt Adapter nicht benutze, habe ich immer Debug-Ausgaben eingesetzt.
Hier der "Zündvorgang"
Hier die Überwachung
Import "Zündvorgang"
! <xml 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml">
! <block type="create" id="e4%t|N[a3r/]:A=A^UL|" x="338" y="238"><field name="NAME">bolAlarmSchalten</field>
! <statement name="STATEMENT"><block type="create" id="DtT3ToP!6MR%m}1LU]c"><field name="NAME">bolAlarm</field>
! <statement name="STATEMENT"><block type="comment" id=",J?RjdH-3rC%l@RpIAd1"><field name="COMMENT">ID Variablen/Objekte in ioBroker anlegen</field>
! <next><block type="comment" id="7aGDatGB)l+M
M|fl^"><field name="COMMENT">Wird nur 1x benötigt</field></block></next></block></statement></block></statement></block> ! <block type="comment" id="h}-GLiN5x(k:FUrva
si" x="87" y="262"><field name="COMMENT">Wird über VIS geschaltet</field>
! <next><block type="on" id="Wp6(X0J#KrM6}n@F{o,"><field name="OID">javascript.1.bolAlarmAktivieren</field>
! <field name="CONDITION">ne</field>
! <statement name="STATEMENT"><block type="controls_if" id="9GB2XArfowg))6Gx.Bh?"><mutation else="1"></mutation>
! <value name="IF0"><block type="logic_compare" id="@i^nfn5l-WHQFeWtMXk"><field name="OP">EQ</field>
! <value name="A"><block type="get_value" id="LsMxKxh@Q,b;B5Qzy2Wz"><field name="ATTR">val</field>
! <field name="OID">javascript.1.bolAlarmAktivieren</field></block></value>
! <value name="B"><block type="logic_boolean" id="{!@zI^^EgTa,.~(FUMp"><field name="BOOL">TRUE</field></block></value></block></value> ! <statement name="DO0"><block type="comment" id=".[INx?Hf]:6OCoz8G2^*"><field name="COMMENT">Fenster überprüfen</field> ! <next><block type="controls_if" id="FW-)5BEDikj2ELcrf_F!"><mutation else="1"></mutation> ! <value name="IF0"><block type="logic_operation" id="Brg%Hakx,7~)t%ybN[hx" inline="false"><field name="OP">OR</field> ! <value name="A"><block type="logic_compare" id="Xl3gm{S!Jo*3uWDc
Zjb"><field name="OP">EQ</field>
! <value name="A"><block type="get_value" id="3{5+Fgt.ri4ETwbAgesg"><field name="ATTR">val</field>
! <field name="OID">hm-rpc.0.JEQ0247966.1.STATE</field></block></value>
! <value name="B"><block type="logic_boolean" id=";tWpgUmo}!!]iLG:l]0C"><field name="BOOL">TRUE</field></block></value></block></value>
! <value name="B"><block type="logic_operation" id="[t~}7hV#SJ8)BrFRWp1{" inline="false"><field name="OP">OR</field>
! <value name="A"><block type="logic_compare" id="3L2WZ8)v@%1wbU+G,+?H"><field name="OP">EQ</field>
! <value name="A"><block type="get_value" id="/f[T+Fu%CsXJQAA8bb"><field name="ATTR">val</field>
! <field name="OID">hm-rpc.0.KEQ0160270.1.STATE</field></block></value>
! <value name="B"><block type="logic_boolean" id="@#_0P5AT^yh8}CJN]FTD"><field name="BOOL">TRUE</field></block></value></block></value>
! <value name="B"><block type="logic_compare" id="a2CA,,.-ae]#F!nkmc4"><field name="OP">EQ</field>
! <value name="A"><block type="get_value" id=":|vp+li6CrZS0eq-tb;M"><field name="ATTR">val</field>
! <field name="OID">hm-rpc.0.LEQ0213973.1.STATE</field></block></value>
! <value name="B"><block type="logic_boolean" id="=g9t1qc5T(2?_kDz0e-"><field name="BOOL">TRUE</field></block></value></block></value></block></value></block></value> ! <statement name="DO0"><block type="comment" id="6BU*GNj?ad#L6wYm];.c"><field name="COMMENT">Ein Fenster ist offen</field> ! <next><block type="comment" id="k77]2ocHX#7slsRv~deL"><field name="COMMENT">Keine Alarmschaltung</field> ! <next><block type="control" id="WB,cs-iiQr:AH~5p*iJK"><mutation delay_input="false"></mutation> ! <field name="OID">javascript.1.bolAlarmAktivieren</field> ! <field name="WITH_DELAY">FALSE</field> ! <value name="VALUE"><block type="logic_boolean" id="n31vML.:4NC,BJj(S-=_"><field name="BOOL">FALSE</field></block></value> ! <next><block type="debug" id="gAsNJTBGzL.;yT20mOCa"><field name="Severity">log</field> ! <value name="TEXT"><shadow type="text" id=";_GGOuTLYaJpU?WW~PHQ"><field name="TEXT">Fenster offen</field></shadow></value></block></next></block></next></block></next></block></statement> ! <statement name="ELSE"><block type="comment" id="5WwaKm[
us+ew@R9Q|r"><field name="COMMENT">Alles OK Alarm kann aktiviert werden</field>
! <next><block type="debug" id="]r/?]^:Q/I4X6NKQB,f"><field name="Severity">log</field> ! <value name="TEXT"><shadow type="text" id=".|nw1P3lFVIaVEP*t0(q"><field name="TEXT">Alarm wir in 1 Minute aktiviert</field></shadow></value> ! <next><block type="comment" id="*jO0|2x*,,VIT%U23ys8"><field name="COMMENT">Hier wird eine Min.gewartet</field> ! <next><block type="timeouts_settimeout" id="@FK6%p4xu-a4gflw;BsN"><field name="NAME">timeout</field> ! <field name="DELAY">60000</field> ! <statement name="STATEMENT"><block type="control" id="-l;[wFK~s2D,~Ymi#IWD"><mutation delay_input="false"></mutation> ! <field name="OID">javascript.1.bolAlarmScharf</field> ! <field name="WITH_DELAY">FALSE</field> ! <value name="VALUE"><block type="logic_boolean" id="SG[R2p4GpfEeZPoO1/Lm"><field name="BOOL">TRUE</field></block></value> ! <next><block type="debug" id="EL8j.Z5-k7EmxNS%Y8}y"><field name="Severity">log</field> ! <value name="TEXT"><shadow type="text" id="bJ^.y-C!gb=9#{aJi^rZ"><field name="TEXT">Alarm aktiviert</field></shadow></value></block></next></block></statement></block></next></block></next></block></next></block></statement></block></next></block></statement> ! <statement name="ELSE"><block type="timeouts_cleartimeout" id=",-x{B_6R74v+2l+apppX"><field name="NAME">timeout</field> ! <next><block type="control" id="ROT/7W2Tldqet!@V0vuc"><mutation delay_input="false"></mutation> ! <field name="OID">javascript.1.bolAlarmScharf</field> ! <field name="WITH_DELAY">FALSE</field> ! <value name="VALUE"><block type="logic_boolean" id="/UIr-Z_v;CmSx}q)[q9*"><field name="BOOL">FALSE</field></block></value> ! <next><block type="debug" id="wk8ov,bAlSL7(t
:A^x3"><field name="Severity">log</field>
! <value name="TEXT"><shadow type="text" id="GpU|mMr6C0s@*zG1Rpf"><field name="TEXT">Alarm deaktiviert</field></shadow></value></block></next></block></next></block></statement></block></statement></block></next></block></xml>Import Überwachung
! <xml 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml">
! <block type="comment" id="q@xFyLwtn7L20O:.9qLr" x="37" y="113"><field name="COMMENT">Triggern der Geräte auf WAHR</field>
! <next><block type="on_ext" id="vg]@GugCdFRJT-%kI@=7"><mutation items="4"></mutation>
! <field name="CONDITION">true</field>
! <value name="OID0"><shadow type="field_oid" id="M~kBPPD.9eCS4DvqVF69"><field name="oid">default</field></shadow>
! <block type="field_oid" id="kNosL[lb/HJ/E;6-^yY@"><field name="oid">hm-rpc.0.JEQ0247966.1.STATE</field></block></value>
! <value name="OID1"><shadow type="field_oid" id="ZiUvoXp#pndv6@y=3?N/"><field name="oid">hm-rpc.0.LEQ0213973.1.STATE</field></shadow></value>
! <value name="OID2"><shadow type="field_oid" id="Vocrg|c7LB21-XCUxWpn"><field name="oid">hm-rpc.0.KEQ0160270.1.STATE</field></shadow></value>
! <value name="OID3"><shadow type="field_oid" id="<EMAIL email=" c5_hbt7kcdx@g.nwhl7r"="">C5_HBt7kcDx@G.NwHL7r">
! <field name="oid">hm-rpc.0.KEQ0972714.1.MOTION</field></shadow></value>
! <statement name="STATEMENT"><block type="comment" id="eb%lt#iCj[t(mm@NwsNv"><field name="COMMENT">Ein Gerät hat ausgelöst</field>
! <next><block type="comment" id="IYQLuKm}D?ocdp@[cN|_"><field name="COMMENT">Prüfen ob Alarm aktiv ist</field>
! <next><block type="controls_if" id="[TriQn_Fw;^6{fM8U%y+"><value name="IF0"><block type="logic_compare" id="i7Y;4K0TusLYO1,BY^BW"><field name="OP">EQ</field>
! <value name="A"><block type="get_value" id="GBJS*3Ul4]lsJn3r3,r"><field name="ATTR">val</field> ! <field name="OID">javascript.1.bolAlarmScharf</field></block></value> ! <value name="B"><block type="logic_boolean" id="U*Xvz#cUHtuV)Hd,%ajV"><field name="BOOL">TRUE</field></block></value></block></value> ! <statement name="DO0"><block type="comment" id="6XSS]%Fdptbg_FZ#UCv_"><field name="COMMENT">Hier kommen die Aktionen rein</field> ! <next><block type="debug" id="G)(3,^~x
?w)rNIfl;7R"><field name="Severity">log</field>
! <value name="TEXT"><shadow type="text" id="n@2INPEE5Wy[+OPBCDiV"><field name="TEXT">ALARM AUSGELÖST</field></shadow></value></block></next></block></statement></block></next></block></next></block></statement></block></next></block></xml>Grüße