Als je een plaatje van een IP camera zoals de Foscam op een website wilt plaatsen, dan gebruik je vanaf die website een link zoals onderstaand voorbeeld:
http://www.externadresvanjecamera.nl/snapshot.cgi
Dit werkt in vrijwel alle browsers. In het voorbeeld hierboven wordt er geen gebruikersnaam of wachtwoord meegestuurd. Dat zal dus alleen werken als je camera zonder wachtwoord te benaderen is. Iets dat niet zo vaak voorkomt. Ik adviseer je altijd een wachtwoord te gebruiken. De link wordt dan iets uitgebreider: http://www.externadresvanjecamera.nl/snapshot.cgi?user=guest&pwd=guest&next_url=cam
Met een IP camera is het mogelijk om een afbeelding op te vragen en deze op een website te plaatsen. Vaak moet je hiervoor een poort openen. Ook is je gebruikersnaam en wachtwoord te zien in de link. Als je dit net als ik niet wilt is er de volgende oplossing:
- Plaats de code die je in de link hieronder vind in het bestand: snapshot.php
https://github.com/zyphlar/ip-camera-proxy/blob/master/snapshot.php
- Vul i.p.v. EXAMPLE.COM je IP adres van de camera in en verander gebruikersnaam en wachtwoord.
- De afbeelding is te bekijken via:
http://www.externadresvanjecamera.nl/snapshot.php?camera=1
Voor nieuwe IP camera’s werkt de code in het php bestand niet. Na even zoeken op internet kwam ik onderstaande code tegen. Je moet het adres, poort, gebruikersnaam en wachtwoord nog aanpassen en dan kun je het plakken in het bestaande php bestand op de plaats van camera 2.:
elseif($_GET['camera'] == 2)
{
$rand = rand(1000,9999);
$url = "http://EXAMPLE.COM:POORT/CGIProxy.fcgi?cmd=snapPicture2&usr=USER&pwd=PWD&cnt=".microtime(true);
$curl_handle=curl_init();
curl_setopt($curl_handle, CURLOPT_BINARYTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($curl_handle, CURLOPT_URL, $url);
$my_image = curl_exec($curl_handle);
curl_close($curl_handle);
if (empty($my_image))
print "";
else {
header("Content-Type: image/jpeg");
print $my_image;
}
Het voorbeeld zie je hieronder:
Bijgewerkt op 1 januari 2015