Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [Frage BLOCKLY ] Klingel Bild per Telegram versenden / Snapshot von Cam per Telegram versenden

    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

    [Frage BLOCKLY ] Klingel Bild per Telegram versenden / Snapshot von Cam per Telegram versenden

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

      Es liegt wohl an den Rechten. Ich hab den Ordner zum Testen unter vis.0 angelegt, das Skript gestartet und jetzt funktioniert es.
      Muss ich mich mal schlaumachen, wie ich Rechte für Ordner in iobroker vergebe.
      Thema hat sich somit erledigt
      Danke für eure Hilfe 🙂

      1 Reply Last reply Reply Quote 0
      • T
        tege0 last edited by

        Hallo zusammen,
        ich möchte gerne zusätzlich zum Bild per snap auch eine gif bekommen.

        Mein test code:

        ffmpeg -y -i rtsp://admin:PW@192.168.178.48:554/Streaming/Channels/102/?transportmode=unicast -t 5 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=480:force_original_aspect_ratio=decrease -r 15 -O '/opt/iobroker/cambell/alarm.mp4'

        leider wird kein Bild auf den Pfad abgelegt.

        Den Pfad für Hikvision habe ich hier gefunden:
        https://bus-sitech.de/mt-content/uploads/2019/02/navod-hikvision-url-streaming-en.pdf

        Mein code für das Bild welches auch funktioniert sieht so aus:
        wget 'http://admin:PW@192.168.178.48/ISAPI/Streaming/channels/101/picture' -O '/opt/iobroker/cambell/alarm.jpg'

        hydrotec Glasfaser 2 Replies Last reply Reply Quote 0
        • hydrotec
          hydrotec @tege0 last edited by

          @tege0

          @tege0 sagte in [Frage BLOCKLY ] Klingel Bild per Telegram versenden / Snapshot von Cam per Telegram versenden:

          Mein test code:
          ffmpeg -y -i rtsp://admin:PW@192.168.178.48:554/Streaming/Channels/102/?transportmode=unicast -t 5 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=480:force_original_aspect_ratio=decrease -r 15 -O '/opt/iobroker/cambell/alarm.mp4'
          leider wird kein Bild auf den Pfad abgelegt.

          Mit diesem Code bekommst du auch kein Bild, sondern eine Videodatei im Format .mp4

          T 1 Reply Last reply Reply Quote 0
          • T
            tege0 @hydrotec last edited by

            @hydrotec ok hab mich verschrieben möchte ja auch gerne das video haben

            1 Reply Last reply Reply Quote 0
            • Glasfaser
              Glasfaser @tege0 last edited by

              @tege0 sagte in [Frage BLOCKLY ] Klingel Bild per Telegram versenden / Snapshot von Cam per Telegram versenden:

              -r 15 -O '/opt/iobroker/cambell/alarm.mp4'

              Was mit auffällt ist der ' zuviel .

              also

              -r 15 -O  /opt/iobroker/cambell/alarm.mp4'
              

              Bitte den Code in Code-Tags </> setzen !

              T 1 Reply Last reply Reply Quote 1
              • T
                tege0 @Glasfaser last edited by tege0

                @Glasfaser

                ffmpeg -y -i rtsp://admin:pw@192.168.178.48:554/Streaming/Channels/102/?transportmode=unicast -t 5 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=480:force_original_aspect_ratio=decrease -r 15 -O /opt/iobroker/cambell/alarm.mp4
                
                Glasfaser 1 Reply Last reply Reply Quote 0
                • Glasfaser
                  Glasfaser @tege0 last edited by

                  @tege0

                  ja .. !??

                  und schau mal hier :

                  https://forum.iobroker.net/topic/9508/frage-blockly-klingel-bild-per-telegram-versenden-snapshot-von-cam-per-telegram-versenden/75?_=1643061391435

                  hydrotec T 2 Replies Last reply Reply Quote 0
                  • hydrotec
                    hydrotec @Glasfaser last edited by

                    @glasfaser

                    OT
                    Ich glaub ich habe meinen Ansprechpartner gefunden, wenn ich das hier von Perl zu javascript umsetzen möchte.

                    1 Reply Last reply Reply Quote 0
                    • T
                      tege0 @Glasfaser last edited by

                      @glasfaser ok cool, jetzt hab ich schonmal ein video... ERstellen können mit

                      ffmpeg -y -i rtsp://admin:pw@192.168.178.48:554/Streaming/Channels/102/?transportmode=unicast -t 8 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=480:force_original_aspect_ratio=decrease -r 10 /opt/iobroker/cambell/alarm.mp4
                      
                      

                      nur Telegram zeigt es nicht an auf der NAS kann ich es jedoch abspielen

                      Glasfaser 1 Reply Last reply Reply Quote 0
                      • Glasfaser
                        Glasfaser @tege0 last edited by

                        @tege0 sagte in [Frage BLOCKLY ] Klingel Bild per Telegram versenden / Snapshot von Cam per Telegram versenden:

                        nur Telegram zeigt es nicht an

                        ......das liegt an dem Speicherort .

                        nimm mal mein Script .... und teste

                        T 1 Reply Last reply Reply Quote 1
                        • T
                          tege0 @Glasfaser last edited by

                          @glasfaser leider kann ich das nicht umsetzten da ich nicht mit javascript um kann... kann soetwas nur in Blockly 😞

                          Glasfaser 1 Reply Last reply Reply Quote 0
                          • Glasfaser
                            Glasfaser @tege0 last edited by Glasfaser

                            @tege0

                            var timeout;
                            
                             
                            
                             
                            
                            //Installation  apt-get update dann apt-get install ffmpeg
                            
                             
                            
                            on({id: '0_userdata.0.DoorBird.Klingel', val: true}, async function (obj) {
                            
                              var value = obj.state.val;
                            
                              var oldValue = obj.oldState.val;
                            
                              exec('ffmpeg -y -i rtsp://admin:pw@192.168.178.48:554/Streaming/Channels/102/?transportmode=unicast -t 8 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=480:force_original_aspect_ratio=decrease -r 10 /tmp/doorbird-motion.mp4');
                            
                              console.log("exec: " + 'ffmpeg -y -i rtsp://admin:pw@192.168.178.48:554/Streaming/Channels/102/?transportmode=unicast -t 8 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=480:force_original_aspect_ratio=decrease -r 10 /tmp/doorbird-motion.mp4');
                            
                              timeout = setTimeout(async function () {
                            
                                sendTo("telegram.0", "send", {
                            
                                    text: '/tmp/doorbird-motion.mp4',
                            
                                    disable_notification: true
                            
                                });
                            
                                console.log("telegram: " + '/tmp/doorbird-motion.mp4');
                            
                              }, 15000);
                            
                            });
                            

                            den Trigger

                            0_userdata.0.DoorBird.Klingel
                            

                            gegen deinen ersetzen

                            EDIT:

                            ... kann soetwas nur in Blockly

                            bzw.

                            es reicht bei dir im Blockly den Pfad zu ändern

                            auf:

                            /tmp/doorbird-motion.mp4
                            
                            T 1 Reply Last reply Reply Quote 1
                            • T
                              tege0 @Glasfaser last edited by tege0

                              @glasfaser Danke,

                              ich habe es im script also den Trigger geändert, dann kommt aber nichts per telegram da ich hier nicht wieß was geändert werden muss.

                              var timeout;
                               
                               
                               
                               
                               
                              //Installation  apt-get update dann apt-get install ffmpeg
                               
                               
                               
                              on({id: 'mqtt.0.ESP_NodeMCU_1_Tuer.Klingel_D3.Klingel_D3', val: true}, async function (obj) {
                               
                                var value = obj.state.val;
                               
                                var oldValue = obj.oldState.val;
                               
                                exec('ffmpeg -y -i rtsp://admin:pw@192.168.178.48:554/Streaming/Channels/102/?transportmode=unicast -t 8 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=480:force_original_aspect_ratio=decrease -r 10 /tmp/doorbird-motion.mp4');
                               
                                console.log("exec: " + 'ffmpeg -y -i rtsp://admin:pw@192.168.178.48:554/Streaming/Channels/102/?transportmode=unicast -t 8 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=480:force_original_aspect_ratio=decrease -r 10 /tmp/doorbird-motion.mp4');
                               
                                timeout = setTimeout(async function () {
                               
                                  sendTo("telegram.0", "send", {
                               
                                      text: '/tmp/doorbird-motion.mp4',
                               
                                      disable_notification: true
                               
                                  });
                               
                                  console.log("telegram: " + '/tmp/doorbird-motion.mp4');
                               
                                }, 15000);
                               
                              });
                              
                              
                              

                              ach habe ich den Pfad in Blockly geändert im script sowie im sent to aber hier bekomme ich das Video welche aber nicht abgespielt werden kann...

                              edit

                              es funktioniert ich muss nur den timout verlängern von 1000 auf z.b 2000

                              danke

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

                                @tege0 sagte in [Frage BLOCKLY ] Klingel Bild per Telegram versenden / Snapshot von Cam per Telegram versenden:

                                admin:pw@1

                                ich habe doch schon dein Link eingetragen .

                                Benutzer und Passwort anpassen !

                                1 Reply Last reply Reply Quote 1
                                • Glasfaser
                                  Glasfaser @tege0 last edited by

                                  @tege0 sagte in [Frage BLOCKLY ] Klingel Bild per Telegram versenden / Snapshot von Cam per Telegram versenden:

                                  edit
                                  es funktioniert ich muss nur den timout verlängern von 1000 auf z.b 2000

                                  Dann setzte ein Timeout ,in dein Blockly wenn du Ihn nicht hast , vor dem Telegram versandt !?

                                  T UHU01 2 Replies Last reply Reply Quote 1
                                  • T
                                    tege0 @Glasfaser last edited by tege0

                                    @glasfaser jo funktioniert jetzt auch mit meinen entsprechenden Pfad.

                                    6138f96b-b0c9-4ced-9100-aa4c3fc8be6d-image.png <img src="blob:chrome-untrusted://media-app/57e743b1-118d-4001-a8c7-755d94b35aae" alt="Screenshot 2022-01-24 23.46.44.png"/>

                                    was passiert wenn jetzt jemand im in kurzer Zeit zweimal Klingel drückt.

                                    Und besteht auch die möglichkeit die Zeit vor dem Klingel darzustellen? Hab eine Surveillance Station auf einer DS218+

                                    1 Reply Last reply Reply Quote 0
                                    • G
                                      goeste last edited by

                                      Hallo,

                                      Ich wollte meine Lösung kurz präsentieren, ich nutze eine Annke (Hikvision OEM) und die klingelsignalerkennung von HmIP, sowie Pushsafer, da mir Telegram und Signal jeweils zu lange gebraucht haben um die Daten zu übermitteln. Gleichzeitig lade ich die Bilder in Vis für:

                                      // Save image from Webcam
                                      async function save_imageTuer() {
                                          var source_url = 'http://192.168.2.243:81/image/eingang?q=100&s=100&decode=1';
                                              dest_path = '/opt/iobroker/iobroker-data/webcam/';
                                          var request = require('request');
                                          var fs      = require('fs');
                                          
                                          // Bild speichern
                                          function saveImage() {
                                              request.get({url: source_url, encoding: 'binary'}, function (err, response, body) {
                                                  fs.writeFile(dest_path + 'haustuer.jpg', body, 'binary', function(err) {
                                                  if (err) {
                                                      log('Fehler beim Bild speichern: ' + err, 'warn');
                                                  } else {
                                                      // Bild in Vis syncen
                                                      log('Synchronisiere Bild nach vis');
                                                          const bild = fs.readFileSync('/opt/iobroker/iobroker-data/webcam/haustuer.jpg');
                                                          writeFile('vis.0','haustuer.jpg', bild);
                                                      log('Webcam Bild Haustuer gespeichert');
                                                  }
                                                }); 
                                              });
                                          }
                                          
                                          // bei Skriptstart ausführen
                                          saveImage();
                                      
                                      }
                                      
                                      
                                      on({id: 'hm-rpc.1.0026Dxxxxxxxxx.1.STATE', val: true}, async function (obj) {
                                        var value = obj.state.val;
                                        var oldValue = obj.oldState.val;
                                        await save_imageTuer();
                                        await wait(3000);
                                        sendTo("pushsafer.0", "send", {
                                           message: 'Es hat an der Haustür geklingelt!',
                                           sound: "7",
                                           vibration: "1",
                                           url: 'http://192.168.2.243:81/h264/eingang/temp.m3u8',
                                           device: '49002',
                                           picture: '/opt/iobroker/iobroker-data/webcam/haustuer.jpg'
                                        });
                                      });
                                      

                                      bzw. So sieht es als Blockly aus:
                                      Annotation 2022-01-25 111207.jpg

                                      1 Reply Last reply Reply Quote 0
                                      • UHU01
                                        UHU01 @Glasfaser last edited by UHU01

                                        @glasfaser
                                        Hallo zusammen,

                                        ich hoffen ich kann den Post nochmal aufwecken. Ich stehe vor der gleichen Herausforderung. Mein bisheriger Stand:

                                        var timeout;
                                        
                                        
                                        on({id: [].concat(['0_userdata.0.Testschalter']), change: "ne"}, async function (obj) {
                                          var value = obj.state.val;
                                          var oldValue = obj.oldState.val;
                                          if (true) {
                                            console.log('Auslösung');
                                          }
                                          exec('\'ffmpeg -y -i rtsp://xxx:xxx@192.168.178.166:554/live/ch0/?transportmode=unicast -t 8 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=480:force_original_aspect_ratio=decrease -r 10 /tmp/doorbird-motion.mp4\'');
                                          timeout = setTimeout(async function () {
                                            sendTo("telegram.1", "send", {
                                                text: '/tmp/doorbird-motion.mp4',
                                                user: 'xxx'
                                            });
                                          }, 3000);
                                        });
                                        

                                        Ich bekomme aber auch nur den Pfad als Text gesendet.
                                        Der Stream ist per vlc mit der Adresse zu erreichen.
                                        Kann jemand helfen?

                                        Glasfaser 1 Reply Last reply Reply Quote 0
                                        • Glasfaser
                                          Glasfaser @UHU01 last edited by Glasfaser

                                          @UHU01
                                          EDIT ...
                                          Kopierfehler

                                          UHU01 1 Reply Last reply Reply Quote 0
                                          • UHU01
                                            UHU01 @Glasfaser last edited by

                                            @glasfaser
                                            Mit Putty passiert das hier:

                                            pi@raspberrypi:~ $ ffmpeg -y -i rtsp://xxx:xxx@192.168.178.166
                                            ffmpeg version 4.3.5-0+deb11u1+rpt3 Copyright (c) 2000-2022 the FFmpeg developer
                                              built with gcc 10 (Raspbian 10.2.1-6+rpi1)
                                              configuration: --prefix=/usr --extra-version=0+deb11u1+rpt3 --toolchain=harden-enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libc-enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-bsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enal2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-vout-drm --enab
                                              WARNING: library configuration mismatch
                                              avutil      configuration: --prefix=/usr --extra-version=0+deb11u1+rpt3 --toolble-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b -ble-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmyso --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --able-epoxy --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-vou2 --disable-thumb --enable-shared --disable-doc --disable-programs
                                              avcodec     configuration: --prefix=/usr --extra-version=0+deb11u1+rpt3 --toolble-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b -ble-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmyso --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --able-epoxy --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-vou2 --disable-thumb --enable-shared --disable-doc --disable-programs
                                              avformat    configuration: --prefix=/usr --extra-version=0+deb11u1+rpt3 --toolble-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b -ble-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmyso --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --able-epoxy --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-vou2 --disable-thumb --enable-shared --disable-doc --disable-programs
                                              avdevice    configuration: --prefix=/usr --extra-version=0+deb11u1+rpt3 --toolble-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b -ble-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmyso --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --able-epoxy --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-vou2 --disable-thumb --enable-shared --disable-doc --disable-programs
                                              avfilter    configuration: --prefix=/usr --extra-version=0+deb11u1+rpt3 --toolble-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b -ble-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmyso --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --able-epoxy --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-vou2 --disable-thumb --enable-shared --disable-doc --disable-programs
                                              avresample  configuration: --prefix=/usr --extra-version=0+deb11u1+rpt3 --toolble-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b -ble-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmyso --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --able-epoxy --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-vou2 --disable-thumb --enable-shared --disable-doc --disable-programs
                                              swscale     configuration: --prefix=/usr --extra-version=0+deb11u1+rpt3 --toolble-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b -ble-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmyso --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --able-epoxy --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-vou2 --disable-thumb --enable-shared --disable-doc --disable-programs
                                              swresample  configuration: --prefix=/usr --extra-version=0+deb11u1+rpt3 --toolble-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b -ble-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmyso --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --able-epoxy --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-vou2 --disable-thumb --enable-shared --disable-doc --disable-programs
                                              postproc    configuration: --prefix=/usr --extra-version=0+deb11u1+rpt3 --toolble-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b -ble-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmyso --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --able-epoxy --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-vou2 --disable-thumb --enable-shared --disable-doc --disable-programs
                                              libavutil      56. 51.100 / 56. 51.100
                                              libavcodec     58. 91.100 / 58. 91.100
                                              libavformat    58. 45.100 / 58. 45.100
                                              libavdevice    58. 10.100 / 58. 10.100
                                              libavfilter     7. 85.100 /  7. 85.100
                                              libavresample   4.  0.  0 /  4.  0.  0
                                              libswscale      5.  7.100 /  5.  7.100
                                              libswresample   3.  7.100 /  3.  7.100
                                              libpostproc    55.  7.100 / 55.  7.100
                                            rtsp://xxx:xxx@192.168.178.166:554/live/ch0/: Invalid data found when processing input
                                            

                                            Bei deinem Script kann ich nur die Variante mit dem mp4 testen, da meine Kamera keine Bilder ablegt. Bei mp4 erhalte ich das gleiche Ergebnis (nur den Pfad per Telegram).

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            424
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            36
                                            157
                                            32359
                                            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