[fli4l] Wie verlä?==?utf-8?Q?sslich ist die Info in /va?==?utf-8?Q?r/run/arping.stat?

K. Dreier usenetforum at gmx.net
Mi Feb 8 08:52:11 CET 2017


> > bei WLAN-Geräten könnte da  noch der Stromsparmodus
> > reinspielen - die sind
> > im Sparmodus teilweise nicht erreichbar.
>
> Ja, das dürfte in der Tat das Problem sein, was ich aber glaube,
> mit dem häufigen anpingen unterbinden zu können. Werde es weiter
> beobachten.

Update: Leider kein Glück. Ich habe im Skript nun sogar beides drin, er
schaut also einerseits nach der Info eines pings, der alle 20 Sek
erfolgt, sowie nach der Datei "clientX.online" in /arping.stat.
Trotzdem habe ich einen Android-client, der (normaler Akkustand)
offensichtlich massiven Schlafentzug hat und ständig einschläft.
Interessanterweise aber ist das WLAN weiter verbunden, d.h. aus
irgendeinem Grund bleibt das WLAN an und mit dem Router verbunden und
_trotzdem_ hat fli4l das Gefühl, daß der client2 offline ist. Wie das
sein kann, ist mir unverständlich. Hinzu kommt, daß ich noch eine App
installiert habe, welche ich testweise mal so eingestellt hat, daß sie
alle 60 Sek einen heartbeat check mit dem Google-Server macht. Und
trotzdem "schläft" das Ding. Mein anderer Android-client1 verursacht
das Problem nicht. Sobald der also (auch) im WLAN verbunden ist, ist
alles ok. Nehme ich ihn raus und lasse nur client2 drin, dann "aus" nach
kurzer Zeit. Das Skript ist also nicht das Problem, denke ich, sondern
ich sehe ja auf fli4l, daß der client2 tatsächlich als offline
geführt wurde.

Hat jemand eine Idee, wie ich das eventuell verhindern könnte ohne bei
diesem client sinnlos dauerhaft das Display eingeschaltet zu lassen (das
wäre wirklich keine Option)? Und nein, es hat auf dem keinen agressiven
Stromsparmodus aktiv.

Der vollständigkeit halber hier der Teil (!) des Skripts, der den
Status abfragt:
-------------------
exists=$(grep -c -i "100% packet loss" "/data/ping_${DEVICE1}.txt")
# either ping unsuccessful or DEVICE1.online does not exist
if [ $exists -gt 0 ] || [ ! -e /var/run/arping.stat/$DEVICE1.online ] ;
then
	DEVICE1_ONLINE="false"
else
	DEVICE1_ONLINE="true"
fi

exists=$(grep -c -i "100% packet loss" "/data/ping_${DEVICE2}.txt")
if [ $exists -gt 0 ] || [ ! -e /var/run/arping.stat/$DEVICE2.online ] ;
then
	DEVICE2_ONLINE="false"
else
	DEVICE2_ONLINE="true"
fi
-------------------

Das obige funktioniert zumindest mit dem client1 problemlos. Sollte also
doch passen, oder? Ich muss "negativ" gehen, da ich nicht "0% packet..."
abfragen kann, da das auch bei "100% packet..." drin wäre. Zumindest
wüsste ich nicht wie. ;-)

Gruß
Klaus


Mehr Informationen über die Mailingliste Fli4L