Um den automatisierten Upload zu vereinfachen, haben wir uns entschlossen, zwei Hilfsprogramme zu erstellen. Es handelt sich dabei um die Programme winupload.pl bzw. wincopy.pl. Diese Programme stehen ab dem Release 2010/IV im Ordner /home/cvs/archivista/jobs zur Verfügung. Die beiden Perl-Programme laufen plattformunabhängig. Unter Linux wird Perl wohl schon zur Verfügung stehen, unter Windows wohl eher nicht. Aus diesem Grunde haben wir die Programme kompiliert, d.h. Sie können die Programme als EXE-Datei beziehen. Die gezippten Versionen finden Sie hier:
www.archivista.ch/de/media/version/winupload.zip
sowie
www.archivista.ch/de/media/version/wincopy.zip
Mit dem ersten Programm (WinUpload) können Dateien bequem hochgeladen werden. Ein Aufruf ohne Parameter gibt einen kurzen Hilfetext aus:
C:\avupload\winupload.exe v1.0 (c) 2010 by Archivista GmbH, upload files to WebDMS This program has three modes, a) single, b) config and c) upload a) single mode: C:\avupload\winupload.exe host db user password def https file [meta] b) config mode: C:\avupload\winupload.exe host db user password [def=0..x https=0/1] c) upload mode: C:\avupload\winupload.exe file [fieldname1=value1:fieldname2=value2..]
Daraus können wir entnehmen, dass wir WinUpload in drei Varianten aufrufen können.
Die Datei 'winupload.dat' liegt nicht im Klartext vor, doch sei hier auch gesagt, dass wenn Sie qualitativ hochstehende Verschlüsslung benötigen, die vorliegende Version 1.0 von WinUpload nicht genügt.
Ein Upload über 'https' bedingt, dass die richtigen Pakete vorhanden sind. Das ist aktuell bei WinUpload.exe nicht der Fall. Verwenden Sie WinUpload daher ohne HTTS, d.h. mit dem Übergabewert '0' (entspricht http-Zugriff).
Nachfolgend die drei Modi mit je einem Beispiel.
Bevor wir eine Datei hochladen können, müssen wir ein Verzeichnis überwachen. Dafür ist das zweite Programm (wincopy) gedacht. Sie können das Programm ohne Parameter starten und erhalten dann eine Auflistung der Optionen.
C:\avupload\wincopy.exe v1.0 (c) 2010 by Archivista GmbH, watch a dir and call upload prg C:\avupload\wincopy.exe dirin dirtemp seconds (to wait between checks for uploads) [upload] => [upload] optional, without it call winupload.pl or winupload.exe => you can stop the program if you create a file wincopy.stp
Wichtig! Wir empfehlen sehr, das Programm nur innerhalb eines leeren Programmordners zu starten. Wird 'wincopy.exe' mit einem gültigen Verzeichnis eröffnet, so werden umgehend alle Dateien ins Temporärverzeichnis verschoben und anschliessend wird versucht die Dateien hochzuladen.
Doch zurück zu den Parametern. An erster Stelle muss das zu überwachende Verzeichnis stehen. An zweiter Stelle folgt ein Temporärverzeichnis um zu überprüfen, ob eine Datei die hochgeladen werden soll nicht mehr von einer Applikation 'gesperrt' wird. In diesem Falle könnte der Upload nicht korrekt erfolgen.
An dritter Stelle kann eine Pausenzeit in Sekunden eingegeben werden (3 - 60). In diesem Intervall wird, das an erster Stelle stehende Verzeichnis überprüft.
Zum Abschluss hier noch ein komplettes Beispiel:
Hinweis: Punkt 7 funktioniert nur, wenn die Datei nicht mehr vom Verarbeitungsprogramm gesperrt wird. Sie werden daher in der Regel die Datei nach dem 'Speichern' auch noch 'Schliessen' müssen.
Selbstverständlich werden Sie das Hilfsprogramm 'wincopy.exe.' beim Hochstarten bzw. über einen Dienst anwerfen wollen. Und natürlich dürfen Sie die Perl-Programme 'wincopy.pl' und 'winupload.pl' beliebig an Ihre persönlichen Bedürfnisse anpassen, d.h. sofern Sie den Quellcode wieder unter die GPL-Lizenz stellen.