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

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    10
    1
    65

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    554

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

[gelöst] Bildanzeige veraltet

Geplant Angeheftet Gesperrt Verschoben Visualisierung
vis
23 Beiträge 5 Kommentatoren 2.3k 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.
  • A aleks-83

    Ich habe dieses problem immer noch nicht in den Griff bekommen :face_with_rolling_eyes:

    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
    schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
    1
    • GlasfaserG Glasfaser

      @aleks-83

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

      A Offline
      A Offline
      aleks-83
      schrieb am zuletzt editiert von 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.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

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

      GlasfaserG 2 Antworten Letzte Antwort
      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
        schrieb am zuletzt editiert von
        #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 Antwort Letzte Antwort
        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
          schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
          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
            schrieb am zuletzt editiert von
            #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.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

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

            GlasfaserG 1 Antwort Letzte Antwort
            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
              schrieb am zuletzt editiert von
              #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 Antwort Letzte Antwort
              0
              • A Offline
                A Offline
                aleks-83
                schrieb am zuletzt editiert von
                #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.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

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

                GlasfaserG 1 Antwort Letzte Antwort
                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
                  schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                  0
                  • A Offline
                    A Offline
                    aleks-83
                    schrieb am zuletzt editiert von
                    #22

                    Es funktioniert jetzt alles !!
                    Danke dir.

                    Ich markiere als gelöst.

                    = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                    = Node.js v20.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

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

                    GlasfaserG 1 Antwort Letzte Antwort
                    0
                    • A aleks-83

                      Es funktioniert jetzt alles !!
                      Danke dir.

                      Ich markiere als gelöst.

                      GlasfaserG Offline
                      GlasfaserG Offline
                      Glasfaser
                      schrieb am zuletzt editiert von
                      #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 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

                      674

                      Online

                      32.5k

                      Benutzer

                      81.8k

                      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