Files
entsorgung/entsorgung.pl

61 lines
1.9 KiB
Prolog

use Mojo::UserAgent;
use Data::Printer;
use Getopt::Long;
use File::Slurp;
my $rest = 1; # Restmülltonne
my $gelb = 1; # 14-täglich Gelber Sack
my $papier = 1; # 14-täglich Papiertonne (EGVG mbH)
my $schadstoff = ''; # Schadstoffsammlung
my $baum = ''; # Weihnachtsbaumabholung
my $kreis = 'H';
my $monat = (1 + (localtime)[4]);
my $tag = ((localtime)[3]);
my $ort = 191;
my $year = (1900 + (localtime)[5]);
my $gesendet = 'Termine+herunterladen';
GetOptions(
'rest=s' => \$rest,
'gelb=s' => \$gelb,
'papier=s' => \$papier,
'schadstoff=s' => \$schadstoff,
'baum=s' => \$baum,
'kreis=s' => \$kreis,
'monat=i' => \$monat,
'ort=i' => \$ort,
'year=i' => \$year,
) or die "Usage: $0 --debug --from NAME\n";
if ( $monat == 12 and $tag == 30 ) {
$year = $year + 1;
$monat = 1;
}
#p $year;
my $ua = Mojo::UserAgent->new;
# my $url = "https://www.vevg-karlsburg.de/abfallkalender/ical_uhgw_get_utf8.php?ical_1=1&ical_11=&ical_2=1&ical_12=&ical_3=1&ical_4=&ical_5=&ical_6=&gesendet=Termine+herunterladen&ical_ort=191&ical_kreis=H&ical_monat=12&ical_year=2024";
my $url = "https://www.vevg-karlsburg.de/abfallkalender/ical_uhgw_get_utf8.php?ical_1=$rest&ical_11=&ical_2=$gelb&ical_12=&ical_3=$papier&ical_4=$schadstoff&ical_5=&ical_6=&gesendet=$gesendet&ical_ort=$ort&ical_kreis=$kreis&ical_monat=$monat&ical_year=$year";
# p $url;
my $ics = $ua->get( $url )->result->body;
my $note = q|BEGIN:VALARM
TRIGGER:-PT11H
ACTION:DISPLAY
END:VALARM
END:VEVENT|;
$ics =~ s/END\:VEVENT/$note/g;
$ics =~ s/am Straßenrand zur Leerung bereitstellen//g;
$ics =~ s/ \(EGVG mbH\)//g;
$ics =~ s/VEVG mbH //g;
$ics =~ s/SUMMARY:Leerung der /SUMMARY:/g;
$ics =~ s/tonne//g;
#$ics =~ s/ \(Entsorgungsbereich Stadt Greifswald\) Holunderweg \\n//g;
$ics =~ s/DESCRIPTION:(.*\\n )/DESCRIPTION:/g;
#write_file("/usr/share/hassio/homeassistant/www/entsorgung/holunderweg.ics", $ics);
write_file("entsorgung-holunderweg.ics", $ics);