...
Zuerst wird auf dem Webserver eine PHP Datei cam_connect.php erstellt, die folgenden Inhalt hat:
Codeblock language php firstline 1 title cam_connect.php linenumbers true collapse true <?php ################################################################################################## # Script zum Wandeln der HTTP-Authentifizierung einer Trendnet TV-IP310PI Kamera von Digest auf # # Basic für die Verwendung in Verbindung mit dem Loxone Türsteuerungs-Baustein. # # Version: 2016.0206.2628.2320.5620.3020 # # Aufruf mit: # # http://fqdn/cam_connect.php?kamera=kamera-hostname/Streaming/channels/1/picture # # oder # # http://user:pw@fqdn/cam_connect.php?kamera=kamera-hostname/Streaming/channels/1/picture # ################################################################################################## //Error Reporting aus error_reporting(E_ALL); //Kompletter Standbild-URL der Kamera $url='http://'.addslashes($_GET['kamera']); //Basic-Authentifizierung des Scripts if (!isset($_SERVER['PHP_AUTH_USER'])) { //Wenn nicht authorisiert header('WWW-Authenticate: Basic realm="Kamerazugriff"'); header('HTTP/1.0 401 Unauthorized'); echo 'Zugriff auf Kamerabild verweigert.'; exit; } else { //Wenn authorisiert, werden die Daten verwendet $curl=curl_init(); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_DIGEST); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "GET"); curl_setopt($curl, CURLOPT_USERPWD, $_SERVER['PHP_AUTH_USER'].":".$_SERVER['PHP_AUTH_PW']); curl_setopt($curl, CURLOPT_URL, $url); $picture = curl_exec($curl); curl_close($curl); if(mb_strlen($picture) < 500) { //Wenn Bild zu klein header ("Content-type: image/png"); $im = @ImageCreate (320, 240) or die ("Fehler bei Kamerazugriff"); $background_color = ImageColorAllocate ($im, 255, 240, 240); $text_color = ImageColorAllocate ($im, 255, 64, 64); ImageString ($im, 20, 50, 110, "Fehler beim Kamerazugriff", $text_color); ImagePNG ($im); } else { //Wenn Bild scheinbar okay $type = 'image/jpeg'; header('Content-Type:'.$type); header('Content-Length: ' . mb_strlen($picture)); echo $picture; } }
- Jetzt kann in der Loxone Config auf das Script verwiesen werden (Beispiel):
Bild intern: http://web.server/cam_connect.php?kamera=kamera-vorgarten/Streaming/channels/1/picture
Bild extern: http://web.server.extern:8080/cam_connect.php?kamera=kamera-vorgarten/Streaming/channels/1/picture
Videostream intern: http://kamera-vorgarten/Streaming/channels/1/httpPreview
Videostrean extern: http://kamera-vorgarten.extern:802//Streaming/channels/1/httpPreview - So sieht das dann unter Letzte Aktivität aus:
Beim Anklicken wird das Bild in voller Größe angezeigt.
...
Seiteneigenschaften | ||
---|---|---|
| ||
|