Neue Fullscreen Browser APP für Android (WebViewControl)

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

Vorheriges Thema - Nächstes Thema

stromer-12

Bei mir klappt es mit mehreren Spachausgaben hintereinander auch bei längeren Ansagen, wenn ich einen "sleep 0.2" zwischen die Ansagen setze.
FHEM (SVN) auf RPi1B mit HMser | ESPLink
FHEM (SVN) virtuell mit HMLAN | HMUSB | CUL

MaJu

@stromer: Die Ansagen gibst du dann aber nacheinander an das Tablet, mit der Verzögerung dazwischen?
Ich habe kein "zwischen den Ansagen", da mehrere fast zur gleichen Zeit erzeugt und ans Tablet geschickt werden.

@Dirk: Danke schonmal so weit. Gern teste ich für dich, wenn ich da was helfen kann.
Erlebnisreiche Grüße aus Leipzig!

stromer-12

Ich habe es im Moment nicht mehr drin, aber ich hatte mal getestet und zwischen den Befehlen zur Sprachausgabe war eine kleine Verzögerung notwendig. Ob es jetzt 200ms oder 20ms waren weis ich nicht mehr.
FHEM (SVN) auf RPi1B mit HMser | ESPLink
FHEM (SVN) virtuell mit HMLAN | HMUSB | CUL

MaJu

Was heißt bei dir "zwischen den Befehlen"?
Wenn durch ein notify 2 oder 3 Ansagen gleichzeitig losgeschickt werden, gibt es in meinen Augen kein "dazwischen". Oder habe ich hier einen Denkfehler?
Erlebnisreiche Grüße aus Leipzig!

stromer-12

Im notify werden die Befehle ja nacheinander abgearbeitet, also zwischen 2 ttsSay Aufrufen einen kleinen sleep davor oder danach einfügen.
FHEM (SVN) auf RPi1B mit HMser | ESPLink
FHEM (SVN) virtuell mit HMLAN | HMUSB | CUL

MaJu

@stromer-12
Hilfst du mir bitte, die Pausen in mein notify einzufügen? Ich weiß nicht, wo.

Das notify bewirkt, dass beim Öffnen der Wohnungstür geprüft wird, ob vergessen wurde Fenster zu schließen:
Wohnungstuer:open IF ([Fenster_Katzenzimmer] eq "open") (set Flurtablet ttsSay Achtung! Fenster Katzenzimmer ist noch offen);
IF ([Fenster_Wohnzimmer] eq "open") (set Flurtablet ttsSay Achtung! Fenster Wohnzimmer ist noch offen);
IF ([Fenster_Schlafzimmer] eq "open") (set Flurtablet ttsSay Achtung! Fenster Schlafzimmer ist noch offen)


DANKE! :-)
Erlebnisreiche Grüße aus Leipzig!

stromer-12

Zitat von: MaJu am 24 April 2014, 23:08:25
Hallo MaJu,

habe noch mal bei mir getestet, egal welches Gerät, minimum waren 0.02 Sekunden Pause zwischen den Befehlen.

Wohnungstuer:open IF ([Fenster_Katzenzimmer] eq "open") (set Flurtablet ttsSay Achtung! Fenster Katzenzimmer ist noch offen; sleep 0.02);
IF ([Fenster_Wohnzimmer] eq "open") (set Flurtablet ttsSay Achtung! Fenster Wohnzimmer ist noch offen; sleep 0.02);
IF ([Fenster_Schlafzimmer] eq "open") (set Flurtablet ttsSay Achtung! Fenster Schlafzimmer ist noch offen)


Sollte so funktionieren.

Gruß
FHEM (SVN) auf RPi1B mit HMser | ESPLink
FHEM (SVN) virtuell mit HMLAN | HMUSB | CUL

ext23

HM, KNX, FS20, 1-Wire, PanStamp, AVR-NET-IO, EM1000EM, PCA301, EC3000, HM-LAN, CUL868, RFXtrx433, LGW, DMX @Ubuntu-Server (Hauptsystem) & Raspberry Pi (Satellit)

der-Lolo

Achtung MaJu, soweit ich das in erinnerung habe funktionieren ; im IF modul nicht - befehle innerhalb der Klammer werden einfach durch , getrennt.

stromer-12

Kann sein, mit dem IF Befehl habe ich noch nicht gearbeitet.
FHEM (SVN) auf RPi1B mit HMser | ESPLink
FHEM (SVN) virtuell mit HMLAN | HMUSB | CUL

MaJu

Vielen Dank, ich werde heute Abend testen und hier berichten.
Erlebnisreiche Grüße aus Leipzig!

MaJu

Wie befürchtet, es gibt kein"dazwischen". Die Ansagen werden nahezu gleichzeitig losgeschickt. So sehen die events aus:
Events:
2014-04-25 17:46:15 webViewControl Flurtablet ttsSay Achtung! Fenster Katzenzimmer ist noch offen
2014-04-25 17:46:15 webViewControl Flurtablet ttsSay Achtung! Fenster Wohnzimmer ist noch offen
2014-04-25 17:46:16 webViewControl Flurtablet ttsSay Achtung! Fenster Schlafzimmer ist noch offen
2014-04-25 17:46:16 CUL_HM Wohnungstuer open
2014-04-25 17:46:16 CUL_HM Wohnungstuer contact: open (to CUL_0)


Das war die Variante mit Komma innerhalb der Klammern. Setze ich Semikolons, dann erfolgt gar keine Anzeige.

Die Ansagen müssten wirklich nacheinander an das Tablet geschickt werden, mit winziger Pause dazwischen. Werden sie gleichzeitig losgeschickt, müsste das Tablet eine "Warteschleife" vorhalten, das funktioniert aber (noch) nicht.
Erlebnisreiche Grüße aus Leipzig!

der-Lolo

da hilft wohl nur plan B - für jede mögliche fensterkombination eine eigene IF abfrage bauen...

MaJu

Aber auch bei unterschiedlichen notifys würden die Ansagen gleichzeitig zum Tablet geschickt und von diesem ab der zweiten "verschluckt".
Eine grundsätzliche Pause zwischen die notifys zu setzen geht nicht, da die Prüfung für das letzte Fenster dann erst startet wenn man schon längst aus der Wohnung raus ist. Es müsste eine Pause gemacht werden, nur wenn ein notify "angesprungen" ist, ansonsten müsste gleich das nächste notify gemacht werden.
Erlebnisreiche Grüße aus Leipzig!

der-Lolo

du hast mich nicht richtig verstanden - ein notify!

fenster1 und nicht fenster2 und nicht fenster3 = text fenster1 offen
fenster2 und nicht fenster1 und nicht fenster3 = text fenster2 offen
...
fenster1 und fenster2 und nicht fenster3 = text fenster1 & 2 offen
...

übrigens macht ein sleep zwischendrin im ttsSay echt qualitativ wertigere ausgaben. satzzeichen wie , . oder ? ! sind auch parameter die in der sprachausgabe "mitgelesen" werden - zumindest im Ivona sprachpaket wird dann auch anders betont.