Neue Fullscreen Browser APP für Android (WebViewControl)

Begonnen von Dirk, 27 Januar 2013, 15:18:28

Vorheriges Thema - Nächstes Thema

dieda

Die Anleitung im Wiki ist gut. Danach hatte ich es auch gemacht.

Es gab halt nur 2 Dinge zu beachten:

Der Adresse in der App musste http:// vorangestellt werden
die Datei webviewcontrol.js ist nicht auf den aktuellen Stand.

Hier findet man die aktuelle Version.

http://forum.fhem.de/index.php?topic=10628.msg137410#msg137410
Komponenten:
Sensoren und Aktoren: FS20, Max!, Zigbee, Zwave
IODev:  Cul1101, MaxLan, ZWAVE, Deconz
Router: KD-Fritte (6360)
Sonstiges: Raspberries,  1x LMS,1 FHEM, 1 x zum Testen,  Logitech-Clients,  Onkyo, SamsungTV, Squeezebox, TabletUIs

der-Lolo

Ja, die neue Datei habe ich bereits gefunden - ich habe leider keine Ahnung woran es liegt das ich keine Events vom gerät bekomme,
ein get android powerLevel liefert bei mir ein not yet set Toast messages werden nach dem absetzen in den readings von Android als State angezeigt aber nicht auf dem gerät - sprachbefehle werden nicht übergeben.

Das Gerät ist ein s4mini mit Android 4.2.2
Hat jemand eine Idee?

Dirk

Zitat von: der-Lolo am 15 Februar 2014, 10:34:47
kann man der App als Start URL keinen Raum übergeben?
Ich versuche zur zeit mit :8084/fhem/?room=DashboardRoom einzusteigen - das klappt aber leider nicht
Stimmt. Das geht wohl nicht. muss ich fixen

Zitat von: Markus am 15 Februar 2014, 02:11:14
Ich hate das Problem mit der doppelten sprachausgabe auch schon, ich bin mir nicht sicher aber ich glaube das
eine laufende webView control app beim drücken auf den zurück oder HomeScren nicht beendet wird sondern läuft im Hintergrund
weiter, wird sie nun wieder neu geöffnet startet die app ein zweites mal und jede Sprachansage wird zwei mal gesagt.
Beim Drücken auf Zurück oder auf den Homescreen, werden Apps in Android nicht beendet sondern werden in den Hintergrund geschickt.
Beim erneuten Aufrufen der App über das Icon wird die App dann wieder in den Vordergrund geholt. Einen doppelten Start gibt es dabei nicht
Ich vermute die doppelten Sprachausgaben liegen an einem Reload der Seite.
Bitte prüft mal ob in FHEMWEB denn das Attribut refresh gesetzt ist.

Da für WebViewControl zwingend longpoll benötigt wird, ist refresh eigentlich nicht notwendig.

Gruß
Dirk

dieda

Mal so eine Anregung am Rande, kann man die App auch barrierefrei machen? D. h. den Button für das Micro auf die Lautsprecherwippe?

Ein Beispiel für eine Android App ist hier: http://www.codefactory.es/en/products.asp?id=415

Wie schon erwähnt, die ProRetina-Gruppe ist daran interessiert. Da gibt es Anfragen bzw. Ergometer, Rollläden, Hifi, eine TV-Guide mit Sendungen per Audiodiscription ausgestrahlt werden, eigentlich alles.
Bislang läuft da fast alles über iPhone oder Milestone 312.
Komponenten:
Sensoren und Aktoren: FS20, Max!, Zigbee, Zwave
IODev:  Cul1101, MaxLan, ZWAVE, Deconz
Router: KD-Fritte (6360)
Sonstiges: Raspberries,  1x LMS,1 FHEM, 1 x zum Testen,  Logitech-Clients,  Onkyo, SamsungTV, Squeezebox, TabletUIs

ph1959de

Dirk,

da Du als einziger den ersten Post in diesem Thread bearbeiten darfst: würdest Du bitte die aktuellen Versionen aller Dateien von WebViewControl in den ersten Post stellen und da aktuell halten (heißt auch: weitere Updates nur noch da, ansonsten nur ein Post mit dem Hinweis auf die neue(n) Datei(en))? Im Augenblick verliert man doch etwas leicht den Überblick.

