Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Frage] Bild per telegram verschicken?

    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] Bild per telegram verschicken?

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

      Habe gestern den js-controller auf Version 0.8.10 hochgezogen, funktioniert es bei euch noch ein Bild zu Telegram zu senden?

      on({time: {hour: 9, minute: 6}}, function() {
      sendTo('telegram', '/opt/iobroker/foto/kamerabild.jpeg');
      log("Foto verschickt");
      });
      

      Im log steht noch "Foto verschickt" aber es kommt nichts mehr an. Text schicken geht ohne Probleme

      1 Reply Last reply Reply Quote 0
      • S
        Solear last edited by

        Bei mir ging und geht es. Neustart gemacht?

        Gesendet von iPhone mit Tapatalk

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

          Hmm ok.

          Javascript Instanz und Telegram Adapter schon neu gestartet. Ich versuche mal noch nen kompletten Neustart.

          Edit: Nein, leider kein Erfolg.

          Cubie jetzt komplett neu gestartet, bringt leider auch nix. Laut Log sollte es verschickt werden, Pfad und Bild sind auch vorhanden.

          Keine Ahnung wieso es plötzlich nicht mehr geht. Jemand noch ne Idee wo/wie ich den Fehler suchen kann?

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

            Hi,

            nachdem ich ein wenig mit Cam Bildern und telegramm experimentiert habe, möchte ich Euch das Script gerne mal zur Verfügung stellen.

            Damit versende ich über Telegramm im Falle einer Sensorauslösung Einzel oder bei Alarm auch alle Webcam Bilder.

            Damit das funktioniert, sollte Eure instar Cam im Webbrowser über folgenden Aufruf ein Bild anzeigen:

            http://ip-der-cam/tmpfs/snap.jpg?usr=admin&pwd=instar
            

            Das Verschicken funktioniert über das speichern eines JPG Files in IOBroker, dazu wird die Funktion "download" verwendet.

            Ich habe ein wenig gebraucht rauszufinden, dass es eine extra JavaScript Funktion ist, die erst über das iobroker Terminal vorher manuell installiert werden muss.

            (bin halt noch nicht so geübt und Anfänger in Java)

            Dazu im IOBorker die Tablasche Terminal aufmachen und das eingeben:

            npm install download
            

            Danach bei Script Einstellungen "download" mit reinnehmen:
            1175_screenshot_at_mai_16_14-18-56.png

            Anschließend das Script übernehmen und ein wenig an Eure Cams anpassen.

            Im Script noch die IPs der Webcam anpassen bzw. beim Versenden aller WebCams dann die Anzahl der Cam Aufrufe anpassen.

            // Script: TelegramBild
            // Script: Bild und Text per Telegram verschicken, wenn ein Sensor auslöst
            // Script: 15.05.2016
            // Autor: thomassch
            // Grundidee: http://forum.iobroker.net/viewtopic.php?f=21&t=2609&p=24557&hilit=telegram#p24557
            
            // IPCams: Instar 5907HD / 6012HD
            
            var logging = true;
            var Download = require('download');  // Modul Download muss in Javascript-Einstellungen vorhanden sein
            var dest = '/images/';
            var foto_urlFlur   = "http://192.168.2.1/tmpfs/snap.jpg?usr=admin&pwd=instar"; // IP Webcam Snapshot Innen Flur
            var foto_urlGarage = "http://192.168.2.2/tmpfs/snap.jpg?usr=admin&pwd=instar"; // IP Webcam Snapshot Garage
            var foto_urlGarten = "http://192.168.2.3/tmpfs/snap.jpg?usr=admin&pwd=instar"; // IP Webcam Snapshot Kellertür
            var foto_urlWohn   = "http://192.168.2.4/tmpfs/snap.jpg?usr=admin&pwd=instar"; // IP Webcam Snapshot Wohnzimmer
            var txtaction = "..."; // Telegram Text
            
            if (logging) log("TelegramBild - Script start", "info");
            
            // Funktion zum Versenden einer Meldung und Bild über Telegramm
            // myObj   : Auslöseobjekt
            // myText  : wird im Telegramm als Objekttext (Klartext) angezeigt
            // txtTrue : wird bei auslösen = 1 im Telegram angezeigt
            // txtFalse: wird bei auslösen = 0 im Telegram angezeigt (hier nicht verwendet)
            // txtOrt  : Übergabe der WebCam Adresse
            // txtBild : lokaler Name für das Bild dass dann versendet wird
            
            // EInzelbild verschicken
            function xaktionCam(myObj, myText, txtTrue, txtFalse, txtOrt, txtBild)
            {
                if (logging) log("TelegramBild.xaktionCam - start", "info");
                if (myObj.newState.val === true) {
                    txtaction = txtTrue;
            
                    // erst mal Text
                    var myTel = myText + " " + txtaction;
                    if (logging) log("TelegramBild.xaktionCam - state = 1: " + myTel, "info");
                    setState("telegram.0.communicate.response", myTel);
            
                    // dann Bild verschicken
                    new Download({mode: '777'}).get(txtOrt).dest(dest).rename(txtBild+".jpg").run()
                    setTimeout(function(){
                        sendTo('telegram.0', dest+txtBild+'.jpg');
                        if (logging)  log("TelegramBild.xaktionCam - Bild versendet" + dest+txtBild+'.jpg', "info");
                    }, 6000); // 6 sek warten bevor man das JPG verschickt
                }
            
            }
            
            // Alle Cams aufnehmen und verschicken
            function xaktionCamAlle(myObj, myText)
            {
              if (logging) log("xaktionCamAlle - start", "info");
              if (myObj.newState.val === true) {
            
                  // erst mal Text
                  var myTel = myText;
                  if (logging) log("TelegramBild.xaktionCamAlle - state = 1: " + myTel, "info");
                  setState("telegram.0.communicate.response", myTel);
            
                  // dann Bild verschicken
                  new Download({mode: '777'}).get(foto_urlFlur).dest(dest).rename("BildAlarmFlur"+".jpg").run()
                  new Download({mode: '777'}).get(foto_urlGarage).dest(dest).rename("BildAlarmGarage"+".jpg").run()
                  new Download({mode: '777'}).get(foto_urlGarten).dest(dest).rename("BildAlarmGarten"+".jpg").run()
                  new Download({mode: '777'}).get(foto_urlWohn).dest(dest).rename("BildAlarmWohnzimmer"+".jpg").run()
            
                  setTimeout(
                    function()
                    {
                      sendTo('telegram.0', dest+"BildAlarmFlur"+'.jpg');
                      sendTo('telegram.0', dest+"BildAlarmGarage"+'.jpg');
                      sendTo('telegram.0', dest+"BildAlarmGarten"+'.jpg');
                      sendTo('telegram.0', dest+"BildAlarmWohnzimmer"+'.jpg');
                    }, 20000); // 20 sek warten bevor man das JPG verschickt
              }
            }
            
            // Auslöser
            on({id: "hm-rpc.0.LEQ1469465.1.STATE",          val: true}, function(obj) { xaktionCam(obj, "Die Innentür wurde "       ,"geöffnet",""      , foto_urlFlur  , "BildFlur"); }); // Innentür
            on({id: "hm-rpc.0.MEQ0100446.1.MOTION",         val: true}, function(obj) { xaktionCam(obj, "Garten Bewegungsmelder "   ,"ausgelöst",""     , foto_urlGarten, "BildGarten"); }); // Garten
            on({id: "hm-rpc.0.MEQ0656769.1.PRESS_SHORT",    val: true}, function(obj) { xaktionCam(obj, "Klingelsensor "            ,"es klingelt",""   , foto_urlGarage, "BildKlingel"); }); // Klingelsensor
            on({id: "hm-rpc.0.MEQ0812040.1.STATE",          val: true}, function(obj) { xaktionCam(obj, "Garagentor "               ,"wird geöffnet","" , foto_urlGarage, "BildGaragentor"); }); // Garagentor
            on({id: "hm-rpc.0.MEQ1408344.1.STATE",          val: true}, function(obj) { xaktionCam(obj, "Waschraum Tür "            ,"wird geöffnet","" , foto_urlGarage, "BildWaschRaumTuer"); }); // Waschraumtüre
            
            // AlarmEreignis
            on({id: "hm-rega.0.3047",  change:"ne"},                    function(obj) { xaktionCamAlle(obj, "!!! xxxx Alarm","ausgelöst xxxx !!!"); });
            on({id: "hm-rega.0.1790",  change:"ne"},                    function(obj) { xaktionCamAlle(obj, "!!! Voralarm","ausgelöst!!!"); });
            

            Jetzt fehlt mir eigentlich noch folgende Funktion:

            1. Ich würde gerne die aktuell gemachten Bilder und auch die letzten 10 Bilder speichern und auf einer Vis Seite anzeigen

            2. Eventuell bei Alarm für 10 Minuten, alle 15 sek Bilder erstellen und die ablegen - allerdings dann nicht auf IOBroker, sondern z.B. auf die Dropbox oder lokale NAS bei mir

            3. mit dem Telegram auch gleich einen Link auf die Vis Webseite schicken

            Vielleicht weiß jemand wie ich mit Javascript das JPG das ich gespeichert habe, gleich mal kopieren kann auf ein lokales Netzlaufwerk ???

            Gruss

            Thomas

            1 Reply Last reply Reply Quote 0
            • S
              Solear last edited by

              Hey, danke für das Skript!

              Wie lange dauert es bei dir vom Auslösen bis zum Ankommen des Bildes bei Telegram?

              Schneller als 2 Sekunden?

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

                @Solear:

                Hey, danke für das Skript!

                Wie lange dauert es bei dir vom Auslösen bis zum Ankommen des Bildes bei Telegram?

                Schneller als 2 Sekunden? `

                Hab es nicht gestoppt - die Bilder sind aber 2-3 sekunden später auf der Platte …

                da ich die Verzögerung drin habe, sind die 10-20 Sekunden später auch per Telegram auf meinen Handy...

                (ich denke aber die Zeit richtet sich nach der Auslastung von Telegram.)

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

                  nun eine Version inkl. Speicherung der letzten Bilder im VIS.0 Verzeichnis


                  29.05.2016 Änderung auf Request !


                  damit kann man nun auch eine Webseite machen mit diesen Bildern….

                  Die Verzögerungen sind notwendig, damit man erst kopiert wenn die Bilder auch von der Cam Webseite geladen wurden.

                  ... fehlt jetzt nur noch eine bessere History - ich möchte gerne beim Click auf einer der Bilder

                  a) auf die WebCam Seite gehen können

                  b) ein größeres Bild des gespeicherten Bildes sehen..

                  bin über jede Anregung dankbar.

                  Gruss

                  thomassch

                  // Script: TelegramBild
                  // Script: Bild und Text per Telegram verschicken, wenn ein Sensor auslöst
                  // Script: 15.05.2016
                  // Script: V0.81
                  // Autor: thomassch
                  // Grundidee: http://forum.iobroker.net/viewtopic.php?f=21&t=2609&p=24557&hilit=telegram#p24557
                  // Verwendet: https://github.com/kevva/download
                  
                  // weiteres: https://github.com/calvinmetcalf/copyfiles
                  
                  // IPCams: Instar 5907HD / 6012HD
                  
                  // History
                  // 29.05.2016 V0.81  download Funktion entfernt und durch request ersetzt
                  
                  var logging = true;
                  var request = require('request');    // Modul Request muss in Javascript-Einstellungen vorhanden sein
                  var fs      = require('fs');
                  var xCopyFiles = require('copyfiles'); // Modul Copyfiles zum Dateikopieren über Javascript-Einstellungen
                  
                  var dest = '/images/';
                  var foto_urlFlur   =    "http://192.xxx.xxx.xxx/tmpfs/snap.jpg?usr=admin&pwd=Instar"; // IP Webcam Snapshot Innen Flur
                  var foto_urlGarage =    "http://192.xxx.xxx.xxx/tmpfs/snap.jpg?usr=admin&pwd=Instar"; // IP Webcam Snapshot Garage
                  var foto_urlGarten =    "http://192.xxx.xxx.xxx/tmpfs/snap.jpg?usr=admin&pwd=Instar"; // IP Webcam Snapshot Kellertür
                  var foto_urlWohn   =    "http://192.xxx.xxx.xxx/tmpfs/snap.jpg?usr=admin&pwd=Instar"; // IP Webcam Snapshot Wohnzimmer
                  var txtaction = "..."; // Telegram Text
                  var xBildpfad = "..."; // Bild mit Pfad
                  
                  if (logging) log("TelegramBild - Script start", "info");
                  
                  // Funktion zum Versenden einer Meldung und Bild über Telegramm
                  // myObj   : Auslöseobjekt
                  // myText  : wird im Telegramm als Objekttext (Klartext) angezeigt
                  // txtTrue : wird bei auslösen = 1 im Telegram angezeigt
                  // txtFalse: wird bei auslösen = 0 im Telegram angezeigt (hier nicht verwendet)
                  // txtOrt  : Übergabe der WebCam Adresse
                  // txtBild : lokaler Name für das Bild dass dann versendet wird
                  
                  // EInzelbild verschicken
                  function xaktionCam(myObj, myText, txtTrue, txtFalse, txtUrlOrt, txtBild)
                  {
                      if (logging) log("TelegramBild.xaktionCam - start", "info");
                      if (myObj.newState.val === true) {
                          txtaction = txtTrue;
                  
                          // erst mal Text
                          var myTel = myText + " " + txtaction;
                          if (logging) log("TelegramBild.xaktionCam - state = 1: " + myTel, "info");
                          setState("telegram.0.communicate.response", myTel);
                  
                          // dann von Cam downloaden
                          myDownload(txtUrlOrt, dest, txtBild+".jpg");
                  
                          // Bild versenden
                          setTimeout(function(){
                              sendTo('telegram.0', dest+txtBild);
                              if (logging)  log("TelegramBild.xaktionCam - Bild versendet" + dest+txtBild+'.jpg', "info");
                          }, 6000); // 6 sek warten bevor man das JPG verschickt
                  
                          // Bild kopieren in VIS Verzeichnis für Anzeige im Webübersichtsbild      
                          setTimeout(
                              function()
                              {
                                  xBildpfad = dest+txtBild+".jpg";
                                  if (logging)  log("TelegramBild.xaktionCam - CopyFiles xBildpfad: "+ xBildpfad, "info");
                                  new xCopyFiles([xBildpfad,'/iobroker/iobroker-data/files/vis.0/main/Haus'],true,function (err){ 
                                      if (logging)  log("TelegramBild.xaktionCam - CopyFiles err: "+ err, "info"); 
                                      if (err) {
                                         if (logging)  log("TelegramBild.xaktionCam - CopyFiles Error", "info");
                                      } else {
                                         if (logging)  log("TelegramBild.xaktionCam - CopyFiles ok", "info");
                                      }
                                  });
                          }, 30000); // 20 sek warten bevor man das JPG umkopiert   
                      }
                  
                  }
                  
                  // Funktion zum Download von WebCam Website
                  function myDownload(mySource, myDest, myBildName)
                  {
                      // dann Bild von Cam Laden
                      request.get({url: mySource, encoding: 'binary'}, function (err, response, body) {
                          fs.writeFile(myDest + myBildName + ".jpg", body, 'binary', function(err) {
                              if (err) {
                                  if (logging) log("TelegramBild.xaktionCam - Fehler beim Bild: "+ myBildName + "speichern", "warn");
                                  } else {
                                  if (logging) log("TelegramBild.xaktionCam - Bild: " + myBildName + " gespeichert", "info");
                              }
                          });
                      });
                  }
                  
                  // Alle Cams aufnehmen und verschicken
                  function xaktionCamAlle(myObj, myText)
                  {
                    if (logging) log("xaktionCamAlle - start", "info");
                    if (myObj.newState.val === true) {
                  
                        // erst mal Text
                        var myTel = myText;
                        if (logging) log("TelegramBild.xaktionCamAlle - state = 1: " + myTel, "info");
                        setState("telegram.0.communicate.response", myTel);
                  
                        // erst mal aktuelle Bilder von den Cams holen
                        myDownload(foto_urlFlur,   dest, "BildAlarmFlur");
                        myDownload(foto_urlGarage, dest, "BildAlarmGarage");
                        myDownload(foto_urlGarten, dest, "BildAlarmGarten");
                        myDownload(foto_urlWohn,   dest, "BildAlarmWohnzimmer");
                  
                        // Die Bilder per Telegramm nach 20 sekunden verschicken
                        setTimeout(
                          function()
                          {
                            sendTo('telegram.0', dest+"BildAlarmFlur"+'.jpg');
                            sendTo('telegram.0', dest+"BildAlarmGarage"+'.jpg');
                            sendTo('telegram.0', dest+"BildAlarmGarten"+'.jpg');
                            sendTo('telegram.0', dest+"BildAlarmWohnzimmer"+'.jpg');
                          }, 20000); // 20 sek warten bevor man das JPG verschickt
                  
                        // und nun alle 4 umkopieren
                        // Bild kopieren in VIS Verzeichnis für Anzeige im Webübersichtsbild      
                        setTimeout(
                          function()
                          {
                              new xCopyFiles([dest+"BildAlarmFlur.jpg"      ,'/iobroker/iobroker-data/files/vis.0/main/Haus'],true,function (err){ });
                              new xCopyFiles([dest+"BildAlarmGarage.jpg"    ,'/iobroker/iobroker-data/files/vis.0/main/Haus'],true,function (err){ });
                              new xCopyFiles([dest+"BildAlarmGarten.jpg"    ,'/iobroker/iobroker-data/files/vis.0/main/Haus'],true,function (err){ });
                              new xCopyFiles([dest+"BildAlarmWohnzimmer.jpg",'/iobroker/iobroker-data/files/vis.0/main/Haus'],true,function (err){ });
                          }, 30000); // 30 sek warten bevor man das JPG umkopiert
                  
                    }
                  }
                  
                  // Auslöser
                  on({id: "hm-rpc.0.LEQxxx.1.STATE",          val: true}, function(obj) { xaktionCam(obj, "Die Innentür wurde "       ,"geöffnet",""      , foto_urlFlur  ,   "BildFlur"); }); // Innentür
                  on({id: "hm-rpc.0.MEQxxx.1.MOTION",         val: true}, function(obj) { xaktionCam(obj, "Garten Bewegungsmelder "   ,"ausgelöst",""     , foto_urlGarten,   "BildGarten"); }); // Garten
                  on({id: "hm-rpc.0.MEQxxx.1.PRESS_SHORT",    val: true}, function(obj) { xaktionCam(obj, "Klingelsensor "            ,"es klingelt",""   , foto_urlGarage,   "BildKlingel"); }); // Klingelsensor
                  on({id: "hm-rpc.0.MEQxxx.1.STATE",          val: true}, function(obj) { xaktionCam(obj, "Garagentor "               ,"wird geöffnet","" , foto_urlGarage,   "BildGaragentor"); }); // Garagentor
                  on({id: "hm-rpc.0.MEQxxx.1.STATE",          val: true}, function(obj) { xaktionCam(obj, "Haustür "                  ,"wird geöffnet","" , foto_urlGarage,   "BildHausTuer"); }); // Garagentor
                  on({id: "hm-rpc.0.MEQxxx.1.STATE",          val: true}, function(obj) { xaktionCam(obj, "Waschraum Tür "            ,"wird geöffnet","" , foto_urlGarten,   "BildWaschRaumTuer"); }); // Waschraumtüre
                  
                  // AlarmEreignis
                  on({id: "hm-rega.0.3047",  change:"ne"},                    function(obj) { xaktionCamAlle(obj, "!!! xxxx Alarm","ausgelöst xxxx !!!"); });
                  on({id: "hm-rega.0.1790",  change:"ne"},                    function(obj) { xaktionCamAlle(obj, "!!! Voralarm","ausgelöst!!!"); });
                  
                  

                  hier noch das Widget

                  [{"tpl":"tplHtml","data":{"hm_id":65535,"digits":6,"factor":1,"html":"BildGarten.jpg","visibility-cond":"==","visibility-val":1,"refreshInterval":"0","gestures-offsetX":0,"gestures-offsetY":0},"style":{"width":"166px","height":"14px","left":"318px","top":59,"background":"","color":"white","font":"normal normal normal 16px/normal Arial","border":"","padding":"3px","z-index":1,"font-size":"small"},"widgetSet":"basic"},{"tpl":"tplHtml","data":{"hm_id":65535,"digits":6,"factor":1,"html":"BildHausTuer.jpg","visibility-cond":"==","visibility-val":1,"refreshInterval":"0","gestures-offsetX":0,"gestures-offsetY":0},"style":{"width":"166px","height":"14px","left":"630px","top":59,"background":"","color":"white","font":"normal normal normal 16px/normal Arial","border":"","padding":"3px","z-index":1,"font-size":"small"},"widgetSet":"basic"},{"tpl":"tplHtml","data":{"hm_id":65535,"digits":6,"factor":1,"html":"BildKlingel.jpg","visibility-cond":"==","visibility-val":1,"refreshInterval":"0","gestures-offsetX":0,"gestures-offsetY":0},"style":{"width":"166px","height":"14px","left":"8px","top":279,"background":"","color":"white","font":"normal normal normal 16px/normal Arial","border":"","padding":"3px","z-index":1,"font-size":"small"},"widgetSet":"basic"},{"tpl":"tplHtml","data":{"hm_id":65535,"digits":6,"factor":1,"html":"BildGaragentor.jpg","visibility-cond":"==","visibility-val":1,"refreshInterval":"0","gestures-offsetX":0,"gestures-offsetY":0},"style":{"width":"166px","height":"14px","left":"321px","top":281,"background":"","color":"white","font":"normal normal normal 16px/normal Arial","border":"","padding":"3px","z-index":1,"font-size":"small"},"widgetSet":"basic"},{"tpl":"tplHtml","data":{"hm_id":65535,"digits":6,"factor":1,"html":"BildWaschRaumTuer.jpg","visibility-cond":"==","visibility-val":1,"refreshInterval":"0","gestures-offsetX":0,"gestures-offsetY":0},"style":{"width":"166px","height":"14px","left":"630px","top":280,"background":"","color":"white","font":"normal normal normal 16px/normal Arial","border":"","padding":"3px","z-index":1,"font-size":"small"},"widgetSet":"basic"},{"tpl":"tplImage","data":{"hm_id":65535,"digits":"","factor":1,"min":0,"max":1,"step":0.01,"src":"/vis.0/main/Haus/BildGaragentor.jpg","refreshInterval":"30000","visibility-cond":"==","visibility-val":1,"refreshOnWakeUp":"false","refreshOnViewChange":"false","gestures-offsetX":0,"gestures-offsetY":0,"stretch":true,"visibility-oid":""},"style":{"left":"322.5px","top":300,"width":"310px","height":"190px"},"widgetSet":"basic"},{"tpl":"tplImage","data":{"hm_id":65535,"digits":"","factor":1,"min":0,"max":1,"step":0.01,"src":"/vis.0/main/Haus/BildWaschRaumTuer.jpg","refreshInterval":"30000","visibility-cond":"==","visibility-val":1,"refreshOnWakeUp":"false","refreshOnViewChange":"false","gestures-offsetX":0,"gestures-offsetY":0,"stretch":true,"visibility-oid":""},"style":{"left":"634px","top":300,"width":"310px","height":"190px"},"widgetSet":"basic"},{"tpl":"tplImage","data":{"hm_id":65535,"digits":"","factor":1,"min":0,"max":1,"step":0.01,"src":"/vis.0/main/Haus/BildAlarmFlur.jpg","refreshInterval":"30000","visibility-cond":"==","visibility-val":1,"refreshOnWakeUp":"false","refreshOnViewChange":"false","gestures-offsetX":0,"gestures-offsetY":0,"stretch":true,"visibility-oid":""},"style":{"left":"11px","top":"547px","width":"238px","height":"128px"},"widgetSet":"basic"},{"tpl":"tplImage","data":{"hm_id":65535,"digits":"","factor":1,"min":0,"max":1,"step":0.01,"src":"/vis.0/main/Haus/BildAlarmGarten.jpg","refreshInterval":"30000","visibility-cond":"==","visibility-val":1,"refreshOnWakeUp":"false","refreshOnViewChange":"false","gestures-offsetX":0,"gestures-offsetY":0,"stretch":true,"visibility-oid":""},"style":{"left":"497px","top":"547px","width":"238px","height":"128px"},"widgetSet":"basic"},{"tpl":"tplImage","data":{"hm_id":65535,"digits":"","factor":1,"min":0,"max":1,"step":0.01,"src":"/vis.0/main/Haus/BildAlarmWohnzimmer.jpg","refreshInterval":"30000","visibility-cond":"==","visibility-val":1,"refreshOnWakeUp":"false","refreshOnViewChange":"false","gestures-offsetX":0,"gestures-offsetY":0,"stretch":true,"visibility-oid":""},"style":{"left":"739px","top":"547px","width":"238px","height":"128px"},"widgetSet":"basic"},{"tpl":"tplHtml","data":{"hm_id":65535,"digits":6,"factor":1,"html":"BildAlarmFlur.jpg","visibility-cond":"==","visibility-val":1,"refreshInterval":"0","gestures-offsetX":0,"gestures-offsetY":0},"style":{"width":"166px","height":"14px","left":"8px","top":527,"background":"","color":"#e0a800","font":"normal normal normal 16px/normal Arial","border":"","padding":"3px","z-index":1,"font-size":"small"},"widgetSet":"basic"},{"tpl":"tplHtml","data":{"hm_id":65535,"digits":6,"factor":1,"html":"BildAlarmGarage.jpg","visibility-cond":"==","visibility-val":1,"refreshInterval":"0","gestures-offsetX":0,"gestures-offsetY":0},"style":{"width":"166px","height":"14px","left":"251px","top":"527px","background":"","color":"#e0a800","font":"normal normal normal 16px/normal Arial","border":"","padding":"3px","z-index":1,"font-size":"small"},"widgetSet":"basic"},{"tpl":"tplHtml","data":{"hm_id":65535,"digits":6,"factor":1,"html":"BildAlarmGarten.jpg","visibility-cond":"==","visibility-val":1,"refreshInterval":"0","gestures-offsetX":0,"gestures-offsetY":0},"style":{"width":"166px","height":"14px","left":"494px","top":"527px","background":"","color":"#e0a800","font":"normal normal normal 16px/normal Arial","border":"","padding":"3px","z-index":1,"font-size":"small"},"widgetSet":"basic"},{"tpl":"tplHtml","data":{"hm_id":65535,"digits":6,"factor":1,"html":"BildAlarmWohnzimmer.jpg","visibility-cond":"==","visibility-val":1,"refreshInterval":"0","gestures-offsetX":0,"gestures-offsetY":0},"style":{"width":"166px","height":"14px","left":"735px","top":"527px","background":"","color":"#e0a800","font":"normal normal normal 16px/normal Arial","border":"","padding":"3px","z-index":1,"font-size":"small"},"widgetSet":"basic"},{"tpl":"tplImage","data":{"hm_id":65535,"digits":"","factor":1,"min":0,"max":1,"step":0.01,"src":"/vis.0/main/Haus/BildAlarmGarage.jpg","refreshInterval":"30000","visibility-cond":"==","visibility-val":1,"refreshOnWakeUp":"false","refreshOnViewChange":"false","gestures-offsetX":0,"gestures-offsetY":0,"stretch":true,"visibility-oid":""},"style":{"left":"254px","top":"547px","width":"238px","height":"128px"},"widgetSet":"basic"},{"tpl":"tplImage","data":{"hm_id":65535,"digits":"","factor":1,"min":0,"max":1,"step":0.01,"src":"/vis.0/main/Haus/BildKlingel.jpg","refreshInterval":"30000","visibility-cond":"==","visibility-val":1,"refreshOnWakeUp":"false","refreshOnViewChange":"false","gestures-offsetX":0,"gestures-offsetY":0,"stretch":true,"visibility-oid":""},"style":{"left":"11px","top":300,"width":"310px","height":"190px"},"widgetSet":"basic"},{"tpl":"tplImage","data":{"hm_id":65535,"digits":"","factor":1,"min":0,"max":1,"step":0.01,"src":"/vis.0/main/Haus/BildHausTuer.jpg","refreshInterval":"30000","visibility-cond":"==","visibility-val":1,"refreshOnWakeUp":"false","refreshOnViewChange":"false","gestures-offsetX":0,"gestures-offsetY":0,"stretch":true,"visibility-oid":""},"style":{"left":"634px","top":80,"width":"310px","height":"190px"},"widgetSet":"basic"},{"tpl":"tplImage","data":{"hm_id":65535,"digits":"","factor":1,"min":0,"max":1,"step":0.01,"src":"/vis.0/main/Haus/BildGarten.jpg","refreshInterval":"30000","visibility-cond":"==","visibility-val":1,"refreshOnWakeUp":"false","refreshOnViewChange":"false","gestures-offsetX":0,"gestures-offsetY":0,"stretch":true,"visibility-oid":""},"style":{"left":"321.5px","top":80,"width":"310px","height":"190px"},"widgetSet":"basic"},{"tpl":"tplImage","data":{"hm_id":65535,"digits":"","factor":1,"min":0,"max":1,"step":0.01,"src":"/vis.0/main/Haus/BildFlur.jpg","refreshInterval":"30000","visibility-cond":"==","visibility-val":1,"refreshOnWakeUp":"false","refreshOnViewChange":"false","gestures-offsetX":0,"gestures-offsetY":0,"stretch":true,"visibility-oid":""},"style":{"left":"9px","top":80,"width":"310px","height":"190px"},"widgetSet":"basic"},{"tpl":"tplHtml","data":{"hm_id":65535,"digits":6,"factor":1,"html":"BildFlur.jpg","visibility-cond":"==","visibility-val":1,"refreshInterval":"0","gestures-offsetX":0,"gestures-offsetY":0},"style":{"width":"166px","height":"14px","left":7,"top":58,"background":"","color":"white","font":"normal normal normal 16px/normal Arial","border":"","padding":"3px","z-index":1,"font-size":"small"},"widgetSet":"basic"}]
                  
                  1 Reply Last reply Reply Quote 0
                  • P
                    pix last edited by

                    Auch hier kurz der Hinweis:

                    seit dem letzten großen Javascript-Update gibt es möglicherweise Probleme mit der Download Lib. Deshalb lieber request nutzen, wie hier beschrieben:

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

                    Gruß

                    Pix

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

                      @pix:

                      Auch hier kurz der Hinweis:

                      seit dem letzten großen Javascript-Update gibt es möglicherweise Probleme mit der Download Lib. Deshalb lieber request nutzen, wie hier beschrieben:

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

                      Gruß

                      Pix `

                      Danke Pix, habe es mit Request angepasst, funktioniert…

                      1 Reply Last reply Reply Quote 0
                      • M
                        Michmu last edited by

                        Kann jemand mir vieleicht Helfen den Skript zum verschicken des Webcam Bildes Per Telegram zu erstellen ? Ich trete auf der Stelle.

                        1 Reply Last reply Reply Quote 0
                        • S
                          Solear last edited by

                          @Michmu:

                          Kann jemand mir vieleicht Helfen den Skript zum verschicken des Webcam Bildes Per Telegram zu erstellen ? Ich trete auf der Stelle. `

                          Woran scheitert es genau, und was hast du gemacht, wie sieht dein Script aus bzw. deine Versuche?

                          Telegram ist eingerichtet, mit Adapter, botfather eingerichtet und Bot erzeugt und funktioniert an sich (andere iobroker Meldungen kommen an?)

                          Bei mir läuft es so vom Script:

                          // ###################################################
                          // Webcamfoto schicken
                          
                          on("telegram.0.communicate.request", function (obj) {
                             if  (obj.newState.val == "[Henrik]torfoto" || obj.newState.val == "[Henrik]/torfoto") {      
                                 getfoto(); 
                                 setState("telegram.0.communicate.request","leer");
                             }
                          });
                          
                          function getfoto() {
                                  exec ("wget --user=xxxxxx --password=xxxxxx -N -P /home/henrik/iobroker/cache http://192.168.1.148/dms?nowprofileid=1.jpg");
                                  sendphoto();                                    // Rufe Funktion sendphoto auf
                          
                                  setState("telegram.0.communicate.request","leer");
                          
                                  sendTo('telegram', 'Was noch?' +
                                             '\n' + '/haus' +
                                             '\n' + '/haupthahn' +
                                             '\n' + '/heckehatti' +
                                             '\n' + '/reboot');
                          
                          }
                          
                          function sendphoto() {                      // Warteschleife, 3 Sekunden, damit das Bild erzeugt wird
                              setTimeout(waittime, 3000);    
                          }
                          
                          function waittime() {                       // Nach der Warteschleife, sende das Bild per Telegram
                              sendTo('telegram', "/home/henrik/iobroker/cache/dms?nowprofileid=1.jpg");  
                          }
                          
                          
                          1 Reply Last reply Reply Quote 0
                          • M
                            Michmu last edited by

                            "Es hat geklingelt" wird zu Telegram geschickt, Eine test.jpg wird angelegt ( aber nur 51 kb groß) also kein Bild und sonst nichts

                            // Grupppe Klingel/Torfoto
                            
                            var idKlingel = "hm-rpc.0.MEQ004xxxxx.1.PRESS_SHORT"/*Klingelsensor.PRESS_SHORT*/;   
                            
                            on({id: idKlingel, val: true}, function() {
                                    exec ("wget --output-document /opt/ipcam/test.jpg http://IP:Port/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=User&pwd=Pass");
                            
                                    sendTo("telegram", "Es hat geklingelt");        // Sende Pushovernachricht
                            
                            });
                            
                            function sendphoto() {                      // Warteschleife, 6 Sekunden, damit das Bild erzeugt wird
                                setTimeout(waittime, 6000);    
                            }
                            
                            function waittime() {                       // Nach der Warteschleife, sende das Bild per Telegram
                            
                                sendTo('telegram', "/opt/ipcam/test.jpg");  
                            }
                            
                            1 Reply Last reply Reply Quote 0
                            • M
                              Michmu last edited by

                              Wenn ich den (funktionierenden Befehl unter Linux) einfüge : wget –output-document /opt/ipcam/test.jpg "http://IP:Port//cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=Cam&pwd=Pass"

                              Zeigt er folgendes an:
                              976_unbenaknnt.png

                              1 Reply Last reply Reply Quote 0
                              • S
                                Solear last edited by

                                Vergleiche mal deine wget Zeile mit meiner, da sind noch Unterschiede, zB bei den Anführungszeichen.

                                1 Reply Last reply Reply Quote 0
                                • M
                                  Michmu last edited by

                                  habe die Ausrufezeichen wieder geändert. ("wget –output-document /opt/ipcam/test.jpg http://IP:Port/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=User&pwd=Pass")

                                  Jetzt kommt die Meldung nicht mehr.

                                  Aber die Datei ist nur 51 KB groß. Mit deiner Wget Zeile funktioniert es garnicht.

                                  Wenn ich den Link in den Browser gebe (http:// IP:Port/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=User&pwd=Pass) hab ich direkt ein Bild und kann es mit Rechtsklick speichern (CGIProxy.fcgi.jpg)

                                  1 Reply Last reply Reply Quote 0
                                  • P
                                    pix last edited by

                                    Warum nutzt du nicht request?

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

                                    Gruß

                                    Pix

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      Michmu last edited by

                                      Hi Pix, der Script funktioniert 100% ig 😄

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

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        Solear last edited by

                                        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

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          Michmu last edited by

                                          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 Reply Quote 0
                                          • S
                                            Solear last edited by

                                            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>

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            412
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            31
                                            93
                                            31198
                                            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