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. Skripten / Logik
  4. SendTo-Blockly für Bilderstellung geht nicht

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.1k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    935

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

SendTo-Blockly für Bilderstellung geht nicht

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
14 Beiträge 4 Kommentatoren 385 Aufrufe 4 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.
  • M Offline
    M Offline
    MJAS
    schrieb am zuletzt editiert von MJAS
    #3

    @Thomas-Braun
    Hab ich versucht, klappt aber nicht.
    Über die Oberfläche kann ich zwar aktualisieren, iobroker sagt auch, das Update wäre erfolgreich, aber die Versionsnummern ändern sich nicht.

    Ich hab mein System unter Proxmox laufen und mit den iobroker-Skript den iobroker installiert.
    In der Konsole kann ich mit root arbeiten.
    Hier scheitert ein "iob nodejs-update" daran, dass man eben nicht mit root arbeiten soll.
    Ich hab zwar ein iobroker-Verzeichnis unter /home, kann aber nicht mit "su iobroker" in diesen User wechseln - da erhalte ich die Meldung "This account is currently not available".
    Wenn ich mit --allow-root arbeite, kommt dennoch:

    root@iobroker:/opt/iobroker# iob nodejs-update 22 --allow-root
    Valid major version
    This script must not be run as root! 
    Please use your standard user!
    root@iobroker:/opt/iobroker# 
    
    Thomas BraunT CodierknechtC 2 Antworten Letzte Antwort
    0
    • M MJAS

      @Thomas-Braun
      Hab ich versucht, klappt aber nicht.
      Über die Oberfläche kann ich zwar aktualisieren, iobroker sagt auch, das Update wäre erfolgreich, aber die Versionsnummern ändern sich nicht.

      Ich hab mein System unter Proxmox laufen und mit den iobroker-Skript den iobroker installiert.
      In der Konsole kann ich mit root arbeiten.
      Hier scheitert ein "iob nodejs-update" daran, dass man eben nicht mit root arbeiten soll.
      Ich hab zwar ein iobroker-Verzeichnis unter /home, kann aber nicht mit "su iobroker" in diesen User wechseln - da erhalte ich die Meldung "This account is currently not available".
      Wenn ich mit --allow-root arbeite, kommt dennoch:

      root@iobroker:/opt/iobroker# iob nodejs-update 22 --allow-root
      Valid major version
      This script must not be run as root! 
      Please use your standard user!
      root@iobroker:/opt/iobroker# 
      
      Thomas BraunT Online
      Thomas BraunT Online
      Thomas Braun
      Most Active
      schrieb am zuletzt editiert von
      #4

      @MJAS sagte in SendTo-Blockly für Bilderstellung geht nicht:

      Hab ich versucht, klappt aber nicht.

      Dann ist dein System nicht richtig eingerichtet.
      Per

      iob nodejs-update
      

      In der Konsole kann ich mit root arbeiten.

      und NICHT als root!!! Nie! Auch nicht 'nur' in der Konsole. Leg dir einen user an.
      Zur Not per

      iob fix
      

      Linux-Werkzeugkasten:
      https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
      NodeJS Fixer Skript:
      https://forum.iobroker.net/topic/68035/iob-node-fix-skript
      iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

      1 Antwort Letzte Antwort
      0
      • M MJAS

        @Thomas-Braun
        Hab ich versucht, klappt aber nicht.
        Über die Oberfläche kann ich zwar aktualisieren, iobroker sagt auch, das Update wäre erfolgreich, aber die Versionsnummern ändern sich nicht.

        Ich hab mein System unter Proxmox laufen und mit den iobroker-Skript den iobroker installiert.
        In der Konsole kann ich mit root arbeiten.
        Hier scheitert ein "iob nodejs-update" daran, dass man eben nicht mit root arbeiten soll.
        Ich hab zwar ein iobroker-Verzeichnis unter /home, kann aber nicht mit "su iobroker" in diesen User wechseln - da erhalte ich die Meldung "This account is currently not available".
        Wenn ich mit --allow-root arbeite, kommt dennoch:

        root@iobroker:/opt/iobroker# iob nodejs-update 22 --allow-root
        Valid major version
        This script must not be run as root! 
        Please use your standard user!
        root@iobroker:/opt/iobroker# 
        
        CodierknechtC Online
        CodierknechtC Online
        Codierknecht
        Developer Most Active
        schrieb am zuletzt editiert von
        #5

        @MJAS sagte in SendTo-Blockly für Bilderstellung geht nicht:

        Ich hab mein System unter Proxmox laufen und mit den iobroker-Skript den iobroker installiert.
        In der Konsole kann ich mit root arbeiten.

        Das Eine hat mit dem Anderen gar nix zu tun.
        Ob Proxmox oder nicht: Man arbeitet nicht als root sondern mit 'nem eigenen User.

        f78174a4-5d03-4e65-b7fc-8ee0f4c2c858-image.png

        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

        Proxmox 9.1.1 LXC|8 GB|Core i7-6700
        HmIP|ZigBee|Tasmota|Unifi
        Zabbix Certified Specialist
        Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

        Thomas BraunT 1 Antwort Letzte Antwort
        1
        • CodierknechtC Codierknecht

          @MJAS sagte in SendTo-Blockly für Bilderstellung geht nicht:

          Ich hab mein System unter Proxmox laufen und mit den iobroker-Skript den iobroker installiert.
          In der Konsole kann ich mit root arbeiten.

          Das Eine hat mit dem Anderen gar nix zu tun.
          Ob Proxmox oder nicht: Man arbeitet nicht als root sondern mit 'nem eigenen User.

          f78174a4-5d03-4e65-b7fc-8ee0f4c2c858-image.png

          Thomas BraunT Online
          Thomas BraunT Online
          Thomas Braun
          Most Active
          schrieb am zuletzt editiert von
          #6

          @Codierknecht sagte in SendTo-Blockly für Bilderstellung geht nicht:

          Man arbeitet nicht als root sondern mit 'nem eigenen User.

          ...denn dann funktioniert das auch alles (inkl. nodejs-update) wie gedacht und vorgesehen.

          Linux-Werkzeugkasten:
          https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
          NodeJS Fixer Skript:
          https://forum.iobroker.net/topic/68035/iob-node-fix-skript
          iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

          1 Antwort Letzte Antwort
          0
          • M Offline
            M Offline
            MJAS
            schrieb am zuletzt editiert von MJAS
            #7

            Also...
            Ist nun alles bereinigt, user iobroker ist aktiv und nodejs-update ist durchgelaufen, mein normaler User geht jetzt auch.
            Nun sehen die System-Daten so aus:

            Node.js:v22.21.0
            NPM:10.9.4
            _nodeCurrent:22.21.0
            _nodeNewest:22.21.1
            _nodeNewestNext:22.21.1
            _npmCurrent:10.9.4
            _npmNewest:10.9.4
            _npmNewestNext:10.9.4
            
            
            1 Antwort Letzte Antwort
            0
            • M MJAS

              Hallo zusammen,
              ich versuche, wie im Blog-Eintrag von @haus-automatisierung hier geschrieben, ein eChart-Diagramm auf Festplatte zu speichern und das ganze dann zwar nicht per Telegram, aber über Pushover zu versenden.

              Die benötigten Pakete sind alle installiert.
              Allerdings erhalte ich im sendTo-Block nicht den Block, wie er im Blog dargestellt ist:

              Screenshot_20251124_124430.png

              Ich kann zwar das Blockly importieren, aber so wie ich das Skript verstanden hab, ist der sendTo-Block ja dafür zuständig, das eCharts-Diagramm auf Platte zu speichern.
              Das funktioniert aber bei mir nicht.
              Aber den SendTo-Block wie im Blog erhalte ich nicht orginär in der Auswahl der Blockly-Elemente.
              Den erhalte ich lediglich, weil ich das Skript importiert hatte.

              Im Log steht lediglich:

              script.js.Test2: sendTo[custom] echarts.0: preset: echarts.0.Temperatur.Heizung, renderer: jpg, background: #FFFFFF, theme: light, quality: 0.8, fileOnDisk: /opt/iobroker/iobroker-data/echarts-tmp.jpg
              

              Die Datei wurde mir zuerst nicht angelegt - ich hab sie über den touch-Befehl manuell erstellt und die Rechte auf den iobroker-Nutzer geändert.
              Dateigröße bleibt aber 0 Byte.

              Mein Skript dazu schaut so aus:
              Screenshot_20251124_142127.png

              Hier meine System-Daten:

              Node.js:v20.19.5
              NPM:10.8.2
              _nodeCurrent:20.19.5
              _nodeNewest:20.19.5
              _nodeNewestNext:22.21.1
              _npmCurrent:10.8.2
              _npmNewest:10.8.2
              _npmNewestNext:10.9.4
              
              

              Danke für eure Unterstützung und Hilfe.

              haus-automatisierungH Online
              haus-automatisierungH Online
              haus-automatisierung
              Developer Most Active
              schrieb am zuletzt editiert von
              #8

              @MJAS sagte in SendTo-Blockly für Bilderstellung geht nicht:

              Allerdings erhalte ich im sendTo-Block nicht den Block, wie er im Blog dargestellt ist:

              Das ist ja der komplett generische sendTo-Block. Der kommt von keinem Adapter oder so. Da werden einfach die richtigen Parameter über das Zahnrad hinzugefügt. Habe ich im Kurs auch erklärt.

              @MJAS sagte in SendTo-Blockly für Bilderstellung geht nicht:

              Die Datei wurde mir zuerst nicht angelegt - ich hab sie über den touch-Befehl manuell erstellt und die Rechte auf den iobroker-Nutzer geändert.

              Das ist komplett unnötig. Wenn der Prozess nicht klappt, funktioniert eventuell etwas anderes nicht. Aktuell kann es folgende Probleme geben:

              • Mit Node 22 brauchst Du eCharts >= 2.0.9. Am besten gleich die aktuellste Beta nutzen (2.0.10). Installation wie immer über npm und nie über GitHub.
              • Eventuell ist auch ein Rebuild von canvas nötig:
              cd /opt/iobroker/node_modules/canvas/
              sudo -u iobroker npm install --omit=dev
              

              🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
              🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
              📚 Meine inoffizielle ioBroker Dokumentation

              1 Antwort Letzte Antwort
              0
              • haus-automatisierungH Online
                haus-automatisierungH Online
                haus-automatisierung
                Developer Most Active
                schrieb am zuletzt editiert von
                #9

                Ach und mittlerweile würde ich eher mit den Blöcken für "Temp-Pfade" arbeiten. Dann kümmert sich der Adapter auch darum, dass alles aufgeräumt wird und nie alten Daten nicht auf der Festplatte rumliegen...

                🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                📚 Meine inoffizielle ioBroker Dokumentation

                1 Antwort Letzte Antwort
                0
                • M Offline
                  M Offline
                  MJAS
                  schrieb am zuletzt editiert von
                  #10

                  Hallo Matthias,
                  danke für die Rückmeldung.
                  eCharts läuft bei mir in Version 2.0.10, bei canvas hab ich mit dem von Dir genannten Befehl ein Rebuild gemacht.
                  Die selber angelegte Datei hab ich gelöscht und dann mein Skript laufen lassen.
                  Allerdings klappt das nicht, die Datei wird nicht neu angelegt und ich erhalte im Protokoll folgende Meldungen:

                  Error: ENOENT: no such file or directory, open '/opt/iobroker/iobroker-data/echarts-tmp.jpg' at Object.openSync (node:fs:561:18) at Object.readFileSync (node:fs:445:35) at loadImage (/opt/iobroker/node_modules/pushover-notifications/lib/pushover.js:34:15) at Pushover.send (/opt/iobroker/node_modules/pushover-notifications/lib/pushover.js:206:51) at Pushover.sendNotification (/opt/iobroker/node_modules/iobroker.pushover/main.js:204:23) at Pushover.processMessage (/opt/iobroker/node_modules/iobroker.pushover/main.js:82:18) at Pushover.onMessage (/opt/iobroker/node_modules/iobroker.pushover/main.js:37:33) at Pushover.emit (node:events:519:28) at change (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/cjs/lib/adapter/adapter.js:7309:20) at Immediate.<anonymous> (file:///opt/iobroker/node_modules/@iobroker/db-states-redis/build/esm/lib/states/statesInRedisClient.js:286:37)
                  pushover.0
                  	2025-11-25 18:42:00.074	error	unhandled promise rejection: ENOENT: no such file or directory, open '/opt/iobroker/iobroker-data/echarts-tmp.jpg'
                  pushover.0
                  	2025-11-25 18:42:00.074	error	Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
                  

                  Gibt das vielleicht mehr Aufschluss, was schief läuft?

                  Danke für die Unterstützung!

                  Gruß
                  Martin

                  1 Antwort Letzte Antwort
                  0
                  • M Offline
                    M Offline
                    MJAS
                    schrieb am zuletzt editiert von
                    #11

                    Ich hab nun verstanden, was die Fehlermeldung bedeutet und @haus-automatisierung hatte ja bereits in seinem Blog die Fehlerabfangschleife mit drin, die ich dummerweise rausgeworfen hatte.

                    Mein Blockly sieht nun so aus - es wird aber dennoch kein JPG auf der Platte angelegt.
                    Im Protokoll kommt dann lediglich ein

                    script.js.Test2: timeout
                    

                    Screenshot_20251128_085753.png

                    Könnt ihr mal bitte drauf schauen, wo ich noch einen Fehler haben könnte?

                    Vielen Dank im voraus!

                    haus-automatisierungH 1 Antwort Letzte Antwort
                    0
                    • M MJAS

                      Ich hab nun verstanden, was die Fehlermeldung bedeutet und @haus-automatisierung hatte ja bereits in seinem Blog die Fehlerabfangschleife mit drin, die ich dummerweise rausgeworfen hatte.

                      Mein Blockly sieht nun so aus - es wird aber dennoch kein JPG auf der Platte angelegt.
                      Im Protokoll kommt dann lediglich ein

                      script.js.Test2: timeout
                      

                      Screenshot_20251128_085753.png

                      Könnt ihr mal bitte drauf schauen, wo ich noch einen Fehler haben könnte?

                      Vielen Dank im voraus!

                      haus-automatisierungH Online
                      haus-automatisierungH Online
                      haus-automatisierung
                      Developer Most Active
                      schrieb am zuletzt editiert von
                      #12

                      @MJAS sagte in SendTo-Blockly für Bilderstellung geht nicht:

                      Könnt ihr mal bitte drauf schauen, wo ich noch einen Fehler haben könnte?

                      Timeout heißt ja nur, dass Dein System das nicht schnell genug zurückliefert. Muss mal schauen, ob man den Timeout per Blockly aktuell übergeben kann, oder ob das immer ein Stadardwert ist.

                      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                      📚 Meine inoffizielle ioBroker Dokumentation

                      M 1 Antwort Letzte Antwort
                      0
                      • haus-automatisierungH haus-automatisierung

                        @MJAS sagte in SendTo-Blockly für Bilderstellung geht nicht:

                        Könnt ihr mal bitte drauf schauen, wo ich noch einen Fehler haben könnte?

                        Timeout heißt ja nur, dass Dein System das nicht schnell genug zurückliefert. Muss mal schauen, ob man den Timeout per Blockly aktuell übergeben kann, oder ob das immer ein Stadardwert ist.

                        M Offline
                        M Offline
                        MJAS
                        schrieb am zuletzt editiert von
                        #13

                        @haus-automatisierung Konntest Du rausfinden, ob man den Timeout in Blockly übergeben kann?

                        1 Antwort Letzte Antwort
                        0
                        • haus-automatisierungH Online
                          haus-automatisierungH Online
                          haus-automatisierung
                          Developer Most Active
                          schrieb am zuletzt editiert von
                          #14

                          So wie ich das sehe wird aktuell immer der Default von 2000 ms genutzt.

                          🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                          🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                          📚 Meine inoffizielle ioBroker Dokumentation

                          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

                          793

                          Online

                          32.6k

                          Benutzer

                          82.2k

                          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