Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. Reolink RLC-820A Kamera Snapshot

    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

    Reolink RLC-820A Kamera Snapshot

    This topic has been deleted. Only users with topic management privileges can see it.
    • arteck
      arteck Developer Most Active @BananaJoe last edited by

      @bananajoe sagte in Reolink RLC-820A Kamera Snapshot:

      Keine Ahnung ob das per Default so ist.

      nein ist es nicht... kannst sehen wenn du eine neue javascript instanz erzeugst

      1 Reply Last reply Reply Quote 0
      • surfer09
        surfer09 @BananaJoe last edited by

        @bananajoe Danke, super! Das teste ich mal aus.
        Du hast jetzt als Pfad /tmp/Cam.... hinterlegt. Unterhalb welchen Ordner packt er dieses Verzeichnis? Also wo kann ich die Bilder finden?

        surfer09 1 Reply Last reply Reply Quote 0
        • surfer09
          surfer09 @surfer09 last edited by surfer09

          @surfer09 Also bei mir gibt er aktuell nur den Text /tmp/KameraHaustuer.jpg bei Telegram aus

          Screenshot 2023-07-20 203040.jpg

          Mein IOBroker läuft auf Windows, hat es damit etwas zu tun??

          1 Reply Last reply Reply Quote 0
          • BananaJoe
            BananaJoe Most Active last edited by

            @surfer09 bestimmt.

            Es muss den Befehl wget geben - denn kann man auch für Windows finden. wichtig wäre das du es entweder so ablegst das im Suchpfad ist (in einer Eingabeaufforderung muss er den Befehl finden) oder du musst vor dem Befehl den ganzen Pfad angeben (C:\tools\wget)
            Hier gibt es das zum Beispiel: https://gnuwin32.sourceforge.net/packages/wget.htm

            Und was unter Windows C: ist, ist unter Linux /
            Du müsstest also einen Ordner anlegen / wählen den es unter Windows gibt, also statt /tmp/...

            C:\Temp\KameraHaustuer.jpg
            

            Am besten testest du den Befehl vorher einmal trocken in der Eingabeaufforderung und übernimmst ihn dann nach ioBroker/Blockly

            surfer09 1 Reply Last reply Reply Quote 1
            • surfer09
              surfer09 @BananaJoe last edited by

              @bananajoe Danke für die Info! Habe das wget jetzt unter I:\wget installiert.
              Jetzt führt er zwar den Befehl aus, speichert auch eine jpg-Datei, die aber defekt ist.

              2023-07-21 18_20_21-IO-Broker - 192.168.1.25 - Remotedesktopverbindung.jpg

              surfer09 1 Reply Last reply Reply Quote 0
              • surfer09
                surfer09 @surfer09 last edited by surfer09

                Habe das Problem gerade gefunden. Die http://192.168.1.135/cgi-bin.... muss innerhalb " " stehen.

                Untitled 1.jpg

                Unter der Eingabeaufforderung unter Windows funktioniert der Snapshot, in Blockly funktioniert es nicht.

                Beide Befehle funktionierten in der Eingabeaufforderung unter Windows, aber nicht unter Blockly

                start I:\wget\bin\wget.exe --output-document I:\tmp\Test33.jpg "http://192.168.1.135/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=r4578hgzta35hfuet&user=admin&password=12345678"
                
                I:\wget\bin>wget.exe --output-document I:\tmp\Test33.jpg "http://192.168.1.135/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=r4578hgzta35hfuet&user=admin&password=12345678"
                
                BananaJoe 1 Reply Last reply Reply Quote 0
                • BananaJoe
                  BananaJoe Most Active @surfer09 last edited by

                  @surfer09 dann Trick 17: Schreibe den Aufruf in eine Batch-Datei, also eine Text-Datei die auf .cmd oder .bat endet und starte statt dessen diese über Blockly.

                  Ich vermute aber ein Berechtigungsproblem, lösche die Bilddatei mal von Hand bevor du das Blockly ausführst und stelle sicher das alle in dem Verzeichnis schreiben dürfen. Bei C:\Temp wäre ich mir sicher, bei I:\Temp nicht.

                  Unter welchem Benutzer läuft denn der Dienst von ioBroker? Dieser Benutzer muss die nötigen Lese- und Schreibrechte Rechte auf das Verzeichnis haben wo das Bild hinsoll. Und Muss natürlich auf wget lesend zugreifen können.

                  surfer09 1 Reply Last reply Reply Quote 0
                  • surfer09
                    surfer09 @BananaJoe last edited by surfer09

                    @bananajoe
                    Ja, das wäre jetzt auch meine nächste Idee gewesen. Schade, dass es so nicht funktioniert.
                    Der Dienst läuft unter "Lokales Systemkonto"
                    2023-07-21 20_26_05-IO-Broker - 192.168.1.25 - Remotedesktopverbindung.jpg

                    I:\tmp Vollzugriff vergeben
                    2023-07-21 20_22_49-IO-Broker - 192.168.1.25 - Remotedesktopverbindung.jpg

                    Selbst wenn ich in dem Bildordner die entsprechende Datei hinterlege bekomme ich über Telegram nur den hinterlegten Pfad als Text geschickt..

                    BananaJoe 1 Reply Last reply Reply Quote 0
                    • BananaJoe
                      BananaJoe Most Active @surfer09 last edited by BananaJoe

                      @surfer09 sagte in Reolink RLC-820A Kamera Snapshot:

                      Selbst wenn ich in dem Bildordner die entsprechende Datei hinterlege bekomme ich über Telegram nur den hinterlegten Pfad als Text geschickt..

                      das müsste man noch mal extra austüfteln wie da die Schreibweise für den Pfad ist ...
                      Wenn er I:\Temp\bild.jpg nicht mal testen mal mit I:/Temp/bild.jpg

                      Vielleicht gibt die Beschreibung / Anleitung des Adapters auch etwas her

                      surfer09 1 Reply Last reply Reply Quote 0
                      • Wal
                        Wal Developer last edited by

                        Falls du dich doch für ein normales Javascript entscheidest:

                        var request = require('request');
                        var fs      = require('fs');
                        var bell = true;
                        var snap = '';
                        
                        function sendImage() {
                            request.get({url: 'http://192.168.1.135/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=wuuPhkmUCeI9WG7C&user=admin&password=12345678&width=640&height=480', encoding: 'binary'}, function (err, response, body) {
                                fs.writeFile(snap, body, 'binary', function(err) {
                        
                                if (err) {
                                    console.error(err);
                                } else {
                                    console.log('Snapshot sent');
                                    sendTo('telegram.0', {text: snap, caption: 'Test !!!'});   
                                }
                              });
                            });
                        }
                        
                        on({id: "mqtt.0.piface.input.DoorBell_4", val: true}, function (obj) {
                            if (bell) {
                                snap = '/opt/iobroker/snapshots/snap_' + formatDate(obj.state.lc, 'TT.MM.JJJJ_hh:mm:ss') + '.jpg';
                                sendImage();
                            }
                            bell = false;
                            setTimeout(function() {
                                bell = true;
                              }, 120000);
                        });
                        

                        Habe ich eben mit einer Reolink 810A getestet.
                        Der Ordner "/opt/iobroker/snapshots" muss vorhanden sein oder dein frei wählbaren Ordner eintragen und dein Auslöser (mqtt.0.piface.input.DoorBell_4) musst du noch eintragen.
                        In dem Ordner sind dann auch alle Snapshots mit Datum/Zeit gespeichert.

                        surfer09 1 Reply Last reply Reply Quote 0
                        • surfer09
                          surfer09 @BananaJoe last edited by

                          @bananajoe Die Varianten habe ich auch schon alle ausgetestet. Das funktioniert leider nicht. 😞

                          1 Reply Last reply Reply Quote 0
                          • surfer09
                            surfer09 @Wal last edited by

                            @wal Danke! Ich hab's gerade mal getestet, meine Daten angepasst leider funktioniert das auch nicht. Nicht wundern, zum Testen habe ich die Variable "Besuch ist da" hinterlegt, die ich manuell schalten kann.

                            var request = require('request');
                            var fs      = require('fs');
                            var bell = true;
                            var snap = '';
                            
                            function sendImage() {
                            
                                request.get({url: 'http://192.168.1.135/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=wuuPhkmUCeI9WG7C&user=admin&password=12345678&width=640&height=480', encoding: 'binary'}, function (err, response, body) {
                            
                                    fs.writeFile(snap, body, 'binary', function(err) {
                                    if (err) {
                                        console.error(err);
                                    } else {
                                        console.log('Snapshot sent');
                                        sendTo('telegram.2', {text: snap, caption: 'Test !!!'});   
                                    }
                                  });
                                });
                            }
                            on({id: "0_userdata.0.Besuch-ist-da", val: true}, function (obj) {
                                if (bell) {
                                    snap = 'I:tmp/Haustuer_' + formatDate(obj.state.lc, 'TT.MM.JJJJ_hh:mm:ss') + '.jpg';
                                    sendImage();
                                }
                                bell = false;
                                setTimeout(function() {
                                    bell = true;
                                  }, 120000);
                            });
                            

                            Das Verzeichnis I:\tmp habe ich angelegt mit Vollzugriff für "Jeder".

                            Wal 1 Reply Last reply Reply Quote 0
                            • Wal
                              Wal Developer @surfer09 last edited by Wal

                              @surfer09 sagte in Reolink RLC-820A Kamera Snapshot:

                              snap = 'I:tmp/Haustuer_'

                              Ist das ein Kopierfehler, da es snap = 'I:\tmp\Haustuer_' lauten sollte ?
                              evtl. auch

                              snap = 'I:\\tmp\\Haustuer_
                              

                              testen

                              surfer09 1 Reply Last reply Reply Quote 0
                              • surfer09
                                surfer09 @Wal last edited by

                                @wal Leider hat das auch keinen Erfolg gebracht. Es scheint unter Windows echt schwierig zu sein.
                                Ich habe beide Varianten jetzt ausgetestet:

                                snap = 'I:\\tmp\\Haustuer_
                                

                                und

                                snap = 'I:\tmp\Haustuer_
                                

                                Er legt nich einmal einen Screenshot in das Verzeichnis ab. Mit der http-Adresse kann es aber nichts zu tun haben, der Aufruf funktioniert.

                                surfer09 1 Reply Last reply Reply Quote 0
                                • surfer09
                                  surfer09 @surfer09 last edited by

                                  Ich hab's jetzt mit einer anderen Lösung hinbekommen. Über diesen Weg mit dem Skript funktioniert es nun bei mir.

                                  https://forum.iobroker.net/topic/67078/synology-adapter-snapshot-per-telegram-versenden-gel%C3%B6st/2

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  825
                                  Online

                                  31.9k
                                  Users

                                  80.3k
                                  Topics

                                  1.3m
                                  Posts

                                  4
                                  17
                                  1378
                                  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