80 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			80 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| 
								 | 
							
								#!/usr/bin/php
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<?php
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * Um die Werte für kommune und strasse zu erfahren, rufe https://www.egst.de/de/abfallabholung/ per
							 | 
						||
| 
								 | 
							
								 * Browser auf und ermittle die gesendeten Daten in der Entwicklerkonsole deines Browsers.
							 | 
						||
| 
								 | 
							
								 * 
							 | 
						||
| 
								 | 
							
								 * Die Angaben hier im Skript stehen für Hörstel als Kommune und Im Wiesengrund als Strasse
							 | 
						||
| 
								 | 
							
								 * 
							 | 
						||
| 
								 | 
							
								 * Um die Daten an Telegram zu senden, musst du dir ein Skript/Progtramm schreiben, dass die API
							 | 
						||
| 
								 | 
							
								 * von Telegram verwendet und Daten an dich oder deine Gruppe senden kann!
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								$currentYear = date('Y');
							 | 
						||
| 
								 | 
							
								$dateRange = sprintf('%s0101-%s1231', $currentYear, $currentYear);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								$key = 'e21758b9c711463552fb9c70ac7d4273';
							 | 
						||
| 
								 | 
							
								$kommune = 2601;
							 | 
						||
| 
								 | 
							
								$strasse = 2146;
							 | 
						||
| 
								 | 
							
								$tgReceiverId = 0; // Positive values are users, negative values are group IDs
							 | 
						||
| 
								 | 
							
								$pathToBot = '~/bin/YMBot';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								$url = sprintf('https://api.abfall.io/?key=%s&modus=d6c5855a62cf32a4dadbc2831f0f295f&waction=export_csv', $key);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								$ch = curl_init($url);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								$data = [
							 | 
						||
| 
								 | 
							
									'f_id_kommune' => $kommune,
							 | 
						||
| 
								 | 
							
									'f_id_strasse' => $strasse,
							 | 
						||
| 
								 | 
							
									'f_id_abfalltyp_0' => 50,
							 | 
						||
| 
								 | 
							
									'f_id_abfalltyp_1' => 161,
							 | 
						||
| 
								 | 
							
									'f_id_abfalltyp_2' => 53,
							 | 
						||
| 
								 | 
							
									'f_id_abfalltyp_3' => 187,
							 | 
						||
| 
								 | 
							
									'f_abfallarten_index_max' => 5,
							 | 
						||
| 
								 | 
							
									'f_abfallarten' => '50,161,53,187',
							 | 
						||
| 
								 | 
							
									'f_zeitraum' => $dateRange,
							 | 
						||
| 
								 | 
							
									'f_export_als' => json_encode([
							 | 
						||
| 
								 | 
							
										'action' => $url,
							 | 
						||
| 
								 | 
							
										'target' => '',
							 | 
						||
| 
								 | 
							
									]),
							 | 
						||
| 
								 | 
							
								];
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
							 | 
						||
| 
								 | 
							
								curl_setopt($ch, CURLOPT_POST, 1);
							 | 
						||
| 
								 | 
							
								curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
							 | 
						||
| 
								 | 
							
								curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla 70');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								$response = curl_exec($ch);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								curl_close($ch);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if ($response !== false) {
							 | 
						||
| 
								 | 
							
									$tomorrow = (new DateTime('tomorrow'))->format('d.m.Y');
							 | 
						||
| 
								 | 
							
									$trashArr = str_getcsv($response, "\n");
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									foreach($trashArr as $row) {
							 | 
						||
| 
								 | 
							
										$rowArr = str_getcsv($row, ';');
							 | 
						||
| 
								 | 
							
										$index = array_search($tomorrow, $rowArr);
							 | 
						||
| 
								 | 
							
										if ($index !== false) {
							 | 
						||
| 
								 | 
							
											$what = '';
							 | 
						||
| 
								 | 
							
											switch ($index) {
							 | 
						||
| 
								 | 
							
												case 0:
							 | 
						||
| 
								 | 
							
												case 1:
							 | 
						||
| 
								 | 
							
													$what = "werden Biomüll und gelbe Tonne";
							 | 
						||
| 
								 | 
							
													break;
							 | 
						||
| 
								 | 
							
												case 2:
							 | 
						||
| 
								 | 
							
													$what = "wird Restmüll";
							 | 
						||
| 
								 | 
							
													break;
							 | 
						||
| 
								 | 
							
												case 3:
							 | 
						||
| 
								 | 
							
													$what = "wird Papier";
							 | 
						||
| 
								 | 
							
													break;
							 | 
						||
| 
								 | 
							
											}
							 | 
						||
| 
								 | 
							
											if ($what !== '') {
							 | 
						||
| 
								 | 
							
												shell_exec(sprintf("echo Morgen %s abgeholt | %s -u %d", $what, $pathToBot, $tgReceiverId));
							 | 
						||
| 
								 | 
							
											}
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									
							 | 
						||
| 
								 | 
							
								}
							 |