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. Skripten / Logik
  4. Blockly
  5. [gelöst]State per Script löschen

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

[gelöst]State per Script löschen

Geplant Angeheftet Gesperrt Verschoben Blockly
blocklyjavascript
29 Beiträge 4 Kommentatoren 3.4k Aufrufe 3 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.
  • dslraserD dslraser

    @paul53 sagte in [gelöst]State per Script löschen:

    Mittels $Selector.

    das geht mit substring nur in javascript.x (in 0_userdata.0 funktioniert es bei mir nicht, da kommt dann auch Not found)

    ich mache es aktuell so

    javascript Instanz

    const idsjs = $('javascript.*.Geraete_zaehlen_optional_Ansagen.Geraete_zaehlen.Batterien*'/*Batterien Zaehlen*/);
     
    idsjs.each(function(id, i) {
       if(existsState(id)) deleteState(id.substring(13));
    });
    

    0_userdata.0

    const idsud = $('0_userdata.0.Geraete_zaehlen_optional_Ansagen.Geraete_zaehlen.Batterien*'/*Batterien Zaehlen*/);
     
    idsud.each(function(id, i) {
       if(existsState(id)) deleteState(id);
    });
    

    Oder habe ich was falsch gemacht ?

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

    @dslraser sagte:

    Oder habe ich was falsch gemacht ?

    Nein, siehe hier. Wenn Du nur eine .each-Schleife haben möchtest, dann bau die Abfrage mit ein. Oder so:

    const ids = $('javascript.0.*.Batterien_zaehlen.*'); 
     
    ids.each(function(id, i) {
       if(existsState(id)) {
          if(id.startsWith('0_userdata.0.')) deleteState(id);
          else deleteState(id.substring(13));
       }
    });
    

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    dslraserD 2 Antworten Letzte Antwort
    1
    • paul53P paul53

      @dslraser sagte:

      Oder habe ich was falsch gemacht ?

      Nein, siehe hier. Wenn Du nur eine .each-Schleife haben möchtest, dann bau die Abfrage mit ein. Oder so:

      const ids = $('javascript.0.*.Batterien_zaehlen.*'); 
       
      ids.each(function(id, i) {
         if(existsState(id)) {
            if(id.startsWith('0_userdata.0.')) deleteState(id);
            else deleteState(id.substring(13));
         }
      });
      
      dslraserD Offline
      dslraserD Offline
      dslraser
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #14

      @paul53 sagte in [gelöst]State per Script löschen:

      Nein, siehe hier. Wenn Du nur eine .each-Schleife haben möchtest, dann bau die Abfrage mit ein. Oder so:

      Danke, das funktioniert so, aber mir ist eben erst aufgefallen das dann unter javascript.x auch scriptEnabled gelöscht wird.

      paul53P 1 Antwort Letzte Antwort
      0
      • dslraserD dslraser

        @paul53 sagte in [gelöst]State per Script löschen:

        Nein, siehe hier. Wenn Du nur eine .each-Schleife haben möchtest, dann bau die Abfrage mit ein. Oder so:

        Danke, das funktioniert so, aber mir ist eben erst aufgefallen das dann unter javascript.x auch scriptEnabled gelöscht wird.

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

        @dslraser sagte:

        unter javascript.x auch scriptEnabled gelöscht wird.

        Wenn "Batterien_zaehlen" auch als Skript-Name verwendet wurde, dann darf man mit dem "*" nicht so großzügig umgehen, sondern muss genauer selektieren.

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        dslraserD 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @dslraser sagte:

          unter javascript.x auch scriptEnabled gelöscht wird.

          Wenn "Batterien_zaehlen" auch als Skript-Name verwendet wurde, dann darf man mit dem "*" nicht so großzügig umgehen, sondern muss genauer selektieren.

          dslraserD Offline
          dslraserD Offline
          dslraser
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #16

          @paul53
          Es werden alle scriptEnabled gelöscht, auch die, die nichts mit dem Namen zu tun haben.

          paul53P 1 Antwort Letzte Antwort
          0
          • dslraserD dslraser

            @paul53
            Es werden alle scriptEnabled gelöscht, auch die, die nichts mit dem Namen zu tun haben.

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

            @dslraser sagte:

            auch die, die nichts mit dem Namen zu tun haben.

            Das wundert mich und kann ich bei mir mit dem $Selector nicht nachvollziehen.
            Ein Buchstabe != "s" direkt hinter "javascript.0." sollte ausreichen, dies zu verhindern.

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            dslraserD 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @dslraser sagte:

              auch die, die nichts mit dem Namen zu tun haben.

              Das wundert mich und kann ich bei mir mit dem $Selector nicht nachvollziehen.
              Ein Buchstabe != "s" direkt hinter "javascript.0." sollte ausreichen, dies zu verhindern.

              dslraserD Offline
              dslraserD Offline
              dslraser
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #18

              @paul53
              ich probiere nochmal.

              dslraserD 1 Antwort Letzte Antwort
              0
              • dslraserD dslraser

                @paul53
                ich probiere nochmal.

                dslraserD Offline
                dslraserD Offline
                dslraser
                Forum Testing Most Active
                schrieb am zuletzt editiert von
                #19

                @dslraser sagte in [gelöst]State per Script löschen:

                @paul53
                ich probiere nochmal.

                ich jetzt auch nicht mehr, bleibt alles da. Da werde ich dann wohl beim probieren was falsch gehabt haben.

                1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @dslraser sagte:

                  Oder habe ich was falsch gemacht ?

                  Nein, siehe hier. Wenn Du nur eine .each-Schleife haben möchtest, dann bau die Abfrage mit ein. Oder so:

                  const ids = $('javascript.0.*.Batterien_zaehlen.*'); 
                   
                  ids.each(function(id, i) {
                     if(existsState(id)) {
                        if(id.startsWith('0_userdata.0.')) deleteState(id);
                        else deleteState(id.substring(13));
                     }
                  });
                  
                  dslraserD Offline
                  dslraserD Offline
                  dslraser
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #20

                  @paul53 sagte in [gelöst]State per Script löschen:

                  @dslraser sagte:

                  Oder habe ich was falsch gemacht ?

                  Nein, siehe hier. Wenn Du nur eine .each-Schleife haben möchtest, dann bau die Abfrage mit ein. Oder so:

                  const ids = $('javascript.0.*.Batterien_zaehlen.*'); 
                   
                  ids.each(function(id, i) {
                     if(existsState(id)) {
                        if(id.startsWith('0_userdata.0.')) deleteState(id);
                        else deleteState(id.substring(13));
                     }
                  });
                  

                  Ich habe jetzt eine Weile an einem Blockly was gemacht und als Ort zum erstellen und löschen der Datenpunkte immer javascript.0 benutzt, da funktioniert das löschen.
                  Eben habe ich dann mal die gleichen Datenpunkte in 0_userdata.0 erstellt und wollte diese anschließend mit dieser Schleife löschen, dort wird nicht gelöscht.
                  Nehme ich die zwei Schleifen wie hier funktioniert an beiden Orten das löschen.

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • dslraserD dslraser

                    @paul53 sagte in [gelöst]State per Script löschen:

                    @dslraser sagte:

                    Oder habe ich was falsch gemacht ?

                    Nein, siehe hier. Wenn Du nur eine .each-Schleife haben möchtest, dann bau die Abfrage mit ein. Oder so:

                    const ids = $('javascript.0.*.Batterien_zaehlen.*'); 
                     
                    ids.each(function(id, i) {
                       if(existsState(id)) {
                          if(id.startsWith('0_userdata.0.')) deleteState(id);
                          else deleteState(id.substring(13));
                       }
                    });
                    

                    Ich habe jetzt eine Weile an einem Blockly was gemacht und als Ort zum erstellen und löschen der Datenpunkte immer javascript.0 benutzt, da funktioniert das löschen.
                    Eben habe ich dann mal die gleichen Datenpunkte in 0_userdata.0 erstellt und wollte diese anschließend mit dieser Schleife löschen, dort wird nicht gelöscht.
                    Nehme ich die zwei Schleifen wie hier funktioniert an beiden Orten das löschen.

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

                    @dslraser sagte:

                    Datenpunkte in 0_userdata.0 erstellt und wollte diese anschließend mit dieser Schleife löschen, dort wird nicht gelöscht.

                    Habe es gerade getestet und die 3 Datenpunkte unter "0_userdata.0", die ".on_off" in der ID hatten, wurden gelöscht:

                    const ids = $('0_userdata.0.*.on_off*'); 
                     
                    ids.each(function(id, i) {
                       if(existsState(id)) {
                          if(id.startsWith('0_userdata.0.')) deleteState(id);
                          else deleteState(id.substring(13));
                       }
                    });
                    

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    1 Antwort Letzte Antwort
                    0
                    • liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von
                      #22

                      @paul53

                      verstehe ich das richtig, das man datenpunkte, die nicht in javascript.x oder 0_userdata... niemals mit einem script löschen kann ?

                      warum ich frage:
                      der unifi adapter löscht keine datenpunkte, da er nicht entscheiden kann, ob das ein "falscher" client ist - also z.b ein gast, der nur einmal im netz eingloggt war, und für ewig in den datenpunkten bleibt
                      habe ein tabellen script, welches mir alle clients anzeigt und wollte über dieses script/tabelle, die datenpunkte löschen lassen

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      paul53P 1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @paul53

                        verstehe ich das richtig, das man datenpunkte, die nicht in javascript.x oder 0_userdata... niemals mit einem script löschen kann ?

                        warum ich frage:
                        der unifi adapter löscht keine datenpunkte, da er nicht entscheiden kann, ob das ein "falscher" client ist - also z.b ein gast, der nur einmal im netz eingloggt war, und für ewig in den datenpunkten bleibt
                        habe ein tabellen script, welches mir alle clients anzeigt und wollte über dieses script/tabelle, die datenpunkte löschen lassen

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

                        @liv-in-sky sagte:

                        datenpunkte, die nicht in javascript.x oder 0_userdata... niemals mit einem script löschen kann ?

                        Doch, mit deleteObject(id).

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        liv-in-skyL 2 Antworten Letzte Antwort
                        0
                        • paul53P paul53

                          @liv-in-sky sagte:

                          datenpunkte, die nicht in javascript.x oder 0_userdata... niemals mit einem script löschen kann ?

                          Doch, mit deleteObject(id).

                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          schrieb am zuletzt editiert von
                          #24

                          @paul53

                          danke dir - funktioniert aber im editor wird das als fehler (cannot find name) angezeigt

                          Image 5.png

                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                          1 Antwort Letzte Antwort
                          0
                          • paul53P paul53

                            @liv-in-sky sagte:

                            datenpunkte, die nicht in javascript.x oder 0_userdata... niemals mit einem script löschen kann ?

                            Doch, mit deleteObject(id).

                            liv-in-skyL Offline
                            liv-in-skyL Offline
                            liv-in-sky
                            schrieb am zuletzt editiert von
                            #25

                            @paul53

                            könntest du mir nochmal helfen - das funktioniert doch nicht richtig

                            wie genau muss der befehl heißen, damit ich diese struktur wegbekomme (unifi.0.default.clients.b8:27:eb:57:0a:a7)

                            Image 6.png

                            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                            paul53P 1 Antwort Letzte Antwort
                            0
                            • liv-in-skyL liv-in-sky

                              @paul53

                              könntest du mir nochmal helfen - das funktioniert doch nicht richtig

                              wie genau muss der befehl heißen, damit ich diese struktur wegbekomme (unifi.0.default.clients.b8:27:eb:57:0a:a7)

                              Image 6.png

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

                              @liv-in-sky sagte:

                              wie genau muss der befehl heißen, damit ich diese struktur wegbekomme

                              Laut Doku

                              deleteObject('unifi.0.default.clients.b8:27:eb:57:0a:a7', true);
                              

                              Selbst habe ich es noch nicht getestet.

                              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                              liv-in-skyL 1 Antwort Letzte Antwort
                              1
                              • paul53P paul53

                                @liv-in-sky sagte:

                                wie genau muss der befehl heißen, damit ich diese struktur wegbekomme

                                Laut Doku

                                deleteObject('unifi.0.default.clients.b8:27:eb:57:0a:a7', true);
                                

                                Selbst habe ich es noch nicht getestet.

                                liv-in-skyL Offline
                                liv-in-skyL Offline
                                liv-in-sky
                                schrieb am zuletzt editiert von
                                #27

                                @paul53 oh - das isrecursive=true hat gefehlt

                                das schaut jetzt schon besser aus

                                danke

                                nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                1 Antwort Letzte Antwort
                                0
                                • paul53P paul53

                                  @dslraser sagte:

                                  In javascript.0 funktioniert es nicht

                                  Ja, das kann ich nachvollziehen. Bitte Issue auf Github erstellen.

                                  dslraserD Offline
                                  dslraserD Offline
                                  dslraser
                                  Forum Testing Most Active
                                  schrieb am zuletzt editiert von dslraser
                                  #28

                                  @paul53 sagte in [gelöst]State per Script löschen:

                                  @dslraser sagte:

                                  In javascript.0 funktioniert es nicht

                                  Ja, das kann ich nachvollziehen. Bitte Issue auf Github erstellen.

                                  Mit 4.6.19 funktioniert bei mir das löschen.

                                  https://github.com/ioBroker/ioBroker.javascript/issues/604

                                  1 Antwort Letzte Antwort
                                  0
                                  • paul53P paul53

                                    @dslraser
                                    Du kannst die Datenpunkte unter "javascript.0" und "0_userdata.0" so löschen:

                                    if(existsState(id)) {
                                        if(id.substring(0, 11) == 'javascript.') deleteState(id.substring(13));
                                        else deleteState(id);
                                    }
                                    
                                    TG70T Offline
                                    TG70T Offline
                                    TG70
                                    Forum Testing
                                    schrieb am zuletzt editiert von TG70
                                    #29

                                    @paul53 sagte in [gelöst]State per Script löschen:

                                    @dslraser
                                    Du kannst die Datenpunkte unter "javascript.0" und "0_userdata.0" so löschen:

                                    if(existsState(id)) {
                                        if(id.substring(0, 11) == 'javascript.') deleteState(id.substring(13));
                                        else deleteState(id);
                                    }
                                    

                                    Wie kann ich ein einzelnen Datenpunkt löschen, welcher mir Aufgrund falscher Schreibweise und einem "." am Schluß nun seit heute angemahnt wird:

                                    javascript.0.scriptEnabled.common.Türe_Tor_Licht_Waschm.

                                    Bei normalem Löschversuch über Skripte oder auch in den Objekten kommt eine Fehlermeldung:

                                    6caa7c38-a82f-4ef9-a302-1ceb0c5d6718-image.png

                                    ∘ MB ASRock J4105M Intel J4105 CPU M-ATX | 16 GB RAM | 480 GB SSD ∘ PROXMOX LCX-Container > IoBroker

                                    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

                                    905

                                    Online

                                    32.4k

                                    Benutzer

                                    81.5k

                                    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