[gelöst]Spezielle Frage zum Signal von IP-Kamera an Cubietruck

Begonnen von moonsorrox, 15 März 2015, 13:05:15

Vorheriges Thema - Nächstes Thema

moonsorrox

Ich hoffe die Frage ist hier im Bereich Einplatinencomputer richtig aufgehoben... weil ich denke der Cubietruck ist das Problem..!

@betateilchen
vielleicht kannst du mir ja helfen, ich hatte schon mit einem User der genau die gleiche Kamera besitzt Kontakt aber wir kommen da nicht weiter, weil sein Fhem auf einem tuxradio2 läuft...

Nun mal zu meinem Problem.
Die Kamera kann, wenn man in den Bereich der Messfelder kommt Signale absetzen in der Form wie es Fhem kennt, so z.B.
Diesen Code kann Fhem verarbeiten
/fhem?cmd={fhem "set LichtOG on-for-timer 120"}

eingetragen in der Kamera sieht das so aus, den Code habe ich so aus der Kamera genommen und funktioniert so bei dem anderen User auch nur eben das Device ist anders
/fhem?cmd={fhem+"set+LichtOG+on-for-timer+120"}

Folgende Einstellungen stehen in der Kamera:

ZitatZieladressen:
IP-Adresse und Port des empfangenden Computers.
Trennen Sie Adresse und Portnummer durch einen Doppelpunkt.
Geben Sie jede Adresse in einer eigenen Zeile ein.

Meine Eingabe:
10.0.0.50:8085


ZitatDatenprotokoll:

Übertragungsprotokoll:
Netzwerkmeldungs-Daten mit diesem Protokoll versenden.

Meine Eingabe:
HTTP/1.0-Request+Bestätigung


CGI-Pfad:
Absoluter CGI-Pfad, beginnend mit '/'.
Dieser Parameter erlaubt die Verwendung von Variablen.

Meine Eingabe:
/fhem?cmd={fhem+"set+LichtOG+on-for-timer+120"}

Ich hänge mal ein Screenshot ran.

Wenn ich jetzt diesen Befehl in einem Netzwerktest ausführe bekomme ich immer Fehlermeldungen und er wird nicht ausgeführt.
Ich kann diesen Befehl auch über TCP/IP senden da kommt die Meldung Netzwerktest ausgeführt.
Über HTTP/Request kommt aber eine Fehlermeldung.
Ports habe ich schon geändert, nichts gebracht deshalb bin ich der Meinung es liegt am Linux auf dem Cubie, was könnte dies noch sein.

Fehlermeldung über TCP/IP gesendet:
ZitatNetzwerktest-Logfenster
Hinweis: Während der Test läuft, werden im Hauptfenster keine Ausgaben angezeigt!

