Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. js-controller 2.0 ab sofort im Latest Repo

NEWS

  • Wartung am 15.11. – Forum ab 22:00 Uhr nicht erreichbar
    BluefoxB
    Bluefox
    12
    2
    271

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

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

js-controller 2.0 ab sofort im Latest Repo

js-controller 2.0 ab sofort im Latest Repo

Scheduled Pinned Locked Moved ioBroker Allgemein
js-controller
1.1k Posts 89 Posters 352.5k Views 64 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • apollon77A apollon77

    FAQ


    In diesem Post werden wir FAQ-artig öfter vorgekommene Fragen, Antworten, Tips und Tricks sammeln ...

    1. TL;DR ... bzw ok, jetzt mal zusammengefasst, der Text oben ist ja mega lang ...

    • Nodejs 8.x ist Mindest-Anforderung! Nodejs 10.x empfohlen
    • Dateien die selbst in iobroker-data/files in eigene Verzeichnisse kopiert wurden, werden ggf nicht mehr gefunden. Bitte an offizielle Stellen hochladen, am besten per Vis Uploader o.ä. Der neue Platz für eigene Dateien ist 0_userdata.0, wenn man nicht vis.0 oder iqontrol.meta nutzen will. Falls Dateien in erlaubten Verzeichnissen reinkopiert wurden, so sollten diese nach der Installation (oder alternativ nach iobroker file sync) verfügbar sein.
    • Es sollte nach dem Update alles so tun wie vorher
    • Bei Master/Slave-Systemen UNBEDINGT zuerst die Slaves und am Ende den Master aktualisieren
    • Wer ab sofort auch Objekte und Dateien im Redis ablegen will muss sich mit den Anforderungen daran befassen!
    • iobroker upgrade self nutzen , es sei denn es wurde mit dem neuen Windows Installer installiert, dann oben doch genauer lesen.

    2. Ich bekomme nach dem Start von ioBroker einen Fehler im Log das pids.txt nicht geschrieben werden konnte. Was kann ich tun?
    Der Fehler tritt auf wenn der Nutzer unter dem ioBroker gestartet wurde das genannte File nicht schreiben kann. Dies kann passieren wenn ioBroker aus Versehen als Root o.ä. gestartet wurde oder die Dateirechte dieser Datei verbogen sind. Die einfachste Abhilfe hier ist der Installation-Fixer (siehe oben im Text). Alternativ Bitte die Datei einfach löschen wenn ioBroker nicht läuft und dann sollte Sie beim nächsten Start korrekt angelegt werden.

    3. Es ist irgendwie alles kaputt/ein wichtiger Adapter tut nicht. Wie komme ich wieder zurück auf die alte Version?
    Zuerst einmal bitte alle Informationen sichern, im Forum posten bzw GitHub Issues anlegen, damit die Probleme behoben werden können. Die Version 2.0 ist die Basis der Zukunft und die 1.5 wird nicht mehr weiterentwickelt!

    Zurück geht es mit diesen Schritten:

    • ioBroker stoppen
    • Falls Objects auf redis umgestellt wurden muss dies in jedem Fall zuerst rückgängig gemacht werden! iobroker setup custom und wieder umstellen auf die Alte Konfiguration. States im Redis funktionieren auch mit der 1.5
    • Zur Sicherheit das iobroker-data Verzeichnis sichern bzw ein Backup ausführen
    • Dann im ioBroker Verzeichnis npm install iobroker.js-controller@1.5.14 ausführen. Falls es dabei auf Linux zu Fehlern kommt und nicht funktioniert bitte sudo -u iobroker -H npm install iobroker.js-controller@1.5.14 nutzen.
    • ioBroker starten

    4. Ich habe trotz der Warnungen bei iobroker setup custom auf einem Slave auch Daten migriert und nun funktioniert nichts mehr. Was kann ich tun?
    Bei der Migration wird ein Backup erstellt. Dieses ist auf dem Master-Host im backups Verzeichnis gespeichert und hat am Ende des Namens "-migration" angehängt. Um den Datenstand von der Master-Migration wieder herzustellen muss dieses Backup mittels iobroker restore <Filename> wieder eingespielt werden.
    Danach alle Slave-Hosts umstellen und am Ende auf dem Master ein iobroker upload all ausführen.

    5. Ich habe Dateien in ein eigenes Verzeichnis in iobroker-data/files kopiert und jetzt werden diese nicht mehr angezeigt. Was kann ich tun?
    Aus Sicherheitsgründen wird der ioBroker-eigene Storage jetzt etwas strikter behandelt. Nur offiziell in ioBroker bekannte Verzeichnisse dürfen genutzt werden und nur offizielle Wege die Datei hochzuladen. Am besten die Upload-Tools nutzen von Adaptern wie vis oder iqontrol. Alternativ gibt es CLI Kommandos.
    Der neue Platz für ganz eigene Verzeichnisse ist dann 0_userdata.0 als Basisverzeichnis. Zum einmaligen hinzufügen eigener Dateien von früher - falls dies bei der Installation nicht funktioniert hat, ist da neue CLI Kommando niobroker file sync da. Es gibt auch Fehler für komplett eigene Verzeichnisse aus, sodass man weiss was man tun muss.

    6. Wie muss ich ein Skript was bisher in iobroker-data/files direkt geschrieben hat umbauen? Wie kann ich Dateien per JavaScript hochladen?
    Das Skript sollte die writeFile Methode nutzen. Details auch https://forum.iobroker.net/post/307537 bzw https://forum.iobroker.net/post/310177

    7. Broadlink2 funktioniert nicht mehr. Was kann ich tun?
    Der Entwickler arbeitet an einem Update. Aktuell kann manuell durch eine Änderung die Funktion wiederhergestellt werden:
    Im ioBroker-Verzeichnis in node_modules/@frankjoke/myAdapter ODER node_modules/iobroker.broadlink2/node_modules/@frankjoke/myAdapter liegt das File myAdapter.js. Dieses muss durch diese Version ( myAdapter.js ersetzt werden.

    8. Ich nutze die GitHub-Version von Radar2 und die tut nicht mehr. Was kann ich tun?
    Exakt das gleiche wie bei Broadlink im Artikel oben drüber.

    9. Uups, ich habe meinen Master zuerst aktualisiert, und jetzt können die Slaves nicht mehr verbinden. Was nun?
    Alles halb so wild, die Slaves müssen jetzt nur leicht anders aktualisiert werden:

    • ioBroker stoppen, Backup machen
    • Prüfen das keine Prozesse mehr laufen (ps auxww|grep io und ps auxww|grep backup)
    • im ioBroker Verzeichnis npm install iobroker.js-controller ausführen. Falls es dabei auf Linux zu Fehlern kommt und nicht funktioniert bitte sudo -u iobroker -H npm install iobroker.js-controller nutzen.
    • starten

    10. Ich sehe nach dem Update im Log "Redis error:Error: Invalid Chunk: parse failed". Was muss ich tun.
    Wenn diese Meldung kommt waren vor dem Update von 1.5 auf 2.0 entweder nicht alle Adapter beendet und einer läuft noch, oder es wurde der Master zuerst aktualisiert und es existiert noch ein Slave auf 1.5. Es kann auch ein "iobroker backup" Prozess noch laufen und hängen geblieben sein.

    Falls es ein Adapter oder Backup ist diesen bitte manuell killen, damit sollten die Meldungen verschwinden. Ist es der Slave, siehe FAQ Punkt 9.

    12 Ich habe mit eigene Objekte angelegt und diese kann ich jetzt nicht mehr schalten
    Dies kann passieren wenn die Objektnamen zu stark von den erlaubten Zeichen abweichen. Das erste Zeichen muss a-z, A-Z, 0-9 oder _ sein. Die semantische Struktur ist danach wie bei den Adapter-States mit einem Punkt, einer Zahl, einem Punkt und dann eigenen Bezeichnungen und Strukturen. Beispiel: MeineObjekte.0.Büro.Licht
    Für eigene Objekte und States existiert ab sofort 0_userdata.0 als Basis-Ordner. So muss niemand mehr kreativ eigene Strukturen anlegen.
    Wer eigene Objektstrukturen bereits hat und damit mit keinem Adapter kollidiert kann diese natürlich weiterverwenden!

    joergeliJ Online
    joergeliJ Online
    joergeli
    wrote on last edited by
    #341

    @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

    apollon77A 1 Reply Last reply
    0
    • joergeliJ joergeli

      @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

      apollon77A Offline
      apollon77A Offline
      apollon77
      wrote on last edited by
      #342

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

      Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

      • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
      • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
      joergeliJ SBorgS 2 Replies Last reply
      0
      • apollon77A apollon77

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

        joergeliJ Online
        joergeliJ Online
        joergeli
        wrote on last edited by
        #343

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

        Danke
        Jörg

        ChaotC 1 Reply Last reply
        0
        • MathiasJM Offline
          MathiasJM Offline
          MathiasJ
          wrote on last edited by
          #344

          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.

          IObroker auf dem NUC als VM.
          Da ich noch keine Aktoren habe, wird momentan via Radar nur der AB der Fritzbox ein- und ausgeschaltet.
          Welches Smarthome-System es letztendlich wird, weiß ich noch nicht. Vielleicht kommen auch nur Zigbee-Geräte ins Haus.

          apollon77A AlCalzoneA 2 Replies Last reply
          0
          • joergeliJ joergeli

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

            Danke
            Jörg

            ChaotC Offline
            ChaotC Offline
            Chaot
            wrote on last edited by
            #345

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

            ioBroker auf NUC unter Proxmox; VIS: 12" Touchscreen und 17" Touch; Lichtsteuerung, Thermometer und Sensoren: Tasmota (39); Ambiente Beleuchtung: WLED (9); Heizung: DECT Thermostate (9) an Fritz 6690; EMS-ESP; 1 Echo V2; 3 Echo DOT; 1 Echo Connect; 2 Echo Show 5; Unifi Ap-Ac Lite.

            apollon77A joergeliJ 2 Replies Last reply
            0
            • MathiasJM MathiasJ

              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.

              apollon77A Offline
              apollon77A Offline
              apollon77
              wrote on last edited by
              #346

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

              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
              MathiasJM 2 Replies Last reply
              0
              • ChaotC Chaot

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

                apollon77A Offline
                apollon77A Offline
                apollon77
                wrote on last edited by
                #347

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

                Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                ChaotC 1 Reply Last reply
                0
                • apollon77A apollon77

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

                  ChaotC Offline
                  ChaotC Offline
                  Chaot
                  wrote on last edited by
                  #348

                  @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. 😕

                  ioBroker auf NUC unter Proxmox; VIS: 12" Touchscreen und 17" Touch; Lichtsteuerung, Thermometer und Sensoren: Tasmota (39); Ambiente Beleuchtung: WLED (9); Heizung: DECT Thermostate (9) an Fritz 6690; EMS-ESP; 1 Echo V2; 3 Echo DOT; 1 Echo Connect; 2 Echo Show 5; Unifi Ap-Ac Lite.

                  apollon77A 1 Reply Last reply
                  0
                  • ChaotC Chaot

                    @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. 😕

                    apollon77A Offline
                    apollon77A Offline
                    apollon77
                    wrote on last edited by
                    #349

                    @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

                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                    1 Reply Last reply
                    0
                    • MathiasJM MathiasJ

                      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.

                      AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      wrote on last edited by
                      #350

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

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      1 Reply Last reply
                      0
                      • apollon77A apollon77

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

                        SBorgS Offline
                        SBorgS Offline
                        SBorg
                        Forum Testing Most Active
                        wrote on last edited by SBorg
                        #351

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

                        LG SBorg ( SBorg auf GitHub)
                        Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                        joergeliJ 1 Reply Last reply
                        0
                        • coyoteC Offline
                          coyoteC Offline
                          coyote
                          Most Active
                          wrote on last edited by
                          #352

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

                          apollon77A 1 Reply Last reply
                          0
                          • coyoteC coyote

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

                            apollon77A Offline
                            apollon77A Offline
                            apollon77
                            wrote on last edited by
                            #353

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

                            Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                            • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                            • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                            coyoteC 1 Reply Last reply
                            0
                            • apollon77A apollon77

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

                              coyoteC Offline
                              coyoteC Offline
                              coyote
                              Most Active
                              wrote on last edited by coyote
                              #354

                              @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
                              0
                              • SBorgS 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.

                                joergeliJ Online
                                joergeliJ Online
                                joergeli
                                wrote on last edited by
                                #355

                                @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

                                apollon77A 1 Reply Last reply
                                0
                                • ChaotC Chaot

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

                                  joergeliJ Online
                                  joergeliJ Online
                                  joergeli
                                  wrote on last edited by
                                  #356

                                  @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

                                  apollon77A 1 Reply Last reply
                                  1
                                  • joergeliJ joergeli

                                    @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

                                    apollon77A Offline
                                    apollon77A Offline
                                    apollon77
                                    wrote on last edited by
                                    #357

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

                                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                    joergeliJ 1 Reply Last reply
                                    0
                                    • joergeliJ joergeli

                                      @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

                                      apollon77A Offline
                                      apollon77A Offline
                                      apollon77
                                      wrote on last edited by
                                      #358

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

                                      Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                      • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                      • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                      joergeliJ 1 Reply Last reply
                                      0
                                      • apollon77A apollon77

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

                                        joergeliJ Online
                                        joergeliJ Online
                                        joergeli
                                        wrote on last edited by
                                        #359

                                        @apollon77
                                        Nee, nee, ich habe mich oben nicht korrekt ausgedrückt, hatte natürlich nach /vis/ (also mit den Slashes) suchen und durch /vis.0/ ersetzen lassen

                                        1 Reply Last reply
                                        0
                                        • apollon77A apollon77

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

                                          joergeliJ Online
                                          joergeliJ Online
                                          joergeli
                                          wrote on last edited by
                                          #360

                                          @apollon77
                                          OK, nehme ich wieder raus, hatte das nur gemacht, weil Chaot meinte, daß das Bild evtl. noch nicht auf der Platte liegen könnte, wenn das File schon geschrieben wird.

                                          ChaotC 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

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

                                          170

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe