Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. js-controller 2 jetzt für alle im Stable

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    js-controller 2 jetzt für alle im Stable

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

      @paul53 sagte in js-controller 2 jetzt für alle im Stable:

      Wozu der Aufwand ?

      Mit deiner Frage stellst Du die komplette Idee des Alias in Frage ...

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

        @BBTown sagte:

        Mit deiner Frage stellst Du die komplette Idee des Alias in Frage ...

        Nein, ich finde die Idee des Alias sehr nützlich: Bei Adapter-Datenpunkten, deren ID-Struktur nicht einheitlich ist bzw. sich beim Geräteaustausch verändern kann. Eigenen Datenpunkten verpasst man gleich ein sinnvolle ID-Struktur, die optimalerweise so aussieht wie die unter alias.0.

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

          @paul53 JETZT habe ich deinen Ansatz verstanden ... wieso sollte sich ein eigener Datenpunkt verändern?! .... ja, war ne ziemlich blöde Idee von mir 🤦‍♂️ 😎

          1 Reply Last reply Reply Quote 0
          • crunchip
            crunchip Forum Testing Most Active @paul53 last edited by crunchip

            @paul53 ich blick da langsam nimmer durch. was hat es dann mit dieser Option auf sich?
            abe541ef-8a43-4775-881e-dbe69007116a-image.png
            Durch die enormen Veränderungen, die mehr oder weniger alle auf einmal kamen, wie

            • Adapter devices.0
            • alias.0
            • 0_userdata.0
              komm ich da leider nicht mehr ganz mit,
              wie, was angelegt wird, warum und weshalb.
              Ich seh dadurch eher noch mehr Chaos bei mir im System, als das es vereinfacht werden würde
              ich glaub, ich mach nen neuen thread dazu auf.
              Denke, ich bin nicht der einzige der das nicht ganz versteht.
            paul53 1 Reply Last reply Reply Quote 1
            • paul53
              paul53 @crunchip last edited by paul53

              @crunchip sagte:

              ich glaub, ich mach nen neuen thread dazu auf.

              Das macht Sinn.

              @crunchip sagte in js-controller 2 jetzt für alle im Stable:

              Adapter devices.0

              Der Adapter soll die Erstellung von Geräten und Datenpunkten unter alias.0 ermöglichen, ist allerdings noch in einem frühen Entwicklungsstadium. Ich komme (noch) nicht damit zurecht.

              1 Reply Last reply Reply Quote 0
              • Detlev Rackow
                Detlev Rackow @apollon77 last edited by

                @apollon77 Danke für die Rückmeldung. Nach einem weiteren Update läuft 2.1.1 jetzt ohne Probleme. Im ioBroker-Log zum Zeitpunkt der ersten Installation kann ich keinerlei Fehler oder Warnmeldungen finden, es wirkt so als wäre das System normal gelaufen - nur waren die Webseiten gar nicht und die SSH-Shell nur mit langer Wartezeit erreichbar.

                Vor dem Upgrade hatte ich natürlich iobroker stop eingegeben und dabei keine Fehlermeldung bekommen.

                Wenn es nur bei mir passierte, ist das Thema erledigt. Es mag sich um ein Problem im Betriebssystem gehandelt haben. Der Raspi 3B kommt ja schnell an Grenzen.

                1 Reply Last reply Reply Quote 0
                • S
                  skokarl last edited by skokarl

                  Was gab es bei dem neuen Javascript Adapter und den Userdatenpunkten nochmal für eine Einschränkung ?
                  Man kann die nicht anlegen, oder nicht beschreiben ?

                  Versuche mit Javascript einen DP zu ändern, ( also zu füllen ) haut aber nicht hin ....

                  apollon77 1 Reply Last reply Reply Quote 0
                  • apollon77
                    apollon77 @skokarl last edited by

                    @skokarl createState geht nicht. setState geht in jedem Fall

                    bahnuhr 1 Reply Last reply Reply Quote 0
                    • bahnuhr
                      bahnuhr Forum Testing Most Active @apollon77 last edited by

                      @apollon77 sagte in js-controller 2 jetzt für alle im Stable:

                      @skokarl createState geht nicht. setState geht in jedem Fall

                      createState geht im javascript Ordner nicht mehr ?

                      Wie lege ich dann manuell Datenpunkte in dem javascript Ordner an ?

                      Bitte kurze Rückinfo.

                      apollon77 1 Reply Last reply Reply Quote 0
                      • apollon77
                        apollon77 @bahnuhr last edited by

                        @bahnuhr createState geht in 0_userdata.0 nicht!!! Im JavaScript Ordner geht alles wie immer!!

                        bahnuhr 1 Reply Last reply Reply Quote 0
                        • bahnuhr
                          bahnuhr Forum Testing Most Active @apollon77 last edited by

                          @apollon77 sagte in js-controller 2 jetzt für alle im Stable:

                          0_userdata.0

                          Danke für die Info.

                          Wenn ich das bisher richtig gelesen habe, soll aber doch der ..user.. der Bereich sein in dem man eigene Variablen ablegt.

                          Wie lege ich da denn per Script Objekte an ?

                          paul53 apollon77 2 Replies Last reply Reply Quote 0
                          • paul53
                            paul53 @bahnuhr last edited by paul53

                            @bahnuhr sagte:

                            Wie lege ich da denn per Script Objekte an ?

                            So.

                            // Datenpunkt unter 0_userdata.0 erstellen
                            const idUser = 'Muell.gelbeTonne.Abholdatum';
                            const commonUser = { // nicht benötigte Attribute auskommentieren
                                type: 'string', 
                                read: true, 
                                write: true, 
                                name: 'Abholung gelbe Tonne',
                            //    desc: 'Laufzeit Rollo', 
                                def: '22.11.2019',
                            //    min: 0,     // nur bei Zahlen
                            //    max: 30,   // nur bei Zahlen
                            //    unit: 'Tage',  // nur bei Zahlen
                            //    states: {  // nur bei Zahlen, Logikwerten
                            //        0: 'Aus',
                            //        1: 'Auto',
                            //        2: 'Ein'
                            //    },
                                role: 'text'
                            };
                            
                            function createDp(id, common) {
                                if(getObject(id)) log('Datenpunkt ' + id + ' existiert bereits !', 'warn');
                                else {
                                    var obj = {};
                                    obj.type = 'state';
                                    obj.common = common;
                                    setObject(id, obj, function (err) {
                                        if (err) log('Cannot write object: ' + err)
                                        else {
                                            var init = null;
                                            if(common.def === undefined) {
                                                if(common.type === 'number') init = 0;
                                                if(common.type === 'boolean') init = false;
                                                if(common.type === 'string') init = '';
                                            } else init = common.def;
                                            setState(id, init, true);
                                        }
                                    });
                                }
                            }
                            
                            createDp('0_userdata.0.' + idUser, commonUser);
                            
                            1 Reply Last reply Reply Quote 0
                            • bahnuhr
                              bahnuhr Forum Testing Most Active last edited by

                              Danke für die Info.

                              Ich habe ca. 700 selbst erstellte Objekte die in meinem Javascript Ordner sind.

                              Wenn ich das System neu aufsetze, dann lassen ich ein Script laufen, das per createState alle Objekte einmalig anlegt.

                              sieht dann so aus:
                              673ea9ef-26dc-4e08-a203-bdb3b04638f9-image.png

                              Dieses Script geht bis zur Zeile 693 !!

                              Wenn ich nun deinen Link nehme ist das ganze nicht mehr praktikabel.

                              Frage:
                              Wer und warum kommt auf diese sinnvolle Idee, dass create State nicht mehr geht.
                              Ist für mich derzeit nicht nachvollziehbar.

                              Dies spricht für mich (und auch die Einschränkung beim fs schreiben in ein Verzeichnis) absolut gegen das Update auf js2.0.

                              Kann natürlich auch sein, dass ich wieder einmal den Sinn dahinter nicht verstehe.

                              mfg

                              paul53 1 Reply Last reply Reply Quote 1
                              • paul53
                                paul53 @bahnuhr last edited by paul53

                                @bahnuhr sagte:

                                dass create State nicht mehr geht.

                                Wie kommst Du darauf ? Eigene Datenpunkte können weiterhin unter javascript.0 erstellt werden. 0_userdata.0 ist nur eine zusätzliche Option für eigene Datenpunkte.

                                bahnuhr 1 Reply Last reply Reply Quote 0
                                • bahnuhr
                                  bahnuhr Forum Testing Most Active @paul53 last edited by

                                  @paul53 sagte in js-controller 2 jetzt für alle im Stable:

                                  @bahnuhr sagte:

                                  dass create State nicht mehr geht.

                                  Wie kommst Du darauf ? Eigene Datenpunkte können weiterhin unter javascript.0 erstellt werden. 0_userdata.0 für eigene Datenpunkte ist nur eine zusätzliche Option.

                                  Ok, aber stand nicht irgendwo, dass ..user.. der Ordner zukünftig sein soll, der man für eigene Objekte nehmen soll.

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

                                    @bahnuhr sagte:

                                    ..user.. der Ordner zukünftig sein soll, der man für eigene Objekte nehmen soll.

                                    Nein, das ist nur ein Vorschlag für diejenigen, die mit eigenen Datenpunkten unter javscript.0 nicht zurecht kommen und ohnehin eigene Ordner erstellen würden.

                                    1 Reply Last reply Reply Quote 0
                                    • bahnuhr
                                      bahnuhr Forum Testing Most Active last edited by

                                      Im thread3 von apollon steht das aber anders:

                                      Zitat:
                                      Ja ist es. Wir möchten 0_userdata.0 gern als neuen Standardplatz forcieren und haben uns dazu entschieden.

                                      für mich klingt das so, dass ...user... der Platz ist der eigentlich genommen werden soll.

                                      Aber nochmal:
                                      Warum kann man da nicht mit create State etwas anlegen.
                                      Wenn es doch der Standard werden soll ?

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

                                        @bahnuhr sagte:

                                        Wir möchten 0_userdata.0 gern als neuen Standardplatz forcieren

                                        Das gilt für Einsteiger in ioBroker, nicht für bestehende Installationen.

                                        @bahnuhr sagte in js-controller 2 jetzt für alle im Stable:

                                        Warum kann man da nicht mit create State etwas anlegen.

                                        Ist in Planung.

                                        bahnuhr 1 Reply Last reply Reply Quote 0
                                        • bahnuhr
                                          bahnuhr Forum Testing Most Active @paul53 last edited by

                                          @paul53 sagte in js-controller 2 jetzt für alle im Stable:

                                          Ist in Planung.

                                          Danke, diese Antwort ist gut und zielführend.
                                          Stellt sich für mich nur die Frage warum man dies nicht gleich macht. Denn gerade Einsteiger brauchen doch einen einfachen Befehl.

                                          Wenn ich darf, noch ne Frage:
                                          Warum beschränkt man die fs Befehle auf den ..data.. Ordner.?
                                          Was ist, wenn man eine Datei im lokalen Netzwerk speichern möchte ?
                                          Warum geht der copy Befehl nicht mehr (Lösung ist ja read und write); aber warum beschränkt man dies?

                                          Gibt für mich (aus meiner Logik) auch keinen Sinn für diese Einschränkung.

                                          mfg
                                          Dieter

                                          apollon77 1 Reply Last reply Reply Quote 1
                                          • apollon77
                                            apollon77 @bahnuhr last edited by

                                            @bahnuhr Wie paul geschrieben hat oder nach einem kommenden JavaScript Update

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

                                            Support us

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

                                            931
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            js-controller js-controller 2
                                            74
                                            556
                                            135374
                                            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