[AMAD2] screen unlock

Begonnen von StefanD, 01 Mai 2016, 11:02:05

Vorheriges Thema - Nächstes Thema

StefanD

Hallo zusammen,

der Nachwuchs soll ein ausgedientes MotoG (erstes Modell) als DLNA Player bekommen, natürlich ohne SIM und nur wenigen freigegebenen Apps und ohne Internetzugriff.

AMAD(2) hat die Entscheidung auch noch beeinflusst, da wir damit mehr Kontrolle über die Medienzeit haben. Bisher funktioniert das, was ich über AMAD2 umsetzen möchte, sehr gut, jedoch bleibt auf dem MotoG nach dem set amad_MotoG screen unlock der Sperrscreen bestehen, d.h. es muss nach oben gewischt werden, dann erscheint auch der Screen ohne PIN-Eingabe.

Zuerst dachte ich, dass wäre ein Problem von Android 6 und bin jetzt mal auf 5.1 zurück. Als Images verwende ich CyanogenMod. Bei Android 6 hatte ich das Zusatzmodul von Automagic Premium mitinstalliert. Als Flowset kam ausschließlich Version 2.0.4 zum Einsatz.

Da die PIN-Abfrage entfernt wird, würde ich das Verhalten eher auf Seiten des Androiden und/oder Automatic vermuten und FHEM ein korrektes Funktionieren unterstellen.

Kann dieses Verhalten jemand bestätigen oder reproduzieren? Ist es ggf. auch by Android-Design so?

VG Stefan

List MotoG:
Internals:
   APSSID     Funkwerk2,1750E-DG
   DEF        192.168.254.34 Funkwerk2,1750E-DG
   HOST       192.168.254.34
   NAME       amad_MotoG
   NR         567
   PORT       8090
   STATE      active
   TYPE       AMAD
   VERSIONFLOWSET 2.0.4
   VERSIONMODUL 2.0.2
   Readings:
     2016-05-01 10:12:37   airplanemode    off
     2016-05-01 10:12:35   androidVersion  5.1 Lollipop MR1
     2016-05-01 10:12:37   automagicState  Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff
     2016-05-01 10:12:36   bluetooth       off
     2016-05-01 10:43:58   checkActiveTask 0
     2016-05-01 10:43:58   connectedBTdevices
     2016-05-01 10:43:58   connectedBTdevicesMAC
     2016-05-01 10:12:36   currentMusicAlbum no soundplayer active
     2016-05-01 10:12:36   currentMusicArtist no soundplayer active
     2016-05-01 10:12:36   currentMusicTrack no soundplayer active
     2016-05-01 10:12:37   deviceState     online
     2016-05-01 10:12:36   dockingState    undocked
     2016-05-01 10:43:58   flow_SetCommands aktiv
     2016-05-01 10:41:56   flow_informations aktiv
     2016-05-01 10:43:58   flowsetVersionAtDevice 2.0.4
     2016-05-01 10:41:47   keyguardSet     0
     2016-05-01 10:41:51   lastSetCommandState setCmd_done
     2016-05-01 10:43:58   lastStatusRequestState statusRequest_done
     2016-05-01 10:12:36   nextAlarmDay    off
     2016-05-01 10:12:36   nextAlarmTime   off
     2016-05-01 10:40:59   powerLevel      93.0
     2016-05-01 10:40:59   powerPlugged    2
     2016-05-01 10:43:58   screen          off unlocked
     2016-05-01 10:12:35   screenBrightness 102
     2016-05-01 10:43:58   screenOrientation portrait
     2016-05-01 10:43:58   screenOrientationMode auto
     2016-05-01 10:43:58   state           active
     2016-05-01 10:12:37   volume          5
     2016-05-01 10:12:35   volumeNotification
   Helper:
     infoErrorCounter 0
     setCmdErrorCounter 0
Attributes:
   icon       it_smartphone
   room       AMAD
   root       1
   setScreenlockPIN crypt:01015201
   verbose    0


List Bridge:
Internals:
   BRIDGE     1
   CONNECTS   8
   FD         115
   NAME       AMADCommBridge
   NR         566
   PORT       8090
   STATE      opened
   TYPE       AMAD
   VERSIONFLOWSET 2.0.4
   VERSIONMODUL 2.0.2
   Readings:
     2016-04-25 22:24:29   expertMode      1
     2016-04-26 18:03:58   fhemServerIP    192.168.254.50
     2016-05-01 10:12:19   state           opened
Attributes:
   room       AMAD
HW: Intel NUC8i5 mit ESXi7 mit Ubuntu Server 18.04 LTS und FHEM als DockerContainer

CoolTux

Hallo Stefan,

da meine Freundin mit dem MotoG gerade unterwegs ist muss ich Dich belästigen  ;D
Teste mal fo!gendes. Screen sperren, Gerät an schalten schauen ob gesperrt ist. Gerät ausmachen.
Gerät entsperren, Gerät an schalten, wieder ausschalten und wieder an, schauen ob nun komplett frei ist.

Meine Tochter ist 13, ich habe das Handy gerootet und lasse da Avast drauf laufen.
Firewall blockiert alles über Mobilfunk, nur WLAN geht. Einstellungen sind gesperrt ebenso einige System Apps. Zu Hause kontrolliert meine Firewall und Squid was und wie lange sie darf.


Grüße

Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

StefanD

Sorry für die späte Antwort, war bei den Schwiegereltern, die haben zu Speis und Trank gerufen...  ::)


Zitat von: CoolTux am 01 Mai 2016, 11:41:35
Teste mal fo!gendes. Screen sperren, Gerät an schalten schauen ob gesperrt ist. Gerät ausmachen.
Ausgangssituation: Screen lock nicht aktiv, Einschalten führt direkt zu noch geöffneter App, Screen über Ein-/Ausschalter ausgeschaltet
FHEM: set amad_MotoG screen lock -> Status in FHEM welchselt auf screen        off unlocked und ändert sich auch nach >30s nicht
MotoG: Display über Ein-/Ausschalter eingeschaltet -> bleibt entsperrt, sprich lande gleich auf dem Screen der App  ???
FHEM: set amad_MotoG screen lock -> set amad_MotoG screen off -> Status in FHEM wechselt umgehend auf screen       off locked

Zitat von: CoolTux am 01 Mai 2016, 11:41:35
Gerät entsperren, Gerät an schalten, wieder ausschalten und wieder an, schauen ob nun komplett frei ist.
Ausgangssituation: Screen ausgeschaltet, Sperre (via FHEM gesetzt) aktiv
FHEM: set amad_MotoG screen unlock -> Status in FHEM bleibt auf screen      off locked
FHEM: set amad_MotoG screen on -> Status in FHEM wechselt auf screen       on locked -> Lockscreen weiterhin aktiv
MotoG: Wisch nach oben zeigt weiterhin PIN Abfrage -> bis ich das hier getippt habe, ging das Display von selbst aus -> Screen über Ein-/Ausschalter wieder aktiviert -> LockScreen noch da und nach Wisch nach oben Screen mit der App wieder da ohne PIN Abfrage

In allen Fällen war beim Device in FHEM lastSetCommandState    setCmd_done

Meine Tochter ist 13, ich habe das Handy gerootet und lasse da Avast drauf laufen.
Firewall blockiert alles über Mobilfunk, nur WLAN geht. Einstellungen sind gesperrt ebenso einige System Apps. Zu Hause kontrolliert meine Firewall und Squid was und wie lange sie darf.

Meine sind grad halb so alt, aber es stellt sich aktuell die Frage nach neuen CD-Playern und da sie mit den Silberlingen nicht wirklich ausreichend sorgsam umgehen und auch nicht daraus lernen, wenn die Fehlerkorrektur es nicht mehr schafft sie abzuspielen, war eben die Überlegung den NUC, auf dem FHEM läuft noch als DLNA-Server zu nutzen und sie audiotechnisch darüber zu bedienen. Der Internetzugang für ihre Androiden wird erstmal am Router gesperrt und die Android-interne Zugriffssicherung für die Apps ist aktuell erstmal ausreichend. Den Zwangs-Squid habe ich schon auf der Uhr, wenn es mal notwendig werden wird, das kann der NUC dann auch noch übernehmen.  8)

VG Stefan
HW: Intel NUC8i5 mit ESXi7 mit Ubuntu Server 18.04 LTS und FHEM als DockerContainer

CoolTux

Hallo Stefan,

Wir waren auch gerade mit den Lütten auf nem Maifest.
Die Infos in FHEM bezüglich gesperrt nicht gesperrt sind nur korrekt wenn vorher ein Trigger angeschlagen ist. So zum Beispiel Screen on/off oder Batterie. Aber ich schaue mir das heute abend noch mal in Ruhe an.



Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

StefanD

Nur kein Stress!  :)

Was mir beim Testen einer "force shutdown Funktion" noch aufgefallen ist: Ist der Androide etwas länger aus (bei mir über 60min), wechselt das Reading deviceState (irgendwann) auf offline. So weit so gut, aber wann wechselt es selbstständig wieder auf online, damit set wieder funktioniert? Nach 15min stand es immer noch auf online. Sonstige Readings wurden umgehend nach dem Starten und auch zwischenzeitlich aktualisiert. Solange der deviceState nicht wieder online ist wird kein Befehl gesendet, was es letztlich dem Nachwuchs ermöglicht, das Gerät weiter zu nutzen, obwohl sie es nicht dürften.  ::)

VG Stefan
HW: Intel NUC8i5 mit ESXi7 mit Ubuntu Server 18.04 LTS und FHEM als DockerContainer

CoolTux

Zitat von: StefanD am 01 Mai 2016, 19:34:07
Nur kein Stress!  :)

Was mir beim Testen einer "force shutdown Funktion" noch aufgefallen ist: Ist der Androide etwas länger aus (bei mir über 60min), wechselt das Reading deviceState (irgendwann) auf offline. So weit so gut, aber wann wechselt es selbstständig wieder auf online, damit set wieder funktioniert? Nach 15min stand es immer noch auf online. Sonstige Readings wurden umgehend nach dem Starten und auch zwischenzeitlich aktualisiert. Solange der deviceState nicht wieder online ist wird kein Befehl gesendet, was es letztlich dem Nachwuchs ermöglicht, das Gerät weiter zu nutzen, obwohl sie es nicht dürften.  ::)

VG Stefan

Hallo Stefan,

So ich habe da mal ein paar Anpassungen machen können. Der Screen Status passt jetzt soweit immer in Echtzeit. Auch das locked obwohl unlocked wurde ist korrekt. Leider muss man einmalig nach einem unlocked eine Wischgeste machen, erst dann ist wirklich entsperrt.


Das Reading deviceState gibt nicht wirklich den Status des Device wieder. Eigentlich ist es dafür gedacht es manuell zu setzen um automatische Setbefehle zu nicht ausführen zu lassen. Es gibt aber noch eine Fehlerroutine in der Set Funktion und der statusRequest Funktion. Ist das Gerät über mehrmalige Versuche dennoch nicht erreichbar wird offline gesetzt und muss von Hand wieder online gesetzt werden.
Was ich nicht verstehe ist, warum Dein Gerät offline gesetzt wird. Schickst Du Schaltbefehle obwohl das Gerät aus ist?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

StefanD

Zitat von: CoolTux am 01 Mai 2016, 20:24:51
Hallo Stefan,

So ich habe da mal ein paar Anpassungen machen können. Der Screen Status passt jetzt soweit immer in Echtzeit. Auch das locked obwohl unlocked wurde ist korrekt. Leider muss man einmalig nach einem unlocked eine Wischgeste machen, erst dann ist wirklich entsperrt.


Das Reading deviceState gibt nicht wirklich den Status des Device wieder. Eigentlich ist es dafür gedacht es manuell zu setzen um automatische Setbefehle zu nicht ausführen zu lassen. Es gibt aber noch eine Fehlerroutine in der Set Funktion und der statusRequest Funktion. Ist das Gerät über mehrmalige Versuche dennoch nicht erreichbar wird offline gesetzt und muss von Hand wieder online gesetzt werden.
Was ich nicht verstehe ist, warum Dein Gerät offline gesetzt wird. Schickst Du Schaltbefehle obwohl das Gerät aus ist?

Ich tippe mal drauf, dass da einiges zwischen Automagic und Android nicht ganz so rund läuft, wie es sollte. Das mit dem Status konnte ich noch ein Stück weiter eingrenzen, es tritt u.a. dann zuverlässig auf, wenn man einen AM Flow hat, der den Flugmodus ausschaltet. Funktional ist der zwar dann aus, in der Statusleiste oben wird aber noch der Flieger angezeigt, sofern AM den Flugmodus ausschaltet. Schaltet man den Flugmodus manuell, funzt alles prima. AM schaltet also den Flugmodus vermutlich nicht korrekt, sondern kann danach auch dessen Status nicht sauber auslesen und folglich zurückmelden. Der Status bleibt offline. Schaltet man dann das Ganze mal manuell, geht der Status von selbst in FHEM auf online.

AM läuft mit root Rechten, daran kann es also nicht liegen.

Daruf gekommen bin ich, da ich einen Dummy habe, der einen force shutdown erzwingen soll, auch wenn das Gerät wieder eingeschaltet wird. Mein DOIF dazu ist recht simple aufgebaut:
define doif_TestMotoG DOIF ([amad_MotoG:deviceState] eq "online" and [amad_MotoG:screen] eq "on unlocked" and [dmy_MotoG_ForceShutdown] eq "ja") (set amad_MotoG system shutdown)
DOELSE ()
HW: Intel NUC8i5 mit ESXi7 mit Ubuntu Server 18.04 LTS und FHEM als DockerContainer

CoolTux

#7
Hallo Stefan,

Schaltest Du über FHEM den Flugmodus ein oder hast Du da was eigenes? Wenn Du den Airplainmode mit FHEM schaltest und auch bei einem Shutdown Befehl wird das Gerät automatisch offline gesetzt. Das ist richtig
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

StefanD

Den Flugmodus schalte ich manuell am Android ein, so wie es meine Kinder zur Umgehung der "Fernsteuerung" auch machen könnten. Zwei eigene Flows schalten ihn wieder aus. Einer wenn er aktiviert wird, wenn AM läuft und ein anderer prüft, wenn AM startet. Zwischen Verfügbarkeit der GUI und dem Start von AM bleiben einige Sekunden Zeit, den Flugmodus zu aktivieren und AMAD zu unterwandern. Damit könnten sie offline agieren, was ich unterbinden will.

VG Stefan
HW: Intel NUC8i5 mit ESXi7 mit Ubuntu Server 18.04 LTS und FHEM als DockerContainer

CoolTux

Dann verstehe ich nicht wieso sich der deviceState auf offline setzt, Wenn Du den Flugmodus nicht über FHEM setzt und keine set Befehle sendest wenn das Gerät selbst offline ist dann sollte da nichts passieren.

In den nächsten Tagen gebe ich erstmal Version 2.0.3 frei und dann kannst mal bitte schauen ob sich das sperren für Dich gebessert hat.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

StefanD

Teste ich gerne. Im Moment hab ich noch keine Not. Bin auch noch auf der Suche nach einem geeigneten DLNA Player, der einerseits für die Kids, als auch zu Seuerung über FHEM geeignet ist.

VG Stefan
HW: Intel NUC8i5 mit ESXi7 mit Ubuntu Server 18.04 LTS und FHEM als DockerContainer

CoolTux

Andre (justme1968) arbeitet an ein Modul, ich glaube squeezbox. Bin mir aber nicht ganz sicher.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

StefanD

Die Squeezbox ist eher nicht das was ich suche. Nach dem was ich so auf die Schnelle gefunden habe, ist das was Logitech eigenes.
Mein NUC langweilt sich mit FHEM und kann problemlos noch das Streaming übernehmen, was sich auf absehbare Zeit auch erstmal auf Audio und ggf. Bilder beschränken wird.

Die Probleme mit dem Flugmodus konnte ich auf AM isolieren. Werde dort im Forum mal das Verhalten posten. Mal sehen, was dabei rumkommt.

VG Stefan
HW: Intel NUC8i5 mit ESXi7 mit Ubuntu Server 18.04 LTS und FHEM als DockerContainer

CoolTux

Squeezebox ist ist offen. Gibt freie Server und Clients.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

StephanFHEM

Hallo,

Gibt es zu dem Thema "nach unlock ist immer eine Wischgeste nach oben erforderlich" mittlerweile einen Workaround? Das nervt nämlich ganz schön:-)
Ich will aber auch nicht auf den PIN-Lock verzichten wenn die Tablets im Alarm-Modus sind...

CoolTux

Ich kenne keine Möglichkeit.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net