Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Gelöst: Bilder senden von einen IOB zum anderen IOB

    NEWS

    • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?

    • Monatsrückblick – September 2025

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

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

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      michihorn @MartinP last edited by

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

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

      Wie soll das aussehen?

      MartinP 1 Reply Last reply Reply Quote 0
      • OliverIO
        OliverIO @michihorn last edited by OliverIO

        @michihorn

        Ist ok, dann in einen datenpunkt speichern.
        Quelle war ein jpeg. Also für vis oben den mime Type anpassen. image/jpeg
        Bild sieht etwas dunkel und verschwommen aus 😵

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

        M 1 Reply Last reply Reply Quote 0
        • M
          michihorn @OliverIO last edited by 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.

          OliverIO 1 Reply Last reply Reply Quote 0
          • OliverIO
            OliverIO @michihorn last edited by

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

            1 Reply Last reply Reply Quote 0
            • M
              michihorn last edited by

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

              Speichern/anzeigen/beides?

              beides

              OliverIO 1 Reply Last reply Reply Quote 0
              • OliverIO
                OliverIO @michihorn last edited by

                @michihorn

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

                1 Reply Last reply Reply Quote 0
                • M
                  michihorn last edited by

                  @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)
                  
                  
                  OliverIO M 2 Replies Last reply Reply Quote 0
                  • OliverIO
                    OliverIO @michihorn last edited by

                    @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

                    1 Reply Last reply Reply Quote 0
                    • M
                      michihorn @michihorn last edited by

                      @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

                      OliverIO 1 Reply Last reply Reply Quote 0
                      • OliverIO
                        OliverIO @michihorn last edited by

                        @michihorn

                        ok dann klappt es ja

                        1 Reply Last reply Reply Quote 1
                        • David G.
                          David G. last edited by

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

                          M 1 Reply Last reply Reply Quote 0
                          • M
                            michihorn @David G. last edited by

                            @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 Reply Quote 0
                            • MartinP
                              MartinP @michihorn last edited by

                              @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 1 Reply Last reply Reply Quote 0
                              • M
                                michihorn @MartinP last edited by

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

                                MartinP 1 Reply Last reply Reply Quote 0
                                • MartinP
                                  MartinP @michihorn last edited by

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

                                  1 Reply Last reply Reply Quote 1
                                  • First post
                                    Last post

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  1.1k
                                  Online

                                  32.4k
                                  Users

                                  81.2k
                                  Topics

                                  1.3m
                                  Posts

                                  javascript
                                  5
                                  23
                                  318
                                  Loading More Posts
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  Community
                                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                  The ioBroker Community 2014-2023
                                  logo