Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Triggern DP ohne Wert nicht möglich (true/leer)-stiebel-isg

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    354

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

Triggern DP ohne Wert nicht möglich (true/leer)-stiebel-isg

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
vis
119 Beiträge 16 Kommentatoren 10.8k Aufrufe 7 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • OstfrieseUnterwegsO Offline
    OstfrieseUnterwegsO Offline
    OstfrieseUnterwegs
    schrieb am zuletzt editiert von
    #26

    Verschiebe doch deine 'sonst' Anweisung vor den ganzen Falls-Block. Dann setzt du auf jeden Fall erstmal auf 'nicht aktiv' und danach werden deine Wenns abgearbeitet. Wenn keines zutrifft, bleibt er eben auf 'nicht aktiv'. Das erklärt zwar nicht, warum dein Script nicht macht, was man erwarten würde, könnte aber eine Lösung sein.

    1 Antwort Letzte Antwort
    0
    • TH GT TH G

      @AlCalzone @Ralla66

      Also eigentlich funktioniert es und der aktuelle Status wird richtig in meinen DP geschrieben.

      Was nicht geht ist, wenn alles vorbei ist und es keinen Wert "True" mehr in den drei DP des Adapters gibt, wird nicht die letzte Bedingung (mache) ausgeführt, den Text "nicht aktiv" in meinen DP reinzuschreiben.

      AlCalzoneA Offline
      AlCalzoneA Offline
      AlCalzone
      Developer
      schrieb am zuletzt editiert von
      #27

      @TH-G @OstfrieseUnterwegs Ich vermute eher dass der Trigger gar nicht erst ausgelöst wird. Oder wir rennen hier in das Problem, dass die erneuten Abfragen im Trigger einen alten Wert zurückgeben.
      Von daher wäre Logging mal gut...

      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

      TH GT 1 Antwort Letzte Antwort
      0
      • AlCalzoneA AlCalzone

        @TH-G @OstfrieseUnterwegs Ich vermute eher dass der Trigger gar nicht erst ausgelöst wird. Oder wir rennen hier in das Problem, dass die erneuten Abfragen im Trigger einen alten Wert zurückgeben.
        Von daher wäre Logging mal gut...

        TH GT Online
        TH GT Online
        TH G
        schrieb am zuletzt editiert von TH G
        #28

        @AlCalzone

        Es steht leider nichts im Log.

        Ich habe weiter verschiedenen Versionen mit Blockly getestet es geht einfach nicht. Auch den Vorschlag von @OstfrieseUnterwegs bringt leider nichts.

        Es sieht so aus, als wenn es keinen Trigger gibt weil die Felder vom Adapter leer sind.

        AlCalzoneA 1 Antwort Letzte Antwort
        0
        • TH GT TH G

          @AlCalzone

          Es steht leider nichts im Log.

          Ich habe weiter verschiedenen Versionen mit Blockly getestet es geht einfach nicht. Auch den Vorschlag von @OstfrieseUnterwegs bringt leider nichts.

          Es sieht so aus, als wenn es keinen Trigger gibt weil die Felder vom Adapter leer sind.

          AlCalzoneA Offline
          AlCalzoneA Offline
          AlCalzone
          Developer
          schrieb am zuletzt editiert von
          #29

          @TH-G sagte in VIS nervt aber warum?:

          weil die Felder vom Adapter leer sind.

          Vielleicht kannste die mal mit dem History-Adapter aufzeichnen, um nachzuvollziehen, was in welcher Reihenfolge passiert.

          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

          1 Antwort Letzte Antwort
          0
          • Ralla66R Offline
            Ralla66R Offline
            Ralla66
            Most Active
            schrieb am zuletzt editiert von Ralla66
            #30

            @TH-G sagte in VIS nervt aber warum?:

            Es sieht so aus, als wenn es keinen Trigger gibt weil die Felder vom Adapter leer sind.

            Dann fülle diese wie oben beschrieben mit false.
            Trigger auf -> wurde aktuallisiert -<.

            Auf was soll denn -> sonst <- reagieren , auf -> Nichts -< im DP geht nicht.
            Letzt endlich findet ja kein Vergleich statt.
            Kann das Programm gar nicht.
            Deklarieren und Vorbesetzen das A und O.

            AlCalzoneA 1 Antwort Letzte Antwort
            0
            • Ralla66R Ralla66

              @TH-G sagte in VIS nervt aber warum?:

              Es sieht so aus, als wenn es keinen Trigger gibt weil die Felder vom Adapter leer sind.

              Dann fülle diese wie oben beschrieben mit false.
              Trigger auf -> wurde aktuallisiert -<.

              Auf was soll denn -> sonst <- reagieren , auf -> Nichts -< im DP geht nicht.
              Letzt endlich findet ja kein Vergleich statt.
              Kann das Programm gar nicht.
              Deklarieren und Vorbesetzen das A und O.

              AlCalzoneA Offline
              AlCalzoneA Offline
              AlCalzone
              Developer
              schrieb am zuletzt editiert von
              #31

              @Ralla66 das ist unsinn. Wenn keiner der drei datenpunkte true ist, dann trifft der sonst-fall zu.

              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

              1 Antwort Letzte Antwort
              0
              • Ralla66R Offline
                Ralla66R Offline
                Ralla66
                Most Active
                schrieb am zuletzt editiert von Ralla66
                #32

                @AlCalzone

                Unsinn ist falsch,
                Richtig ist :
                Wenn keiner der drei datenpunkte true ist, dann trifft der sonst-fall zu

                Der sonst Fall:
                Ab in die Routine, wenn nix da ist kannste nix vergleichen oder sonst was.
                Dachte immer bis jetzt Routinen sind Logisch aufgebaut.

                Prog mal NIX, dann weißte wie groß das wird.

                1 Antwort Letzte Antwort
                0
                • TH GT Online
                  TH GT Online
                  TH G
                  schrieb am zuletzt editiert von TH G
                  #33

                  @AlCalzone @Ralla66

                  Also es funktioniert tadellos wenn ich als Trigger einen Zeitintervall nehme. Allerdings müllen mit die Warnungen den Log voll und das möchte ich nicht.

                  Bildschirmfoto 2020-06-27 um 10.08.58.png

                  Für mich ist es nun eindeutig.

                  Es kann nicht getriggert werden, wenn der Trigger DP nach einem Wert keinen Wert mehr hat.

                  Die Frage ist jetzt nur, ist das ein iobroker oder Adapter Fehler, denn so sollte das Verhalten nicht sein.

                  AlCalzoneA 1 Antwort Letzte Antwort
                  0
                  • Ralla66R Offline
                    Ralla66R Offline
                    Ralla66
                    Most Active
                    schrieb am zuletzt editiert von Ralla66
                    #34

                    @TH-G
                    Deklarieren und Vorbesetzen das A und O.
                    5 - nix = 2 geht das ?
                    Das geht wiederum 5 - x = 2

                    TH GT 1 Antwort Letzte Antwort
                    0
                    • Ralla66R Ralla66

                      @TH-G
                      Deklarieren und Vorbesetzen das A und O.
                      5 - nix = 2 geht das ?
                      Das geht wiederum 5 - x = 2

                      TH GT Online
                      TH GT Online
                      TH G
                      schrieb am zuletzt editiert von
                      #35

                      @Ralla66

                      Ich bin der Meinung, wenn eine leeres Feld nicht als Trigger dienen kann und "leer" ist in meinen Augen auch ein Zustand, dann sollte das über den Adapter abgefangen werden oder mit einem Zustand versehen werden.

                      AlCalzoneA 1 Antwort Letzte Antwort
                      0
                      • TH GT TH G

                        @Ralla66

                        Ich bin der Meinung, wenn eine leeres Feld nicht als Trigger dienen kann und "leer" ist in meinen Augen auch ein Zustand, dann sollte das über den Adapter abgefangen werden oder mit einem Zustand versehen werden.

                        AlCalzoneA Offline
                        AlCalzoneA Offline
                        AlCalzone
                        Developer
                        schrieb am zuletzt editiert von AlCalzone
                        #36

                        @TH-G Ein leeres Feld (Wert null) kann definitiv als Trigger dienen.

                        createState("testwert", () => {
                        
                            on("testwert", obj => {
                                log(obj.state.val);
                            });
                        
                            setTimeout(() => {
                                setState("testwert", true);
                            }, 1000);
                        
                            setTimeout(() => {
                                setState("testwert", null);
                            }, 2000);
                        
                            setTimeout(() => {
                                setState("testwert", true);
                            }, 3000);
                        
                        });
                        

                        Log-Ausgabe:

                        javascript.0	2020-06-27 11:43:12.329	info	(1052) script.js.Testtest: true
                        javascript.0	2020-06-27 11:43:11.329	info	(1052) script.js.Testtest: null
                        javascript.0	2020-06-27 11:43:10.333	info	(1052) script.js.Testtest: true
                        javascript.0	2020-06-27 11:43:09.237	info	(1052) script.js.Testtest: registered 0 subscriptions and 0 schedules
                        javascript.0	2020-06-27 11:43:09.200	info	(1052) Start javascript script.js.Testtest
                        

                        @Ralla66 ich weiß gar nicht warum du überhaupt diskutierst. Vergleiche mit "NIX" funktionieren einwandfrei. null ist schließlich auch nur ein bestimmter Wert:

                        Welcome to Node.js v12.16.3.
                        Type ".help" for more information.
                        > null === true
                        false
                        

                        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                        1 Antwort Letzte Antwort
                        0
                        • TH GT TH G

                          @AlCalzone @Ralla66

                          Also es funktioniert tadellos wenn ich als Trigger einen Zeitintervall nehme. Allerdings müllen mit die Warnungen den Log voll und das möchte ich nicht.

                          Bildschirmfoto 2020-06-27 um 10.08.58.png

                          Für mich ist es nun eindeutig.

                          Es kann nicht getriggert werden, wenn der Trigger DP nach einem Wert keinen Wert mehr hat.

                          Die Frage ist jetzt nur, ist das ein iobroker oder Adapter Fehler, denn so sollte das Verhalten nicht sein.

                          AlCalzoneA Offline
                          AlCalzoneA Offline
                          AlCalzone
                          Developer
                          schrieb am zuletzt editiert von
                          #37

                          @TH-G Was sind denn die ganzen Warnungen in deinem Log? Löscht der Adapter die Objekte etwa komplett und nicht nur die Werte? Wechsle mal auf das Log-Tab von ioBroker, da sieht man mehr.

                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                          TH GT 1 Antwort Letzte Antwort
                          0
                          • AlCalzoneA AlCalzone

                            @TH-G Was sind denn die ganzen Warnungen in deinem Log? Löscht der Adapter die Objekte etwa komplett und nicht nur die Werte? Wechsle mal auf das Log-Tab von ioBroker, da sieht man mehr.

                            TH GT Online
                            TH GT Online
                            TH G
                            schrieb am zuletzt editiert von
                            #38

                            @AlCalzone

                            Meinst du mit Null auch ein leeres Feld? Denn Null ist ja ein Wert aber ein leeres Feld?

                            AlCalzoneA 1 Antwort Letzte Antwort
                            0
                            • TH GT TH G

                              @AlCalzone

                              Meinst du mit Null auch ein leeres Feld? Denn Null ist ja ein Wert aber ein leeres Feld?

                              AlCalzoneA Offline
                              AlCalzoneA Offline
                              AlCalzone
                              Developer
                              schrieb am zuletzt editiert von
                              #39

                              @TH-G "Leere" Datenpunkte in ioBroker haben den Wert null. Was ein Problem sein könnte, wäre ein Datenpunkt ohne zugehöriges Objekt (welches dessen Eigenschaften definiert) oder ein Adapter der das Objekt mitlöscht wenn es keinen Wert hat.

                              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                              FredFF 1 Antwort Letzte Antwort
                              0
                              • AlCalzoneA AlCalzone

                                @TH-G "Leere" Datenpunkte in ioBroker haben den Wert null. Was ein Problem sein könnte, wäre ein Datenpunkt ohne zugehöriges Objekt (welches dessen Eigenschaften definiert) oder ein Adapter der das Objekt mitlöscht wenn es keinen Wert hat.

                                FredFF Offline
                                FredFF Offline
                                FredF
                                Most Active Forum Testing
                                schrieb am zuletzt editiert von
                                #40

                                @AlCalzone sagte in VIS nervt aber warum? Trigger DP ohne Wert?:

                                "Leere" Datenpunkte in ioBroker haben den Wert null

                                Bei mir auch nicht:
                                87e50bed-371b-477f-bafa-988d4b795c57-grafik.png

                                AlCalzoneA 1 Antwort Letzte Antwort
                                0
                                • FredFF FredF

                                  @AlCalzone sagte in VIS nervt aber warum? Trigger DP ohne Wert?:

                                  "Leere" Datenpunkte in ioBroker haben den Wert null

                                  Bei mir auch nicht:
                                  87e50bed-371b-477f-bafa-988d4b795c57-grafik.png

                                  AlCalzoneA Offline
                                  AlCalzoneA Offline
                                  AlCalzone
                                  Developer
                                  schrieb am zuletzt editiert von
                                  #41

                                  @FredF Du hast einen Default-Wert von "" vergeben (leerer String).

                                  Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                  FredFF 1 Antwort Letzte Antwort
                                  0
                                  • D Offline
                                    D Offline
                                    Dragon
                                    schrieb am zuletzt editiert von Dragon
                                    #42

                                    Ich würde vom gefühl darauf tippen, dass das Problem Die Trigger sind in dem Skript oben. Wer sagt dir denn, dass wenn einer der Datenpunkte sich ändert nicht mehrere wahr sein können. Wenn es einzelne Datenpunkte sind kann es ja sein, dass zwei davon zur gleichen Zeit auf True stehen und dann wäre das Skript so nicht möglich denke ich. Wenn es tatsächlich so, dass alle beiden Datenpunkte auf False gesetzt werden wenn einer der anderen auf True steht, dann solltest du ein 1000MS Timeout zwischen Trigger und Logik setzen. Für den Fall, dass mehrere Datenpunkte True sein können, aber sich immer nur einer verändert, funktioniert das so nicht. Dann musst du mehrere Blocklys schreiben. Ist aber nur eine Vermutung...

                                    TH GT 1 Antwort Letzte Antwort
                                    0
                                    • D Dragon

                                      Ich würde vom gefühl darauf tippen, dass das Problem Die Trigger sind in dem Skript oben. Wer sagt dir denn, dass wenn einer der Datenpunkte sich ändert nicht mehrere wahr sein können. Wenn es einzelne Datenpunkte sind kann es ja sein, dass zwei davon zur gleichen Zeit auf True stehen und dann wäre das Skript so nicht möglich denke ich. Wenn es tatsächlich so, dass alle beiden Datenpunkte auf False gesetzt werden wenn einer der anderen auf True steht, dann solltest du ein 1000MS Timeout zwischen Trigger und Logik setzen. Für den Fall, dass mehrere Datenpunkte True sein können, aber sich immer nur einer verändert, funktioniert das so nicht. Dann musst du mehrere Blocklys schreiben. Ist aber nur eine Vermutung...

                                      TH GT Online
                                      TH GT Online
                                      TH G
                                      schrieb am zuletzt editiert von TH G
                                      #43

                                      @David-Froebus @AlCalzone

                                      Es wird immer nur einer der DP geändert niemals mehrere.

                                      Ich habe Blockly so oft umgebaut das ich nun am Ende bin. Der aktuelle Status wird immer erkannt aber NIEMALS das Ende. Wenn also kein True mehr in einem der drei DP steht wird nicht der Text "nicht aktiv" in meinem DP fürs VIS geschrieben.

                                      Habe es auch mit Timeout probiert und mit mehreren Blocklys.

                                      Es wird im Logikmodul einfach nicht "sonst" ausgeführt.

                                      Für mich ist das ganze Verhalten nicht nachvollziehbar.

                                      AlCalzoneA 1 Antwort Letzte Antwort
                                      0
                                      • TH GT TH G

                                        @David-Froebus @AlCalzone

                                        Es wird immer nur einer der DP geändert niemals mehrere.

                                        Ich habe Blockly so oft umgebaut das ich nun am Ende bin. Der aktuelle Status wird immer erkannt aber NIEMALS das Ende. Wenn also kein True mehr in einem der drei DP steht wird nicht der Text "nicht aktiv" in meinem DP fürs VIS geschrieben.

                                        Habe es auch mit Timeout probiert und mit mehreren Blocklys.

                                        Es wird im Logikmodul einfach nicht "sonst" ausgeführt.

                                        Für mich ist das ganze Verhalten nicht nachvollziehbar.

                                        AlCalzoneA Offline
                                        AlCalzoneA Offline
                                        AlCalzone
                                        Developer
                                        schrieb am zuletzt editiert von
                                        #44

                                        @TH-G sagte in VIS nervt aber warum? Trigger DP ohne Wert?:

                                        Für mich ist das ganze Verhalten nicht nachvollziehbar.

                                        Für mich auch nicht. Ich habe dich zwar mehrfach nach Logs oder so gefragt, dass man die verschiedenen Zustände nachvollziehen kann, aber keine bekommen.

                                        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                        TH GT 1 Antwort Letzte Antwort
                                        0
                                        • AlCalzoneA AlCalzone

                                          @FredF Du hast einen Default-Wert von "" vergeben (leerer String).

                                          FredFF Offline
                                          FredFF Offline
                                          FredF
                                          Most Active Forum Testing
                                          schrieb am zuletzt editiert von
                                          #45

                                          @AlCalzone sagte in VIS nervt aber warum? Trigger DP ohne Wert?:

                                          @FredF Du hast einen Default-Wert von "" vergeben (leerer String).

                                          Ja, beim manuellen Anlegen wird das auch nicht abgefragt.
                                          Mit vergabe des Default-Wertes:

                                          {
                                            "_id": "0_userdata.0.Neues_Objekt",
                                            "type": "state",
                                            "common": {
                                              "name": "Neues Objekt",
                                              "role": "",
                                              "type": "string",
                                              "read": true,
                                              "write": true,
                                              "desc": "Manuell erzeugt",
                                              "def": "null"
                                            },
                                            "native": {},
                                            "from": "system.adapter.admin.0",
                                            "user": "system.user.admin",
                                            "ts": 1593265553701,
                                            "acl": {
                                              "object": 1636,
                                              "state": 1636,
                                              "owner": "system.user.admin",
                                              "ownerGroup": "system.group.administrator"
                                            }
                                          }
                                          

                                          Ist die Ausgabe aber genau so
                                          ae608b9b-4c5b-4820-8fd8-44299efb7640-grafik.png

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          345

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe