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.0 ab sofort im Latest Repo

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    js-controller 2.0 ab sofort im Latest Repo

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

      @simatec
      Danke. Werde ich mal einrichten (wenn mir das NAS Passwort wieder einfällt) 😧

      1 Reply Last reply Reply Quote 0
      • P
        PrinzEisenherz1 last edited by PrinzEisenherz1

        Bei mir läuft die 2.0.34 auch unauffällig. Ging ohne Probleme als normaler Nutzer mit iobroker upgrade self abzudaten (Multihostsystem und REDIS).

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

          @apollon77
          Hi,
          Du hattest bei den FAQs geschrieben:

          "Aus Sicherheitsgründen wird der ioBroker-eigene Storage jetzt etwas strickter behandelt. Nut offiziell in ioBroker bekannte Verzeichnisse dürfen genutzt werden und nur offizielle Wege die Datei rein zu kopieren. Am besten die Upload-Tools nutzen von Adaptern wie vis oder iqontrol. ALternativ gibt es CLI kommandos."
          So weit, so gut, ich habe meine eigenen Bilder mit dem Upload-Tool vom vis-Adapter hochladen können.

          Allerdings muss ich noch die neuen Links in meinen Views anpassen.
          Kann man das evtl. in "einem Rutsch" erledigen, ohne jedes Bild/Grafik mit dem vis-Editor einzeln anzufassen?
          Vielleicht automatisch z.B. mit Notepad++ in den vis-views.json von jedem view den jetzigen Pfad "src": "/vis durch den neuen Pfad "src": "/vis.0 ersetzen lassen?

          Allerdings habe ich ein größeres Problem mit der strickteren Behandlung:
          Ich habe bisher 2 Snapshots von meiner Eingangs-Cam (Postbote hat Post eingeworfen, Jemand hat an der Haustür geklingelt) von einem Windows-Rechner automatisch in einen freigegebenen Ordner auf den ioBroker-Raspi gespeichert.
          Via JS wurden diese beiden Bilder dann per exec in einen anderen Ordner unterhalb von iobroker-data\files\vis...kopiert:

          exec('bash /home/pi/klingelbild_kopieren.sh');
          exec('bash /home/pi/postbotebild_kopieren.sh');
          

          Hier die beiden Shell-Kopier-Befehle:

          cp /home/pi/SPY/eingang.jpg /opt/iobroker/iobroker-data/files/vis.0/klingelbild/klingler.jpg
          cp /home/pi/SPY/eingang.jpg /opt/iobroker/iobroker-data/files/vis.0/klingelbild/postistda.jpg
          

          Im vis konnte ich die Bilder dann auch sehen.

          Das Kopieren in die neuen Ordner unterhalb von vis.0 funktioniert zwar weiterhin, aber im vis werden die Bilder nicht mehr aktualisiert, da jetzt ja "nur offizielle Wege die Datei rein zu kopieren" funktionieren.

          Frage:
          Was kann ich tun, damit die Bilder wieder automatisiert kopiert und angezeigt werden?
          Gibt es irgendeinen JS-Befehl, der das evtl. wieder richten kann?

          Gruß
          Jörg

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

            @joergeli zu 1.) ja das kann gehen. ioBroker beenden. File auf Platte manuell editieren, wieder hochfahren. Vorher Backup ist eine gute Idee,

            zu 2.) Liess mal die FAQ im dritten post oben, da ist ein Link zu einem anderen Thread mit genau der Lösung dafür. Musst DU nur auf dich "umbasteln"

            joergeli SBorg 2 Replies Last reply Reply Quote 0
            • joergeli
              joergeli @apollon77 last edited by

              @apollon77
              Prima, das mit dem writeFile werde ich mal testen.

              Danke
              Jörg

              Chaot 1 Reply Last reply Reply Quote 0
              • MathiasJ
                MathiasJ last edited by

                Was mir auch aufgefallen ist,
                nach dem Update auf den JS-Controller 2.0 habe ich wesentlich mehr Störungen des Slaves.
                Ich glaube, den muß ich mittlerweile jetzt 3 mal am Tag neu starten, weil er nicht mehr erreichbar ist.
                In der Version 1.x ist er wochenlang durchgerannt.
                nur im log finde ich nur die Meldung, dass der Raspberry Pi 3B+ nicht mehr erreichbar ist. Das merke ich auch so.....
                Der Slave läuft seit ca 6 Monaten über WLAN.

                apollon77 AlCalzone 2 Replies Last reply Reply Quote 0
                • Chaot
                  Chaot @joergeli last edited by

                  @joergeli Kleiner Tip noch: Für das writeFile musst du ein kleines Delay einbauen weil sonst das Bild noch nicht auf der Platte liegt wenn das File schon geschrieben wird.

                  apollon77 joergeli 2 Replies Last reply Reply Quote 0
                  • apollon77
                    apollon77 @MathiasJ last edited by

                    @MathiasJ bist Du auf 2.0.33 oder 34? Wenn nicht updaten! Dann bitte neu beobachten.

                    Und bitte log vom Slave von so einem Zeitpunkt wenn er stehenbleibt.

                    MathiasJ 2 Replies Last reply Reply Quote 0
                    • apollon77
                      apollon77 @Chaot last edited by

                      @Chaot naja ihr müsst abwarten bis das exec durch ist. Hat das vllt nen callback der erst dann ausgeführt wird? Hab’s grad nicht im Kopf.

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

                        @apollon77
                        Ja, das habe ich auch gemerkt.
                        Ich habe normalerweise nach dem exec ein kleines Delay bevor ich die Bilder per mail versende. Aber ich habe mich wohl um zwei Zeilen vertan und deshalb kam es zu dem Fehler. 😕

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

                          @Chaot Jupp exec hat nen callback ... https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#exec---execute-some-os-command-like-cp-file1-file2

                          1 Reply Last reply Reply Quote 0
                          • AlCalzone
                            AlCalzone Developer @MathiasJ last edited by

                            @MathiasJ sagte in js-controller 2.0 ab sofort im Latest Repo:

                            Ich glaube, den muß ich mittlerweile jetzt 3 mal am Tag neu starten, weil er nicht mehr erreichbar ist.

                            Das ist aber nicht der Slave, von dem du kürzlich den Log gepostet hast, in dem steht dass die Platte voll ist? Dann ist es kein Wunder, dass der ständig abstürzt.

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

                              @apollon77 sagte in js-controller 2.0 ab sofort im Latest Repo:

                              @joergeli zu 1.) ja das kann gehen. ioBroker beenden. File auf Platte manuell editieren, wieder hochfahren. Vorher Backup ist eine gute Idee,

                              ...oder Views exportieren, mit Notepad++ oä. dann "suchen+ersetzen", View wieder importieren 🙂

                              34 lüppt bisher problemlos.

                              joergeli 1 Reply Last reply Reply Quote 0
                              • coyote
                                coyote Most Active last edited by

                                @apollon77
                                34er installiert, sieht soweit gut aus. Paar Adapter blieben rot, von Hand neu gestartet ohne Error. Laufen jetzt alle.
                                Jetzt ist mir noch was aufgefallen, weiß aber nicht ob es mit dem Controller zu tun hat.

                                vis.JPG

                                Die Icons sind weg, jetzt hab ich alle vis Zusatz Adapter neu geuploaded, danach waren alle Icons wieder da. Dann nochmal vis Adpater upload gemacht, Icons wieder weg 🤔

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

                                  @coyote Was für ein System hast Du ? redis/redis/ oder Objekte noch in "file"? sollte an sich so nicht passieren.

                                  Von den Adaptern die "rot" geblieben sind ... gabs was im Log?

                                  coyote 1 Reply Last reply Reply Quote 0
                                  • coyote
                                    coyote Most Active @apollon77 last edited by coyote

                                    @apollon77 redis/redis

                                    Nee, hab im Log nix gesehen. Vorhin aber nochmal komplett durchgestartet, alle Adapter grün ohne Probleme. Hatte nur nochmal paar warn Meldungen, dass Redis busy ist. Hat sich aber alles gefangen 👍

                                    EDIT: Log gerade nochmal etwas durchforstet, schätze manche Adapter blieben rot, wegen den Redis busy Warnings.
                                    Aber wie gesagt, beim zweiten Anlauf kamen zwar auch Redis Busy Warnings, jedoch alles Adapter ok.

                                    1 Reply Last reply Reply Quote 0
                                    • joergeli
                                      joergeli @SBorg last edited by

                                      @SBorg @apollon77
                                      Hat funktioniert 👍
                                      Views exportiert, entzippt, mit Notepad ++ dann in der entspr. vis-views.json alle "vis" durch "vis.0" ersetzt.
                                      ( Es wurden ca. 3500 "vis" ersetzt )

                                      Danke
                                      Jörg

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

                                        @apollon77 @Chaot
                                        Danke für den Tip.
                                        Es funktioniert jetzt (mit meinem JavaScript-Halbwissen) bei mir so:

                                        
                                        //==================================== 
                                        // Cam-Bild(er) nach iobroker kopieren
                                        //==================================== 
                                        
                                        var fs = require('fs'); 
                                        
                                        const klingel = 'Datenpunkte.0.Türklingel.Klingel-Zeit';    // Datenpunkt-ID von Klingel
                                        const postda  = 'hm-rega.0.15463';                          // Datenpunkt-ID "Post ist da"
                                        
                                        // Pruefen, ob jemand klingelt
                                        on({id: klingel, change: "ne"},function(obj) {
                                            log ('___ Haustürklingel wurde betätigt ___');
                                            klingeling() ;
                                        });
                                        
                                        // Pruefen, ob Post da ist
                                        on({id: postda, change: 'gt'},function(obj) {
                                            log ('___ Post ist da ___');
                                            postistda() ;
                                        });
                                        
                                        // Cam-Bild von /home/pi/SPY/eingang.jpg
                                        // nach /opt/iobroker/iobroker-data/files/vis.0/klingelbild/klingler.jpg kopieren
                                        //_______________________________________________________________________________
                                        function klingeling() {
                                            const picture= fs.readFileSync('/home/pi/SPY/eingang.jpg'); //liest Cam-Bild aus linux-datei-system
                                            setTimeout(function(){
                                                writeFile('vis.0','/klingelbild/klingler.jpg', picture, function (error) { });
                                                //log ('__ Klingel-Bild wurde kopiert __');
                                            }, 500);
                                        }
                                        
                                        // Cam-Bild von /home/pi/SPY/eingang.jpg
                                        // nach /opt/iobroker/iobroker-data/files/vis.0/klingelbild/postistda.jpg kopieren
                                        //_______________________________________________________________________________
                                        function postistda() {
                                            const picture= fs.readFileSync('/home/pi/SPY/eingang.jpg'); //liest Cam-Bild aus linux-datei-system
                                            setTimeout(function(){
                                                writeFile('vis.0','/klingelbild/postistda.jpg', picture, function (error) { });
                                                //log ('__ Post-Bild wurde kopiert __');
                                            }, 500);
                                        }
                                        

                                        Gruß und Danke
                                        Jörg

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

                                          @joergeli ich hoffe du hattest kein vis.0 vorher drin dann wäre das jetzt vis.0.0 😉

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

                                            @joergeli Also nach readFileSync und writeFile ist normalerweise keinerlei Timeout oder Verzögerung nötig. AUch nicht wenn du exec mit dem Callback nutzt ...

                                            joergeli 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

                                            557
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            js-controller
                                            89
                                            1052
                                            260106
                                            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