PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Monitord reagiert nicht auf Socket-Befehle



mapumba
07.08.2013, 12:34
Hallo Zusammen,

ich hab ein Problem mit den Socket-Anfragen von monitord. Auf diesen Post hin erstelle ich nun ein neues Thema http://www.funkmeldesystem.de/foren/showthread.php?p=443143#post443143 .

Ich hab mir monitord aus dem SVN geholt und gebaut. Konfiguriert hab ich es mit ALSA, enable Plugins und MySQL. Es läuft auf dem aktuellen Raspbian. ( Alles letzte Woche neu aufgesetzt. )

Die reine Verbindung mit einer in der Konfiguration, freigegebenen IP-Adresse funktioniert ohne Probleme, ebenso werden auch FMS, sowie ZVEI Meldungen an den Client (zum Testen "monitord_php_client" via CLI, sowie Telnet) ausgegeben.

Auszug aus der Logdatei:


13:15:38.382 INFO: monitord/Monitor.cpp(147) monitord socketserver started
13:15:38.386 INFO: monitord/Monitor.cpp(153) fms32pro socketserver started
13:15:38.390 INFO: monitord/Monitor.cpp(158) crusader socketserver started
...
16:24:17.457 INFO: monitord/SocketServer.cpp(271) new connection from 192.168.*.*
16:24:17.460 INFO: monitord/SocketServer.cpp(677) login authentication (ip allowed): 192.168.*.*


Beim Absenden von einem Inquiry (210) sollte eigentlich "Socket reports read event" im Log erscheinen, sowie die Debug ausgaben von SocketThreadMonitord.cpp. Dort wird aber nach dem Verbindungsaufbau nichts weiter angezeigt außer den Debug ausgaben bei Empfangenen FMS/ZVEI.

Sonst hab ich nichts verändert und bis auf die Fehlende Reaktion bei Befehlen funktioniert auch alles Problemlos.


Gruß
Daniel

jbader
11.08.2013, 13:30
Hallo Daniel,

ich habe hier das selbe Problem. Bei mir scheint eine Änderung der Zeile SocketServer.cpp:717 zu helfen.

original:
int result = select(1, &fdset, NULL, &fdset_exceptions, &tv);

geändert:
int result = select(m_fd+1, &fdset, NULL, &fdset_exceptions, &tv);

Mit der Original Zeile scheint er wohl auf dem falschen file descriptor auf Änderungen zu warten.

Gruß
Joachim