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. Objekte aufräumen

NEWS

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

Objekte aufräumen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
objekte adminaufräumen
100 Beiträge 8 Kommentatoren 8.4k Aufrufe 10 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.
  • sigi234S Offline
    sigi234S Offline
    sigi234
    Forum Testing Most Active
    schrieb am zuletzt editiert von sigi234
    #54

    Hm, wenn ich die objects.json lösche, wird diese nicht neu angelegt?

    Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
    Immer Daten sichern!

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

      @paul53 ich habe unter allen drei instanzen die selben datenpunbkte (von allen scripts) (bei javascript.1 sind es etwas weniger) unter scriptproblem

      ist das bei dir nicht so ?

      insgesamt: 719+611+250 = 1580 datenpunkte nur unter scriptProblem

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

      @liv-in-sky sagte:

      1580 datenpunkte nur unter scriptProblem

      Dann ist es sinnvoll, diese auszufiltern.

      function checkEmpty(select) {
          $(select).each(function (id, i) {
              var ida = id.split('.');
              if(ida[2] != 'scriptEnabled' && ida[2] != 'scriptProblem' && getState(id).val === null) {
                  console.log(id + ': Leer !');
              }
          });
      }
      
      checkEmpty('javascript.*');
      checkEmpty('meineDP.*');
      

      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
      • sigi234S sigi234

        Hm, wenn ich die objects.json lösche, wird diese nicht neu angelegt?

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

        @sigi234 sagte:

        wenn ich die objects.json lösche, wird diese nicht neu angelegt?

        Sie wird bei Start von ioBroker eingelesen.

        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
        0
        • sigi234S Offline
          sigi234S Offline
          sigi234
          Forum Testing Most Active
          schrieb am zuletzt editiert von sigi234
          #57

          @paul53
          @liv-in-sky

          Kann man die Skripte zusammenfassen und ev. später wenn das Skript soweit läuft auch als Blockly reinstellen?

          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
          Immer Daten sichern!

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

            @sigi234 sagte:

            wenn ich die objects.json lösche, wird diese nicht neu angelegt?

            Sie wird bei Start von ioBroker eingelesen.

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

            @paul53 eine kleine hilfe bräuchte ich noch - wie bekomme ich alle installierten instanzen heraus - nur die "überordner"

            also alle ordner , die .0 oder .2 oder .3 .... haben und danch nichts mehr

            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
            • sigi234S sigi234

              @paul53
              @liv-in-sky

              Kann man die Skripte zusammenfassen und ev. später wenn das Skript soweit läuft auch als Blockly reinstellen?

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

              @sigi234 sagte in Objekte aufräumen:

              @paul53
              @liv-in-sky

              Kannst man die Skripte zusammenfassen und ev. später wenn das Skript soweit läuft auch als Blockly reinstellen?

              ich werde mich mal daran versuchen und ein gerüst darum bauen - wenn dabei etwas rauskommt werd ich dich informieren - ich bin nicht so schnell wie @paul53 l und werde etwas zeit brauchen AUSSER @paul53 will da ein script machen ??

              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
              1
              • liv-in-skyL liv-in-sky

                @paul53 eine kleine hilfe bräuchte ich noch - wie bekomme ich alle installierten instanzen heraus - nur die "überordner"

                also alle ordner , die .0 oder .2 oder .3 .... haben und danch nichts mehr

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

                @liv-in-sky sagte:

                wie bekomme ich alle installierten instanzen heraus

                Das Skript zeigt auch an, ob sie laufen:

                $('system.adapter.*.alive').each(function(id, i) {
                    var ida = id.split('.');
                    console.log(ida[2] + '.' + ida[3] + ': ' + getState(id).val);
                });
                

                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
                1
                • sigi234S sigi234

                  @paul53
                  @liv-in-sky

                  Kann man die Skripte zusammenfassen und ev. später wenn das Skript soweit läuft auch als Blockly reinstellen?

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

                  @sigi234 sagte:

                  Kann man die Skripte zusammenfassen

                  function checkEmpty(select) {
                      $(select).each(function (id, i) {
                          var ida = id.split('.');
                          if(ida[2] != 'scriptEnabled' && ida[2] != 'scriptProblem' && getState(id).val === null) {
                              console.log(id + ': Leer !');
                          }
                      });
                  }
                  
                  function checkTypes(select) {
                      $(select).each(function (id, i) {
                          var ida = id.split('.');
                          if(ida[2] != 'scriptEnabled' && ida[2] != 'scriptProblem') {
                              var dpType = getObject(id).common.type;
                              var valType = typeof getState(id).val;
                              if(dpType != valType && !(dpType == 'array' && valType == 'object')) {
                                  console.log(id + ': Datenpunkttyp: ' + dpType + ', Wert: ' + valType);
                              }
                          }
                      });
                  }
                  
                  checkEmpty('javascript.*');
                  // checkTypes('javascript.*');
                  

                  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
                  1
                  • ? Offline
                    ? Offline
                    Ein ehemaliger Benutzer
                    schrieb am zuletzt editiert von
                    #62

                    an so ein Kontrolskript denke ich auch schon länger, ich sehe immer Folgefehler die durch Kraut&Rüben in den Onjekten verursacht werden...

                    Nett wäre noch die Überprüfung der obj.common.states, dort ist auch oft ein falscher Type angegeben z.B. boolean mit "OPEN" "CLOSED"
                    Ausserdem wäre es interessant die korrekte Verwendung der Role zu prüfen anhand der offiziellen Vorgaben auf Datentyp und Read/Write Angaben: https://github.com/ioBroker/ioBroker/blob/master/doc/STATE_ROLES.md

                    liv-in-skyL 1 Antwort Letzte Antwort
                    0
                    • ? Ein ehemaliger Benutzer

                      an so ein Kontrolskript denke ich auch schon länger, ich sehe immer Folgefehler die durch Kraut&Rüben in den Onjekten verursacht werden...

                      Nett wäre noch die Überprüfung der obj.common.states, dort ist auch oft ein falscher Type angegeben z.B. boolean mit "OPEN" "CLOSED"
                      Ausserdem wäre es interessant die korrekte Verwendung der Role zu prüfen anhand der offiziellen Vorgaben auf Datentyp und Read/Write Angaben: https://github.com/ioBroker/ioBroker/blob/master/doc/STATE_ROLES.md

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

                      @nis
                      bis jetzt habe ich mal sowas gemacht

                      Image 1.png

                      im script kann man dann zusätzlich zu überprüfende instanzen einsetzen - alle zu checken machte keinen sinn - habe schon 2-3 adapter entdeckt, die datenpunkte leer lassen - das werden zu viele fehler auf einmal - aber evtl mach ich ein auswahlmenu, um das script je nach bedarf checken zu 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

                      1 Antwort Letzte Antwort
                      1
                      • D Offline
                        D Offline
                        darkiop
                        Most Active
                        schrieb am zuletzt editiert von
                        #64

                        Das hört sich Interessant an!
                        Grundsätzlich könnte ich mir so eine House-Keeping-Funktion aber auch als Funktion im js-controller Vorstellen 'iobroker check ...' o.Ä.

                        Proxmox-ioBroker-Redis-HA Doku: https://forum.iobroker.net/topic/47478/dokumentation-einer-proxmox-iobroker-redis-ha-umgebung

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

                          weiter geht es hier: https://forum.iobroker.net/topic/25846/script-datenpunkte-info-sammlung

                          @sigi234 , @nis @darkiop

                          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
                          • liv-in-skyL Offline
                            liv-in-skyL Offline
                            liv-in-sky
                            schrieb am zuletzt editiert von
                            #66

                            @sigi234

                            hi sigi

                            leider wird das nix mit blockly - aber das geht auch so

                            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

                              @sigi234 sagte:

                              kann man im Reiter Objekte eigentlich alte oder verweiste Einträge automatisch löschen?
                              Gibt es ein Skript dafür?

                              Mit automatischem Löschen sollte man sehr vorsichtig sein, weil danach etwas nicht mehr funktionieren kann. Da man auf die von Adaptern erzeugten Datenpunkte keinen Einfluss hat, sollte man sich ohnehin nur auf eigene Datenpunkte beschränken. Deshalb habe ich das Skript dahingehend abgewandelt.

                              function checkTypes(select) {
                                  $(select).each(function (id, i) {
                                      var dpType = getObject(id).common.type;
                                      var valType = typeof getState(id).val;
                                      if(dpType != valType && !(dpType == 'array' && valType == 'object')) {
                                          log(id + ': Datenpunkttyp: ' + dpType + ', Wert: ' + valType);
                                      }
                                  });
                              }
                              
                              checkTypes('javascript.*');
                              checkTypes('meineDP.*');
                              

                              Datenpunkte, die keinen Wert enthalten, erzeugen eine Warnung im Log.

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

                              @paul53 sagte in Objekte aufräumen:

                              @sigi234 sagte:

                              kann man im Reiter Objekte eigentlich alte oder verweiste Einträge automatisch löschen?
                              Gibt es ein Skript dafür?

                              Mit automatischem Löschen sollte man sehr vorsichtig sein, weil danach etwas nicht mehr funktionieren kann. Da man auf die von Adaptern erzeugten Datenpunkte keinen Einfluss hat, sollte man sich ohnehin nur auf eigene Datenpunkte beschränken. Deshalb habe ich das Skript dahingehend abgewandelt.

                              function checkTypes(select) {
                                  $(select).each(function (id, i) {
                                      var dpType = getObject(id).common.type;
                                      var valType = typeof getState(id).val;
                                      if(dpType != valType && !(dpType == 'array' && valType == 'object')) {
                                          log(id + ': Datenpunkttyp: ' + dpType + ', Wert: ' + valType);
                                      }
                                  });
                              }
                              
                              checkTypes('javascript.*');
                              checkTypes('meineDP.*');
                              

                              Datenpunkte, die keinen Wert enthalten, erzeugen eine Warnung im Log.

                              hallo @paul53 ,

                              ich bin mit meinem script schon etwas weitergekommen und hätte noch eine frage an dich . du hattest mir diese zeile empfohlen bei der auswahl für die type abfrage - was auch sehr gut war

                              
                                      if(dpType != valType && !(dpType == 'array' && valType == 'object')) {
                              
                              

                              im folgenden bild bekomme ich bei meiner suche folgende auswertung:

                              Image 5.png

                              darin sind object-werte geschrieben obwohl string,number oder boolean im dp deklariert ist - da bei diesem beispiel apollon77 den adapter gemacht hat (und auch bei vielen anderen adaptern), gehe ich davon aus, dass dies korrekt ist und so benutzt werden kann - meine frage : kann ich alle diese kombinationen ausschliessen, da es gängig ist? im object-tab sehe ich sie als leer - irgendwie bin ich verwirrt, was das nun bedeutet? diese datenpunkte werden aber nicht als leer angezeigt.
                              also :

                              • id+valType(ist) -> dpType(soll)
                              • id+object ->string
                              • id+object ->number
                              • id+object -> boolean
                              • id+object ->array

                              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
                              • ? Offline
                                ? Offline
                                Ein ehemaliger Benutzer
                                schrieb am zuletzt editiert von Ein ehemaliger Benutzer
                                #68

                                Weitere Prüfungen könnten noch sein:

                                Prüfen der einzelnen Angaben unter obj.common.states
                                boolean müsset sein:

                                {
                                 id: "irgendetwas mit fenster",
                                common: {
                                type: "boolean",
                                states: {
                                true: "offen",
                                false: "geschlossen"
                                }}}
                                

                                number:

                                {
                                 id: "irgendetwas mit fenster",
                                common : {
                                type: "number",
                                states: {
                                0: "offen",
                                1: "geschlossen",
                                2: "gekippt"
                                }}}
                                

                                oftmals entdecke ich solche Angaben die falsch sind da die Werte 0,1,2 String sind:

                                {
                                 id: "irgendetwas mit fenster",
                                common : {
                                type: "number",
                                states: {
                                "0": "offen",
                                "1": "geschlossen",
                                "2": "gekippt"
                                }}}
                                
                                liv-in-skyL paul53P 3 Antworten Letzte Antwort
                                0
                                • ? Ein ehemaliger Benutzer

                                  Weitere Prüfungen könnten noch sein:

                                  Prüfen der einzelnen Angaben unter obj.common.states
                                  boolean müsset sein:

                                  {
                                   id: "irgendetwas mit fenster",
                                  common: {
                                  type: "boolean",
                                  states: {
                                  true: "offen",
                                  false: "geschlossen"
                                  }}}
                                  

                                  number:

                                  {
                                   id: "irgendetwas mit fenster",
                                  common : {
                                  type: "number",
                                  states: {
                                  0: "offen",
                                  1: "geschlossen",
                                  2: "gekippt"
                                  }}}
                                  

                                  oftmals entdecke ich solche Angaben die falsch sind da die Werte 0,1,2 String sind:

                                  {
                                   id: "irgendetwas mit fenster",
                                  common : {
                                  type: "number",
                                  states: {
                                  "0": "offen",
                                  "1": "geschlossen",
                                  "2": "gekippt"
                                  }}}
                                  
                                  liv-in-skyL Offline
                                  liv-in-skyL Offline
                                  liv-in-sky
                                  schrieb am zuletzt editiert von
                                  #69

                                  @nis probier doch mal das script aus, ob du es brauchen kannst

                                  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
                                  • liv-in-skyL liv-in-sky

                                    @nis probier doch mal das script aus, ob du es brauchen kannst

                                    ? Offline
                                    ? Offline
                                    Ein ehemaliger Benutzer
                                    schrieb am zuletzt editiert von
                                    #70

                                    @liv-in-sky die Prüfung ist aber nicht in dem Skript drin, oder ich sehe davon nix...

                                    liv-in-skyL 1 Antwort Letzte Antwort
                                    0
                                    • ? Ein ehemaliger Benutzer

                                      @liv-in-sky die Prüfung ist aber nicht in dem Skript drin, oder ich sehe davon nix...

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

                                      @nis nein - die braucht man eigentlich nur für die "monsterprüfung" - dort sind mir diese sache erst aufgefallen - ich werd das erst morgen nochmal ansehen

                                      prüfe doch mal nur deinen eigenen adapter und deine eigenen datenpunkte - wäre auf feedback gespannt

                                      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
                                      • ? Offline
                                        ? Offline
                                        Ein ehemaliger Benutzer
                                        schrieb am zuletzt editiert von Ein ehemaliger Benutzer
                                        #72

                                        Und dann wäre auch eine generelle Prüfung der Abhängig zur Rolle.

                                        Rollen mit sensor.* müssen boolean und read-only sein.
                                        Rollen mit button.* müssen boolean und write-only sein.
                                        usw...

                                        Ganze Liste der Rollen gibt es hier: https://github.com/ioBroker/ioBroker/blob/master/doc/STATE_ROLES.md

                                        liv-in-skyL sigi234S 2 Antworten Letzte Antwort
                                        0
                                        • ? Ein ehemaliger Benutzer

                                          Und dann wäre auch eine generelle Prüfung der Abhängig zur Rolle.

                                          Rollen mit sensor.* müssen boolean und read-only sein.
                                          Rollen mit button.* müssen boolean und write-only sein.
                                          usw...

                                          Ganze Liste der Rollen gibt es hier: https://github.com/ioBroker/ioBroker/blob/master/doc/STATE_ROLES.md

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

                                          @nis ah - jetzt kommt der adapter profi zum vorschein

                                          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
                                          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

                                          738

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          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