Verschicken einer Netzwerkmeldung gemäß Profil "Licht_Eingang_Fhem". Das kann bis zu einer Minute dauern:
INF: loading notify profile Licht_Eingang_Fhem ...
INF: set profile send order "parallel"
INF: set profile address "10.0.0.50:8085"
INF: set profile data type "msg"
INF: set profile message ""
INF: set profile raw boundary "--next-image--"
INF: force generation of current JPEG ...
INF: [hdl#1] connection established (ip=10.0.0.50, port=8085, fd=2) ...
INF: notification to 10.0.0.50:8085 has been sent [msg okay=1].
Result:
INF: sending message succeed. 1x0 bytes in 2.015s.

Fehlermeldung über HTTP/Request gesendet:
ZitatHinweis: Während der Test läuft, werden im Hauptfenster keine Ausgaben angezeigt!

Verschicken einer Netzwerkmeldung gemäß Profil "Licht_Eingang_Fhem". Das kann bis zu einer Minute dauern:
INF: loading notify profile Licht_Eingang_Fhem ...
INF: set profile send order "parallel"
INF: set profile address "10.0.0.50:8085"
INF: set profile data type "msg"
INF: set profile message ""
INF: set profile http version: "HTTP/1.0"
INF: set profile http cgi path: "/fhem?cmd={fhem+"set+LichtOG+on-for-timer+120"}"
INF: set profile http authorize: ""
INF: force generation of current JPEG ...
INF: [hdl#1] connection established (ip=10.0.0.50, port=8085, fd=2) ...
INF: [hdl#1] HTTP-Headers: HTTP/1.1 302 Found
INF: [hdl#1] HTTP-Headers: Content-Length: 0
Result:
ERR: HTTP-Request für 10.0.0.50:8085 wurde umgeleitet (HTTP-Code 302)!

Im Netzwerktest gibt es auch noch eine Fehlermeldung:
ZitatVersenden der Netzwerkmeldung schlug fehl. Fehler Nr. 12: "Zeitüberschreitung beim Warten auf HTTP-Antwort von 10.0.0.50:8085! ".

Tja kann es sein das der Cubietruck/Linux hier einen speziellen User braucht, ob das nun bei einem tuxradio anders ist weiß ich eben nicht, aber da funktioniert es ja.

Vielen Dank fürs lesen  ;)
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

LuckyDay

Zitat10.0.0.50:8085/fhem?cmd=set%20LichtOG%20on-for-timer%20120&XHR=1

und bei HTTP/1.0-Request+Bestätigung keine Bestätigung

moonsorrox

#2
ich hatte große Hoffnung weil dieses "wahnwitzige" Kommando  ;) hatte ich noch nicht ausprobiert...!
Aber leider kein Erfolg :-\

Fehlermeldung:
00:24:08    IPMSG    Licht_Eingang_Fhem[1583]    Zeitüberschreitung beim Warten auf HTTP-Antwort von 10.0.0.50:8085!
00:30:27    IPMSG    Licht_Eingang_Fhem[1724]    Zeitüberschreitung beim Warten auf HTTP-Antwort von 10.0.0.50:8085!

Wenn ich das über ein Softbutton der Kamera konfiguriere, funktioniert das ja auch.
(falls du dich auskennst, in den Kameras kann man Softbutton mit Meldungen und Kommandos belegen)
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

LuckyDay

ich würde jetzt mal folgendes machen
deinen Fhemweb 8085 verbose auf 5, zum sehen , was deine Cam da schickt


http://192.168.2.104:8083/fhem?cmd=set%20wz_schalter_1%20on-for-timer%205&XHR=1
der Link ist angepasst für mein Fhem
2015.03.16 21:05:40.293 4: 7372:FHEMWEB:192.168.2.40:53651: /fhem?cmd=set%20wz_schalter_1%20on-for-timer%205&XHR=1 / RL:20 / text/plain; charset=UTF-8 / Content-Encoding: gzip
2015.03.16 21:05:40.266 4: HTTP FHEMWEB:192.168.2.40:53651 GET /fhem?cmd=set%20wz_schalter_1%20on-for-timer%205&XHR=1
2015.03.16 21:05:40.262 4: Connection accepted from FHEMWEB:192.168.2.40:53651
/
2015.03.16 21:05:15.722 4: 7372:FHEMWEB:192.168.2.40:53645: /fhem?detail=WEBtablet / RL:3000 / text/html; charset=UTF-8 / Content-Encoding: gzip
/
2015.03.16 21:05:06.028 4: 7372:FHEMWEB:192.168.2.40:53644: /fhem?detail=WEBtablet / RL:3000 / text/html; charset=UTF-8 / Content-Encoding: gzip


Da hab ich mal Quatsch gesendet
http://192.168.2.104:8085/test_test_test
2015.03.16 21:13:31.726 4: 7372:FHEMWEB:192.168.2.40:53699: /fhem / RL:1257 / text/html; charset=UTF-8 / Content-Encoding: gzip
2015.03.16 21:13:31.688 4: HTTP FHEMWEB:192.168.2.40:53699 GET /fhem
2015.03.16 21:13:31.678 4: WEBtablet: redirecting /test_test_test to /fhem
2015.03.16 21:13:31.677 4: HTTP FHEMWEB:192.168.2.40:53699 GET /http://192.168.2.104:8085/
2015.03.16 21:13:31.674 4: Connection accepted from FHEMWEB:192.168.2.40:53699

moonsorrox

#4
so das habe ich auch mal getestet und das bekomme ich als einzige Meldung.

habe auch diesen Quatsch gesendet: ;)
http://10.0.0.50:8085/test_test_test
2015.03.17 01:37:51 4: Connection accepted from FHEMWEB:10.0.0.64:1025


dann habe ich mal das Signal über den Softbutton (der funktioniert ja) geschickt da bekomme ich folgendes im Log
2015.03.17 01:47:12 4: 23741:FHEMWEB:10.0.0.11:49838: /fhem?cmd=set%20LichtOG%20on-for-timer%2010&XHR=1 / RL:20 / text/plain; charset=UTF-8 / Content-Encoding: gzip
2015.03.17 01:47:12 3: CUL_HM set LichtOG on-for-timer 10
2015.03.17 01:47:12 4: HTTP FHEMWEB:10.0.0.11:49838 GET /fhem?cmd=set%20LichtOG%20on-for-timer%2010&XHR=1


aber ich sehe schon hier hat dies ja mein PC geschickt...
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

Owel

mach doch einen tcpdump auf deinem cubietruck und analysiere das dann mit wireshark.

tcpdump -i any -w /var/tmp/fhem.pcap port 8080 or port 80

anschließend das pcap file mir wireshark öffnen, dann siehst du was gesendet und empfangen wurde

LuckyDay

@moonsorrox

schreibmal zusätzlich in das msgText Feld etwas rein
bzw ob du die Zieladresse so setzen kannst
10.0.0.50:8085/fhem?cmd=set%20LichtOG%20on-for-timer%2010&XHR=1

Ich hab mir die Beschreibung von der Camera runtergeladen
das mit dem CGI Pfad ? erzählen die dann irgendetwas von localhost und scripte

moonsorrox

Zitat von: Owel am 17 März 2015, 11:00:21
mach doch einen tcpdump auf deinem cubietruck und analysiere das dann mit wireshark.

werde ich mal versuchen, obwohl wireshark nicht so mein Freund is...



Zitat von: fhem-hm-knecht am 17 März 2015, 15:24:01
@moonsorrox

schreibmal zusätzlich in das msgText Feld etwas rein
bzw ob du die Zieladresse so setzen kannst
10.0.0.50:8085/fhem?cmd=set%20LichtOG%20on-for-timer%2010&XHR=1

Ich hab mir die Beschreibung von der Camera runtergeladen
das mit dem CGI Pfad ? erzählen die dann irgendetwas von localhost und scripte

ich habe auch das Kamerabuch schon länger in der Mache, aber nochnichts gefunden...  :-\

Das probiere ich morgen mal, hatte heute gar keine Zeit  :-\
Das mit dem Kommentarfeld hatte ich schon probiert weil es hier irgendwo im Forum schon beschrieben wurde, aber ich finde den Thread nicht und ich hatte seiner Zeit jemand angeschrieben, aber bisher keine Antwort bekommen
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

moonsorrox

#8
so ich wollte hier nochmals etwas dazu schreiben, da ich ja noch einen weiteren Cubietruck zum testen habe.

Heute nun etwas Zeit gefunden weiter zu machen, aber was soll ich sagen auf diesem CT funktioniert das tadellos.
In der Kamera einfach die andere IP eingetragen und sofort kommen die Signale an, heißt in Fhem werden Schaltaktionen ausgeführt.

Nun weiß ich leider immer noch nicht warum das auf meinem Produktivsystem nicht funktioniert.  :-\
Muss doch irgendwie raus zu kriegen sein, warum das auf dem CT nicht funktioniert  ???

Signal steht so drin und funktioniert:
/fhem?cmd=set%20LichtOG%20on-for-timer%20120&XHR=1

EDITH://
vergessen zu schreiben zu tcpdump, da sagt er: command not found
Muss wohl installiert werden...!


Hier nochmals zum Vergleich die Meldungen von der Kamera
### FUNKTIONIERT ###
Netzwerktest-Logfenster ############## funktioniert
Hinweis: Während der Test läuft, werden im Hauptfenster keine Ausgaben angezeigt!

Verschicken einer Netzwerkmeldung gemäß Profil "Licht_Fhem_Eingang". Das kann bis zu einer Minute dauern:
INF: loading notify profile Licht_Fhem_Eingang ...
INF: set profile send order "on_error"
INF: set profile address "10.0.0.52:8085"
INF: set profile data type "msg"
INF: set profile message ""
INF: set profile http version: "HTTP/1.0"
INF: set profile http cgi path: "/fhem?cmd=set%20LichtOG%20on-for-timer%2010&XHR=1"
INF: set profile http authorize: ""
INF: force generation of current JPEG ...
INF: [hdl#1] connection established (ip=10.0.0.52, port=8085, fd=2) ...
INF: [hdl#1] HTTP-Headers: HTTP/1.1 200 OK
INF: [hdl#1] HTTP-Headers: Content-Length: 0
INF: [hdl#1] HTTP-Headers: Content-Type: text/plain; charset=UTF-8
INF: notification to 10.0.0.52:8085 has been sent [msg okay=1].
INF: Server 10.0.0.52:8085 responsed HTTP code 200.
INF: 1 message(s) has been sent. tried 1 destination(s).
Result:
INF: sending message succeed. 1x169 bytes in 3.013s.



und hier wo es nicht funktioniert:
Netzwerktest-Logfenster
Hinweis: Während der Test läuft, werden im Hauptfenster keine Ausgaben angezeigt!

Verschicken einer Netzwerkmeldung gemäß Profil "Licht_Fhem_Eingang". Das kann bis zu einer Minute dauern:
INF: loading notify profile Licht_Fhem_Eingang ...
INF: set profile send order "on_error"
INF: set profile address "10.0.0.50:8085"
INF: set profile data type "msg"
INF: set profile message ""
INF: set profile http version: "HTTP/1.0"
INF: set profile http cgi path: "/fhem?cmd=set%20LichtOG%20on-for-timer%20120&XHR=1"
INF: set profile http authorize: ""
INF: force generation of current JPEG ...
INF: [hdl#1] connection established (ip=10.0.0.50, port=8085, fd=2) ...
Result:
ERR: Zeitüberschreitung beim Warten auf HTTP-Antwort von 10.0.0.50:8085!
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

moonsorrox

#9
EDITH://
so nach eingehenden Tests usw. habe ich den Fehler gefunden, eigentlich ganz einfach...! ;)
Ich habe auf allen Ports auf die ich das Signal sende ein Passwort drin, dass ist der Fehler..!

Auf meinem frisch installierten Test CT hatte ich noch keines vergeben, deshalb funktionierte es...!


ich hatte nun vor alles auf meinen zweiten Cubietruck um zu switchen und habe den auch fast fertig und um nochmal zu probieren ob es noch funktioniert...!

Es geht nicht mehr, heißt also auch hier die Problem mit der Zeitüberschreitung und das Signal kommt nicht mehr an...! :-\ :-\

Jetzt weiß ich zwar was ich alles zusätzlich installiert habe, aber woran das nun liegen könnte leider nicht.
Evtl. ist eines der Pakete dafür verantwortlich, hier sind mal die Linux Profis gefragt, der ich leider nicht bin

Pakete die ich installiert habe:
1. das Paket sendEmail installiert
apt-get install sendEmail

2. das Paket rsync
apt-get install rsync

3. das Paket NFS Client Installation
apt-get -y install nfs-common
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM