NEWS
Synology-NAS-Ordnerüberwachung möglich? *gelöst*
-
@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.
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.
-
@surfer09 Und bitte auch die LOG Einträge nicht als Bild sondern als Text in CodeTags und auch komplett vom Start bis zum Stop
-
@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
-
@fastfoot Mensch, du hast dir jetzt aber auch Mühe gemacht. Trotzdem Danke!
-
@fastfoot evtl auch das problem mit iobroker user, der über ein net mount muss ?
-
@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
-
@liv-in-sky Ja genau. Über den Aufgabenplaner scheint man ein Skript hinterlegen zu können.
Aber wie das jetzt aussehen muss... Da bin ich ja total überfragt.
-
@surfer09 hast du simple api adapter installiert ? in iobroker
-
Der Adapter https://github.com/Scrounger/ioBroker.linux-control liefert unter anderem auch die Anzahl von Dateien auf einer Synology.
Gruß, Ralf
-
@liv-in-sky Ist in der Version 2.6.1 installiert, ja!
-
@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 {} \;
-
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:
Wichtig ist hier die Ausführung der Aufgabe mit dem root-Benutzer.
Datenpunkt auf dem IO-Broker manuell anlegen:
Die Abfrage auf den Datenpunkt erfolgt dann über Blockly mit "wurde aktualisiert".
-
Hier nochmal eine Korrektur zum vorherigen Post. Leider funktionierte die vorherige Version nicht korrekt, sodass diese nochmal von @liv-in-sky umgebaut wurde in ein Skript, welches unter Windows ausgeführt wird. Dieses Skript läuft als Dauerrschleife und prüft ab, ob eine neue Datei in dem Ordner abgelegt wird.
Das Blockly Skript bleibt bestehen.setlocal enabledelayedexpansion :anfang echo > y:\OrdnerUeberwachung.txt :loop c:\windows\system32\timeout 10 rem zu ueberwachenden Ordner anwählen set Path="Y:\" for /f "tokens=*" %%a in ('dir /A:-D /B /O:-D %Path%') do set NEW=%%a&& goto:n :n echo %NEW% rem Wenn neue Datei nicht die txt ist, dann aktualisiere den Datenpunkt im iobroker IF NOT "%NEW%"=="OrdnerUeberwachung.txt" ( C:\windows\system32\curl "http://192.168.1.14:8087/set/0_userdata.0.test.checkFileNAS?value=true&prettyPrint" goto:anfang ) goto :loop
-
danke für's posten - die linux version funktioniert eigentlich schon - das problem ist der taskscheduler in der synology - den konten wir nicht so einstellen, dass das alles reibungslos läuft
mit z.b samba linux nas systemen kann man das linux script nutzen
-
Ich werf nur mal so als Denkanstoß in die Runde:
inotifyDas ist schon im Kernel integriert und tut genau das: Verzeichnisse auf neue Dateien überwachen.
https://www.linux-community.de/ausgaben/linuxuser/2017/01/bescheid/
Keine Ahnung ob das hier weiterhilft...
-
da hast du recht - ist auch eine idee für linux server - hatte ich schon mal mit gespielt - wir haben aber jetzt auf windows umgestellt - synology ist zwar auch linux - aber ich kenn mich damit eigentlich nicht aus und wollte dort nicht so viel auf der systemebene machen
-
und
@surfer09 fühlt sich auf windows wohler -
Den 'Fehler' habe ich gerade erst gesehen:
Ich arbeite ausschließlich mit Windows, auch mein IO-Broker läuft auf Windows.
Irgendwer hat das mal als 'Error 0' bezeichnet.
-
@thomas-braun sagte in Synology-NAS-Ordnerüberwachung möglich? *gelöst*:
Den 'Fehler' habe ich gerade erst gesehen:
Ich arbeite ausschließlich mit Windows, auch mein IO-Broker läuft auf Windows.
Irgendwer hat das mal als 'Error 0' bezeichnet.
Zum Glück hat jeder so seine Vorlieben!
-
habe noch ein tool gefunden - von nirsoft - find ich gute programme - wird auch über aufgaben beim boot aufgerufen und läuft dann als programm, welches auch sichtbar gemacht werden kann
https://www.nirsoft.net/utils/folder_changes_view.html
kann über command zeile aufgerufen werden und liegt dann im tray - oder auch sichtbar
C:\Users\e>H:\SAVETV\OTR\folderchangesview\FolderChangesView.exe /Start /BaseFolder "H:\SAVETV\OTR"
habe unseren curl befehl als cmd file eingegeben