Danke, Peter
Aktives Mitglied des FHEM e.V. | Moderator im Forenbereich "Wiki"

der-Lolo

Hallo Dirk,
ich habe eher zufällig bzgl.. dem room problem einen workarround entdeckt - der Raum der als einziges übrigbleibt nach hiddenroom wird angezeigt wenn du die app öffnest...
in meinem fall eben das Dashboard. Ich hoffe das Svenson nun noch eine Idee dazu hat, weil der DashboardRoom bei jedem Start von FHEM in jedem FHEMWEB in das Attribut hiddenroom geschrieben wird. Wenn ich es aber aus der Attribut liste entferne funktioniert das meiner Meinung nach recht schön.

Hast Du vielleicht noch eine Idee was ich tun kann um die anderen funktionalitäten deines Moduls auf dem s4mini nutzen zu können..?

Markus

ZitatIch vermute die doppelten Sprachausgaben liegen an einem Reload der Seite.
Bitte prüft mal ob in FHEMWEB denn das Attribut refresh gesetzt ist.

Da für WebViewControl zwingend longpoll benötigt wird, ist refresh eigentlich nicht notwendig.

Ok ich hab jetzt nur longpoll aktiviert refresh ist raus aber wenn das Tablett im standby Modus ist also Bildschirm aus und es ändern sich Schaltzustände bekommt es das Tablett nicht mit schalte ich jetzt den Strom fürs Tablett ein wacht es auf und zeigt mir alte Schaltzustände
mit der Meldung "app resume from Pause" obwohl longpoll aktiviert ist, erst ein refresh aktualisiert alle Schaltzustände.

Ich hab noch die app Target Home Launcher am Laufen vielleicht öffnet die WebViewControl ein zweites mal? oder kann das gar nicht sein?

Gruß Markus
Raspberry Pi2 als FHEM-Plattform
HM, FS20, 1-Wire, PanStamp,LW12,Intertechno,ESPEasy,Alexa

herrmannj

Hi,

ja das ist auch korrekt so. lonpoll ist ja der push von fhem an den empfänger (hier app). Wenn die app schläft bekommt sie den push natürlich nicht mit.

3 mögliche Wege:
a, mach einen manuellen refresh wenn Du das tab aufweckst
b, Du kannst die webviewcontrol.js bearbeiten, die bekoomt das resume event mit und kann einen reload triggern.
c, fhemweb und webviewcontrol.js werden auf push/pull umgebaut.

vg
jörg

cbvo

bin am verzweifeln ,finde den Fehler nähmlich nicht.
Licht ein und ausschalten funktioniert.
Nur das RGB Licht in lila schalten funktioniert nicht. In der Befehlzeile von FHEM funktioniert der Set befehl.
ttysay kommt die bestätigung Licht lila, nur passieren tut nichts.

# Licht im Wohnzimmer einschaltn
define speechRecognizer_EG_LichtAlle_ein notify .*voiceRecognitionLastResult.*[L|l]icht.*(ein|an).* set EG_LichtAlle on;; set @ ttsSay Licht im Wohnzimmer eingeschaltet
#Echo
define speechRecognizer_echo notify .*voiceRecognitionLastResult.* {my @@a=split(": ","%");; fhem "set @ ttsSay $a[1]"}
# Licht im Wohnzimmer ausschaltn
define speechRecognizer_EG_LichtAlle_aus notify .*voiceRecognitionLastResult.*[L|l]icht.*[A|a]us.* set EG_LichtAlle off;; set @ ttsSay Licht im Wohnzimmer ausgeschaltet
#RGB Licht Kueche
define speechRecognizer_licht_lila notify .*voiceRecognitionLastResult.*[L|l]icht.*[L|l]ila.* set Kueche HSV 300,100,50;; set @ ttsSay Licht ist lila


danke erstmal und Schalten funktioniert Prima 8)
RaspPi
Addon Board 868 Mhz, IT, VUplus solo²
Fritzbox 7390
Onewire Temp Fühler

der-Lolo

funktioniert den set Kueche HSV 300,100,50 in der komando zeile?

Rince

@dieda
ZitatMal so eine Anregung am Rande, kann man die App auch barrierefrei machen? D. h. den Button für das Micro auf die Lautsprecherwippe? 


Das kann wohl nur Dirk.

Aber eine andere Frage zu deinem Wunsch:

