IPCAM-Modul mit WebCam NCM625GA von Wansview steuern (Position, Email Snapshot )

Begonnen von boeho, 19 Februar 2016, 10:39:44

Vorheriges Thema - Nächstes Thema

boeho

Hallo,
habe mir eine neue Webcam gekauft. Sie sollte dem Vorgänger recht nahe kommen (NCM625W), aber sie übermittelt die Steuerbefehle völlig anders. Nachdem ich die gewünschten URL ermittelt habe (erst mit Wireshark dann mit der Fritzbox 'http://fritz.box/html/capture.html') ein kurzer Check die Adressen funktionieren wenn man sie in die URL des Browsers eingibt. Auch benutzt die Kamera verschiedene cgi-Pfade für unterschiedliche Funktionen (hy-cgi/ptz.cgi, hy-cgi/irctrl.cgi ua.). Aber das ist später lösbar.
Mein Problem ist, dass ich es nicht mit IPCAM hinbekomme.
Hier mein define im cfg-File:
# 192.168.178.236:80/hy-cgi/ptz.cgi?cmd=preset&number=1&act=goto
# 192.168.178.236:80/hy-cgi/ptz.cgi?cmd=preset&number=2&act=goto
#
# 192.168.178.236:80/hy-cgi/irctrl.cgi?cmd=setinfrared&infraredstatus=close
# 192.168.178.236:80/hy-cgi/irctrl.cgi?cmd=setinfrared&infraredstatus=auto
# IPCAM fuer Wansview NCM625GA
define WebCam_21 IPCAM 192.168.178.236
attr   WebCam_21 basicauth test:test
attr   WebCam_21 cmd01 cmd=preset&number=1&act=goto
attr   WebCam_21 cmd02 cmd=preset&number=2&act=goto
attr   WebCam_21 group WebCam_2
attr   WebCam_21 icon it_camera
attr   WebCam_21 room _Tools
attr   WebCam_21 pathCmd hy-cgi/ptz.cgi?

Wenn ich jetzt prüfe im Web (FHEM-GUI) und setze WebCam_21 auf 1 oder 2 passiert nichts. Was ist falsch??
Kann man im IPCAM ein loglevel einstellen? Ich bin ratlos.
Danke schon mal vorab
boeho

boeho

Hi,
mit IPCAM habe es nicht gelöst, sondern mit wget. Hier nurmal als Beispiel:
in 99_myUtil.pm.
sub Send_Url (@) {
my ($url,$cgi,$cmd1,$cmd2,$cmd3,$cmd4) = @_;
#Log(3,"ARGS:'$url' ,'$cmd1', '$cmd2', '$cmd3', '$cmd4'");
my $erg_url= $url . $cgi . $cmd1. $cmd2. $cmd3. $cmd4 ;
$erg_url =~ s/&/%26/g;
system("wget '$erg_url'");;
}


und in cfg: (nur als Beispiel kopiert, Notify anpassen)
define TestSensor_2_N notify TestSensor_2:start|Bad_Sensor:* {\
      my $pos      = 0;;\
      my $flag1      = 0;;\
      $pos       = Value("TestSensorPos_2");;\
      my $cgi_pfad   = "";;\
      my $cmd      = "";;\
      my $user_pw    = "test:test" . "@";;\
      my $url      = "http://" . $user_pw . "192.168.178.236:80";;\

      if (("$NAME" eq "TestSensor_2") && ($pos==15))      {\
             $flag1=1;;\
             fhem("set TestSensorPos_2 0");;\
             $cgi_pfad =   "/hy-cgi/ptz.cgi?";;\
            $cmd = "cmd=preset&number=2&act=goto";;\
            {Send_Url("$url", "$cgi_pfad", "$cmd")};;\

            fhem("set TestSensor_2 nix");;\
      }\
}

Damit geht Position setzen, E-Mail Snapshot ein/ausschalten, Infrarot ein/aus und Motiondedection. Eigentlich alles, man muss es nur über Sniffer auslesen.
Ich schalte zum Beispiel alles scharf, wenn über die Presence keiner zu Hause ist und ales aus bei anwesend.
Die Kamera kann ich jetzt mit ruhigem Gewissen empfehlen, die Qualität ist ser gut.
Gruß boeho

lynckmeister

Hi boeho, gib doch mal bitte ein paar Hilfestellungen , wie hast du die URLs gesnifft? Mit Wireshark? Kann ich per URL abfragen ob das Motiontracking was gesehen hat ? Die Cam wird ja wohl kaum selbst eine URL aufrufen... wie läuft das?

Danke für deine Hilfe...

boeho

hallo lynckmeister,
habe mit Wireshark angefangen, aber mit Fritzbox war es wohl einfacher.
Wichtig: möglichst jeden anderen Traffic vermeiden. Es macht die Suche in den Dateien unnötig aufwendig.
Die Videos und Bilder landen bei mir auf einem NAS in einem Ordner. Dadurch werden die Inhalte nach zB 30 Tagen gelöscht.
Für "Echtzeit-Ereignis" lasse ich mir die Aufnahmen per Mail senden. In den Kameras habe ich keine SD-Karten.
Denkbar wäre auch aus FHEM den Recording-Ordner auf Veränderungen zu überwachen und ein Telegram zu senden.
Möglichkeiten gibt es viele.
Falls Du mehr brauchst melde Dich einfach.

lynckmeister

ja besten dank.. ich habe gestern noch einiges gelesen, hier gibt es einen Thread der praktisch alle URLs die die Cam so hat listet:

http://blog.steveundkristin.de/2015/12/22/wansview-ncm625gb-x-series-urls-und-mehr/

Nur die Bewegungsmeldung muss wohl über den von dir beschriebenen Umweg laufen , hatte gehofft es gibt einen direkten Weg, einige Cams scheinen eine eingegebene URL aktiv aufzurufen sobald sie etwas "sehen" alternativ wäre auch eine CGI URL schön in der man die Sekunden , seit dem letzen Motion-detect sehen könnte oder so... aber letztendlich gehts auch mit dem Überwachten Ordner genauso gut denk ich , da setz ich mich jetzt mal als nächstes dran.
vielen Dank erstmal ...