Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst] Überwachung im Garten aktivieren

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Überwachung im Garten aktivieren

    This topic has been deleted. Only users with topic management privileges can see it.
    • N
      nobody last edited by

      Hier der Flow:

      632_flow.png
      Zuerst den Pushbullet-Node zu node-red zufügen. Dafür einfach in den Einstellungen des Node-Red-Adapters im Feld Zusätzliche NPM Module folgenden Text anhängen: node-red-node-pushover.
      632_noderedconfig.png
      Der Node-Red Adapter wird automatisch neugestartet und der Node installiert. Danach die node-red-Seite neu laden, damit der Node auch angezeigt wird.

      Danach auf einer leeren Seite den folgenden Flow importieren und die IDs in den Nodes und den Pushbullet-Adapter mit deinen Daten einrichten.

      ! [
      ! {
      ! "id": "ea71199a.3a4bc8",
      ! "type": "ioBroker in",
      ! "z": "c5e2f479.a19c08",
      ! "name": "Gartenhaus State",
      ! "topic": "hier state für Gartenhaus Kontakt auswählen",
      ! "payloadType": "value",
      ! "onlyack": true,
      ! "func": "all",
      ! "gap": "",
      ! "x": 128,
      ! "y": 283,
      ! "wires": [
      ! [
      ! "e5050153.4054f"
      ! ]
      ! ]
      ! },
      ! {
      ! "id": "adeb5f0f.bd2c7",
      ! "type": "ioBroker in",
      ! "z": "c5e2f479.a19c08",
      ! "name": "Gartenhaus Sabotage State",
      ! "topic": "hier state für Gartenhaus Sabotage auswählen",
      ! "payloadType": "value",
      ! "onlyack": true,
      ! "func": "all",
      ! "gap": "",
      ! "x": 155,
      ! "y": 333,
      ! "wires": [
      ! [
      ! "e5050153.4054f"
      ! ]
      ! ]
      ! },
      ! {
      ! "id": "5e4af5cf.c526ac",
      ! "type": "ioBroker in",
      ! "z": "c5e2f479.a19c08",
      ! "name": "Schuppentür State",
      ! "topic": "hier state für Schuppentür Kontakt auswählen",
      ! "payloadType": "value",
      ! "onlyack": true,
      ! "func": "all",
      ! "gap": "",
      ! "x": 124,
      ! "y": 380,
      ! "wires": [
      ! [
      ! "e5050153.4054f"
      ! ]
      ! ]
      ! },
      ! {
      ! "id": "11accbbc.bdc184",
      ! "type": "ioBroker in",
      ! "z": "c5e2f479.a19c08",
      ! "name": "Schuppentür Sabotage State",
      ! "topic": "hier state für Schuppentür Sabotage auswählen",
      ! "payloadType": "value",
      ! "onlyack": true,
      ! "func": "all",
      ! "gap": "",
      ! "x": 153,
      ! "y": 427,
      ! "wires": [
      ! [
      ! "e5050153.4054f"
      ! ]
      ! ]
      ! },
      ! {
      ! "id": "e5050153.4054f",
      ! "type": "switch",
      ! "z": "c5e2f479.a19c08",
      ! "name": "Prüfe ob State aktiviert ist",
      ! "property": "payload",
      ! "propertyType": "msg",
      ! "rules": [
      ! {
      ! "t": "eq",
      ! "v": "true",
      ! "vt": "str"
      ! }
      ! ],
      ! "checkall": "true",
      ! "outputs": 1,
      ! "x": 493,
      ! "y": 326,
      ! "wires": [
      ! [
      ! "868de916.5abc28"
      ! ]
      ! ]
      ! },
      ! {
      ! "id": "868de916.5abc28",
      ! "type": "ioBroker get",
      ! "z": "c5e2f479.a19c08",
      ! "name": "Hole Gartenüberwachung",
      ! "topic": "hier hm-rega Variable auswählen",
      ! "attrname": "payload",
      ! "payloadType": "value",
      ! "x": 681,
      ! "y": 394,
      ! "wires": [
      ! [
      ! "f4856754.e12eb8"
      ! ]
      ! ]
      ! },
      ! {
      ! "id": "f4856754.e12eb8",
      ! "type": "switch",
      ! "z": "c5e2f479.a19c08",
      ! "name": "Prüfe ob Gartenüberwachung aktiv ist",
      ! "property": "payload",
      ! "propertyType": "msg",
      ! "rules": [
      ! {
      ! "t": "eq",
      ! "v": "true",
      ! "vt": "str"
      ! }
      ! ],
      ! "checkall": "true",
      ! "outputs": 1,
      ! "x": 926,
      ! "y": 317,
      ! "wires": [
      ! [
      ! "d33b39b2.5d2da8",
      ! "900a62b8.6625e"
      ! ]
      ! ]
      ! },
      ! {
      ! "id": "d33b39b2.5d2da8",
      ! "type": "ioBroker out",
      ! "z": "c5e2f479.a19c08",
      ! "name": "Setze Alarmvariable",
      ! "topic": "hm-rega Variable für Alarmmeldung auswählen",
      ! "ack": "false",
      ! "autoCreate": "false",
      ! "x": 1217,
      ! "y": 229,
      ! "wires": []
      ! },
      ! {
      ! "id": "900a62b8.6625e",
      ! "type": "change",
      ! "z": "c5e2f479.a19c08",
      ! "name": "Setze Nachicht für Pushover",
      ! "rules": [
      ! {
      ! "t": "set",
      ! "p": "payload",
      ! "pt": "msg",
      ! "to": "Hier ist die Meldung einzutragen",
      ! "tot": "str"
      ! }
      ! ],
      ! "action": "",
      ! "property": "",
      ! "from": "",
      ! "to": "",
      ! "reg": false,
      ! "x": 1144,
      ! "y": 380,
      ! "wires": [
      ! [
      ! "96d77deb.76a65"
      ! ]
      ! ]
      ! },
      ! {
      ! "id": "96d77deb.76a65",
      ! "type": "pushover",
      ! "z": "c5e2f479.a19c08",
      ! "name": "",
      ! "device": "",
      ! "title": "",
      ! "priority": 0,
      ! "sound": "",
      ! "x": 1353,
      ! "y": 376,
      ! "wires": []
      ! }
      ! ]

      Zur Erklärung, was dieser Flow macht:

      Jeder der ioBroker Input-Nodes löst aus, wenn sich der Wert des ausgewählten State ändert und ACK=true ist. Dies kann der Fall sein, wenn der Wert auf true geht oder auch auf false.

      Der erste Switch-Node prüft, ob der neue Wert == "true" ist. Nur dann geht es weiter.

      Danach wird im ioBroker Get-Node der Wert für die Gartenüberwachung geholt und im nächsten Switch-Node überprüft, ob diese aktiv ist.

      Wenn ja wird die Systemvariable für Alarm gesetzt und eine Pushover-Message versendet.

      Was noch fehlt ist, wie die Variable für den Alarm wieder ausgeschaltet werden soll. Aber das war im Screenshot nicht zu sehen.

      1 Reply Last reply Reply Quote 0
      • P
        pix last edited by

        @a-flow:

        @Pix: Vielen Dank für die Hilfe! Ich hatte irgendwie gehofft, dass ich um Java herumkomme und es für einen Laien eine etwas einfachere Lösung gibt… Mit Hilfe des Skripts kann ich mir aber schon mal die ersten Dinge erschließen und jetzt ein wenig rumprobieren. Wie programmiere ich dazu noch eine Pushover-Nachricht?

        Ich habe allerdings noch drei grundlegende Fragen zum Workflow in ioBroker:

        1. Gartenüberwachung ist bei mir eine hinterlegte Systemvariable auf der CCU. Müssen alle Variablen auf der CCU vorab erstellt werden oder kann ich diese auch in ioBroker erstellen?

        2. Wo genau werden die Skripte in ioBroker geschrieben bzw. gespeichert?

        3. Geht sowas nicht mit Node-Red?

        Vielen Dank!

        Andi `
        Hallo Andi,

        freut mich, dass du es brauchen kannst. Hier geht's aber um JavaScript und nicht um Java. Nicht, dass du dir die falschen Handbücher kaufst :lol:, denn du wirst nicht drumherum kommen.

        Bevor du weitere Ziele, wie die Benachrichtigung per Pushover etc. in Angriff nimmst, sollten die drei Fragen geklärt werden:

        1. Das o.g. Skript ist der einfachste Weg, deine bestehenden Variablen auf der CCU zu nutzen. Ich selbst habe keine Variablen mehr auf der CCU (ausser 950 Anwesenheit, jetzt Restart) und habe alles in ioBroker portiert. Du solltest das aber schrittweise machen und erstmal die Funktion und den Aufbau von Skripts verstehen.

        2. Ich empfehle dir die Lektüre der ioBroker - Webseite, speziell die Javascript-Adapter Seite: http://www.iobroker.net/docu/?page_id=156&lang=de

        3. Bestimmt. aber node-red nutzt für "kniffeligere" Aufgaben auch Javascript. Da kannst du gleich ein Skript schreiben.

        Gruß

        Pix

        1 Reply Last reply Reply Quote 0
        • A
          a-flow last edited by

          @pix und nobody: Vielen Dank für Eure Hilfe! Wirklich super Support hier im Forum! So macht der Einstieg Spaß 🙂

          Ich habe jetzt zunächst mal den Flow von nobody übernommen. Muss jeder Flow in Node-Red auf eine eigene Seite?

          Weiterhin ist mir der Workflow noch nicht ganz klar. Gehe ich recht in der Annahme, dass ich das CCU-Programm zur Gartenüberwachung mit dem Flow in Node-Red jetzt ersetzt haben? Wie ersetze ich jetzt noch die Variable zur Gartenüberwachung in der CCU? Läuft das über Objekte in ioBroker? Muss ich dann einfach in Vis einfach einen Button erstellen und diesen mit dem Objekt verknüpfen, um die Überwachung ein- und auszuschalten?

          1 Reply Last reply Reply Quote 0
          • N
            nobody last edited by

            Hallo a-flow,

            du kannst die flows beliebig anordnen und auch mehrere aus eine Seite.

            Auf der Admin-Seite unter Objekte kann an im Baum beliebige neue States anlegen. Der Out-node kann das auch automatisch, aber dann ist der Typ offen.

            Wenn diese nur für node-red und vis verwendet werden, lege ich die immer vis.0 an.

            Nur States unterhalb hm-rega werden an die ccu übertragen.

            Gesendet von meinem SM-G900F mit Tapatalk

            1 Reply Last reply Reply Quote 0
            • M
              mike2712 last edited by

              Hallo,

              da es ja keine und / oder Verknüpfungen gibt habe ich folgendes getestet, leider ohne Erfolg.

              670_node.jpg

              Ich denke das liegt daran das in diesem Beispiel der Wert von OG2 Flur statisch auf 1 ist, das soll ja praktisch nur eine zusätzliche Abfrage sein.

              Hat jemand eine Idee warum das so nicht funktioniert?

              Lg Mike

              1 Reply Last reply Reply Quote 0
              • N
                nobody last edited by

                Hallo Mike,

                kannst du uns erstmal erklären, was du machen möchtest?

                Deine Switch-Nodes haben nur einen Ausgang. Deswegen werden wie wohl nur dann weiterleiten, wenn die Bedingung erfüllt ist. Für den anderen Fall benötigst du eine komplementäre Prüfung oder einen sonst-Ausgang, den man im switch-Node einfach aktivieren kann.

                1 Reply Last reply Reply Quote 0
                • M
                  mike2712 last edited by

                  Hallo,

                  in diesem ganz einfachen Beispiel möchte ich eine einfache UND Verknüpfung realisieren.

                  EG Flur und OG2 Flur Licht ein, dann OG1 Flur Licht ein.

                  In meinem Beispiel ist OG2 Flur Licht bereits ein, dann schalte ich EG Flur Licht ein, es sollte eigentlich dann OG1 Flur Licht schalten.

                  Das geht scheinbar so nicht.

                  1 Reply Last reply Reply Quote 0
                  • N
                    nobody last edited by

                    Du hast recht, dass dies auf diese Art nicht geht, aber anders:

                    632_example.png

                    Code:

                    ! [
                    ! {
                    ! "id": "b32d986f.6a2e88",
                    ! "type": "ioBroker in",
                    ! "z": "96f1d94b.d7a958",
                    ! "name": "",
                    ! "topic": "EG_Flurlicht.STATE",
                    ! "payloadType": "value",
                    ! "onlyack": true,
                    ! "func": "all",
                    ! "gap": "",
                    ! "x": 287.6111145019531,
                    ! "y": 489.55558013916016,
                    ! "wires": [
                    ! [
                    ! "2bae7c00.3ff194"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "3546ef74.cf7e8",
                    ! "type": "ioBroker in",
                    ! "z": "96f1d94b.d7a958",
                    ! "name": "",
                    ! "topic": "OG2_Flurlicht.STATE",
                    ! "payloadType": "value",
                    ! "onlyack": true,
                    ! "func": "all",
                    ! "gap": "",
                    ! "x": 302.6111145019531,
                    ! "y": 624.5555648803711,
                    ! "wires": [
                    ! [
                    ! "83f3a054.19ae4"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "6e320613.41b498",
                    ! "type": "ioBroker get",
                    ! "z": "96f1d94b.d7a958",
                    ! "name": "",
                    ! "topic": "OG2_Flurlicht.STATE",
                    ! "attrname": "payload",
                    ! "payloadType": "value",
                    ! "x": 700.6109924316406,
                    ! "y": 485.00003814697266,
                    ! "wires": [
                    ! [
                    ! "d4746af9.f15508"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "9c9e4ee7.ea617",
                    ! "type": "ioBroker get",
                    ! "z": "96f1d94b.d7a958",
                    ! "name": "",
                    ! "topic": "EG_Flurlicht.STATE",
                    ! "attrname": "payload",
                    ! "payloadType": "value",
                    ! "x": 694.6110534667969,
                    ! "y": 626.9999771118164,
                    ! "wires": [
                    ! [
                    ! "d4746af9.f15508"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "2bae7c00.3ff194",
                    ! "type": "switch",
                    ! "z": "96f1d94b.d7a958",
                    ! "name": "",
                    ! "property": "payload",
                    ! "propertyType": "msg",
                    ! "rules": [
                    ! {
                    ! "t": "eq",
                    ! "v": "true",
                    ! "vt": "str"
                    ! }
                    ! ],
                    ! "checkall": "true",
                    ! "outputs": 1,
                    ! "x": 472.6111145019531,
                    ! "y": 490.4444351196289,
                    ! "wires": [
                    ! [
                    ! "6e320613.41b498"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "83f3a054.19ae4",
                    ! "type": "switch",
                    ! "z": "96f1d94b.d7a958",
                    ! "name": "",
                    ! "property": "payload",
                    ! "propertyType": "msg",
                    ! "rules": [
                    ! {
                    ! "t": "eq",
                    ! "v": "true",
                    ! "vt": "str"
                    ! }
                    ! ],
                    ! "checkall": "true",
                    ! "outputs": 1,
                    ! "x": 474.6111145019531,
                    ! "y": 626.4443740844727,
                    ! "wires": [
                    ! [
                    ! "9c9e4ee7.ea617"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "d4746af9.f15508",
                    ! "type": "switch",
                    ! "z": "96f1d94b.d7a958",
                    ! "name": "",
                    ! "property": "payload",
                    ! "propertyType": "msg",
                    ! "rules": [
                    ! {
                    ! "t": "eq",
                    ! "v": "true",
                    ! "vt": "str"
                    ! }
                    ! ],
                    ! "checkall": "true",
                    ! "outputs": 1,
                    ! "x": 929.6111145019531,
                    ! "y": 555.4444198608398,
                    ! "wires": [
                    ! [
                    ! "860b3262.18f93"
                    ! ]
                    ! ]
                    ! },
                    ! {
                    ! "id": "860b3262.18f93",
                    ! "type": "ioBroker out",
                    ! "z": "96f1d94b.d7a958",
                    ! "name": "",
                    ! "topic": "OG1_Flurlicht.STATE",
                    ! "ack": "false",
                    ! "autoCreate": "false",
                    ! "x": 1167.6111145019531,
                    ! "y": 553.2222518920898,
                    ! "wires": []
                    ! }
                    ! ]

                    Ein Flow braucht genau einen Trigger für den Start. Dies sind in node-red immer in-Nodes.

                    Da die Reihenfolge, in der die Schalter gedrückt werden, nicht feststeht, muss es für beide States einen in-Node geben und jeweils der andere über einen get-Node abgerufen und geprüft werden.

                    1 Reply Last reply Reply Quote 0
                    • M
                      mike2712 last edited by

                      Hallo,

                      ok, das kann ich ja noch nachvollziehen, hier ein Ausschnitt aus deinem Beispiel.

                      670_node.jpg

                      Das entspricht ja komplett meinem, OG2 war ja bereits an, dann entspricht es exakt Deinem Beispiel und es hätte funktionieren müssen.

                      Die Switch sind jeweils auf "is true", oder?

                      Ok, ich habe gesehen, die switch von Dir sind mit == True konfiguriert, macht das den Unterschied?

                      Ich habe vergeblich nach einer Anleitung für den Switch gesucht, leider nichts gefunden.

                      Ich möchte von den programmen auf der CCU weg, bin mir noch nicht so sicher ob ich das alles in Node-RED umsetzen kann, das meiste sind logische Verknüpfungen und vergleicher, wenn Jalousie > 80% und Tageslicht… dann Licht in dem Raum aus, halt einfach einfache Dinge, dafür ist das Tool ja schon fast zu mächtig. Java kann ich nicht, am liebsten Programmierung wie in der SPS, so mit logischen Verknüpfungen.

                      Lg Mike

                      1 Reply Last reply Reply Quote 0
                      • N
                        nobody last edited by

                        Kommt drauf an, was du in den Adapter-Einstellungen eingestellt hast. Aus historischen Gründen werden von den iobroker-Nodes alle Werte als String ausgegeben. Somit funktioniert nur die Abfrage auf =="true" oder Eingabe als Zeichenkette im Switch-Node.

                        Wenn das Häkchen in den Einstellungen nicht gesetzt ist kannst du auch auf ===true bzw. is true abfragen.

                        632_node-red-adapter.png

                        1 Reply Last reply Reply Quote 0
                        • M
                          mike2712 last edited by

                          Hallo,

                          der Haken war gesetzt, aber mit == TRUE funktioniert das.Wenn ich EG Flur schalte, kommt, schaltet OG1 Flur

                          jetzt wollte ich ein Vergleicher mit hinzu nehmen, wie muss den dann der Switch konfiguriert werden wenn z.B Licht Schlafen bei 30% das OG1 Flur Licht geschaltet werden soll ?

                          670_node.jpg

                          ! [
                          ! {
                          ! "id": "f1c5ce48.33ec",
                          ! "type": "ioBroker in",
                          ! "z": "f1d2bf37.5edd7",
                          ! "name": "_EG Flur Licht.STATE",
                          ! "topic": "hm-rpc.0.MEQ0276480.1.STATE",
                          ! "payloadType": "value",
                          ! "onlyack": "",
                          ! "func": "all",
                          ! "gap": "",
                          ! "x": 179.8298797607422,
                          ! "y": 428.28125,
                          ! "wires": [
                          ! [
                          ! "75da5cde.fd5ae4"
                          ! ]
                          ! ]
                          ! },
                          ! {
                          ! "id": "75da5cde.fd5ae4",
                          ! "type": "switch",
                          ! "z": "f1d2bf37.5edd7",
                          ! "name": "",
                          ! "property": "payload",
                          ! "propertyType": "msg",
                          ! "rules": [
                          ! {
                          ! "t": "eq",
                          ! "v": "true",
                          ! "vt": "str"
                          ! }
                          ! ],
                          ! "checkall": "true",
                          ! "outputs": 1,
                          ! "x": 375.8402557373047,
                          ! "y": 427.72222900390625,
                          ! "wires": [
                          ! [
                          ! "9505a39c.7263"
                          ! ]
                          ! ]
                          ! },
                          ! {
                          ! "id": "9505a39c.7263",
                          ! "type": "ioBroker get",
                          ! "z": "f1d2bf37.5edd7",
                          ! "name": "OG2 Flur Licht:1.STATE",
                          ! "topic": "hm-rpc.0.MEQ0276539.1.STATE",
                          ! "attrname": "payload",
                          ! "payloadType": "value",
                          ! "x": 568.8299102783203,
                          ! "y": 428.6041856695107,
                          ! "wires": [
                          ! [
                          ! "e53d2389.ec33c"
                          ! ]
                          ! ]
                          ! },
                          ! {
                          ! "id": "e53d2389.ec33c",
                          ! "type": "switch",
                          ! "z": "f1d2bf37.5edd7",
                          ! "name": "",
                          ! "property": "payload",
                          ! "propertyType": "msg",
                          ! "rules": [
                          ! {
                          ! "t": "eq",
                          ! "v": "true",
                          ! "vt": "str"
                          ! }
                          ! ],
                          ! "checkall": "true",
                          ! "outputs": 1,
                          ! "x": 765.8264312744141,
                          ! "y": 428.72570666560443,
                          ! "wires": [
                          ! [
                          ! "b33a62c1.d1b6a"
                          ! ]
                          ! ]
                          ! },
                          ! {
                          ! "id": "b33a62c1.d1b6a",
                          ! "type": "ioBroker out",
                          ! "z": "f1d2bf37.5edd7",
                          ! "name": "_OG1 Flur Licht.STATE",
                          ! "topic": "hm-rpc.0.MEQ0276492.1.STATE",
                          ! "ack": "false",
                          ! "autoCreate": "false",
                          ! "x": 967.8298797607422,
                          ! "y": 428.8993225097656,
                          ! "wires": []
                          ! },
                          ! {
                          ! "id": "b1c3f40f.a90ce8",
                          ! "type": "ioBroker get",
                          ! "z": "f1d2bf37.5edd7",
                          ! "name": "OG1 Schlafen Licht:3.LEVEL",
                          ! "topic": "hm-rpc.0.MEQ0375275.3.LEVEL",
                          ! "attrname": "payload",
                          ! "payloadType": "value",
                          ! "x": 147,
                          ! "y": 501.9305419921875,
                          ! "wires": [
                          ! [
                          ! "c352e86b.291a08"
                          ! ]
                          ! ]
                          ! },
                          ! {
                          ! "id": "c352e86b.291a08",
                          ! "type": "switch",
                          ! "z": "f1d2bf37.5edd7",
                          ! "name": "",
                          ! "property": "payload",
                          ! "propertyType": "flow",
                          ! "rules": [
                          ! {
                          ! "t": "btwn",
                          ! "v": "10",
                          ! "vt": "flow",
                          ! "v2": "40",
                          ! "v2t": "flow"
                          ! }
                          ! ],
                          ! "checkall": "true",
                          ! "outputs": 1,
                          ! "x": 380.8333282470703,
                          ! "y": 503.3992919921875,
                          ! "wires": [
                          ! [
                          ! "9505a39c.7263"
                          ! ]
                          ! ]
                          ! }
                          ! ]

                          LG Mike

                          1 Reply Last reply Reply Quote 0
                          • M
                            mike2712 last edited by

                            Hallo,

                            habe jetzt mal nachdem ich Scenes und node-red gebastelt habe etwas mit Blockly gemacht, hier habe ich leider ein Verständnis Problem, hat jemand vielleicht ein Beispiel wie ich 2 Eingänge (Zustände von Licht z.B.) mit einem "und" Glied auf einen Ausgang schalten kann?

                            In Blockly bekomme ich keinen state geändert, vermutlich mache ich etwas grundlegendes falsch, im Forum habe ich gesucht, so einfache Sachen werden irgendwie nicht beschrieben, wenn ich einmal den Anfang habe, danach klappt es meistens. 🙂

                            Lg Mike

                            1 Reply Last reply Reply Quote 0
                            • N
                              nobody last edited by

                              @mike2712:

                              habe etwas mit Blockly gemacht, hier habe ich leider ein Verständnis Problem

                              Lg Mike `

                              Mache doch bitte hierzu einen neuen Beitrag im richtigen Bereich auf.

                              1 Reply Last reply Reply Quote 0
                              • N
                                nobody last edited by

                                @mike2712:

                                Hallo,

                                der Haken war gesetzt, aber mit == TRUE funktioniert das.Wenn ich EG Flur schalte, kommt, schaltet OG1 Flur

                                jetzt wollte ich ein Vergleicher mit hinzu nehmen, wie muss den dann der Switch konfiguriert werden wenn z.B Licht Schlafen bei 30% das OG1 Flur Licht geschaltet werden soll ? `

                                Ich gehe mal davon aus, dass der Vergleich im Switch-Node nicht das tut, was er soll.

                                Es gibt in Javascript unterschiedliche Operatoren für Vergleiche. == z.B. überprüft nur den Wert, nicht aber den Datentyp. Falls möglich wird der Datentyp für den Vergleich implizit konvertiert. Mit === wird auch der Datentyp mit überprüft. Wenn einer der Werte eine Zeichenkette ist wird bei == eigentlich immer der andere auch in eine Zeichenkette konvertiert und dann diese verglichen.

                                Man Gibt im Switch-Node den Datentyp auch an:
                                632_example.png

                                Wenn du nun nicht auf Gleichheit sondern z.B. auf größer oder kleiner prüfen möchtest geht das so nicht, da dieser bei Zeichenketten nicht das gewünschte Ergebnis haben wird. Die einfachste Lösung ist, den Haken einfach weg zu machen. Dann kommt der Level-Wert direkt als Zahl und man kann dann mit Zahlen vergleichen. Ansonsten müsste man den String zuerst in einem Function-Node erst mittels Javascript in eine Zahl umwandeln.

                                1 Reply Last reply Reply Quote 0
                                • First post
                                  Last post

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                676
                                Online

                                31.9k
                                Users

                                80.2k
                                Topics

                                1.3m
                                Posts

                                5
                                21
                                5060
                                Loading More Posts
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes
                                Reply
                                • Reply as topic
                                Log in to reply
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                The ioBroker Community 2014-2023
                                logo