Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Frage] Bild per telegram verschicken?

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

[Frage] Bild per telegram verschicken?

Scheduled Pinned Locked Moved Skripten / Logik
93 Posts 31 Posters 33.8k Views 8 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Offline
    P Offline
    pix
    wrote on last edited by
    #33

    Warum nutzt du nicht request?

    http://forum.iobroker.net/viewtopic.php … 1d1#p26352

    Gruß

    Pix

    ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

    1 Reply Last reply
    0
    • M Offline
      M Offline
      Michmu
      wrote on last edited by
      #34

      Hi Pix, der Script funktioniert 100% ig 😄

      Nur wie bekomme ich den Script am einfachsten aktiviert wenn ich klingel ?

      1 Reply Last reply
      0
      • S Offline
        S Offline
        Solear
        wrote on last edited by
        #35

        Ich bin zwar nicht pix, aber trotzdem:

        Du aktivierst das mit "on". Damit lauscht du auf den Sensor. Schau mal in den ersten paar Beiträgen hier auf Seite 1 des Threads, da sind einige Varianten zu sehen.

        Gesendet von iPhone mit Tapatalk

        iobroker als LXC unter Proxmox

        1 Reply Last reply
        0
        • M Offline
          M Offline
          Michmu
          wrote on last edited by
          #36

          Hab mir das so gedacht…. quasi mit einem Script einen Script Starten. Aber so wie ich es gemacht habe geht es nicht.

          var idKlingel = "hm-rpc.0.Mxxxxx.1.PRESS_SHORT"/Klingelsensor.PRESS_SHORT/; // Homematic Klingelsensor

          on({id: idKlingel, val: true}, function() // on lauscht auf Klingelsignal

          on Javascript.0.scriptEnabled.Skript3 true) ;

          1 Reply Last reply
          0
          • S Offline
            S Offline
            Solear
            wrote on last edited by
            #37

            Das musst du anders lösen, wenn du das auf 2 Skripte aufteilen willst. In Skript 1 stellst du einen Datenpunkt zur Verfügung, und in Skript 2 lauscht du per on auf diesen Datenscript auf eine Änderung.

            Aber ich glaube du machst dir das unnötig schwer.

            Packe dein

            var idKlingel = "hm-rpc.0.Mxxxxx.1.PRESS_SHORT"/*Klingelsensor.PRESS_SHORT*/; // Homematic Klingelsensor
            
            on({id: idKlingel, val: true}, function() // on lauscht auf Klingelsignal 
            

            in das Skript 3 von dir (was auch immer das ist).

            Poste doch mal konkreter was genau du gemacht hast und den Inhalt deiner relevanten Skripte, aber nutze bitte die Codetags```
            <code>[code][/code]</code>

            iobroker als LXC unter Proxmox

            1 Reply Last reply
            0
            • M Offline
              M Offline
              Michmu
              wrote on last edited by
              #38

              Das ist der Skript der die Webcam Bilder auf Telegram schickt.

              
              /* Testskript BILDSPEICHERUNG
              
              todo: zum Umbenennen der Datei gilp-rename nutzen
              
              soll bei Aktion Webcam Bild speichern und per telegram senden
              Skript ist normalerweise inaktiv und wird zur per ScriptEnabled ausgelöst
              erstellt 30.03.2016
              16.04.2016 nahc Update des telegram Adapters durch Bluefox ist es jetzt einfacher, Dateien zu senden
              25.05.2016 download Funktion entfernt und durch request ersetzt
              */
              
              var source_url = 'http://19XXXXXX:838//cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=Ipxxxxx&pwd=xxxxx', // Kamerabild zB http://kameraserver:9090/image1.jpg
                  dest_path = '/opt/ipcam/';
              
              var request = require('request');
              var fs      = require('fs');
              
              // Bild an telegram schicken (immer Dienst 3)
              function sendImage (pfad) {
                  setTimeout(function() {
                      sendTo('telegram', pfad);
                      log('Webcam Bild per telegram verschickt');
                  }, 2 * 1000);
              }
              
              // Bild speichern
              function saveImage() {
                  request.get({url: source_url, encoding: 'binary'}, function (err, response, body) {
                      fs.writeFile(dest_path + 'image1.jpg', body, 'binary', function(err) {
              
                      if (err) {
                          log('Fehler beim Bild speichern: ' + err, 'warn');
                      } else {
                          log('Webcam Bild gespeichert');
                          sendImage(dest_path + 'image1.jpg');
                      }
                    }); 
                  });
              }
              
              // bei Skriptstart ausführen
              saveImage();
              
              // selbständig Skript wieder anhalten (nach 12s)
              setStateDelayed('javascript.' + instance +  '.scriptEnabled.' + name.slice(10), false, 12*1000);
              
              

              Ich möchte einmal die möglichkeit haben per Text-> Kommando die Bilder auf Telegram anzufordern und das bei jedem Klingeln ein Bild geschickt wird.

              Die Variante per Text-> Kommando funktioniert ohne Probleme. (Der Script wird gestartet…Bild verschickt... Script beendet.

              Jetzt brauche ich halt eine möglichkeit bei jedem Klingeln den Script zu starten. habe es auch per Szene probiert. Bekomm ich aber auch nicht hin 😢

              1 Reply Last reply
              0
              • P Offline
                P Offline
                pix
                wrote on last edited by
                #39

                Hallo,

                die Variante mit dem abgeschalteten Skript ist nur ein Weg nach Rom. Normalerweise braucht man keine Skripts zu deaktivieren (es gibt Ausnahmen).

                Aber jetzt zu deinem Fall:

                Da das Skript ja deaktiviert ist, kannst du darin natürlich keine Kommandos setzen, die es aufwecken sollen.

                Du musst ein weiteres Skript anlegen und darin mit einem Trigger den Datenpunkt scriptEnabled vom schlafenden Skript auf true setzen.

                Nehmen wir an das schlafen Skript heißt Bildspeicherung und liegt in javascript.0.common.

                Dann

                var idKlingel = "hm-rpc.0.Mxxxxx.1.PRESS_SHORT"/*Klingelsensor.PRESS_SHORT*/; // Homematic Klingelsensor
                var idSkript = 'javascript.0.common.Bildspeicherung.scriptEnabled'; // Skript, dass aktiviert werden soll
                
                on({id: idKlingel, 
                      val: true}, 
                function(obj) { // on lauscht auf Klingelsignal, also ist der TRIGGER / AUSLÖSER
                    setState(idSkript, true);
                }
                
                

                Du musst jetzt nur den Namen und den Pfad ggf. anpassen.

                Gruß

                Pix

                ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                1 Reply Last reply
                0
                • D Offline
                  D Offline
                  dtp
                  wrote on last edited by
                  #40

                  Nur mal so nebenbei. Den https://www.doorpi.org/forum/ von motom001 kennt ihr?

                  Ich habe DoorPi auf einem Raspi 3 samt Kamera-Modul im Briefkasten im Einsatz. Damit lasse ich mir dann per Telegram beim Klingeln und beim Einwurf von Post Bilder zusenden. https://www.doorpi.org/forum/thread/63-push-nachrichten-von-doorpi/?pageNo=1 habe ich die Konfiguration von Telegram kurz beschrieben. Mir persönlich gefällt es besser, dass diese Lösung autark von der HomeMatic und dem ioBroker ist, so dass ich auch bei einem Ausfall dieser beiden Systeme weiterhin meine Push-Nachrichten erhalte. Trotzdem ist eine sehr gute Intergration in die HomeMatic möglich.

                  Bis dann,

                  Thorsten

                  ioBroker im Docker-Container auf Synology DiskStation DS718+, HomeMatic IP über CCU3, IKEA Dirigera inkl. Matter, Apple Homekit, Amazon Alexa.

                  1 Reply Last reply
                  0
                  • M Offline
                    M Offline
                    Michmu
                    wrote on last edited by
                    #41

                    Hi Pix,

                    es hat geklappt.Danke für deine Mühe.Ich hoffe das Morgenfrüh der Postbote klingelt :lol:

                    Ich musste nur Kleinigkeiten ändern.

                    var idKlingel = "hm-rpc.0.MXXXXX.1.PRESS_SHORT"/*Klingelsensor.PRESS_SHORT*/; // Homematic Klingelsensor
                    var idSkript = 'scriptEnabled.common.Webcambild'; // Skript, dass aktiviert werden soll
                    
                    on({id: idKlingel, 
                          val: true}, 
                    function(obj) { // on lauscht auf Klingelsignal, also ist der TRIGGER / AUSLÖSER
                        setState(idSkript, true);
                    });
                    

                    Danke und einen Schönen Abend noch!

                    1 Reply Last reply
                    0
                    • juergen2908J Offline
                      juergen2908J Offline
                      juergen2908
                      wrote on last edited by
                      #42

                      Hallo,

                      danke für das tolle Skript. Habe es bei mir für eine Kamera im Einsatz und es funktioniert einwandfrei.

                      Ich wollt jetzt meine 2. Kamera einbinden(anderes Modell) Maginon HDC 25.

                      Ich schaffe es nicht ein bild zu versenden, es wird zwar die image2.jpg erzeugt, aber die Datei ist nur 1 kb groß und wird von Telegramm nicht versendet.

                      Wenn man aber die Datei(über FileZilla) sich lokal rüberkopiert und unbenennt(Dateiendung), also von jpg auf txt, dann sieht man einen XML Code, wo drinnen steht :401 Unauthorized, was für mich soviel heißt, es werden keine Benutzerdaten beim http Aufruf mitübergeben.

                      Interessanterweise habe ich diese cam auch in der vis im Einsatz, dort funktioniert der aufruf, ohne das ich nochmal benutzer und Passwort eingeben muss.

                      Hier das Skript

                      /* Testskript BILDSPEICHERUNG
                      
                      todo: zum Umbenennen der Datei gilp-rename nutzen
                      
                      soll bei Aktion Webcam Bild speichern und per telegram senden
                      Skript ist normalerweise inaktiv und wird zur per ScriptEnabled ausgelöst
                      erstellt 30.03.2016
                      16.04.2016 nahc Update des telegram Adapters durch Bluefox ist es jetzt einfacher, Dateien zu senden
                      25.05.2016 download Funktion entfernt und durch request ersetzt
                      */
                      
                      var source_url = 'http://USER:PW@192.xxx.xxx.xxx:80/snapshot.jpg?user=user&pwd=xxxxxxxx!', // Kamerabild zB http://kameraserver:9090/image1.jpg
                          dest_path = '/opt/ipcam/';
                      
                      var request = require('request');
                      var fs      = require('fs');
                      
                      // Bild an telegram schicken (immer Dienst 3)
                      function sendImage (pfad) {
                          setTimeout(function() {
                              sendTo('telegram', pfad);
                              log('Webcam Bild per telegram verschickt');
                          }, 2 * 1000);
                      }
                      
                      // Bild speichern
                      function saveImage() {
                          request.get({url: source_url, encoding: 'binary'}, function (err, response, body) {
                              fs.writeFile(dest_path + 'image2.jpg', body, 'binary', function(err) {
                      
                              if (err) {
                                  log('Fehler beim Bild speichern: ' + err, 'warn');
                              } else {
                                  log('Webcam Bild gespeichert');
                                  sendImage(dest_path + 'image2.jpg');
                              }
                            }); 
                          });
                      }
                      
                      // bei Skriptstart ausführen
                      saveImage();
                      
                      // selbständig Skript wieder anhalten (nach 12s)
                      setStateDelayed('javascript.' + instance +  '.scriptEnabled.' + name.slice(10), false, 12*1000);
                      
                      

                      Hat vlt. irgendjemand eine Idee wo mein Fehler sein könnte?

                      Bitte um Hilfe!

                      LG

                      1 Reply Last reply
                      0
                      • juergen2908J Offline
                        juergen2908J Offline
                        juergen2908
                        wrote on last edited by
                        #43

                        Gelöst:

                        Nach Stundenlangem Probieren, bin ich draufgekommen, dass der URL nicht gestimmt hat, trotzdem aber am iPad und PC am Browser funktioniert hatte :roll:

                        der richtige URL für die Maginon HDC 25 ist:

                        http://192.xxx.xxx.xxx/snapshot.jpg?user=username&pwd=passwort
                        
                        

                        LG

                        1 Reply Last reply
                        0
                        • R Offline
                          R Offline
                          ralalla
                          wrote on last edited by
                          #44

                          Habe auch noch ein Problem mit dem Bild versenden.

                          Bisher lief alles. Jetzt habe ich einen 2. Pi als Host eingerichtet und dort hin Telegramm verschoben.

                          Das Bild wird aber immer noch auf dem anderen Pi gesichert, so erhalte ich dann nie ein Bild sondern immer nur die Bezeichnung mit Pfad.

                          Wie trage ich im Skript den Speicherort für das Bild ein so das es auf dem 2. Pi also dem Host gesichert wird ?

                          ioBroker auf Intel NUC mit Proxmox / PiVCCU auf Pi3

                          1 Reply Last reply
                          0
                          • juergen2908J Offline
                            juergen2908J Offline
                            juergen2908
                            wrote on last edited by
                            #45

                            Grüß Euch,

                            Habe jetzt schon wieder das ähnliche Problem bei meiner AvTech Kamera.

                            http://192.xxx.xxx.xxx/cgi-bin/guest/Video.cgi?media=JPEG 
                            
                            

                            ….sollte ja ohne Benutzerabfrage funktionieren, es kommt aber immer das Fenster für Benutzer und Kennwort.

                            Jemand eine Idee?

                            LG

                            1 Reply Last reply
                            0
                            • bahnuhrB Online
                              bahnuhrB Online
                              bahnuhr
                              Forum Testing Most Active
                              wrote on last edited by
                              #46

                              Ich meine irgendwo gelesen zu haben, dass du Benutzer und Kennwort mitgeben musst.


                              Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                              Danke.
                              gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                              ScreenToGif :https://www.screentogif.com/downloads.html

                              1 Reply Last reply
                              0
                              • juergen2908J Offline
                                juergen2908J Offline
                                juergen2908
                                wrote on last edited by
                                #47

                                Hi,

                                ja, ich weiss aber den Parameter aber nicht :?

                                LG

                                1 Reply Last reply
                                0
                                • bahnuhrB Online
                                  bahnuhrB Online
                                  bahnuhr
                                  Forum Testing Most Active
                                  wrote on last edited by
                                  #48

                                  Und genau aus diesem Grund hab ich nur Foscam gekauft.

                                  Hier sind die codes öffentlich.

                                  Außerdem wollte ich nur eine Fa. haben.

                                  wg. app und einheitlicher Darstellung auf dem Handy (ist aber ein anderes Thema).

                                  mfg


                                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                  Danke.
                                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                  ScreenToGif :https://www.screentogif.com/downloads.html

                                  1 Reply Last reply
                                  0
                                  • Mr. BurnsM Offline
                                    Mr. BurnsM Offline
                                    Mr. Burns
                                    wrote on last edited by
                                    #49

                                    Hi zusammen,

                                    Hab das Script etwas angepasst. Es funktioniert auch super! Aber, es gibt ja immer ein aber, ich bekomme immer einen Fehler im Log.

                                    Es funktioniert aber…jemand ne Idee?

                                    // Telegram Bild senden
                                    
                                    var source_url = 'http://192.XXX.XXX.XXX:XX/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=USER&pwd=PASSWORT', //Adresse der IpKamera
                                        dest_path = '/opt/ipcam/';
                                    var Trigger = "hm-rpc.1.LEQXXXXXXX.1.SENSOR"; //Trigger
                                    var Nachricht = "Es hat an der Haustüre geklingelt"; // Nachricht, welche mit dem Bild gesendet wird
                                    
                                    var request = require('request');
                                    var fs      = require('fs');
                                    
                                    // Bild an telegram schicken
                                    function sendImage (pfad) {
                                        setTimeout(function() {
                                            sendTo('telegram.0', pfad);
                                            sendTo("telegram.0", "send", { text: Nachricht});
                                            log('Webcam Bild per telegram verschickt');
                                        }, 2 * 1000);
                                    }
                                    
                                    // Bild speichern
                                    function saveImage() {
                                        request.get({url: source_url, encoding: 'binary'}, function (err, response, body) {
                                            fs.writeFile(dest_path + 'image2.jpg', body, 'binary', function(err) {
                                    
                                            if (err) {
                                                log('Fehler beim Bild speichern: ' + err, 'warn');
                                            } else {
                                                log('Webcam Bild gespeichert');
                                                sendImage(dest_path + 'image2.jpg');
                                            }
                                          }); 
                                        });
                                    }
                                    
                                    //Trigger
                                    on ({id: Trigger, val: true}, function () {
                                        saveImage();
                                    });
                                    

                                    1040_bildschirmfoto_2017-02-20_um_20.08.35.png

                                    1 Reply Last reply
                                    0
                                    • Mr. BurnsM Offline
                                      Mr. BurnsM Offline
                                      Mr. Burns
                                      wrote on last edited by
                                      #50
                                      // Telegram Bild senden
                                      
                                      var source_url = 'http://192.XXX.XXX.XXX:XX/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=USER&pwd=PASSWORT', //Adresse der IpKamera
                                          dest_path = '/opt/ipcam/';
                                      var Trigger = "hm-rpc.1.LEQXXXXXXX.1.SENSOR"; //Trigger
                                      var Nachricht = "Es hat an der Haustüre geklingelt"; // Nachricht, welche mit dem Bild gesendet wird
                                      
                                      var request = require('request');
                                      var fs      = require('fs');
                                      
                                      // Bild an telegram schicken
                                      function sendImage (pfad) {
                                          setTimeout(function() {
                                              sendTo('telegram.0', pfad);
                                              log('Webcam Bild per telegram verschickt');
                                          }, 2 * 1000);
                                          sendTo("telegram.0", Nachricht);    // <-- nach der Timeout funktion ausführen
                                      }
                                      
                                      // Bild speichern
                                      function saveImage() {
                                          request.get({url: source_url, encoding: 'binary'}, function (err, response, body) {
                                              fs.writeFile(dest_path + 'image2.jpg', body, 'binary', function(err) {
                                      
                                              if (err) {
                                                  log('Fehler beim Bild speichern: ' + err, 'warn');
                                              } else {
                                                  log('Webcam Bild gespeichert');
                                                  sendImage(dest_path + 'image2.jpg');
                                              }
                                            }); 
                                          });
                                      }
                                      
                                      //Trigger
                                      on ({id: Trigger, val: true}, function () {
                                          saveImage();
                                      });
                                      
                                      1 Reply Last reply
                                      0
                                      • juergen2908J Offline
                                        juergen2908J Offline
                                        juergen2908
                                        wrote on last edited by
                                        #51

                                        Hi,

                                        möchte das bild vom ipcam Verzeichnis in einer View anzeigen, wie lautet der Pfad?

                                        LG

                                        1 Reply Last reply
                                        0
                                        • chucky666C Online
                                          chucky666C Online
                                          chucky666
                                          wrote on last edited by
                                          #52

                                          Hallo zusammen

                                          Ich möchte nur bei Alarm ein Bild per Telegram haben .

                                          Ich habe eine Instar 5709hd Kamera

                                          Kann man sowas auch per Blocky lösen ?

                                          Gesendet von iPad mit Tapatalk Pro

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          736

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe