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. Gelöst: Bilder senden von einen IOB zum anderen IOB

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
    936

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

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

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascript
23 Beiträge 5 Kommentatoren 968 Aufrufe 5 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 michihorn

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

    Ich gehe natürlich davon aus das die beiden iobrokers als master\ Slave zusammengeschaltet sind. Nur dann syncen sich die datenpunkte

    Nein die Rechner sind autakt, jeder für sich.

    Hatte Deine erste Vorlage genutzt, und die Datenpunkte dann mit mqtt übertragen, dabei war das Ergebnis wie bereits gepostet.

    OliverIOO Offline
    OliverIOO Offline
    OliverIO
    schrieb am zuletzt editiert von
    #12

    @michihorn

    Ok das kam dann dort an wo du es auch haben wolltest.
    Was willst du dann mit dem Bild weiter machen.
    Speichern/anzeigen/beides?

    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 Antwort Letzte Antwort
    0
    • M Online
      M Online
      michihorn
      schrieb am zuletzt editiert von
      #13

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

      Speichern/anzeigen/beides?

      beides

      OliverIOO 1 Antwort Letzte Antwort
      0
      • M michihorn

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

        Speichern/anzeigen/beides?

        beides

        OliverIOO Offline
        OliverIOO Offline
        OliverIO
        schrieb am zuletzt editiert von
        #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 Antwort Letzte Antwort
        0
        • M Online
          M Online
          michihorn
          schrieb am zuletzt editiert von
          #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 Antworten Letzte Antwort
          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
            schrieb am zuletzt editiert von
            #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 Antwort Letzte Antwort
            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
              schrieb am zuletzt editiert von
              #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 Antwort Letzte Antwort
              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
                schrieb am zuletzt editiert von
                #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 Antwort Letzte Antwort
                1
                • David G.D Online
                  David G.D Online
                  David G.
                  schrieb am zuletzt editiert von
                  #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 Antwort Letzte Antwort
                  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
                    schrieb am zuletzt editiert von
                    #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 Antwort Letzte Antwort
                    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
                      schrieb am zuletzt editiert von
                      #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 12 on Proxmox 8.4.14)
                      Linux pve 6.8.12-16-pve
                      6 GByte RAM für den Container
                      Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                      Remote-Access über Wireguard der Fritzbox

                      M 1 Antwort Letzte Antwort
                      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
                        schrieb am zuletzt editiert von
                        #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 Antwort Letzte Antwort
                        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
                          schrieb am zuletzt editiert von
                          #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 12 on Proxmox 8.4.14)
                          Linux pve 6.8.12-16-pve
                          6 GByte RAM für den Container
                          Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                          Remote-Access über Wireguard der Fritzbox

                          1 Antwort Letzte Antwort
                          1
                          Antworten
                          • In einem neuen Thema antworten
                          Anmelden zum Antworten
                          • Älteste zuerst
                          • Neuste zuerst
                          • Meiste Stimmen


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          345

                          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