IPCAM: Kommandos tun nicht

Begonnen von MarkusAutomaticus, 23 Januar 2017, 10:19:53

Vorheriges Thema - Nächstes Thema

MarkusAutomaticus

Hallo zusammen,

wenn ich es richtig verstanden habe, muss zunächst in den Attributen einem CMD das entsprechende CGI Kommando zugewiesen werden,
um dieses dann per SET auslösen zu können, oder?

Wenn ich so vorgehe, bleibt zum Beispiel bei einem pan left die Kamera einfach stehen.
Gebe ich das CGI-Kommando inkl. IP-Adresse etc. direkt im Browser ein, funktioniert es tadellos.

Bei der Kamera handelt es sich um eine INSTAR IN-6014HD, die als unterstützt im FHEM-wiki steht und ansonsten prima funktioniert.
Gibt es beim Format etwas zu beachten? Etwa irgendwelche Anführungszeichen, Klammern o.ä. um das CMD schreiben?

Gruß
Markus
FHEM 5.8 |intel NUC Core i3: Ubuntu 22.04 | z-Wave: Aeon Labs USB Stick | Jeelink (v3c): LaCrosse-Sensoren | DuoFern Stick: Rademacher Gurtwickler | Philips Hue Bridge | CUNX: HomeMatic, EnOcean-Pigator

Devender

Korrekt, ohne Zuweisung zu einem CMD klappt sonst kein Befehl.

attr meineCam  cgi-bin/hi3510/param.cgi?cmd=setmdattr&-enable=1&-name=2

Funktioniert bei meiner Wansview (baugleich instar) .
Die CMD müssen immer ab dem cgi-bin beginnen.

Klappen andere Befehle wie motion ausschalten etc?

Gruesse,
Dirk
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

Amenophis86

Hallo,
ich habe heute meine FI9831P von Fiscom mit FHEM verbunden und mich dabei mit dem IPCam Modul auseinander gesetzt. Hier mal meine Definition:


Internals:
   AUTHORITY  192.168.2.xx:88
   CFGFN
   DEF        192.168.2.xx:88
   NAME       IPKamera
   NR         184
   SEQ        0
   STATE      last: 2017-02-04 13:01:08
   TYPE       IPCAM
   Readings:
     2017-02-04 13:01:09   last            IPKamera_snapshot.jpg
     2017-02-04 13:01:08   snapshot1       IPKamera_snapshot_1.jpg
     2017-02-04 13:01:09   snapshots       1
Attributes:
   cmd01      cmd=ptzStopRun
   cmdPanLeft cmd=ptzMoveLeft
   cmdPanRight cmd=ptzMoveRight
   cmdPos01   cmd=ptzGotoPresetPoint&name=Standard
   cmdPos02   cmd=ptzGotoPresetPoint&name=Kueche
   cmdTiltDown cmd=ptzMoveDown
   cmdTiltUp  cmd=ptzMoveUp
   path       cgi-bin/CGIProxy.fcgi?usr=xxx&pwd=xxx&cmd=snapPicture2
   pathCmd    cgi-bin/CGIProxy.fcgi?usr=xxx&pwd=xxx
   pathPanTilt cgi-bin/CGIProxy.fcgi?usr=xxx&pwd=xxx
   storage    ./www/images/webcam
   verbose    5


Ich hatte ständig das Problem, dass mittels pathCmd und cmd01 keine Befehle an der Kamera angekommen sind. Quasi wie bei dir MarkusAutomaticus. Habe mir dann das Modul mal angeschaut und festgestellt, dass in Zeile 212 folgendes steht:

$camURI .= "?$camQuery";

Dies hatte zur Folge, dass mein Befehl wie folgt ausgesehen hat:

http://192.168.2.xxx:88/cgi-bin/CGIProxy.fcgi?usr=xxx&pwd=xxx?cmd=ptzStopRun


Es wurde quasi der Command mittels ? angefügt anstelle von &. Wenn ich nun in der Zeile ? durch & ersetze geht es. Ich habe bisher auch nicht nachvollziehen können, in welchem Fall das ? an dieser Stelle gebraucht wird. Es wird ja vorher geschaut, ob pathcmd gesetzt ist und dadurch ist eigentlich logisch, dass es & und nicht ? heißen muss.

@Martin: Soll das so sein, oder ist es ein Fehler gewesen mit dem ? anstelle des & ??
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Ampheus

#3
Danke für den Tip. Habe auch ewig gesucht (FOSCAM). Mit dem Tip habe ich jetzt ein Workaround gefunden, ohne dass ich den Code ändern muss.

Habe einfach bei pathCMD nur den Pfad ohne User/Passwort eingetragen, also

attr pathCMD cgi-bin/CGIProxy.fcgi

Dafür habe ich die Logindaten an jeden CMD Befehlt angehängt, also

attr cmd01 cmd=zoomOut&usr=xxx&pwd=xxx

Dann passt es, dass er es mit Fragezeichen anhängt.

Gruß
Thomas.

Amenophis86

#4
Vielleicht sollte es genau so sein und ich habe es damals verstanden. Jetzt danke ich für den Hinweis, werde es dann auch wieder zurück ändern, sobald ich Zeit dafür finde :)

Edit:
Wiki Eintrag werde ich dann auch anpassen, habe im Moment jedoch viel zu tun. Daher wird es noch dauern.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Amenophis86

So habe es endlich auch mal im Wiki geändert :)
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...