Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Skripten / Logik
  4. JavaScript
  5. Neue und gelöschte States in Script erst nach Neustart?

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    1.6k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    666

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    1.2k

Neue und gelöschte States in Script erst nach Neustart?

Geplant Angeheftet Gesperrt Verschoben JavaScript
20 Beiträge 4 Kommentatoren 1.7k Aufrufe 3 Beobachtet
  • Ä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.
  • paul53P paul53

    @paul53 sagte:

    Allerdings glaube ich, dass der $Selector auch auf den Puffer zurück greift.

    Habe es mal mit Erzeugen eines DP per Admin, dem $Selector und Löschen per Script getestet: Ohne Instanz-Neustart hat der $Selector den neuen DP gefunden und nach dem Löschen nicht mehr.

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

    @paul53 sagte in Neue und gelöschte States in Script erst nach Neustart?:

    Habe es mal mit Erzeugen eines DP per Admin

    Es könnte mit der Struktur device.channel.state zusammen hängen. Ich konnte das vor einer halben Ewigkeit wie folgt reproduzieren:
    https://github.com/ioBroker/ioBroker.javascript/issues/109

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

    paul53P 1 Antwort Letzte Antwort
    0
    • AlCalzoneA AlCalzone

      @paul53 sagte in Neue und gelöschte States in Script erst nach Neustart?:

      Habe es mal mit Erzeugen eines DP per Admin

      Es könnte mit der Struktur device.channel.state zusammen hängen. Ich konnte das vor einer halben Ewigkeit wie folgt reproduzieren:
      https://github.com/ioBroker/ioBroker.javascript/issues/109

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #12

      @AlCalzone sagte:

      Es könnte mit der Struktur device.channel.state zusammen hängen.

      Gerade getestet: "ESP_Easy_1" ist device, "GARTEN_Stromsensor" ist channel, "Power" ist gerade per Admin erzeugter Datenpunkt.

      Selector_test.JPG

      Das synchrone existsState(id) zeigt übrigens, dass der Puffer der JS-Instanz aktualisiert wurde, sonst wäre nicht gelöscht worden.

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

      W 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @AlCalzone sagte:

        Es könnte mit der Struktur device.channel.state zusammen hängen.

        Gerade getestet: "ESP_Easy_1" ist device, "GARTEN_Stromsensor" ist channel, "Power" ist gerade per Admin erzeugter Datenpunkt.

        Selector_test.JPG

        Das synchrone existsState(id) zeigt übrigens, dass der Puffer der JS-Instanz aktualisiert wurde, sonst wäre nicht gelöscht worden.

        W Offline
        W Offline
        Waly_de
        schrieb am zuletzt editiert von Waly_de
        #13

        @paul53
        Bei per Admin angelegten Datenpunkten hatte ich die Probleme auch nicht.

        hier was zum rekonstruieren:

        zunächst ein paar states Anlegen:

        createState("Personen.Test.sub.sub1",false,false,{role: 'state', type: 'boolean'});
        createState("Personen.Test.sub.sub2",false,false,{role: 'state', type: 'boolean'});
        createState("Personen.Test.sub3","Testwert",false);
        

        dann durchlaufen und löschen:

        
        $('channel[state.id=javascript.0.Personen.Test.*]').each(function (id, i) {
                    log(i + " - " + id + " existsObject: " + existsObject(id))
                    deleteObject(id,true);
        });
        
        

        Ester Aufruf der schleife:

        16:33:26.060	info	javascript.0 (22097) Start javascript script.js.common.StateDeleteTest
        16:33:27.316	info	javascript.0 (22097) script.js.common.StateDeleteTest: 0 - javascript.0.Personen.Test.sub.sub1 existsObject: true
        16:33:27.319	info	javascript.0 (22097) script.js.common.StateDeleteTest: 1 - javascript.0.Personen.Test.sub.sub2 existsObject: true
        16:33:27.320	info	javascript.0 (22097) script.js.common.StateDeleteTest: 2 - javascript.0.Personen.Test.sub3 existsObject: true
        

        zweiter bis x-ter Aufruf der Schleife:

        16:33:48.202	info	javascript.0 (22097) Start javascript script.js.common.StateDeleteTest
        16:33:49.081	info	javascript.0 (22097) script.js.common.StateDeleteTest: 0 - javascript.0.Personen.Test.sub.sub1 existsObject: false
        16:33:49.083	info	javascript.0 (22097) script.js.common.StateDeleteTest: 1 - javascript.0.Personen.Test.sub.sub2 existsObject: false
        16:33:49.084	info	javascript.0 (22097) script.js.common.StateDeleteTest: 2 - javascript.0.Personen.Test.sub3 existsObject: false
        

        nach Neustart von Javascript:

        6:36:15.855	info	javascript.0 (26064) Start javascript script.js.common.StateDeleteTest
        

        Bei Euch auch so?

        AlCalzoneA paul53P 2 Antworten Letzte Antwort
        0
        • W Waly_de

          @paul53
          Bei per Admin angelegten Datenpunkten hatte ich die Probleme auch nicht.

          hier was zum rekonstruieren:

          zunächst ein paar states Anlegen:

          createState("Personen.Test.sub.sub1",false,false,{role: 'state', type: 'boolean'});
          createState("Personen.Test.sub.sub2",false,false,{role: 'state', type: 'boolean'});
          createState("Personen.Test.sub3","Testwert",false);
          

          dann durchlaufen und löschen:

          
          $('channel[state.id=javascript.0.Personen.Test.*]').each(function (id, i) {
                      log(i + " - " + id + " existsObject: " + existsObject(id))
                      deleteObject(id,true);
          });
          
          

          Ester Aufruf der schleife:

          16:33:26.060	info	javascript.0 (22097) Start javascript script.js.common.StateDeleteTest
          16:33:27.316	info	javascript.0 (22097) script.js.common.StateDeleteTest: 0 - javascript.0.Personen.Test.sub.sub1 existsObject: true
          16:33:27.319	info	javascript.0 (22097) script.js.common.StateDeleteTest: 1 - javascript.0.Personen.Test.sub.sub2 existsObject: true
          16:33:27.320	info	javascript.0 (22097) script.js.common.StateDeleteTest: 2 - javascript.0.Personen.Test.sub3 existsObject: true
          

          zweiter bis x-ter Aufruf der Schleife:

          16:33:48.202	info	javascript.0 (22097) Start javascript script.js.common.StateDeleteTest
          16:33:49.081	info	javascript.0 (22097) script.js.common.StateDeleteTest: 0 - javascript.0.Personen.Test.sub.sub1 existsObject: false
          16:33:49.083	info	javascript.0 (22097) script.js.common.StateDeleteTest: 1 - javascript.0.Personen.Test.sub.sub2 existsObject: false
          16:33:49.084	info	javascript.0 (22097) script.js.common.StateDeleteTest: 2 - javascript.0.Personen.Test.sub3 existsObject: false
          

          nach Neustart von Javascript:

          6:36:15.855	info	javascript.0 (26064) Start javascript script.js.common.StateDeleteTest
          

          Bei Euch auch so?

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

          @Waly_de sagte in Neue und gelöschte States in Script erst nach Neustart?:

          createState("Personen.Test.sub.sub1"

          Hast du die Objekte für die "Zwischenstufen" auch angelegt? Personen, Personen.Test, Personen.Test.sub?

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

          W 1 Antwort Letzte Antwort
          0
          • AlCalzoneA AlCalzone

            @Waly_de sagte in Neue und gelöschte States in Script erst nach Neustart?:

            createState("Personen.Test.sub.sub1"

            Hast du die Objekte für die "Zwischenstufen" auch angelegt? Personen, Personen.Test, Personen.Test.sub?

            W Offline
            W Offline
            Waly_de
            schrieb am zuletzt editiert von
            #15

            @AlCalzone nein... sind automatisch da..

            AlCalzoneA 1 Antwort Letzte Antwort
            0
            • W Waly_de

              @AlCalzone nein... sind automatisch da..

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

              @Waly_de Nur als Ordner sichtbar oder auch mit einem Objekt (device, channel) versehen?

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

              W 1 Antwort Letzte Antwort
              0
              • AlCalzoneA AlCalzone

                @Waly_de Nur als Ordner sichtbar oder auch mit einem Objekt (device, channel) versehen?

                W Offline
                W Offline
                Waly_de
                schrieb am zuletzt editiert von
                #17

                @AlCalzone Nur als Ordner....

                AlCalzoneA 1 Antwort Letzte Antwort
                0
                • W Waly_de

                  @AlCalzone Nur als Ordner....

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

                  @Waly_de Du selektierst aber channel. Wir hatten grade vorhin erst unter den Devs die Diskussion, dass der JS-Adapter von der "klassischen" Struktur device.channel.state ausgeht und sich sonst extrem komisch verhält.
                  Daher gehts in @paul53 seinem Beispiel, er befolgt die Struktur.

                  Bei dir nicht. Probier mal, Personen als device-Objekt und Personen.Test als channel-Objekt anzulegen, und ob es dann auf der Ebene von Personen.Test.sub mit dem Löschen und selektieren geht.

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

                  1 Antwort Letzte Antwort
                  0
                  • W Waly_de

                    @paul53
                    Bei per Admin angelegten Datenpunkten hatte ich die Probleme auch nicht.

                    hier was zum rekonstruieren:

                    zunächst ein paar states Anlegen:

                    createState("Personen.Test.sub.sub1",false,false,{role: 'state', type: 'boolean'});
                    createState("Personen.Test.sub.sub2",false,false,{role: 'state', type: 'boolean'});
                    createState("Personen.Test.sub3","Testwert",false);
                    

                    dann durchlaufen und löschen:

                    
                    $('channel[state.id=javascript.0.Personen.Test.*]').each(function (id, i) {
                                log(i + " - " + id + " existsObject: " + existsObject(id))
                                deleteObject(id,true);
                    });
                    
                    

                    Ester Aufruf der schleife:

                    16:33:26.060	info	javascript.0 (22097) Start javascript script.js.common.StateDeleteTest
                    16:33:27.316	info	javascript.0 (22097) script.js.common.StateDeleteTest: 0 - javascript.0.Personen.Test.sub.sub1 existsObject: true
                    16:33:27.319	info	javascript.0 (22097) script.js.common.StateDeleteTest: 1 - javascript.0.Personen.Test.sub.sub2 existsObject: true
                    16:33:27.320	info	javascript.0 (22097) script.js.common.StateDeleteTest: 2 - javascript.0.Personen.Test.sub3 existsObject: true
                    

                    zweiter bis x-ter Aufruf der Schleife:

                    16:33:48.202	info	javascript.0 (22097) Start javascript script.js.common.StateDeleteTest
                    16:33:49.081	info	javascript.0 (22097) script.js.common.StateDeleteTest: 0 - javascript.0.Personen.Test.sub.sub1 existsObject: false
                    16:33:49.083	info	javascript.0 (22097) script.js.common.StateDeleteTest: 1 - javascript.0.Personen.Test.sub.sub2 existsObject: false
                    16:33:49.084	info	javascript.0 (22097) script.js.common.StateDeleteTest: 2 - javascript.0.Personen.Test.sub3 existsObject: false
                    

                    nach Neustart von Javascript:

                    6:36:15.855	info	javascript.0 (26064) Start javascript script.js.common.StateDeleteTest
                    

                    Bei Euch auch so?

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von paul53
                    #19

                    @Waly_de sagte:

                    Bei Euch auch so?

                    Ja, da falscher Selektor. So funktioniert es wie erwartet:

                    Selector_test.JPG

                    Seltsamerweise gibt der falsche Selektor nicht vorhandene Datenpunkte aus. Da wurde wohl eine Initialisierung vergessen ?

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

                    W 1 Antwort Letzte Antwort
                    1
                    • paul53P paul53

                      @Waly_de sagte:

                      Bei Euch auch so?

                      Ja, da falscher Selektor. So funktioniert es wie erwartet:

                      Selector_test.JPG

                      Seltsamerweise gibt der falsche Selektor nicht vorhandene Datenpunkte aus. Da wurde wohl eine Initialisierung vergessen ?

                      W Offline
                      W Offline
                      Waly_de
                      schrieb am zuletzt editiert von
                      #20

                      @paul53
                      Klasse, das ist die Lösung für mich! Wusste garnicht das es auch so geht.

                      Danke Euch!

                      LG Markus

                      1 Antwort Letzte Antwort
                      0

                      Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                      Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                      Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                      Registrieren Anmelden
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      572

                      Online

                      32.9k

                      Benutzer

                      82.9k

                      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