Du kannst jeden beliebigen Taster nehmen den fhem unterstützt, und dessen Auslösen kann per notify die Spracheingabe auslösen.

Geht das in eine brauchbare Richtung?

Sind die Tabs in deinem Fall mobil oder fest installiert?
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

Dirk

Zitat von: ph1959de am 15 Februar 2014, 16:01:39
da Du als einziger den ersten Post in diesem Thread bearbeiten darfst: würdest Du bitte die aktuellen Versionen aller Dateien von WebViewControl in den ersten Post stellen und da aktuell halten.
Da hast du natürlich recht. Das wollte ich schon längst gemacht haben.


Zitat von: dieda am 15 Februar 2014, 15:00:03
Mal so eine Anregung am Rande, kann man die App auch barrierefrei machen? D. h. den Button für das Micro auf die Lautsprecherwippe?
Diese Idee nehme ich für das Update mit auf.
Was für Punkte währen für barrierefrei noch interessant?



Zitat von: Markus am 16 Februar 2014, 00:50:20
Ok ich hab jetzt nur longpoll aktiviert refresh ist raus aber wenn das Tablett im standby Modus ist also Bildschirm aus und es ändern sich Schaltzustände bekommt es das Tablett nicht mit schalte ich jetzt den Strom fürs Tablett ein wacht es auf und zeigt mir alte Schaltzustände mit der Meldung "app resume from Pause" obwohl longpoll aktiviert ist, erst ein refresh aktualisiert alle Schaltzustände.
Da hast du natürlich recht. In diesem Fall ist dann ein Reload per Javascript sinnvoll.
Dazu reicht es nach der Zeile:
deviceControl.toastMessage('App resumes from pause.')

Diese Zeile einzufügen:
deviceControl.reload()

ZitatIch hab noch die app Target Home Launcher am Laufen vielleicht öffnet die WebViewControl ein zweites mal? oder kann das gar nicht sein?
Das glaube ich nicht.

Gruß
Dirk

Markus

Danke Dirk das war´s. Jetzt Funktionirt es wirklich perfekt :-D

Gruß Markus
Raspberry Pi2 als FHEM-Plattform
HM, FS20, 1-Wire, PanStamp,LW12,Intertechno,ESPEasy,Alexa

dieda

Ausgangspunkt ist ja Mobil Accessibilty...

Eine Zusammenfassung aller Befehle kann man mit Hilfe abrufen... Die behält man am Anfang eh nicht ... Finde es zwar auch immer blöd, wenn mein Ford mir sämtliche möglichen Befehle auflistet, wenn ich einen Befehl gegeben habe, den Ford Sync nicht mag...

Einen Sprachbefehl, der das Smartphone wieder zum Hauptscreen bring: Auf Wiedersehen und ein Hinweis das man sich nun in FHEM befindet.
Komponenten:
Sensoren und Aktoren: FS20, Max!, Zigbee, Zwave
IODev:  Cul1101, MaxLan, ZWAVE, Deconz
Router: KD-Fritte (6360)
Sonstiges: Raspberries,  1x LMS,1 FHEM, 1 x zum Testen,  Logitech-Clients,  Onkyo, SamsungTV, Squeezebox, TabletUIs

herrmannj

Zitat von: cbvo am 16 Februar 2014, 08:52:41
bin am verzweifeln ,finde den Fehler nähmlich nicht.
Licht ein und ausschalten funktioniert.
Nur das RGB Licht in lila schalten funktioniert nicht. In der Befehlzeile von FHEM funktioniert der Set befehl.
ttysay kommt die bestätigung Licht lila, nur passieren tut nichts.


#RGB Licht Kueche
define speechRecognizer_licht_lila notify .*voiceRecognitionLastResult.*[L|l]icht.*[L|l]ila.* set Kueche HSV 300,100,50;; set @ ttsSay Licht ist lila



Ich hab das jetzt nicht nachgestellt aber der code sieht ok aus. Hast Du evtl zum testen parallel "Kueche" über die App angesteuert ?

Ansonsten versuche mal ein zweites notify für zB rot zu machen und die beiden abwechselnd anzusprechen. Sollte das jetzt wieder erwarten nicht funktionieren müssen wir uns die logs anschauen. Das hat aber vermutlich nichts mehr mit der webview zu tun, mach dann mal bitte einen neuen thread auf.

vg
Jörg