Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Kamera Motion (onvif) triggert script zu schnell

    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

    Kamera Motion (onvif) triggert script zu schnell

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

      Hallo, ich hoffe mir kann hier geholfen werden.
      Ich benutze den Onvif Adapter für meine 2 Kameras und möchte bei Motion
      snapshots abspeichern was auch super funktioniert.
      Doch sendet die Kamera bei einem Motion event gut 6 Ereignisse je 3 Sekunden an den Onvif Adapter,
      da mein Script nun darauf wartet das der Datenpunkt geändert wird läuft es natürlich auch 6x in 3 Sekunden was zu unnötig vielen Bilder führt, gibt es eine Möglichkeit im Script selbst zu überprüfen ob das Script bereits läuft ? Das zb er nur max alle 2 Sekunden trigger darf/kann ?

      Mein Aktueller versuch nur scheinen die trigger so schnell zu sein das setState zu langsam ist un es nicht wirklich funktioniert :

      const fs = require('fs');
      
      on({id: "onvif.0.192_168_178_69_80.message.ruleengine.cellmotiondetector.motion.value", change: "any"}, function (obj) {
          var counter = getState("onvif.0.192_168_178_69_80.counter").val;
          setState("onvif.0.192_168_178_69_80.counter",1,true);
          if(counter == 1)
          {
              console.log("Pic not Ready yet ...");
              return false;
          }
      
          var currenttime = new Date().getTime();
          var lastsnap = getState("onvif.0.192_168_178_69_80.lastsnap").val;
          var math = currenttime-lastsnap;
          setState("onvif.0.192_168_178_69_80.lastsnap",new Date().getTime(),true);
          
          if(math < 2000) 
          {
              console.log("To Fast wait ...");
              return false;
          }
      
          sendTo('onvif.0', 'saveFileSnapshot', {"id":"192_168_178_69_80", "file":"/opt/cameras/snapshot-" + currenttime + ".jpg"}, function (result) {
          if (true) {
      
                  console.log("Pic has been made");
                  setState("onvif.0.192_168_178_69_80.counter",0,true);
              }
          
          });
      });
      
      
      paul53 2 Replies Last reply Reply Quote 0
      • paul53
        paul53 @ToxiN last edited by

        @ToxiN sagte:

        da mein Script nun darauf wartet das der Datenpunkt geändert wird läuft

        Nein, es wird nicht nur bei Wertänderung getriggert.

        T 1 Reply Last reply Reply Quote 0
        • T
          ToxiN @paul53 last edited by

          @paul53
          change: "any" deswegen da der Wert immer true ist und bei Motion nur aktualisiert und nicht geändert wird.

          1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @ToxiN last edited by

            @ToxiN sagte:

            er nur max alle 2 Sekunden trigger darf/kann ?

            const fs = require('fs');
            var timer = null;
            
            on({id: "onvif.0.192_168_178_69_80.message.ruleengine.cellmotiondetector.motion.value", change: "any"}, function (obj) {
               if(!timer) {
                  timer = setTimeout(function() {
                     timer = null;
                  }, 2000); // 2 s
                  // Hier der Rest
               }
            });
            
            1 Reply Last reply Reply Quote 0
            • First post
              Last post

            Support us

            ioBroker
            Community Adapters
            Donate

            909
            Online

            31.8k
            Users

            80.0k
            Topics

            1.3m
            Posts

            javascript
            2
            4
            346
            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