Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Netatmo Adapter Live camera picture URL per Telegram senden

    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

    Netatmo Adapter Live camera picture URL per Telegram senden

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

      @ThomasLPZ:

      Hallo Frank,

      ich habe mal nachgelesen https://dev.netatmo.com/en-US/resources … urity/live. Die URL ändert sich alle 3 Stunden. Insofern wäre es mal interessant, ob im Abstand von >3Stunden das richtige Bild angezeigt wird. Wenn dem so ist, dann ist meine Vermutung, dass hier im Telegram oder auf dem Handy selbst das Bild im Cache verbleibt und (wenn kein neuer Link übermittelt wird) das Bild nicht neu geladen wird sondern einfach das "alte" angezeigt wird. Vielleicht magst du das ja mal testen. `

      Du hattest Recht. Heute Mittag hat der Postbote geklingelt. Ein Bild kam.

      Als ich gerade nach Hause kam habe ich geklingelt. Diesmal kam ein Bild von mir :lol:

      Somit funktioniert das mit dem hinterlegten Objekt ansatt der URL.

      Klingel ich allerdings erneut, kommt wieder das gleiche Bild. Muss dann wohl wieder 3 Stunden warten.

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

        Also nur noch alle 3 Stunden klingeln. Das könnte man ja am Eingang vermerken :lol:

        Ich denke damit liegt es an Telegram. Ich würde versuchen das Bild aus der URL in eine Datei auf dem ioBroker-Host zu schreiben und dieses dann per Telegram zu versenden. Also ähnlich wie hier in anderer Form schon umgesetzt: viewtopic.php?f=21&t=18739&hilit=kamera+telegram

        Aber vielleicht hat ja noch jemand eine ganz andere Idee.

        Gruß

        Thomas

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

          Hi

          Das mit dem v7 oder v 11 lässt sich nicht ändern!!

          du musst nur einen teil der URL nehmen

          bei mir sieht sie so aus

          http://192.xxx.xxx.xx(IP der Kamera)/835abfacdxxxxxxxxx (dert teil aus deiner URL)/live/files/poor/index.m3u8

          ! Hallo in die Runde,
          ! ich versuche mal zu schildern was ich bisher tun konnte. Vielleicht hilft es ja bei der ein oder anderen Fragestellung.
          ! Anlegen der APP unter https://dev.netatmo.com/myaccount/
          ! Client ID und Client Secret in den Netatmo-Adapter im IOBroker eintragen - Speichern - Adapter startet neu
          ! In den Objekten im IOBroker findet man nun die Livestream URL der Kamera für den externen Zugriff.
          ! Bsp.: https://v1.netatmo.net/restricted/xx.xx … <schlüssel 1="">/<schlüssel 2="">/live/index_local.m3u8 Diese funktionier bei mir zeitlich begrenzt im VLC-Player.
          ! Nun einfach (für den internen Zugriff - Achtung "http" nicht mehr "https") den Link für den Livestream wie folgt generieren:
          ! http://<lokale ip/der/kamera="">/<schlüssel 1="">/live/index_local.m3u8
          ! Alternativ für verschiedene Bandbreiten und Auflösungen statt "/live/index_local.m3u8" jeweils:
          ! /live/files/poor/index.m3u8 (Bandbreite=64000 - Auflösung 640x360)
          ! /live/files/low/index.m3u8 (Bandbreite=500000 - Auflösung 640x360)
          ! /live/files/medium/index.m3u8 (Bandbreite=1000000 - Auflösung 1280x720)
          ! /live/files/high/index.m3u8 (Bandbreite=3000000 - Auflösung 1920x1080)
          ! verwenden.
          ! Die jeweiligen Links funktionieren bei mir (bisher) ohne zeitliche Begrenzung.
          ! Ich hoffe ich konnte ein wenig helfen.
          ! Gruß
          ! Thomas</schlüssel></lokale></schlüssel></schlüssel>
          aber lies mal hier!!

          viewtopic.php?f=20&t=9641

          1 Reply Last reply Reply Quote 0
          • K
            Kaiman55 last edited by

            @ThomasLPZ:

            Also nur noch alle 3 Stunden klingeln. Das könnte man ja am Eingang vermerken :lol:

            Ich denke damit liegt es an Telegram. Ich würde versuchen das Bild aus der URL in eine Datei auf dem ioBroker-Host zu schreiben und dieses dann per Telegram zu versenden. Also ähnlich wie hier in anderer Form schon umgesetzt: viewtopic.php?f=21&t=18739&hilit=kamera+telegram

            Aber vielleicht hat ja noch jemand eine ganz andere Idee. `
            :lol:

            "Nur alle 3 Stunden klingeln" ist gut :mrgreen:

            Ich werde mal schauen, ob ich es mit Blockly hinbekomme, die Bilddatei wegzuschreiben.

            Gruss Frank

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

              Ob das mit Blockly was werden kann bin ich gespannt. Kannst ja mal dein Ergebnis posten wenn du magst. Ich schau mal ob ich heute Abend Zeit finde. Die Idee find ich spannend. 8-)

              VG

              Thomas

              1 Reply Last reply Reply Quote 0
              • K
                Kaiman55 last edited by

                Hi Thomas,

                ich habe mir den Link von Deinem Beispiel mit dem wegschreiben mal angeschaut.

                Aber ich verstehe nur Bahnhof und kann es leider nicht auf die Presence umsetzen.

                😢

                LG Frank

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

                  Hi Frank,

                  ich habe mal dein Blockly importiert und das im Javascript nachgebildet. Dies kannst du einfach importieren und müsttest nur noch die ersten Angaben (Zeile 3 bis 5) auf deine Installation anpassen. Ich denke es ist soweit selbsterklärend.

                  Kannst ja mal versuchen ob es nun funktioniert. Hier im Script wird jetzt das Bild geholt, im Image-Verzeichnis (muss du vorher anlegen) zwischengespeichert, an Telegram gesendet und anschließend wieder gelöscht. Schau mal ob es bei dir funktioniert. Bei mir läuft es 🙂

                  Hab mich dabei an dem Script von @HoffmannOs unter viewtopic.php?f=21&t=18739&hilit=kamera … am#p195677 orientiert.

                  Grüße

                  Thomas

                  var fs = require('fs');
                  
                  camerapicture = 'netatmo.0.Home.Presence.live.picture' ;    // Objekt der Live camera picture URL
                  imagepath = '/Image/'                                       // Pfand zum Zwischenspeicher des Bildes - muss vorher angelegt sein
                  message = 'Es hat an der Haustür geklingelt'                // Nachrichtentext für Telegram
                  
                  on({id: "hm-rpc.1.PEQ0653529.1.PRESS_SHORT", val: true}, function (obj) {
                    var value = obj.state.val;
                    var oldValue = obj.oldState.val;
                    setState("mihome.0.devices.gateway_7c49ebb17ef2.mid", 10);
                    setState("mihome.0.devices.gateway_7c49ebb17ef2.dimmer", 100);
                    setState("mihome.0.devices.gateway_7c49ebb17ef2.rgb", '#002BFF');
                    setState("alexa2.0.Echo-Devices.G090LF0964330VQ6.Commands.speak", 'Es hat an der Haustüre geklingelt');
                    setStateDelayed("alexa2.0.Echo-Devices.G090LV037066068T.Commands.speak", 'Es hat an der Haustüre geklingelt', 3000, false);
                    setStateDelayed("alexa2.0.Echo-Devices.G2A0QU06837206K8.Commands.speak", 'Es hat an der Haustüre geklingelt', 6000, false);
                    setStateDelayed("alexa2.0.Echo-Devices.G090LV03733600SK.Commands.speak", 'Es hat an der Haustüre geklingelt', 9000, false);
                    setStateDelayed("mihome.0.devices.gateway_7c49ebb17ef2.mid", 10, 5000, false);
                    setStateDelayed("mihome.0.devices.gateway_7c49ebb17ef2.dimmer", 0, 30000, false);
                    getImage( obj );
                  });
                  
                  // Bild aus Objekt camerapicture holen
                  function getImage() {
                      var fname = imagepath + Date.now() + '.jpg';
                      request.get({url: getState(camerapicture).val, encoding: 'binary'}, function (err, response, body) {
                          fs.writeFile(fname, body, 'binary', function(err) {
                              if (err) {
                                  log('Fehler beim Bild speichern: ' + err, 'warn');
                              } else {
                                  setTimeout(function() { sendImage(fname); }, 2000); 
                              }
                          }); 
                      });
                  }
                  
                  // Bild über Telegram senden 
                  function sendImage (fname) { 
                      try {
                          sendTo('telegram.0', {
                              text:                   fname,
                              caption:                message, 
                              disable_notification:   true
                          });
                      }
                      catch(err) { if (err.code != "ENOENT") log(err); }  
                      setTimeout(function() { deleteImage(fname); }, 3000); 
                  }
                  
                  // Bild löschen
                  function deleteImage(fname) {
                      try {
                  //        var stats = fs.statSync(path);
                          try { fs.unlinkSync(fname); }
                          catch(err) { if (err.code != "ENOENT") log(err); }     
                      }
                      catch(err) { if (err.code != "ENOENT") log(err); }
                  }
                  
                  1 Reply Last reply Reply Quote 0
                  • ThomasLPZ
                    ThomasLPZ last edited by

                    @Kaiman55:

                    Hi Thomas,

                    ich habe mir den Link von Deinem Beispiel mit dem wegschreiben mal angeschaut.

                    Aber ich verstehe nur Bahnhof und kann es leider nicht auf die Presence umsetzen.

                    😢

                    LG Frank `

                    Hi Frank,

                    konntest schon mal testen? Würde mich nur interessieren ob es bei dir funktioniert. Bei mir läufts und ich find die Idee cool 8-)

                    Danke nochmal dafür und schönes Wochenende

                    Gruß Thomas

                    1 Reply Last reply Reply Quote 0
                    • K
                      Kaiman55 last edited by

                      Guten Morgen Thomas,

                      ich lag am Wochenende flach.

                      Wo muss ich das Verzeichnis anlegen?

                      Direkt im iobroker Verzeichnis?

                      Gruß Frank

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

                        Hi Frank,

                        ich hab das direkt in der root angelegt. Du kannst aber auch das vorhandene tmp Verzeichnis nutzen. Dann einfach imagepath = 'tmp' verwenden.

                        Gruß

                        Thomas

                        Gesendet von iPhone mit Tapatalk

                        1 Reply Last reply Reply Quote 0
                        • K
                          Kaiman55 last edited by

                          Hi Thomas,

                          es funktioniert 😄

                          Habe TMP genommen.

                          Leeren muss ich das jetzt nicht noch, oder? Die alten Bilder werden überschrieben!?

                          Vielen Dank für die Hilfe! 😉

                          LG Frank

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

                            Hi Frank,

                            das ist prima. Jetzt weißt du immer wer klingelt 🙂

                            Leeren musst du nicht. Die Datei wird nach dem senden wieder gelöscht.

                            Ich nutze es auch, allerdings nur wenn die Presence eine Person erkennt. Coole Idee!

                            Grüße

                            Thomas

                            Gesendet von iPhone mit Tapatalk

                            1 Reply Last reply Reply Quote 0
                            • K
                              Kaiman55 last edited by

                              Hi Thomas,

                              wo ist der Datenpunkt? Erkennung Person oder Auto?

                              LG Frank

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

                                imagepath = '/Image/' // Pfand zum Zwischenspeicher des Bildes - muss vorher angelegt sein

                                Was muss ich hier eintragen?

                                Vom Raspberry oder NAS das Image Verzeichnis?

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

                                  @Kaiman55:

                                  Hi Thomas,

                                  wo ist der Datenpunkt? Erkennung Person oder Auto?

                                  LG Frank `

                                  Hi Frank,

                                  den gibts in dieser Form leider nicht. Hab hierzu den Adapter bisschen angepasst. Hatte auch schon den Entwickler angeschrieben ob er daran interessiert ist und nochmal als Profi drüber schauen will. Leider hat er bis heute nicht reagiert.

                                  Ich selber nutze die Erkennung einer Person um in der Nacht richtig Krach zu machen damit ich es im Schlaf auch mitbekomme wenn sich jemand rumtreiben sollte.

                                  Gruß

                                  Thomas

                                  Gesendet von iPhone mit Tapatalk

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

                                    @thexbrain:

                                    imagepath = '/Image/' // Pfand zum Zwischenspeicher des Bildes - muss vorher angelegt sein

                                    Was muss ich hier eintragen?

                                    Vom Raspberry oder NAS das Image Verzeichnis? `

                                    Wenn ioBroker auf dem Raspberry läuft dann irgendein Verzeichnis auf dem Raspi anlegen oder das vorhandene tmp-Verzeichnis eintragen.

                                    Gruß

                                    Gesendet von iPhone mit Tapatalk

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

                                      Bekomme irgendwie immer eine Fehlermeldung
                                      4720_netatmo_script.jpg

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

                                        Du hast eine Netatmo Presence im Einsatz?

                                        Im Script, Zeile 3, muss das Objekt angegeben werden, welches den Link auf das Livebild (als jpg) enthält. In meinem Fall ist das 'netatmo.0.Home.Presence.live.picture'

                                        Gruß

                                        1 Reply Last reply Reply Quote 0
                                        • K
                                          Kaiman55 last edited by

                                          @ThomasLPZ:

                                          @Kaiman55:

                                          Hi Thomas,

                                          wo ist der Datenpunkt? Erkennung Person oder Auto?

                                          LG Frank `

                                          Hi Frank,

                                          den gibts in dieser Form leider nicht. Hab hierzu den Adapter bisschen angepasst. Hatte auch schon den Entwickler angeschrieben ob er daran interessiert ist und nochmal als Profi drüber schauen will. Leider hat er bis heute nicht reagiert. `

                                          Ich finde es auch ne Mega Idee.

                                          Nicht nur für Personen, sondern auch für Autos.

                                          So könnte ich wenn mein Auto ans Haus fährt gleich die Carportbeleuchtung einschalten.

                                          Gibt es einen offiziellen Thread zum Adapter?

                                          Vielleicht dort nochmal einstellen. Ich würde auch meinen Senf dazugeben [emoji16]

                                          LG Frank

                                          Gesendet von iPhone mit Tapatalk

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

                                            @ThomasLPZ:

                                            Du hast eine Netatmo Presence im Einsatz?

                                            Im Script, Zeile 3, muss das Objekt angegeben werden, welches den Link auf das Livebild (als jpg) enthält. In meinem Fall ist das 'netatmo.0.Home.Presence.live.picture'

                                            Gruß `

                                            Ja die Netatmo Presence.

                                            Also diesen Link ?

                                            https://v11.netatmo.net/restricted/10.2 … ot_720.jpg

                                            Wenn ich den im Browser eingebe dann bekomme ich auch ein Bild.

                                            Edit:

                                            Ich habe jetzt einige links ausprobiert aber irgednwie kommt immer der gleiche Fehler.
                                            4720_netat.jpg

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            861
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            36
                                            3572
                                            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