Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Kann keine eigenen Datenpunkte erstellen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Kann keine eigenen Datenpunkte erstellen

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

      Hallo,
      ich glaube, ich kenne die Ursache. Die Frage ist, ob es reparabel ist.

      Ich bin dabei, mein veraltetes und mit vielen Anfängerfehlern behaftetes System durch einen neuen RasPi mit aktueller Software zu ersetzen.

      Ein Anfängerfehler war z.B., dass ich nicht meine eigenen Datenpunkte in "0_userdata" erstellt habe (kann sogar sein, dass es diesen Haupt-Ordner damals noch nicht automatisch gab, ich weiß es nicht), sondern in einem eigenen Haupt-Ordner "datenpunkte".
      Außerdem hatte ich damals einen neuen Unterordner zunächst als Datenpunkt erstellt, diesen markiert und dann einen weiteren (echten) Datenpunkt erzeugt. So wandelte sich der markierte Datenpunkt in einen Ordner und ich war zufrieden.
      Das rächt sich jetzt.

      Beim Übertragen meiner Datenstruktur vom alten RasPi mit "datenpunkte.0/...) zum neuen RasPi mit "0_userdata.0/..." bin ich so vorgegangen:

      • den Ordner "datenpunkte.0" markiert
      • diese Ordnerstruktur mittels json-Datei auf den PC geladen
      • in dieser mit Notepad++ die Zeichenkette "datenpunkte" durch "_0_userdata" ersetzt
      • das dann im neuen Raspi wieder importiert

      Die Spaß habe ich dann auch mit allen History-Daten, Scripten, Flots und VIS-Dateien gemacht, bzw. will es noch machen.

      Nun muss ich feststellen, dass ich in den früher fehlerhaft erstellten eigenen Unterordnern gar nichts Neues erstellen kann.
      Und in Unterordnern, die ich später korrekt erstellt hatte, kann ich wenigstens neue Unter-Unterordner erstellen, in denen ich wieder neue Datenpunkte erzeugen kann. Was aber meine vorhandene Datenstruktur durcheinander bringt.

      Ich habe den Import auch als "Experte" versucht, die Datenstruktur in den einzelnen Unterordnern und auch unbehandelt (also ohne "datenpunkte" in "0_userdata" zu verwandeln) importiert. Ohne Erfolg, ich kann keine neuen Datenpunkte erstellen. Das Plus oben ist ausgegraut.

      Ich mache also offenbar einen prinzipiellen Fehler.

      Tja, wie bekomme ich eine recht umfangreiche Datenstruktur eigener Datenpunkte in ein neues System, und das möglichst jetzt regelkonform, also in "0_userdata"?

      Codierknecht haus-automatisierung Homoran 3 Replies Last reply Reply Quote 0
      • Codierknecht
        Codierknecht Developer Most Active @docadams last edited by

        @docadams sagte in Kann keine eigenen Datenpunkte erstellen:

        Nun muss ich feststellen, dass ich in den früher fehlerhaft erstellten eigenen Unterordnern gar nichts Neues erstellen kann.

        Schau Dir Deine generierte Datei an.
        Ich vermute mal, die problematischen Pseudo-Ordner sind nicht vom Typ "folder"?

        1 Reply Last reply Reply Quote 2
        • haus-automatisierung
          haus-automatisierung Developer Most Active @docadams last edited by haus-automatisierung

          @docadams sagte in Kann keine eigenen Datenpunkte erstellen:

          Nun muss ich feststellen, dass ich in den früher fehlerhaft erstellten eigenen Unterordnern gar nichts Neues erstellen kann.

          Das sind wahrscheinlich ja auch keine "Ordner", sondern ebenfalls Objekte vom Typ "state" (Zustand). Der Admin lässt das in den aktuellen Versionen nur nicht mehr zu. Technisch ist das nach wie vor möglich diese so anzulegen.

          Objekte "enthalten" technisch keine andere Objekte (wie Ordner), sondern stehen alle für sich. Die Ebenen dazwischen muss es gar nicht geben. Wenn man per Hand eine Struktur anlegt, empfiehlt es sich natürlich immer Objekte vom Typ "Folder" (Verzeichnis) anzulegen und darunter dann Objekte vom Typ State.

          docadams 1 Reply Last reply Reply Quote 1
          • docadams
            docadams @haus-automatisierung last edited by

            @haus-automatisierung

            Stimmt, das sind alles Type "state"

            {
              "datenpunkte.0.Corona.7T-gestern-Dresden": {
                "_id": "datenpunkte.0.Corona.7T-gestern-Dresden",
                "type": "state",
                "common": {
                  "name": "7T-gestern-Dresden",
                  "role": "",
                  "type": "number",
                  "desc": "Manuell erzeugt",
                  "read": true,
                  "write": true,
                  "custom": {
                    "history.0": {
                      "enabled": true,
                      "changesOnly": true,
                      "debounce": "1000",
                      "maxLength": "960",
                      "retention": "31536000",
                      "changesRelogInterval": 0,
                      "changesMinDelta": 0,
                      "aliasId": ""
                    }
                  }
                },
                "native": {},
                "from": "system.adapter.admin.0",
                "user": "system.user.admin",
                "ts": 1615469558264,
                "acl": {
                  "object": 1636,
                  "owner": "system.user.admin",
                  "ownerGroup": "system.group.administrator",
                  "state": 1636
                }
              },
              "datenpunkte.0.Corona.7T-gestern-Leipzig": {
                "_id": "datenpunkte.0.Corona.7T-gestern-Leipzig",
                "type": "state",
                "common": {
                  "name": "7T-gestern-Leipzig",
                  "role": "",
                  "type": "number",
            ...
            

            Würde es genügen,die Zeichenkette

            "type": "state",
            

            durch

            "type": "folder",
            

            zu ersetzen?
            allerdings taucht hier in Zeile 33 (und dann weiteren) noch

                 "state": 1636
            

            auf. Was mache ich damit?

            haus-automatisierung 1 Reply Last reply Reply Quote 0
            • haus-automatisierung
              haus-automatisierung Developer Most Active @docadams last edited by

              @docadams Kannst ja mal testen was mit dem State passiert wenn das Objekt plötzlich nicht mehr vom Typ State ist (weiß nicht ob da automatisch aufgeräumt wird).

              Zu ACL habe ich hier etwas zusammengeschrieben: https://iobroker.readthedocs.io/de/latest/basics/acl.html

              Aber ich würde die kompletten Objekte löschen (dann ist auch der State weg) und als Folder neu anlegen. Also nicht per Hand in der Objektdefinktion rumspielen.

              docadams 1 Reply Last reply Reply Quote 1
              • docadams
                docadams @haus-automatisierung last edited by

                @haus-automatisierung
                Jeps, das wird´s wohl sein.

                ich habe noch mal den Ordner "Corona", gelöscht,
                danach händisch neu erstellt und dann die json-Datei praktisch reinimportiert.

                Und nun kann ich darin weiter Punkte erstellen usw.

                Bin ich froh, Danke. Ich mache das heute Nachmittag für alle Ordner und dann denke ich, dass ich das als geklärt markieren kann 😊

                1 Reply Last reply Reply Quote 0
                • Homoran
                  Homoran Global Moderator Administrators @docadams last edited by

                  @docadams sagte in Kann keine eigenen Datenpunkte erstellen:

                  kann sogar sein, dass es diesen Haupt-Ordner damals noch nicht automatisch gab, ich weiß es nicht), sondern in einem eigenen Haupt-Ordner "datenpunkte".

                  geht mir aktuell genau so.
                  Habe aus der vor-userdata Zeit eigene Strukturen.
                  Damals gab es nur

                  • device
                    • channel
                      • state

                  w8bei sogar channels in Channels liegen konnten.

                  Hab gestern auch lange überlegt ob ich hier einen Thread aufmachen soll, und mich dann doch getrautüber die Objektdaten umzustellen.

                  Oberste Ebene (Messwerte.0) -> meta
                  alle Strukturen darunter in folder umbenannt
                  States bleiben States

                  Ob das jetzt korrekt ist weiss ich nicht, aber es funktioniert.

                  Nur einen komplett neuen Namespace (Dummfug.0) habe ich manuell nicht mehr anlegen können.

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @Homoran last edited by paul53

                    @homoran sagte: Ob das jetzt korrekt ist weiss ich nicht

                    Ist es.
                    Korrekt wäre auch z.B. "folder.folder.device.channel.state", um weitere Datenpunkte manuell erstellen zu können.

                    @homoran sagte in Kann keine eigenen Datenpunkte erstellen:

                    Nur einen komplett neuen Namespace (Dummfug.0) habe ich manuell nicht mehr anlegen können.

                    Das war wohl der Sinn bei der Einführung von "0_userdata.0".

                    @homoran sagte in Kann keine eigenen Datenpunkte erstellen:

                    Oberste Ebene (Messwerte.0) -> meta

                    War das schon ein Objekt (mit anderem Typ)? Oder hast du dich an Javascript (setObject) ran getraut?

                    Homoran 1 Reply Last reply Reply Quote 0
                    • docadams
                      docadams last edited by

                      Wollte mich nur kurz melden.
                      Bis jetzt scheint es zu laufen.

                      Da in der alten Version, mit der ich zZ. noch unterwegs bin, leider noch keine Zustandswerte exportiert werden können, ist nochmals Bienchenarbeit notwendig.
                      Das ist schön, dass dies in der neuen Version möglich ist.

                      1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @paul53 last edited by

                        @paul53 sagte in Kann keine eigenen Datenpunkte erstellen:

                        Oder hast du dich an Javascript (setObject) ran getraut?

                        nein!

                        @paul53 sagte in Kann keine eigenen Datenpunkte erstellen:

                        War das schon ein Objekt (mit anderem Typ)?

                        ja: "device"
                        zur Klarstellung: das bezieht sich nicht auf die alleroberste Ebene "Messwerte", sondern auf ".0"

                        mcm1957 1 Reply Last reply Reply Quote 0
                        • mcm1957
                          mcm1957 @Homoran last edited by

                          Also die Struktur sollte so aussehen:

                          • device.channel.state
                          • device[.folder.[folder...].channel[.folder[.folder...].state
                          • device[.folder[.folder...].state
                          • folder[.folder...].state

                          Unterhalb von channel sollte kein device mehr kommen
                          Folder können beliebig dazwischen sein.
                          Auch Strukturen die nur folder aufweisen sind voll ok
                          Falls mal kein State am Ende exstiert ist das auch ok (z.B weil ein Adapter eine Struktur aufbaut aber (noch) kein Gerät verbunden ist dass da was als state ablegen will.

                          Grund für diese Struktur ist dass sich VISsen damit leichter tun zu erkennen um was es geht.

                          Was NICHT erlaubt ist und unbedingt vermieden werden sollte sind States die Kinder haben. (Sorry für diese Geburtenkontrolle). Diese Situation gibt es zwar in seltenen Fällen (technisch und oder historisch bedingt) sollte aber bei Neuen Adapterns bzw im Userbereich unbedingt vermieden werden. Dies ist jedenfalls als Ausnahme zu sehen. Und dies kann auch in zukünftigen Versionen zu Warnings / Fehlern führen.

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

                          Support us

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

                          789
                          Online

                          31.9k
                          Users

                          80.3k
                          Topics

                          1.3m
                          Posts

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