This commit is contained in:
2024-10-13 23:27:09 +02:00
commit 30627b25b3
48 changed files with 1919 additions and 0 deletions

View File

@@ -0,0 +1,76 @@
#!/bin/perl
#use 5.1;
use Net::Ping;
use LWP::Simple;
use JSON;
use Data::Dumper;
use experimental qw ( switch );
use vars qw ( $VERSION @ISA @EXPORT );
use strict;
$| = 1;
my $APEMANIP = "192.168.0.1";
my $dir = "Downloads";
if ( ! -d "$dir" ) {
print "Downloads Verzeichnis '$dir' existiert nicht. Versuche es anzulegen.\n";
my $ok=mkdir("$dir", 0777);
if ( ! $ok ) {
print "Verzeichnis konnte nicht angelegt werden\n";
exit 1;
}
}
print "\nWarten auf Apeman\n";
my $p = Net::Ping->new();
while ( ! $p->ping($APEMANIP) ) {
;
}
$p->close();
my $url = "http://$APEMANIP/cgi-bin/hi3510/getfilelistinfoios.cgi";
if ( get($url) eq "SvrFuncResult=\"-5555\"" ){
print "Apeman gefunden\n\n";
$url = "http://$APEMANIP/cgi-bin/hi3510/getfilelistinfoios.cgi?-start=1&-end=30";
my $raw = get($url);
my @content = decode_json($raw);
my $nofile = 1;
foreach my $c ( @content ) {
foreach my $k ( @{$c} ) {
$url = "http://$APEMANIP/" . $k->{'path'};
my ($file) = $k->{'path'} =~ /([^\/]*\.[a-z0-9]*)$/i;
my $create = $k->{'create'};
$create =~ tr/\//-/;
$create =~ tr/:/-/;
$create =~ tr/ /_/;
$file = $dir . "/" . $create . "_" . $file;
print "Download $url to $file\n";
getstore($url, $file);
print "Lösche $file von Apeman\n";
$url = "http://$APEMANIP/cgi-bin/hi3510/deletefile.cgi?-name=" . $k->{'path'};
$raw = get($url);
chomp $raw;
if ($raw =~ /Success/) {
print "OK\n\n";
} else {
print "Nicht OK\n\n";
}
$nofile = 0;
}
}
if ( $nofile ) {
print "Keine Datei verfügbar\n";
} else {
print "Download abgeschlossen\n";
}
}