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 = 'U'; 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; # 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=1 &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=$baum&ical_6=&gesendet=$gesendet&ical_ort=$ort&ical_kreis=$kreis&ical_monat=$monat&ical_year=$year"; 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);