Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. MotionEye Bild per Telegram versenden

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    MotionEye Bild per Telegram versenden

    This topic has been deleted. Only users with topic management privileges can see it.
    • ChrisNett
      ChrisNett last edited by

      Hallo zusammen,
      für meine Vis hole ich mir alle 5sec mit diesem script ein bild der in MotionEye intrigierten Kamera, das funktioniert so weit auch.

      request(
       
        {
       
          url: "http://192.1xxxxxxxblabla...eeb8e3d5935741934ad",
       
          encoding: null,
       
        },
       
        (error, response, body) => {
       
          if (!error && body) {
       
            writeFile("vis.0", "/gartencam.jpg", body);
       
          }
       
        }
       
      );
      

      jetzt möchte ich wenn es klinglen 3-4 Bilder hintereinander per Telegram versendet bekommen.

      dazu habe ich das so angepasst

      request(
       
        {
       
          url: "http://192.168.178.76:8xxxxblavlaaaa7b92e34c0b5c865eeb8e3d5935741934ad",
       
          encoding: null,
       
        },
       
        (error, response, body) => {
       
          if (!error && body) {
       
            writeFile("/opt/iobroker/motioncam/gartencam.jpg", body);
       
          }
       
        }
       
      );
      

      er speichert aber scheinbar ein bild.

      denn telekram schickt mir immer nur den Pfad zum bild.

      1e450889-9219-49f9-8eda-cb85eb17ab19-image.png

      was mache ich Falsch oder gibt es eine bessere lösung?

      Glasfaser Cinimod 2 Replies Last reply Reply Quote 0
      • Glasfaser
        Glasfaser @ChrisNett last edited by

        @christian-sandkaulen

        Sind für zwei Bilder per telegram inkl . auf VIS

        
        const idklingel = ["0_userdata.0.DoorBird.Klingel", "ID2", "ID3", "ID4"];
        
        var sperre = false;  //verhindert das doppeltes Drücken das Script stoppt
        
        var timeout1, timeout2, timeout3, timeout4, timeout5, timeout6, timeout7, timeout8, timeout9, timeout10, timeout11;
        
        var fs = require('fs');
        
        on({id: idklingel, change: "any"}, function (obj) {
        
         if(!sperre) {
        
           sperre = true;
        
           
        
            // Speichert das erste Bild bei Klingeln
        
           exec('wget --output-document /tmp/haustuer1.jpg \'http://xxxxxx:xxxxxxxx@192.168.xxxxxx/streaming/channels/101/picture\'');
        
           
            // Nach dem ersten Bild wird nach 2000ms das nächste Bild gespeichert
           timeout1 = setTimeout(function () {
        
             exec('wget --output-document /tmp/haustuer2.jpg \'http://xxxx:xxxxxx@xxxx.1xxx.xxx.xxx/streaming/channels/101/picture\''); 
        
           }, 2000);
        
           
            // Nach dem zweiten Bild wird nach 2000ms das nächste Bild gespeichert
           timeout2 = setTimeout(function () {
        
             exec('wget --output-document /tmp/haustuer3.jpg \'http://xxxxx:xxxxxx@xxx.1xxx.xxx.xxx/streaming/channels/101/picture\'');
        
           }, 4000);
        
          
            // Nach dem dritten Bild wird nach 2000ms das nächste Bild gespeichert
           timeout3 = setTimeout(function () {
        
             exec('wget --output-document /tmp/haustuer4.jpg \'http://admin:admin2016@192.168.178.53/streaming/channels/101/picture\'');
        
           }, 6000);
        
        
            // Telegram versenden
           timeout4 = setTimeout(function(){
        
               sendTo('telegram.0', {text: '/tmp/haustuer1.jpg', caption: 'Jemand klingelt an der Haustür !!!', disable_notification: true});
        
                       //log ('__ Klingel-Bild wurde versendet __');
        
           }, 8000); 
           timeout5 = setTimeout(function(){
        
               sendTo('telegram.0', {text: '/tmp/haustuer2.jpg', caption: 'Jemand klingelt an der Haustür !!!', disable_notification: true});
        
                       //log ('__ Klingel-Bild wurde versendet __');
        
           }, 9000); 
        
        
           }
                  
        
           timeout6 = setTimeout(function() {
        
              sperre = false;
        
           }, 5000); //Zeit für Klingelsperre 1.Zeile
        
        
            // Bilder werden nach vis gespeichert
           timeout7 = setTimeout(function () {
        
                const bild1 = fs.readFileSync('/tmp/haustuer1.jpg');
        
                writeFile('vis.0','/klingelbild/haustuer1.jpg', bild1);
        
                const bild2 = fs.readFileSync('/tmp/haustuer2.jpg');
        
                writeFile('vis.0','/klingelbild/haustuer2.jpg', bild2);
        
                const bild3 = fs.readFileSync('/tmp/haustuer3.jpg');
        
                writeFile('vis.0','/klingelbild/haustuer3.jpg', bild3);
        
                const bild4 = fs.readFileSync('/tmp/haustuer4.jpg');
        
                writeFile('vis.0','/klingelbild/haustuer4.jpg', bild4);
        
           }, 20000); 
        
        });
        
        
        
        

        1 Reply Last reply Reply Quote 0
        • Cinimod
          Cinimod Most Active @ChrisNett last edited by Cinimod

          @christian-sandkaulen
          kann es sein das das nicht bei Meldung hin muss sonder bei "FILE" ?

          Ich habe telegram nicht installiert, aber beim Pushover funktioniert es so, mit dem "Universellen senden Block" als Parameter "file" angeben, und dann den Pfad vom File.

          Bildschirmfoto 2021-10-22 um 16.11.11.png

          ChrisNett 1 Reply Last reply Reply Quote 0
          • ChrisNett
            ChrisNett @Cinimod last edited by

            Danke an alle, ich habe das jetzt mit

            wget --output-document /tmp/haustuer1.jpg \'http://xxxxxx:xxxxxxxx@192.168.xxxxxx/streaming/channels/101/picture\
            

            gelöst und dann legt er das Bild auch ab.

            Christian

            A jmeister79 2 Replies Last reply Reply Quote 0
            • A
              aleks-83 @ChrisNett last edited by aleks-83

              @christian-sandkaulen sagte in MotionEye Bild per Telegram versenden:

              wget --output-document

              Mahlzeit,

              ich habe nach dem Aufsetzen meines ioBrokers auf dem neuen Rechner ebenfalls Probleme mit dem "wget".

              In meinem Test Skript erstelle ich zunächst einen Ordner.
              Dieser wird auch erstellt.
              Wenn ich dort mit "wget" Dateien einladen will, geht das nicht.

              Die Datei die geholt werden soll, kann ich im Browser auf demselben Rechner auch holen.
              Aber scheinbar nicht über den Javascript Adapter!?

              md \Besucherfotos\TEST_der_Rechte\
              

              Der Befehl zum Ordner erstellen funktioniert noch.

              wget -output-document \Besucherfotos\TEST_der_Rechte\snap01.jpg http://ioBroker:******@10.0.0.21/ISAPI/Streaming/channels/101/picture
              

              Diesen Befehl mit http://ioBroker... kann ich im Browser des Host Rechners erfolgreich ausführen.

              Ich meine dass ich dieses Problem schonmal hatte, kann die Beiträge dazu aber nicht mehr finden.

              War da was mit dem Installations fixer?

              Installiert habe ich meine ioBroker Instanz per Windows Installer und dann nodejs und JScontroller manuell hochgezogen, nach Foren Anleitung.

              Cinimod 1 Reply Last reply Reply Quote 0
              • Cinimod
                Cinimod Most Active @aleks-83 last edited by

                @aleks-83 hast an die Rechte des Ordners und Inhalts gedacht ?

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

                  @cinimod
                  Muss ich da was machen?
                  Bei Windows auch?

                  chmod 777 auf /Zielordner 
                  
                  Cinimod Thomas Braun 2 Replies Last reply Reply Quote 0
                  • Cinimod
                    Cinimod Most Active @aleks-83 last edited by

                    @aleks-83 das sieht gut aus, hast dem Ordner die Rechte gegeben ? Windows ? keine Ahnung ...

                    du solltest den Link zum Bild mal in einfahe anführungszeichen setzen ... teste das mal:

                    'http:adresse.vom.schnappschuss'

                    A 1 Reply Last reply Reply Quote 0
                    • Thomas Braun
                      Thomas Braun Most Active @aleks-83 last edited by

                      @aleks-83

                      Wie sehen die Rechte denn im Moment aus?
                      777 vergibt man nicht. Üblich ist 664 für Verzeichnisse, die nur gelesen und geschrieben werden sollen.

                      Cinimod 1 Reply Last reply Reply Quote 0
                      • Cinimod
                        Cinimod Most Active @Thomas Braun last edited by

                        @thomas-braun ja ich weiß, bei mir geht es aber nicht mit 664, habe auch 777 rechte vergeben

                        Thomas Braun 1 Reply Last reply Reply Quote 0
                        • Thomas Braun
                          Thomas Braun Most Active @Cinimod last edited by

                          @cinimod

                          Auch da: Owner der Ordner prüfen.

                          Cinimod 1 Reply Last reply Reply Quote 0
                          • Cinimod
                            Cinimod Most Active @Thomas Braun last edited by

                            @thomas-braun Owner ist iobroker

                            Thomas Braun 1 Reply Last reply Reply Quote 0
                            • Thomas Braun
                              Thomas Braun Most Active @Cinimod last edited by

                              @cinimod
                              Vollständig...

                              ls -la /Pfad/zum/Ziel
                              
                              Cinimod 1 Reply Last reply Reply Quote 0
                              • Cinimod
                                Cinimod Most Active @Thomas Braun last edited by Cinimod

                                @thomas-braun

                                drwxrwxrwx 1 iobroker iobroker     40 Okt 10 09:20 ipcam 
                                
                                drwxrwxrwx 1 iobroker iobroker     40 Okt 10 09:20 .                            
                                drwxrwxr-x 1 iobroker iobroker    376 Nov  1 17:56 ..                           
                                -rwxrwxrwx 1 iobroker iobroker 310548 Okt 10 09:16 a.jpg                    
                                -rwxrwxrwx 1 iobroker iobroker 361578 Nov  1 11:34 b.jpg 
                                

                                vielleicht liegts am Docker, mit 664 ist bei mir nichts zu machen, schreibt dann NICHTS

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

                                  @cinimod sagte in MotionEye Bild per Telegram versenden:

                                  @aleks-83
                                  du solltest den Link zum Bild mal in einfahe anführungszeichen setzen ... teste das mal:

                                  'http:adresse.vom.schnappschuss'

                                  Das hat nicht geholfen.

                                  @thomas-braun sagte in MotionEye Bild per Telegram versenden:

                                  @aleks-83

                                  Wie sehen die Rechte denn im Moment aus?
                                  777 vergibt man nicht. Üblich ist 664 für Verzeichnisse, die nur gelesen und geschrieben werden sollen.

                                  Wie kann ich denn unter Windows die aktuellen Rechte per Konsole abfragen?
                                  Google spuckt nix aus.
                                  Im Windows Explorer sehen die Rechte so aus:
                                  b9a6c081-79aa-4e28-9308-7efb5105e170-image.png

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

                                    @aleks-83
                                    beim Befehl "chmod" scheint sich nichts zu ändern...

                                    0a03bd70-7464-4163-8eb8-d49f0010fe7e-image.png

                                    1 Reply Last reply Reply Quote 0
                                    • jmeister79
                                      jmeister79 @ChrisNett last edited by

                                      @christian-sandkaulen
                                      Spannend ich versuche gerade das selbe Problem zu lösen.
                                      Ich habe die Dateien in einem Mount Ordner, wenn eine neue Datei von der WEbcam abgelegt wird, dann hole ich mir das letzte jpg und versuche es zu verschicken.
                                      Leider klappt das aber weder aus dem mnt/webcam ordner noch aus vis.
                                      Ich habe mal versucht die Datei dann in irgend einen iobroker ordner zu verschieben, aber die werden auch im vis nicht angezeigt. Die Dateien sind aber da. Besitzer ist iobroker.
                                      Ich bekomme per telegram auch nur einen string mit dem pfad.

                                      Cinimod 1 Reply Last reply Reply Quote 0
                                      • Cinimod
                                        Cinimod Most Active @jmeister79 last edited by

                                        @jmeister79

                                        Probier mal den universal-Senden Block, stell den auf Telegramm und gib als parameter "file" an.

                                        Bildschirmfoto 2021-11-08 um 19.13.55.png

                                        1 Reply Last reply Reply Quote 0
                                        • jmeister79
                                          jmeister79 last edited by jmeister79

                                          @cinimod

                                          	Cannot send message [chatId - 665076287]: Error: ETELEGRAM: 400 Bad Request: message text is empty
                                          

                                          😞

                                          wenn ich noch text anhänge kommt nur der

                                          wenn ich normal den string in text sende dann erhalte ich halt den bildpfad als nachricht.

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

                                            habs gefunden, ganz versteckt in der Anleitung zum Telegram adapter:

                                            sendTo("telegram.0",  {
                                                            text: fs.readFileSync('/mnt/webcams/Auffahrt/2021/11/08/Auffahrt_01_20211108182942.jpg'),
                                                            type: 'photo'
                                            
                                                        });
                                            

                                            https://github.com/iobroker-community-adapters/ioBroker.telegram/blob/master/README.md

                                            unter explicit types of messages.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            876
                                            Online

                                            32.0k
                                            Users

                                            80.5k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            20
                                            1578
                                            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