Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Synology-NAS-Ordnerüberwachung möglich? *gelöst*

    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

    Synology-NAS-Ordnerüberwachung möglich? *gelöst*

    This topic has been deleted. Only users with topic management privileges can see it.
    • F
      fastfoot @Homoran last edited by

      @homoran sagte in Ordnerüberwachung möglich?:

      korrekt - sehe ich mir mal an

      nebenbei bemerkt, während des Schreibens wird es rechts in der Vorschau noch richtig angezeigt, falls das bei der Fehlersuche hilft

      Homoran 1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @fastfoot last edited by Homoran

        @fastfoot sagte in Ordnerüberwachung möglich?:

        @homoran sagte in Ordnerüberwachung möglich?:

        korrekt - sehe ich mir mal an

        nebenbei bemerkt, während des Schreibens wird es rechts in der Vorschau noch richtig angezeigt, falls das bei der Fehlersuche hilft

        siehe Edit2 oben 😉

        1 Reply Last reply Reply Quote 0
        • F
          fastfoot @Homoran last edited by

          @homoran sagte in Ordnerüberwachung möglich?:

          ein Fall für @Jey-Cee !?!

          ich denke ja, es sollen zwei sein, aber einer wird beim Speichern weggenommen. Deshalb habe ich jetzt drei reingemacht

          1 Reply Last reply Reply Quote 0
          • surfer09
            surfer09 @liv-in-sky last edited by

            @liv-in-sky sagte in Ordnerüberwachung möglich?:

            @surfer09

            mach doch mal das script mit @fastfoot fertig

            und wenn du noch lust hast, etwas linux zu lernen , können wir gerne zum testen mal meinen weg probieren - dann haben wir alles unter einem thread und andere könnten sich das auch heraussuchen 🙂

            So machen wir das! 😉

            1 Reply Last reply Reply Quote 0
            • surfer09
              surfer09 @fastfoot last edited by

              @fastfoot So, ich habe jetzt ein bisschen korrigiert. Jetzt meckert er die Zeile 25 an. Ich habe mal einen Screenshot vom Code angehangen.

              2021-10-29 19_27_52-javascript - IO-Broker-Server.jpg

              Und hier jetzt nochmal mein jetziges Skript:

              /*
              
               * Purpose:     überwacht Pfade und Dateien
              
               * Date:        28.10.2021
              
               * Author:      @fastfoot
              
               * 
              
              */
              
              const chokidar = require('chokidar');
              
              const Pfad = [
              
                  'Y://',
              
                  //'/opt/iobroker/scripts'
              
              //],
              /*
                  cwd = 'Y://';
              */
              const options = {
              
                  ignored: /(^|[\/])\../,   // ignoriert dotfiles
              
                  cwd: cwd,                   // Basisverzeichnis, wird dann aus dem Dateinamen entfernt
              
                  persistent: !true,          // Bedeutung ist mir nicht klar :-)
              
                  ignoreInitial: true,        // verhindert Meldungen zu Dateien beim Skriptstart
              
                  depth: 0                    // Ordnertiefe
              
              }
              
               
              
              const watcher = chokidar.watch(Pfad, options)
              
                .on('add', path => {
              
                  notify(`Die Datei ${path} wurde hinzugefügt`);
              
                })
              
                .on('change', path => {
              
                  notify(`Die Datei ${path} wurde geändert`);
              
                })
              
                .on('unlink', path => {
              
                  notify(`Die Datei ${path} wurde gelöscht`);
              
                })
              
               
              
              //Wichtig beim Beenden des Skriptes
              
              onStop(() => {
              
                  watcher.close()
              
                  .then(log('Watcher gestoppt'))
              
              })
              
               
              
              function notify(text){
              
                  sendTo('telegram.2', {Hier kommt der Nachrichtentext!})
              
              }
              
               
              
              F 2 Replies Last reply Reply Quote 0
              • F
                fastfoot @surfer09 last edited by fastfoot

                @surfer09 Zeile 21 darf nicht auskommentiert sein! Und das Komma dort ist auch nicht von mir bzw muss weg wenn du die darauffolgende Zeile auskommentierst

                1 Reply Last reply Reply Quote 0
                • F
                  fastfoot @surfer09 last edited by

                  @surfer09 sagte in Ordnerüberwachung möglich?:

                  Und hier jetzt nochmal mein jetziges Skript:

                  wie man da so viele Fehler einbauen kann erschliesst sich mir nicht ganz. Nimm jetzt einfach mal diese Version und ändere nichts!

                  /*
                   * Purpose:     überwacht Pfade und Dateien
                   * Date:        29.10.2021
                   * Author:      @fastfoot
                   * 
                  */
                  const chokidar = require('chokidar');
                  const Pfad = 'Y://';
                   
                  const options = {
                      ignored: /(^|[\/\\])\../,   // ignoriert dotfiles
                      polling: !true,             // Polling aus, sollte an sein für netzwerkdateien
                      cwd: Pfad,                  // Basisverzeichnis, wird dann aus dem Dateinamen entfernt
                      persistent: !true,          // Bedeutung ist mir nicht klar :-)
                      ignoreInitial: true,        // verhindert Meldungen zu Dateien beim Skriptstart
                      depth: 0                    // Ordnertiefe
                  }
                   
                  const watcher = chokidar.watch(Pfad, options)
                      .on('add', path => {
                          notify(`Die Datei ${path} wurde hinzugefügt`);
                      })
                      .on('change', path => {
                          notify(`Die Datei ${path} wurde geändert`);
                      })
                      .on('unlink', path => {
                          notify(`Die Datei ${path} wurde gelöscht`);
                      })
                   
                  //Wichtig beim Beenden des Skriptes
                  onStop(() => {
                      watcher.close()
                          .then(log('Watcher gestoppt', 'warn'))
                  })
                   
                  function notify(text) {
                      sendTo('telegram.0', { text });
                      log(text);
                  }
                   
                  
                  surfer09 1 Reply Last reply Reply Quote 0
                  • surfer09
                    surfer09 @fastfoot last edited by

                    @fastfoot Nichts geändert und eingefügt, im LOG taucht "Watcher gestoppt" auf. Ich bekomme auch noch keine Nachricht, bei Neuerstellung einer Datei.

                    2021-10-29 20_43_09-.jpg

                    F 3 Replies Last reply Reply Quote 0
                    • F
                      fastfoot @surfer09 last edited by

                      @surfer09 sagte in Ordnerüberwachung möglich?:

                      @fastfoot Nichts geändert und eingefügt, im LOG taucht "Watcher gestoppt" auf. Ich bekomme auch noch keine Nachricht, bei Neuerstellung einer Datei.

                      2021-10-29 20_43_09-.jpg

                      Diese Meldung taucht eigentlich nur auf wenn das Skript im iobroker gestoppt wird, also eigentlich durch den Benutzer. War das so? Ich habe es soeben unter Windows getestet und es funktioniert einwandfrei. Allerdings habe ich dort nur node und keinen iobroker, so dass ich die iobroker-eigene Funktion onStop() leider nicht mittesten konnte. Die Funktion hatte ich einbauen müssen weil der Watcher nach Beenden des Skriptes munter weiterlief.

                      1 Reply Last reply Reply Quote 0
                      • F
                        fastfoot @surfer09 last edited by

                        @surfer09 Und bitte auch die LOG Einträge nicht als Bild sondern als Text in CodeTags und auch komplett vom Start bis zum Stop

                        1 Reply Last reply Reply Quote 0
                        • F
                          fastfoot @surfer09 last edited by

                          @surfer09 sagte in Ordnerüberwachung möglich?:

                          Ich bekomme auch noch keine Nachricht, bei Neuerstellung einer Datei.

                          Jetzt habe ich eigens(wollte ich schon immer mal) iobroker auf Windows installiert. Das Skript funktioniert zwar, aber nicht mit von der NAS gemounteten Ordnern. Tut mir leid, eigentlich sollte es funktionieren, aber ich habe jetzt so ziemlich alle Optionen durch und es will einfach nicht. Vielleicht klappt es ja mit @liv-in-sky's Lösung

                          surfer09 liv-in-sky 2 Replies Last reply Reply Quote 0
                          • surfer09
                            surfer09 @fastfoot last edited by

                            @fastfoot Mensch, du hast dir jetzt aber auch Mühe gemacht. Trotzdem Danke!

                            liv-in-sky 1 Reply Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @fastfoot last edited by

                              @fastfoot evtl auch das problem mit iobroker user, der über ein net mount muss ?

                              1 Reply Last reply Reply Quote 0
                              • liv-in-sky
                                liv-in-sky @surfer09 last edited by liv-in-sky

                                @surfer09
                                konntest du schon herausfinden, wie man ein script anlegt ?

                                evtl geht das wie hier - im dritten bild wird direct ein script eingegeben https://www.christian-knedel.de/post/2020/february/20200213-synology-task/

                                wir können auch gerne eine anydesk session machen- habe aber keine erfahrung mit synology

                                surfer09 1 Reply Last reply Reply Quote 0
                                • surfer09
                                  surfer09 @liv-in-sky last edited by

                                  @liv-in-sky Ja genau. Über den Aufgabenplaner scheint man ein Skript hinterlegen zu können.

                                  2021-10-30 14_40_20-DETERS-NAS - Synology DiskStation.jpg

                                  Aber wie das jetzt aussehen muss... Da bin ich ja total überfragt.

                                  liv-in-sky 2 Replies Last reply Reply Quote 0
                                  • liv-in-sky
                                    liv-in-sky @surfer09 last edited by

                                    @surfer09 hast du simple api adapter installiert ? in iobroker

                                    surfer09 1 Reply Last reply Reply Quote 0
                                    • RK62
                                      RK62 last edited by

                                      Der Adapter https://github.com/Scrounger/ioBroker.linux-control liefert unter anderem auch die Anzahl von Dateien auf einer Synology.

                                      Gruß, Ralf

                                      1 Reply Last reply Reply Quote 0
                                      • surfer09
                                        surfer09 @liv-in-sky last edited by

                                        @liv-in-sky Ist in der Version 2.6.1 installiert, ja!

                                        1 Reply Last reply Reply Quote 0
                                        • liv-in-sky
                                          liv-in-sky @surfer09 last edited by liv-in-sky

                                          @surfer09 anydesk möglich - dann muss ichj nicht so viel schreiben

                                          du brauchst auch einen neuen dp unter 0_userdata z.b. 0_userdata.0.checkNewFileNAS

                                          touch  /run/lastwatch
                                          sleep 30
                                          find /Daten/Video/SCHNELL -cnewer /run/lastwatch -exec curl 'http://ipaddress:8087/set/0_userdata.0.CONTROL-OWN.AAATEST.test.mixedtest?value=true&prettyPrint' 2>/dev/null {} \;
                                          

                                          Image 1.png

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

                                            Vielen Dank an @liv-in-sky für deine Zeit, um hier eine Lösung zu erarbeiten.
                                            Ich poste hier mal das Skript und die Einstellungen auf meinem Synology NAS:

                                            touch  /volume1/LOG/lastwatch
                                            sleep 60
                                            find /volume1/HP-Scan -cnewer /volume1/LOG/lastwatch -exec curl 'http://192.168.1.14:8087/set/0_userdata.0.test.checkFileNAS?value=true&prettyPrint'  {} \;
                                            exit
                                            

                                            Aufgabe im Aufgabenplaner auf dem Synology-NAS:

                                            Aufgabe.jpg

                                            Aufgabe_2.jpg

                                            Wichtig ist hier die Ausführung der Aufgabe mit dem root-Benutzer.

                                            Datenpunkt auf dem IO-Broker manuell anlegen:

                                            Objekt.jpg

                                            Die Abfrage auf den Datenpunkt erfolgt dann über Blockly mit "wurde aktualisiert".

                                            Blockly.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

                                            544
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            blockly ordnerüberwachung
                                            7
                                            86
                                            6638
                                            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