-
Notifications
You must be signed in to change notification settings - Fork 0
/
camgrabber.php
64 lines (59 loc) · 2.19 KB
/
camgrabber.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?php
// camgrab 1.4 von Raffael Willems
function download_image2($image_url){
$ch = curl_init($image_url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 40);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0');
curl_setopt($ch, CURLOPT_WRITEFUNCTION, "curl_callback");
// curl_setopt($ch, CURLOPT_VERBOSE, true); // Enable this line to see debug prints
curl_exec($ch);
curl_close($ch);
}
/** callback function for curl */
function curl_callback($ch, $bytes){
global $fp;
$len = fwrite($fp, $bytes);
// if you want, you can use any progress printing here
return $len;
}
function getHtml($url, $post = null) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
if(!empty($post)) {
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
}
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
//Ende der Funktionsdeklaration jetzt gehts los
echo "\n\n camgrab 1.4 by Raffael Willems runing...\n\n";
//Array mit den Adressen der Kameras welches beliebig erweitert werden kann
$camlist = array();
//Array mit den Pfaden auf dem lokalen Webserver ebenfalls erweiterbar
$pfadlist = array ();
// hole Bild und packe es in das jeweilig passende Verzeichnis...
// Spucke dabei die gebauten URLS sowie die lokalen Speicherpfade aus (siehe journalctl -f)
$i=0;
foreach ($camlist as &$current) {
$rpfad = getHtml("http://". $current ."/campass.php?pass=");
echo "Remote_Pfad: " . $rpfad . "\n";
$lpfad = str_replace("http://". $current,"/home/rvi/".$pfadlist[$i],$rpfad);
echo "Lokaler_Pfad: " . $lpfad . "\n";
if(!is_dir(substr($lpfad, 0, -14))) {
mkdir("/home/rvi/".$pfadlist[$i]."/aufnahmen/" . date('m') . "_" . date('d'), 0777, true);
echo "Verzeichnis erstellt!\n";
}
$fp = fopen ($lpfad, 'w+');
download_image2($rpfad);
fclose($fp);
echo $rpfad . " erfolgreich geladen! \n\n";
$i = $i+1;
}
?>