Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Ring Video oder Bild in VIS einbinden. Wer kann helfen?

    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

    Ring Video oder Bild in VIS einbinden. Wer kann helfen?

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

      Hallo zusammen,

      trotz langer Suche habe ich leider keine Anleitung gefunden, wie ich das letzte Video oder Bild aus der Ring Doorbell in die VIS einbinden kann. Wer könnte hier helfen oder hat evtl. eine Anleitung gesehen und kann den Link senden.
      Ich freue mich über jede Hilfe.
      Adapter läuft übrigens problemlos. Ich benötige "nur" eine Anleitung welches Widget oder was auch immer ich benötigen würde.
      Danke im Voraus für Eure Hilfe

      S 1 Reply Last reply Reply Quote 0
      • S
        Stimpy23 @AlphaII last edited by

        @alphaii
        würde mich auch interessieren.

        M 1 Reply Last reply Reply Quote 0
        • M
          michihorn @Stimpy23 last edited by michihorn

          @stimpy23 HAllo Zusammen
          ich habe mich mal mit dem Thema beschäftigt und eine Lösung gefunden mit der ich das letzte Snapshot anzeigen kann. Sollte Snapshot und Video im gleichen Ordner abgelegt sein, kann es vorkommen, dass das letzte gespeicherte File ein Video ist und dann nicht dargestellt wird. Mir war es eh nur wichtig das letzte Bild zu sehen.
          Im RING Objekt Ordner stehen alle Snapshots. Der erste Script sucht die letzte angelegte Datei, dass zweite Script speichert diese Datei in einen separaten Ordner unter dem Namen 01Ring.jpg. Diese Datei kannst Du mit einem iFrame verknüpfen.

          Anbei habe ich meine Script angehangen.

          /*****Letztes Kamerabild Giethoorn RING**************************************
          **    November 2020
          **    RING, Kamera
          **    
          **    Ermittelt das letzte gespeicherte Bild von RING
          **    geändert:11.11.20
          ************************************************************/
          var zähler = 0;
          var old_recent;
          var old_create;
          var create;
          var path = require('path');
          var fs = require('fs');
          var request = require('request');
          
          
          schedule("*/1 * * * * *", function () {
              old_recent = getState('Giethoorn.CAM.RING.LetztesBild').val;
              old_create = getState('ring.0.doorbell_53727335.History.created_at').val;
              create = getState('ring.0.doorbell_53727335.created_at').val;
              log(old_create);
              var getMostRecent = function (dir, cb) {
                  var dir = path.resolve(dir);
                  var files = fs.readdir(dir, function (err, files) {
                      var sorted = files.map(function (v) {
                          var filepath = path.resolve(dir, v);
                          return {
                              name: v,
                              time: fs.statSync(filepath).mtime.getTime()
          
                          };
                      })
                          .sort(function (a, b) { return b.time - a.time; })
                          .map(function (v) { return v.name; });
          
                      if (sorted.length > 0) {
                          cb(null, sorted[0]);
                      } else {
                          cb('Y U NO have files in this dir?');
                      }
                  })
              }
              getMostRecent('/iobroker/SmartHome/iobroker-data/files/ring.0/doorbell_53727335/', function (err, recent) {
                  if (err) console.error(err);
                  console.log(recent);
                  setState('javascript.3.Giethoorn.CAM.RING.LetztesBild', recent);
                  setState('javascript.3.Giethoorn.CAM.RING.SDate', formatDate(new Date(create), "TT.MM.JJ hh:mm"));
              });
              on({ time: { hour: 23, minute: 59 } }, function () {
                  log("*****Bewegungen gelöscht***** ");
                  setState('Giethoorn.CAM.RING.zähler', 0);
              });
          });
          

          In diesem Script wird die letzte Datei unbenannt. Ich habe hier im Script noch zwei Kameras die aber beim nachbauen weg gelassen werden können.

          /*****Kameras Giethoorn in VIS ablegen************************
          **    Oktober 2020
          **    Outlook, Kamera Reolink Argus2, Ring
          **    
          **    Stellt die Snaps der NL Kameras für VIS zur Verfügung
          **    geändert:23.10.20, 21.12.20
          ************************************************************/
          var request = require('request');
          var fs = require('fs');
          schedule("* * * * * *", function () {    
              var steg = getState('javascript.3.Giethoorn.CAM.Steg.LetztesBild').val;
              console.log("Steg: " + steg);
              var eingang = getState('javascript.3.Giethoorn.CAM.Eingang.LetztesBild').val;
              console.log("Eingang: " + eingang);
              var ring = getState('javascript.3.Giethoorn.CAM.RING.LetztesBild').val;
              console.log("RING: " + ring);
                  var waterkant = getState('javascript.3.Giethoorn.CAM.Waterkant.LetztesBild').val;
              console.log("Waterkant: " + waterkant);
          
              const body = fs.readFileSync('/Ferienhaus/Eingang/' + eingang);
              writeFile("vis.0", "/NL/01Eingang.jpg", body);
              const body1 = fs.readFileSync('/Ferienhaus/Steg/' + steg);
              writeFile("vis.0", "/NL/01Steg.jpg", body1);
              **const body2 = fs.readFileSync('/iobroker/SmartHome/iobroker-data/files/ring.0/doorbell_53727335/' + ring);
              writeFile("vis.0", "/NL/01RING.jpg", body2);**
                  const body3 = fs.readFileSync('/Ferienhaus/Waterkant/' + waterkant);
              writeFile("vis.0", "/NL/01Waterkant.jpg", body3);
          });
          
          

          Viel Erfolg beim Anpassen.
          Michael

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

          Support us

          ioBroker
          Community Adapters
          Donate

          911
          Online

          31.9k
          Users

          80.2k
          Topics

          1.3m
          Posts

          camera how-to vis
          3
          3
          1947
          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