Modul PRESENCE wird nicht ausgeführt

Begonnen von tupol, 09 Januar 2014, 20:34:08

Vorheriges Thema - Nächstes Thema

tupol

Hallo,

ich habe Probleme mit dem Modul PRESENCE auf einer FB9370 FHEM 5.5.

Das Modul scheint irgendwie zu hängen und führt die Abfragen nicht aus.
Ich habe es mit dem Modus fritzbox und lan-ping versucht, ohne Erfolg. Der State wird nie aktualisiert. Keine Änderung der state-Zeit. Auch nicht bei "set ... statusRequest"
Ich habe verbose auf 5 gesetzt. Es gibt keine Einträge ins Logfile.

Was läuft falsch? Könnte Ihr mir helfen?

tpm88

Hallo,

damit die Modi fritzbox und lan-ping funktionieren, muss der FHEM-Server auf der FB unter dem User root gestartet sein.

Siehe auch: http://www.fhemwiki.de/wiki/FritzBox:_fhem_unter_root_starten

Im FHEM Haupt-Log findet sich sonst:


ping: permission denied (are you root?)


Tobias
Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on Odroid HC1, HM-USB, JeeLink
Devices: diverse HM, IT1500, 1wire, LaCrosse, MQTT

Markus Bloch

So ist natürlich fast gar kein Fleisch am Knochen mit dem man arbeiten kann.

Bitte poste deine Konfiguration, sowie ein "list <definition>" damit man analysieren kann.

Sonst ist das nur stochern im Nebel.
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

tupol

FHEM lauft laut ps auf root
1755 root     22388 S    perl fhem.pl fhem.cfg

Was genau meinst Du mit Konfiguration. Meine Hardware? An der FB läuft noch eine CUL v3. Fritz OS ist 6.01
Hier meine List-Ausgabe.


Internals:
   ADDRESS    Soundbridge
   CFGFN      ./FHEM/fritzbox.cfg
   DEF        fritzbox Soundbridge
   MODE       fritzbox
   NAME       display_soundbridge
   NR         49
   STATE      present
   TIMEOUT_NORMAL 30
   TIMEOUT_PRESENT 30
   TYPE       PRESENCE
   Readings:
     2014-01-09 20:06:31   state           present
   Helper:
     Running_pid:
       abortFn    PRESENCE_ProcessAbortedScan
       finishFn   PRESENCE_ProcessLocalScan
       fn         PRESENCE_DoLocalFritzBoxScan
       pid        18222
       Abortarg:


Das Reading scheint vom letzte Kaltstart der FB zu sein.

Benötigst Du noch mehr Daten?

Danke für die Hilfe.

Gruß

Tupol

tupol

Könnte der untere Log-Eintrag etwas damit zu tun haben?

2014.01.11 17:23:37 1: CallBlockingFn: Can't connect to localhost:

tupol

Mmmh. Bin per Zufall gerade auf http://forum.fhem.de/index.php/topic,12383.msg78102.html#msg78102 gestoßen.

in meiner fhem.cfg gibt es ein:
define tPort telnet 7072 global
attr tPort allowfrom 192.168.178.*|127.0.0.1

Ich habe mehrfach rereadcfg benutzt. Kann es sein, dass dieses dann blocking.pm blockiert.

Muss ich mein Telnet-Device verändern?

tupol

Ok. Das war es tatsächlich gewesen.

Kann mir bitte jemand schreiben, wie ich das Telnet device konfigurieren muss, damit dies nicht mehr passiert?

Markus Bloch

Hallo tupol,

am besten du richtest ein zweites Telnet Device ein, welches nur auf loopback-Verbindungen lauscht.

define tPortLocal telnet 7073

ohne den Parameter global lauscht ein telnet-Device nur auf 127.0.0.1.

Das erkennt Blocking.pm und benutzt automatisch dieses.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

tupol

Vielen Dank.

Dann hätte ich mal noch einen Verbesserungsvorschlag. Mein Drucker sitzt am LAN. Ich hatte ihn heute benutzt und vor einigen Stunden ausgeschaltet. Das PRESENT Module zeigt ihn immer noch als present an. Der Grund scheint in der Abfrage des Speed-Parameters zu liegen
/usr/bin/ctlmgr_ctl r landevice settings/landevice$number/speed

Ich habe nicht genau verstanden, wann Du auf das (richtige) Kommando "active" umschaltest. Möglich wäre auch "online". Beide sind 0

Markus Bloch

Der Parameter "active" wird ausgewertet, wenn man das Attribut "fritzbox_repeater" auf 1 setzt. Hintergrund dazu ist, dass in einer WLAN Umgebung mit mindestens 2 FritzBoxen, welche ein WLAN vergrößern, der Parameter "speed" nicht funktioniert, sobald ein Client in der anderen Fritzbox sich einbucht, welche das WLAN nur vergrößert.

Du kannst daher gerne den Parameter "fritzbox_repeater" setzen und schauhen, ob du damit bessere Ergebnisse erzielst.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

tupol

Naja. Mir scheint, dass der bei einer LAN-Verbindung der Parameter "speed" schlichtweg nicht nutzbar ist. Er zeigt anscheinend immer die LAN-Geschwindigkeit des Anschlusses an (z.B. 1000). Wenn Du die Speed-Abfrage nutzt, müsstest Du als vorher nachsehen, ob es tatsächlich eine WLAN Verbindung ist (Parameter wlan=1) ansonsten müsstest Du "active" oder "online" nutzen.

fritzbox_repeater würde wahrscheinlich helfen, wäre aber unsauber ;-)

Gruß

Tupol

Markus Bloch

Hallo tupel,

da hast du wohl recht. Werde ich in den nächsten Tagen ändern.

Viele Grüße und Danke

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

tupol

Super. Danke für Dein tolles Module. :-)