Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. [gelöst] Bildanzeige veraltet

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Bildanzeige veraltet

    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      aleks-83 last edited by 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?)

      Glasfaser 1 Reply Last reply Reply Quote 0
      • Glasfaser
        Glasfaser @aleks-83 last edited by Glasfaser

        @aleks-83

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

        A 1 Reply Last reply Reply Quote 1
        • A
          aleks-83 @Glasfaser last edited by 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.

          Glasfaser 2 Replies Last reply Reply Quote 0
          • Glasfaser
            Glasfaser @aleks-83 last edited by

            @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 1 Reply Last reply Reply Quote 2
            • Glasfaser
              Glasfaser @aleks-83 last edited by Glasfaser

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

              1 Reply Last reply Reply Quote 0
              • A
                aleks-83 @Glasfaser last edited by

                @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

                Glasfaser 1 Reply Last reply Reply Quote 0
                • Glasfaser
                  Glasfaser @aleks-83 last edited by

                  @aleks-83

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

                  1 Reply Last reply Reply Quote 0
                  • A
                    aleks-83 last edited by

                    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.

                    Glasfaser 1 Reply Last reply Reply Quote 0
                    • Glasfaser
                      Glasfaser @aleks-83 last edited by Glasfaser

                      @aleks-83

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

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

                      1 Reply Last reply Reply Quote 0
                      • A
                        aleks-83 last edited by

                        Es funktioniert jetzt alles !!
                        Danke dir.

                        Ich markiere als gelöst.

                        Glasfaser 1 Reply Last reply Reply Quote 0
                        • Glasfaser
                          Glasfaser @aleks-83 last edited by

                          @aleks-83

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

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          740
                          Online

                          31.9k
                          Users

                          80.1k
                          Topics

                          1.3m
                          Posts

                          vis
                          5
                          23
                          1647
                          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