Skip to content
  • Home
  • 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
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Gelöst: Bilder senden von einen IOB zum anderen IOB

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    770

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

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

Gelöst: Bilder senden von einen IOB zum anderen IOB

Scheduled Pinned Locked Moved Skripten / Logik
javascript
23 Posts 5 Posters 1.0k Views 5 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.
  • M michihorn

    @oliverio sagte in Bilder senden von einen IOB zum anderen IOB:

    Speichern/anzeigen/beides?

    beides

    OliverIOO Offline
    OliverIOO Offline
    OliverIO
    wrote on last edited by
    #14

    @michihorn

    ok und hast du beide methoden ausprobiert die ich oben gepostet habe?

    Meine Adapter und Widgets
    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
    Links im Profil

    1 Reply Last reply
    0
    • M Online
      M Online
      michihorn
      wrote on last edited by
      #15

      @oliverio sagte in Bilder senden von einen IOB zum anderen IOB:

      ok und hast du beide methoden ausprobiert die ich oben gepostet habe?

      Senden klappt.
      Empfangen muckt noch...

      const fs = require("fs");
      const idpic_holen ="mqtt.1.logger.gthrn.Alarm.pic_senden"
      on({ id: idpic_holen, change: "any" }, function (obj) {
       log("Hab was geholt")
      // Base64 aus State holen
      let b64 = getState(idpic_holen).val;
       
      // Falls der Wert mit "data:image/..." beginnt, Prefix entfernen
      if (b64.startsWith("data:image")) {
          b64 = b64.split(",")[1];
      }
       
      // Buffer erzeugen
      const buffer = Buffer.from(b64, "base64");
       
      // Datei speichern
      fs.writeFileSync("/opt/iobroker/iobroker-data/files/export.jpg", buffer);
       
      console.log("Bild gespeichert!")
      });
      

      Hier der LOG:

      javascript.0	18:54:00.095	info	
      Hab was geholt
      javascript.0	18:54:00.096	error	
      Error in callback: Error: Permission denied
      javascript.0	18:54:00.096	error	
          at Function.checkProtected (/opt/iobroker/node_modules/iobroker.javascript/src/lib/protectFs.ts:325:19)
      javascript.0	18:54:00.096	error	
          at ProtectFs.writeFileSync (/opt/iobroker/node_modules/iobroker.javascript/src/lib/protectFs.ts:482:23)
      javascript.0	18:54:00.096	error	
          at Object.<anonymous> (script.js.Giethoorn._dir.pic_empfangen:18:4)
      javascript.0	18:54:00.096	error	
          at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/src/lib/sandbox.ts:1772:38)
      javascript.0	18:54:00.096	error	
          at JavaScript.onStateChange (/opt/iobroker/node_modules/iobroker.javascript/src/main.ts:750:25)
      javascript.0	18:54:00.096	error	
          at JavaScript.emit (node:events:524:28)
      javascript.0	18:54:00.096	error	
          at JavaScript.emit (node:domain:489:12)
      javascript.0	18:54:00.096	error	
          at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11138:53)
      javascript.0	18:54:00.096	error	
          at processImmediate (node:internal/timers:483:21)
      
      
      OliverIOO M 2 Replies Last reply
      0
      • M michihorn

        @oliverio sagte in Bilder senden von einen IOB zum anderen IOB:

        ok und hast du beide methoden ausprobiert die ich oben gepostet habe?

        Senden klappt.
        Empfangen muckt noch...

        const fs = require("fs");
        const idpic_holen ="mqtt.1.logger.gthrn.Alarm.pic_senden"
        on({ id: idpic_holen, change: "any" }, function (obj) {
         log("Hab was geholt")
        // Base64 aus State holen
        let b64 = getState(idpic_holen).val;
         
        // Falls der Wert mit "data:image/..." beginnt, Prefix entfernen
        if (b64.startsWith("data:image")) {
            b64 = b64.split(",")[1];
        }
         
        // Buffer erzeugen
        const buffer = Buffer.from(b64, "base64");
         
        // Datei speichern
        fs.writeFileSync("/opt/iobroker/iobroker-data/files/export.jpg", buffer);
         
        console.log("Bild gespeichert!")
        });
        

        Hier der LOG:

        javascript.0	18:54:00.095	info	
        Hab was geholt
        javascript.0	18:54:00.096	error	
        Error in callback: Error: Permission denied
        javascript.0	18:54:00.096	error	
            at Function.checkProtected (/opt/iobroker/node_modules/iobroker.javascript/src/lib/protectFs.ts:325:19)
        javascript.0	18:54:00.096	error	
            at ProtectFs.writeFileSync (/opt/iobroker/node_modules/iobroker.javascript/src/lib/protectFs.ts:482:23)
        javascript.0	18:54:00.096	error	
            at Object.<anonymous> (script.js.Giethoorn._dir.pic_empfangen:18:4)
        javascript.0	18:54:00.096	error	
            at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/src/lib/sandbox.ts:1772:38)
        javascript.0	18:54:00.096	error	
            at JavaScript.onStateChange (/opt/iobroker/node_modules/iobroker.javascript/src/main.ts:750:25)
        javascript.0	18:54:00.096	error	
            at JavaScript.emit (node:events:524:28)
        javascript.0	18:54:00.096	error	
            at JavaScript.emit (node:domain:489:12)
        javascript.0	18:54:00.096	error	
            at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11138:53)
        javascript.0	18:54:00.096	error	
            at processImmediate (node:internal/timers:483:21)
        
        
        OliverIOO Offline
        OliverIOO Offline
        OliverIO
        wrote on last edited by
        #16

        @michihorn sagte in Bilder senden von einen IOB zum anderen IOB:

        fs.writeFileSync("/opt/iobroker/iobroker-data/files/export.jpg", buffer);

        verwende anstatt der zitierten Zeile die folgende

        writeFile(null, "/export.jpg", buffer, (error) => {console.log(error)});
        

        im javascript adapter ist mittlerweile ein schutz drin, das man mit fs nicht mehr ins files verzeichnis schreiben darf.
        speicherort musst mal schauen. da bin ich mir nicht so sicher wohin es schreibt. wahrscheinlich irgendwo unter /files

        Meine Adapter und Widgets
        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
        Links im Profil

        1 Reply Last reply
        0
        • M michihorn

          @oliverio sagte in Bilder senden von einen IOB zum anderen IOB:

          ok und hast du beide methoden ausprobiert die ich oben gepostet habe?

          Senden klappt.
          Empfangen muckt noch...

          const fs = require("fs");
          const idpic_holen ="mqtt.1.logger.gthrn.Alarm.pic_senden"
          on({ id: idpic_holen, change: "any" }, function (obj) {
           log("Hab was geholt")
          // Base64 aus State holen
          let b64 = getState(idpic_holen).val;
           
          // Falls der Wert mit "data:image/..." beginnt, Prefix entfernen
          if (b64.startsWith("data:image")) {
              b64 = b64.split(",")[1];
          }
           
          // Buffer erzeugen
          const buffer = Buffer.from(b64, "base64");
           
          // Datei speichern
          fs.writeFileSync("/opt/iobroker/iobroker-data/files/export.jpg", buffer);
           
          console.log("Bild gespeichert!")
          });
          

          Hier der LOG:

          javascript.0	18:54:00.095	info	
          Hab was geholt
          javascript.0	18:54:00.096	error	
          Error in callback: Error: Permission denied
          javascript.0	18:54:00.096	error	
              at Function.checkProtected (/opt/iobroker/node_modules/iobroker.javascript/src/lib/protectFs.ts:325:19)
          javascript.0	18:54:00.096	error	
              at ProtectFs.writeFileSync (/opt/iobroker/node_modules/iobroker.javascript/src/lib/protectFs.ts:482:23)
          javascript.0	18:54:00.096	error	
              at Object.<anonymous> (script.js.Giethoorn._dir.pic_empfangen:18:4)
          javascript.0	18:54:00.096	error	
              at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/src/lib/sandbox.ts:1772:38)
          javascript.0	18:54:00.096	error	
              at JavaScript.onStateChange (/opt/iobroker/node_modules/iobroker.javascript/src/main.ts:750:25)
          javascript.0	18:54:00.096	error	
              at JavaScript.emit (node:events:524:28)
          javascript.0	18:54:00.096	error	
              at JavaScript.emit (node:domain:489:12)
          javascript.0	18:54:00.096	error	
              at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11138:53)
          javascript.0	18:54:00.096	error	
              at processImmediate (node:internal/timers:483:21)
          
          
          M Online
          M Online
          michihorn
          wrote on last edited by
          #17

          @michihorn sagte in Bilder senden von einen IOB zum anderen IOB:

          Empfangen muckt noch...

          Es reicht eigentlich das ich nun das Bild per mqtt übertragen hab und dann in der VIS per Binding zeige
          data:image/jpg;base64,{mqtt.1.logger.gthrn.Alarm.pic_senden}.

          Danke für Deine Hilfe.
          Gruß
          Michael

          OliverIOO 1 Reply Last reply
          0
          • M michihorn

            @michihorn sagte in Bilder senden von einen IOB zum anderen IOB:

            Empfangen muckt noch...

            Es reicht eigentlich das ich nun das Bild per mqtt übertragen hab und dann in der VIS per Binding zeige
            data:image/jpg;base64,{mqtt.1.logger.gthrn.Alarm.pic_senden}.

            Danke für Deine Hilfe.
            Gruß
            Michael

            OliverIOO Offline
            OliverIOO Offline
            OliverIO
            wrote on last edited by
            #18

            @michihorn

            ok dann klappt es ja

            Meine Adapter und Widgets
            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
            Links im Profil

            1 Reply Last reply
            1
            • David G.D Offline
              David G.D Offline
              David G.
              wrote on last edited by
              #19

              Man könnte die Bilder natürlich auch per Mail oder Telegram senden/empfangen.

              Zeigt eure Lovelace-Visualisierung klick
              (Auch ideal um sich Anregungen zu holen)

              Meine Tabellen für eure Visualisierung klick

              M 1 Reply Last reply
              0
              • David G.D David G.

                Man könnte die Bilder natürlich auch per Mail oder Telegram senden/empfangen.

                M Online
                M Online
                michihorn
                wrote on last edited by
                #20

                @david-g sagte in Gelöst: Bilder senden von einen IOB zum anderen IOB:

                Man könnte die Bilder natürlich auch per Mail oder Telegram senden/empfangen.

                In meinem Script im Anfangspost habe ich bereits ein Script mit dem ich die Bilder per Telegram versende.
                Der Weg über Email ist viel zu aufwendig, daher ist die Lösung von OliverIO super. So habe ich die Bilder direkt ohne großen Aufwand auf der Entfernten Maschine

                1 Reply Last reply
                0
                • M michihorn

                  @martinp sagte in Bilder senden von einen IOB zum anderen IOB:

                  Cronjob hält die beiden Verzeichnisse mit rsync syncron...

                  Wie soll das aussehen?

                  MartinPM Online
                  MartinPM Online
                  MartinP
                  wrote on last edited by
                  #21

                  @michihorn sagte in Gelöst: Bilder senden von einen IOB zum anderen IOB:

                  @martinp sagte in Bilder senden von einen IOB zum anderen IOB:

                  Cronjob hält die beiden Verzeichnisse mit rsync syncron...

                  Wie soll das aussehen?

                  Auch, wenn der Thread schon auf "gelöst" steht:

                  So fische ich regelmäßig die Aufnahmen der Reolink-Kameras und schiebe sie auf eine USB-Festplatte am Linux-System, das als NAS dient.

                  Alle 4 Stunden wird Dir aber wohl nicht reichen...

                  cron-Eintrag

                  0 */4 * * * bash /home/martin/skripte/reolink.sh >/dev/null 2>&1
                  
                  sshpass -p "..........." rsync -a /home/martin/ftp/reolink/garage/*.mp4 martin@192.168.2.203:/mnt/usbdrives/intenso1/backup/Martin/reolink/recordings
                  sshpass -p "..........." rsync -a /home/martin/ftp/reolink/garage/*.jpg martin@192.168.2.203:/mnt/usbdrives/intenso1/backup/Martin/reolink/recordings
                  # four hours preserve
                  find /home/martin/ftp/reolink/garage/* -mmin +240 -exec rm {} \;
                  logger "reolink.sh finished"
                  martin@DebianTest:~/skripte$ 
                  

                  Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                  Virtualization : unprivileged lxc container (debian 13) on Proxmox 9.1.5)
                  Linux pve 6.17.9-1-pve
                  6 GByte RAM für den Container
                  Fritzbox 6591 FW 8.20 (Vodafone Leih-Box)
                  Remote-Access über Wireguard der Fritzbox

                  M 1 Reply Last reply
                  0
                  • MartinPM MartinP

                    @michihorn sagte in Gelöst: Bilder senden von einen IOB zum anderen IOB:

                    @martinp sagte in Bilder senden von einen IOB zum anderen IOB:

                    Cronjob hält die beiden Verzeichnisse mit rsync syncron...

                    Wie soll das aussehen?

                    Auch, wenn der Thread schon auf "gelöst" steht:

                    So fische ich regelmäßig die Aufnahmen der Reolink-Kameras und schiebe sie auf eine USB-Festplatte am Linux-System, das als NAS dient.

                    Alle 4 Stunden wird Dir aber wohl nicht reichen...

                    cron-Eintrag

                    0 */4 * * * bash /home/martin/skripte/reolink.sh >/dev/null 2>&1
                    
                    sshpass -p "..........." rsync -a /home/martin/ftp/reolink/garage/*.mp4 martin@192.168.2.203:/mnt/usbdrives/intenso1/backup/Martin/reolink/recordings
                    sshpass -p "..........." rsync -a /home/martin/ftp/reolink/garage/*.jpg martin@192.168.2.203:/mnt/usbdrives/intenso1/backup/Martin/reolink/recordings
                    # four hours preserve
                    find /home/martin/ftp/reolink/garage/* -mmin +240 -exec rm {} \;
                    logger "reolink.sh finished"
                    martin@DebianTest:~/skripte$ 
                    
                    M Online
                    M Online
                    michihorn
                    wrote on last edited by
                    #22

                    @martinp sagte in Gelöst: Bilder senden von einen IOB zum anderen IOB:

                    Alle 4 Stunden wird Dir aber wohl nicht reichen...

                    Danke für Deinen Einsatz. Die Lösung die nun "werkelt" ist Teil eines Überwachungskonzeptes meines Ferienhauses.
                    Es werden nur Bilder per Telegram und nun auch an den anderen "Heim" Iobroker gesendet, wenn niemand aus meiner Familie am/im Ferienhaus ist (Geofancy), die Haustür geöffnet wird und gleichzeitig ein BWM eine Bewegung feststellt. Dann macht die Kamera im Tablet eine Aufnahme.

                    MartinPM 1 Reply Last reply
                    0
                    • M michihorn

                      @martinp sagte in Gelöst: Bilder senden von einen IOB zum anderen IOB:

                      Alle 4 Stunden wird Dir aber wohl nicht reichen...

                      Danke für Deinen Einsatz. Die Lösung die nun "werkelt" ist Teil eines Überwachungskonzeptes meines Ferienhauses.
                      Es werden nur Bilder per Telegram und nun auch an den anderen "Heim" Iobroker gesendet, wenn niemand aus meiner Familie am/im Ferienhaus ist (Geofancy), die Haustür geöffnet wird und gleichzeitig ein BWM eine Bewegung feststellt. Dann macht die Kamera im Tablet eine Aufnahme.

                      MartinPM Online
                      MartinPM Online
                      MartinP
                      wrote on last edited by
                      #23

                      @michihorn Die Integration meiner Kameras in iobroker ist rudimentär ... Reolink-Adapter für die beiden richtigen Kameras, und frigate per MQTT für eine experimentell genutzte ESP32 CAM. Bisher keine Web-Visualisierung der Kameras in Vis2 o. Ä.

                      Für das "Angucken" nutze ich die Web-Oberfläche von Frigate bzw die Reolink App und den Browser am PC. "Nach Hause telefonieren" können die Reolink Cams nicht, da sie in der Fritzbox den Internet-Zugang gesperrt bekommen haben.

                      Das Ablagern der Bilder auf dem USB-Drive am Server dient nur der Langzeitarchivierung ... Aus Platzgründen räume ich täglich per Cron Job alle Aufzeichnungen, die älter sind, als 50 Tage auch auf diesem USB-Drive ab.

                      Fand es wichtig, die Dateien "einfach so" in einem Netzwerkshare liegen zu haben...

                      Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                      Virtualization : unprivileged lxc container (debian 13) on Proxmox 9.1.5)
                      Linux pve 6.17.9-1-pve
                      6 GByte RAM für den Container
                      Fritzbox 6591 FW 8.20 (Vodafone Leih-Box)
                      Remote-Access über Wireguard der Fritzbox

                      1 Reply Last reply
                      1

                      Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                      Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                      With your input, this post could be even better 💗

                      Register Login
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      329

                      Online

                      32.8k

                      Users

                      82.7k

                      Topics

                      1.3m

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

                      • Don't have an account? Register

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