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. Visualisierung
  4. [gelöst] Bildanzeige veraltet

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    5
    1
    113

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    8
    1
    156

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

[gelöst] Bildanzeige veraltet

Scheduled Pinned Locked Moved Visualisierung
vis
23 Posts 5 Posters 2.5k 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.
  • A Offline
    A Offline
    aleks-83
    wrote on last edited by aleks-83
    #10

    Super! Danke für den Hinweis.

    Ich wollte mir einfach einen höhergelegenen Ordner erstellen und dort die Bilder reinkopieren.
    Aber leider hat man wohl in der gesamten Ebene unterhalb von "/iobroker-data/" diese Einschränkung.
    Und höher hinaus kommt man ja nicht mit der Pfadangabe im vis!?

    @Glasfaser sagte in Bildanzeige veraltet:

    @aleks-83
    Sehr merkmürdig 🤔

    Ändere doch mal komplett den Ordner/Zielnamen um und den Widget Datenpunkt zum Bild.

    snapshots in kamera
    Set1 in bilder1

    Habe ich getestet. Bilder werden kopiert, im vis dann aber gar keine Bilder angezeigt.
    Den Pfad zu den Bildern habe ich aber natürlich angepasst.

    = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
    = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

    Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
    Glasfaser 400

    GlasfaserG 1 Reply Last reply
    0
    • A aleks-83

      Super! Danke für den Hinweis.

      Ich wollte mir einfach einen höhergelegenen Ordner erstellen und dort die Bilder reinkopieren.
      Aber leider hat man wohl in der gesamten Ebene unterhalb von "/iobroker-data/" diese Einschränkung.
      Und höher hinaus kommt man ja nicht mit der Pfadangabe im vis!?

      @Glasfaser sagte in Bildanzeige veraltet:

      @aleks-83
      Sehr merkmürdig 🤔

      Ändere doch mal komplett den Ordner/Zielnamen um und den Widget Datenpunkt zum Bild.

      snapshots in kamera
      Set1 in bilder1

      Habe ich getestet. Bilder werden kopiert, im vis dann aber gar keine Bilder angezeigt.
      Den Pfad zu den Bildern habe ich aber natürlich angepasst.

      GlasfaserG Offline
      GlasfaserG Offline
      Glasfaser
      wrote on last edited by
      #11

      @aleks-83

      Schau mal hier : wie writeFile() in js script nutzen

      Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

      1 Reply Last reply
      0
      • A Offline
        A Offline
        aleks-83
        wrote on last edited by aleks-83
        #12

        Ja danke den Hinweis mit writefile habe ich gefunden.
        Ich möchte aber ungerne ein weitere Skript anlegen.
        Denn aktuell mache ich alles in Blockly.

        = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
        = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

        Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
        Glasfaser 400

        1 Reply Last reply
        0
        • A Offline
          A Offline
          aleks-83
          wrote on last edited by aleks-83
          #13

          Ich habe dieses problem immer noch nicht in den Griff bekommen 🙄

          Leider verstehe ich zu wenig von dem JavaScript aus deinem Link. @Glasfaser
          Daraus kann ich mir kein passendes Skript für mich bauen.

          Ich stehe also vor dem Problem:
          vis kann keine Dateien anzeigen die höher liegen als "/iobroker-data/files/".
          Javascript (Blockly bei mir) darf unterhalb dieses Ordners aber keine Dateien ablegen.

          Kann ich vielleicht einen Symlink erstellen? (Unter Windows?)

          = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
          = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

          Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
          Glasfaser 400

          GlasfaserG 1 Reply Last reply
          0
          • A aleks-83

            Ich habe dieses problem immer noch nicht in den Griff bekommen 🙄

            Leider verstehe ich zu wenig von dem JavaScript aus deinem Link. @Glasfaser
            Daraus kann ich mir kein passendes Skript für mich bauen.

            Ich stehe also vor dem Problem:
            vis kann keine Dateien anzeigen die höher liegen als "/iobroker-data/files/".
            Javascript (Blockly bei mir) darf unterhalb dieses Ordners aber keine Dateien ablegen.

            Kann ich vielleicht einen Symlink erstellen? (Unter Windows?)

            GlasfaserG Offline
            GlasfaserG Offline
            Glasfaser
            wrote on last edited by Glasfaser
            #14

            @aleks-83

            Was hälst du hiervon ..... Klingelscript von Chaot..
            Link Text

            Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

            A 1 Reply Last reply
            1
            • GlasfaserG Glasfaser

              @aleks-83

              Was hälst du hiervon ..... Klingelscript von Chaot..
              Link Text

              A Offline
              A Offline
              aleks-83
              wrote on last edited by aleks-83
              #15

              @Glasfaser
              Danke, das verstehe ich zumindest ansatzweise.

              Ich habe mal mein Blockly Skript in JS konvertiert und folgenden Block eingefügt:

              const bild1 = fs.readFileSync(folder,'snap01.jpg');
              writeFile('0_userdata.0','alarm1.jpg', bild1);
              
              var Empfaenger, Satz, date, timeout8, folder, timeout9, timeout10, timeout7, timeout2, timeout3, timeout4, timeout6, timeout, timeout5;
              var fs = require('fs');
              const path = require('path');
              
              on({id: "javascript.0.TEST.bDummy"/*BOOL dummy*/, change: "ne"}, function (obj) {
              
                if (getState("javascript.0.TEST.bDummy").val == true) {
                  setState("javascript.0.TEST.bDummy", false);
              
                  Satz = 'Satz1';
                  folder = 'D:\\ioBroker\\Besucherfotos\\TEST\\';
              
                  // Neues Verzeichnis auf D mit Datum erstellen
                  exec(('md ' + String(folder)));
                  console.debug("exec: " + ('md ' + String(folder)));
                  console.warn((['### Verzeichnis für Besucherfotos erstellt (',folder,')'].join('')));
              
                  // Snapshot 1 holen
                  exec((['wget --output-document ',folder,'snap01.jpg http://ioBroker:XXXXXX@10.0.0.21/ISAPI/Streaming/channels/101/picture'].join('')));
                  console.debug("exec: " + (['wget --output-document ',folder,'snap01.jpg http://ioBroker:XXXXXX@10.0.0.21/ISAPI/Streaming/channels/101/picture'].join('')));
              
                      timeout = setTimeout(function () {
                              
                          // Snapshots für VIS ablegen
                              const bild1 = fs.readFileSync(path.join(folder,'snap01.jpg'));
                              writeFile(path.join('vis.0/snapshots/',Satz),'/snap01.jpg', bild1, function (errorWRITE) {});
                      }, 2000);
                  }
              });
              
              function errorDEL() {
                  // function falls Fehler beim Löschen
                  console.error(('### Fehler beim Löschen (IPcam Snapshot)'));
              };
              
              function errorWRITE() {
                  // function falls Fehler beim Schreiben
                  console.error(('### Fehler beim Datei schreiben (IPcam Snapshot)'));
              };
              

              Wie lege ich denn als Ziel dann einen Ordner fest?
              Also anstatt "0_userdata.0" möchte ich die Bilder dann unter "D:/ioBroker/NUC/iobroker-data/files/vis.0/snapshots/" ablegen

              Der snapshot wird von der Kamera geholt und unter "folder" abgelegt.
              Unter "vis.0/snapshots/',Satz" liegt dann aber kein Bild.
              Die function "errorDEL()" wird nicht aufgerufen.

              = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
              = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

              Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
              Glasfaser 400

              GlasfaserG 2 Replies Last reply
              0
              • A aleks-83

                @Glasfaser
                Danke, das verstehe ich zumindest ansatzweise.

                Ich habe mal mein Blockly Skript in JS konvertiert und folgenden Block eingefügt:

                const bild1 = fs.readFileSync(folder,'snap01.jpg');
                writeFile('0_userdata.0','alarm1.jpg', bild1);
                
                var Empfaenger, Satz, date, timeout8, folder, timeout9, timeout10, timeout7, timeout2, timeout3, timeout4, timeout6, timeout, timeout5;
                var fs = require('fs');
                const path = require('path');
                
                on({id: "javascript.0.TEST.bDummy"/*BOOL dummy*/, change: "ne"}, function (obj) {
                
                  if (getState("javascript.0.TEST.bDummy").val == true) {
                    setState("javascript.0.TEST.bDummy", false);
                
                    Satz = 'Satz1';
                    folder = 'D:\\ioBroker\\Besucherfotos\\TEST\\';
                
                    // Neues Verzeichnis auf D mit Datum erstellen
                    exec(('md ' + String(folder)));
                    console.debug("exec: " + ('md ' + String(folder)));
                    console.warn((['### Verzeichnis für Besucherfotos erstellt (',folder,')'].join('')));
                
                    // Snapshot 1 holen
                    exec((['wget --output-document ',folder,'snap01.jpg http://ioBroker:XXXXXX@10.0.0.21/ISAPI/Streaming/channels/101/picture'].join('')));
                    console.debug("exec: " + (['wget --output-document ',folder,'snap01.jpg http://ioBroker:XXXXXX@10.0.0.21/ISAPI/Streaming/channels/101/picture'].join('')));
                
                        timeout = setTimeout(function () {
                                
                            // Snapshots für VIS ablegen
                                const bild1 = fs.readFileSync(path.join(folder,'snap01.jpg'));
                                writeFile(path.join('vis.0/snapshots/',Satz),'/snap01.jpg', bild1, function (errorWRITE) {});
                        }, 2000);
                    }
                });
                
                function errorDEL() {
                    // function falls Fehler beim Löschen
                    console.error(('### Fehler beim Löschen (IPcam Snapshot)'));
                };
                
                function errorWRITE() {
                    // function falls Fehler beim Schreiben
                    console.error(('### Fehler beim Datei schreiben (IPcam Snapshot)'));
                };
                

                Wie lege ich denn als Ziel dann einen Ordner fest?
                Also anstatt "0_userdata.0" möchte ich die Bilder dann unter "D:/ioBroker/NUC/iobroker-data/files/vis.0/snapshots/" ablegen

                Der snapshot wird von der Kamera geholt und unter "folder" abgelegt.
                Unter "vis.0/snapshots/',Satz" liegt dann aber kein Bild.
                Die function "errorDEL()" wird nicht aufgerufen.

                GlasfaserG Offline
                GlasfaserG Offline
                Glasfaser
                wrote on last edited by
                #16

                @aleks-83

                Meins sieht so aus , damit Kopiere ich in Vis.0

                const bild1 = fs.readFileSync('/tmp/carport1.jpg');
                
                writeFile('vis.0','/klingelbild/carport1.jpg', bild1);
                

                Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                A 1 Reply Last reply
                2
                • A aleks-83

                  @Glasfaser
                  Danke, das verstehe ich zumindest ansatzweise.

                  Ich habe mal mein Blockly Skript in JS konvertiert und folgenden Block eingefügt:

                  const bild1 = fs.readFileSync(folder,'snap01.jpg');
                  writeFile('0_userdata.0','alarm1.jpg', bild1);
                  
                  var Empfaenger, Satz, date, timeout8, folder, timeout9, timeout10, timeout7, timeout2, timeout3, timeout4, timeout6, timeout, timeout5;
                  var fs = require('fs');
                  const path = require('path');
                  
                  on({id: "javascript.0.TEST.bDummy"/*BOOL dummy*/, change: "ne"}, function (obj) {
                  
                    if (getState("javascript.0.TEST.bDummy").val == true) {
                      setState("javascript.0.TEST.bDummy", false);
                  
                      Satz = 'Satz1';
                      folder = 'D:\\ioBroker\\Besucherfotos\\TEST\\';
                  
                      // Neues Verzeichnis auf D mit Datum erstellen
                      exec(('md ' + String(folder)));
                      console.debug("exec: " + ('md ' + String(folder)));
                      console.warn((['### Verzeichnis für Besucherfotos erstellt (',folder,')'].join('')));
                  
                      // Snapshot 1 holen
                      exec((['wget --output-document ',folder,'snap01.jpg http://ioBroker:XXXXXX@10.0.0.21/ISAPI/Streaming/channels/101/picture'].join('')));
                      console.debug("exec: " + (['wget --output-document ',folder,'snap01.jpg http://ioBroker:XXXXXX@10.0.0.21/ISAPI/Streaming/channels/101/picture'].join('')));
                  
                          timeout = setTimeout(function () {
                                  
                              // Snapshots für VIS ablegen
                                  const bild1 = fs.readFileSync(path.join(folder,'snap01.jpg'));
                                  writeFile(path.join('vis.0/snapshots/',Satz),'/snap01.jpg', bild1, function (errorWRITE) {});
                          }, 2000);
                      }
                  });
                  
                  function errorDEL() {
                      // function falls Fehler beim Löschen
                      console.error(('### Fehler beim Löschen (IPcam Snapshot)'));
                  };
                  
                  function errorWRITE() {
                      // function falls Fehler beim Schreiben
                      console.error(('### Fehler beim Datei schreiben (IPcam Snapshot)'));
                  };
                  

                  Wie lege ich denn als Ziel dann einen Ordner fest?
                  Also anstatt "0_userdata.0" möchte ich die Bilder dann unter "D:/ioBroker/NUC/iobroker-data/files/vis.0/snapshots/" ablegen

                  Der snapshot wird von der Kamera geholt und unter "folder" abgelegt.
                  Unter "vis.0/snapshots/',Satz" liegt dann aber kein Bild.
                  Die function "errorDEL()" wird nicht aufgerufen.

                  GlasfaserG Offline
                  GlasfaserG Offline
                  Glasfaser
                  wrote on last edited by Glasfaser
                  #17

                  @aleks-83

                  Ich kann leider Windows nicht bei mir testen ... habe alles auf der Synology.

                  Versuche mal den Baustein mit reinzunehmen , damit kannst du direkt das Foto hinterlegen:

                  exec('wget --output-document /opt/iobroker/iobroker-data/tmp/Snapshot.jpg \'http://ioBroker:XXXXXX@10.0.0.21/ISAPI/Streaming/channels/101/picture\'');
                  
                  

                  Nimm eine leer JS und führe es dort aus ... direkt starten !!

                  Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                  1 Reply Last reply
                  0
                  • GlasfaserG Glasfaser

                    @aleks-83

                    Meins sieht so aus , damit Kopiere ich in Vis.0

                    const bild1 = fs.readFileSync('/tmp/carport1.jpg');
                    
                    writeFile('vis.0','/klingelbild/carport1.jpg', bild1);
                    
                    A Offline
                    A Offline
                    aleks-83
                    wrote on last edited by
                    #18

                    @Glasfaser sagte in Bildanzeige veraltet:

                    @aleks-83

                    Meins sieht so aus , damit Kopiere ich in Vis.0

                    const bild1 = fs.readFileSync('/tmp/carport1.jpg');
                    
                    writeFile('vis.0','/klingelbild/carport1.jpg', bild1);
                    

                    OK, das scheint es gewesen zu sein !
                    So funktioniert mein Test Skript. Mal sehen ob mein "Produktiv Skript" das auch richtig umsetzt.

                    Vielen Dank

                    = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                    = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                    Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                    Glasfaser 400

                    GlasfaserG 1 Reply Last reply
                    0
                    • A aleks-83

                      @Glasfaser sagte in Bildanzeige veraltet:

                      @aleks-83

                      Meins sieht so aus , damit Kopiere ich in Vis.0

                      const bild1 = fs.readFileSync('/tmp/carport1.jpg');
                      
                      writeFile('vis.0','/klingelbild/carport1.jpg', bild1);
                      

                      OK, das scheint es gewesen zu sein !
                      So funktioniert mein Test Skript. Mal sehen ob mein "Produktiv Skript" das auch richtig umsetzt.

                      Vielen Dank

                      GlasfaserG Offline
                      GlasfaserG Offline
                      Glasfaser
                      wrote on last edited by
                      #19

                      @aleks-83

                      Hast du oben meine Beitrag gesehen ... mit dem Direktlink

                      Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                      1 Reply Last reply
                      0
                      • A Offline
                        A Offline
                        aleks-83
                        wrote on last edited by
                        #20

                        Ja, den wget output benutze ich ja schon um den snap in meinem "D:" Ordner abzulegen.
                        Ich meine ich hatte es so auch schon versucht direkt unter vis.0 abzulegen.
                        Das ging glaube ich nicht.

                        = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                        = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                        Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                        Glasfaser 400

                        GlasfaserG 1 Reply Last reply
                        0
                        • A aleks-83

                          Ja, den wget output benutze ich ja schon um den snap in meinem "D:" Ordner abzulegen.
                          Ich meine ich hatte es so auch schon versucht direkt unter vis.0 abzulegen.
                          Das ging glaube ich nicht.

                          GlasfaserG Offline
                          GlasfaserG Offline
                          Glasfaser
                          wrote on last edited by Glasfaser
                          #21

                          @aleks-83

                          Sorry habe tmp nicht getauscht .. war ein Versuchsschnipsel ...

                          aber kommst du jetzt weiter ... oder soll ich dir mein gesamt Skript senden !!!

                          Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                          1 Reply Last reply
                          0
                          • A Offline
                            A Offline
                            aleks-83
                            wrote on last edited by
                            #22

                            Es funktioniert jetzt alles !!
                            Danke dir.

                            Ich markiere als gelöst.

                            = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                            = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                            Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                            Glasfaser 400

                            GlasfaserG 1 Reply Last reply
                            0
                            • A aleks-83

                              Es funktioniert jetzt alles !!
                              Danke dir.

                              Ich markiere als gelöst.

                              GlasfaserG Offline
                              GlasfaserG Offline
                              Glasfaser
                              wrote on last edited by
                              #23

                              @aleks-83

                              Freut mich ...
                              war aber schon lange her ... von 2019

                              Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                              1 Reply Last reply
                              0

                              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

                              497

                              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