Image Grabber und Samsung IP Kamera Problem

Hallo!

Ich habe hier eine Samsung SNV-L6083R Domekamera.
Habe die URL (http://IPADRESSE/cgi-bin/video.cgi?msubmenu=jpg) im Image Grabber eingetragen, Benutzername und Passwort festgelgt.
Bei Bildaktualisierung erhalte ich immer den Fehler 401 - Unauthorzed.
Benutzername und Passwort stimmen aber, habe auch schon versucht, dass Passwort zu ändern (mein Gedanke war, dass eventuell mit Sonderzeichen im Passwort ein Problem gibt), hat aber leider auch nichts geholfen.
Wenn ich im Browser die URL eingebe werde ich nach Benutzer und Passwort gefragt, wenn ich die Daten eingebe bekomme ich ohne weitere Probleme sofort das Bild angezeigt und kann es jederzeit über F5 aktualisieren.
Andere Kameratypen funktionieren mit dem Image Grabber ohne Probleme.

Ich benutze die aktuelle 4.0 vom 20.10.

Danke und lg

Kann es sein, dass die Kamera die Digest Authentifizierung und nicht die Basic Authentifierung nutzt? Kannst du das evtl. umstellen?

paresy

Hallo!

Kann ich bei dieser Kamera nicht umstellen, zumindest finde ich keinen Weg dafür…
Gibts eventuell einen Workaround dafür?

lg

Du könntest es per Hand (=PHP Skript) auselesen und in ein Medienobjekt schreiben. Funktionen: file_get_contents, IPS_SetMediaContent

paresy

Hast du das mal in dieser Form eingetragen ?

http://USERNAME:PASSWORD@IPADDRESS/cgi-bin/video.cgi?msubmenu=jpg

Hatte ich schon im Image Grabber versucht es kommt dann folgende Fehlermeldung:

resolve: Die angegebene Klasse wurde nicht gefunden

Habe ich mal versucht, es wird ein Bild erstellt, allerdings ohne Inhalt, ich habs mit folgendem Script versucht:

$remoteImage = "http://BENUTZER:PASSWORT@IPADRESSE/cgi-bin/video.cgi?msubmenu=jpg";
$localImage = IPS_GetKernelDir()."\\media\\bild.jpg";

//Downloaden
$content = @file_get_contents($remoteImage);


//Speichern
file_put_contents( $localImage, $content );

und so:

http://USERNAME:PASSWORD@IPADDRESS/cgi-bin/video.cgi?msubmenu=mjpg

Lass mal das @ weg… Das unterdrückt jede Fehlermeldung und du weißt nie of was schief geht.

paresy

Ok bekomme folgende Fehlermeldung:

Warning: file_get_contents(http://...@IPADRESSE/cgi-bin/video.cgi?msubmenu=jpg): failed to open stream: HTTP request failed! HTTP/1.0 401 Unauthorized
in [Kameras\Samsung\Test] on line 9

Eigentlich ähnlich der Fehlermeldung vom ImageGrabber…

Ich hab mal wieder die Lust unsere alte Samsung Kamera (SNO5080R) in IPS einzubinden.
Da die Kamera die „Digest AUTH“ einsetzt, versuche ich es mal mit einem Gastzugang…und
JPG in Verbindung mit dem Imagegrabber.

Leider kommt auf meinem RASPI IPS System folgender „Syntaxfehler“…

<?
//$user = "BENUTZER"
//$pass = "PASSWORT"
$remoteImage*=*"http://IP-Adresse/cgi-bin/video.cgi?msubmenu=jpg"; 
$localImage*=*IPS_GetKernelDir()."\\media\\kamera1.jpg"; 

//Downloaden 
$content*=*file_get_contents($remoteImage); 

//Speichern 
file_put_contents(*$localImage,*$content*);*
?>

Fehler:


Parse error:  syntax error, unexpected '"http:\\192.168.2.23\cgi-bin\v' (T_CONSTANT_ENCAPSED_STRING) in /var/lib/symcon/scripts/44976.ips.php on line 4

Ich habe auch schon probiert - ohne Erfolg

$remoteImage*=*'http:\\192.168.2.23\cgi-bin\video.cgi?msubmenu=jpg'; 

Irgendwo habe ich was in der Syntax durcheinander gewürfelt…

Zum Thema Digest Auth über IPS habe ich nichts gefunden…
Im netz finde ich nur Beispiele wie man eine Webseite mit Digest Auth austattet…

Hier ein Fiddler Mitschnitt mit MJPEG
:

GET /cgi-bin/video.cgi?msubmenu=mjpg HTTP/1.1
Accept: text/html, application/xhtml+xml, image/jxr, */*
Accept-Language: de-DE
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Host: 192.168.2.23
Authorization: Digest username="admin",realm="iPolis_00:16:6C:78:8A:8A",nonce="887e6363e17f0dff9386e19a99e27a03",uri="/cgi-bin/video.cgi?msubmenu=mjpg",cnonce="ab05ca04ac89dbf72f1217edd457b1f4",nc=00000001,response="9a14cc7f282f85f85f6eb7a8567fddf3",qop="auth"

Kann man den -falls IPS- Digest Auth nicht unterstützt evtl. ein WGET zweckentfremden und als Stream einbinden?

Leider ist es scheinbar auch mit den neueren Samsung Kameras nicht besser geworden, bin seit Tagen dabei hier eine Lösung zu finden, bin aber (vermutlich auch durch mein geringes Basiswissen bzgl. PHP) weder im Netz noch hier fündig geworden.

Gibt es nun schon eine Mögichkeit sich per DIGEST in ein Gerät einzuloggen? Einen Anhaltspunkt oder etwas Vorgefertigtes?

Habe im letzten Newsletter gelesen, dass es nun möglich ist einen RTSP Stream sauber einzubinden, doch kann man daruaus dann einen einzelnen Screenshot generieren und verwerten?

Habe auch eine Synology mit Surveillance Station im Einsatz, doch auch hier habe ich keinen schönen und zuverlässigen Weg gefunden einen Screenshot aus dem momentanen H.264 Stream zu ziehen.

Hat jemand von euch noch eine Idee?

Vielen Dank

Bisher noch nicht. Da wir aber zur 5.2 dort etwas anpassen wollen, kann es gut sein, dass dann die DIGEST Authentifizierung funktionieren wird.

Über RTSP kannst du leider keine Screenshots erstellen.

paresy

Danke für die schnelle Antwort.

Ich denke ich werde mir für den Screenshot vorübergehend mit einer kleinen Dlink Kamera behelfen, hier kann man für Screenshots die Authentifizierung komplett deaktivieren und entweder über Image Grabber oder über die Beschreibung für Bilder Download arbeiten.