NEWS
Fenster offen Ausgabe mit Alexa
-
@lustig29 Also tut mir leid, wenn ich das mal so sage, aber wenn Du nur schreibst, ... kein Erfolg ..., dann hilft das keinem weiter. Mir zumindest nicht.
Du musst die einzelnen Komponenten Deines Skriptes testen, ob sie funktionieren. Und vor allem musst Du hier auch mal rein posten, was Du gemacht hast und wie Dein aktuelles Skript aussieht.
Da Du ja meinst, es liegt irgendwie an der Sprachausgabe, dann teste diese doch mal separat. Mach ein Test Skript mit nur diesem Inhalt:
Und dabei bitte den Tipp von @dslraser berücksichtigen und die 80 nicht als Text, sondern als Zahl aus dem Mathe-Block.
Das Skript dann speichern und starten (Play-Button). Das läuft dann genau einmal. Wenn Du es wieder stoppst und wieder startest, läuft es wieder genau einmal durch.
Sollte das funktionieren, kannst Du den speak Befehl duplizieren und ein zweites Mal unten dran klemmen. Und dann wieder Skript stoppen und wieder starten.
Wenn das mit Alexa geht, schön. Wenn nicht, dann mal verschiedene Verzögerungen ausprobieren. Und so weiter und so fort. Schritt für Schritt Dein Skript testen, ergänzen, und wieder testen. -
Nach langem testen mit den Verzögerungen und durch die Hilfe eure Tipps habe ich es noch hin bekommen. Alle Kombinationen funktionieren. Kann man es irgendwie hin bekommen, dass alle Fenster abgefragt werden und dann die offenen Fenster in einem Text ohne Verzögerung wiedergegeben werden. Durch meine eingefügten Verzögerungen kommt es ja zu unterschiedlichen "Wartezeiten" der Sprachausgabe.
-
@lustig29
aber Du hattest doch alles probiert...@sigi234 hat Dir einen Link gepostet, den kannst Du probieren.
https://forum.iobroker.net/post/444552
Über die Suche findest Du noch mehr bzw. ähnliche Sachen.
Kann man es irgendwie hin bekommen, dass alle Fenster abgefragt werden und dann die offenen Fenster in einem Text ohne Verzögerung wiedergegeben werden.
Auch das hatte ich Dir als "Tipp" beantwortet. Schreibe die offenen Fenster in eine Variable und gib die in speak aus.
-
@lustig29 sagte in Fenster offen Ausgabe mit Alexa:
dass alle Fenster abgefragt werden und dann die offenen Fenster in einem Text ohne Verzögerung wiedergegeben werden.
Kannst ja mal dieses Skript probieren. Ist allerdings ungetestet, aber dafür nicht ganz so komplex.
Musst natürlich Deine passenden Objekt IDs reinpacken und die Texte nach Deinen Wünschen anpassen. -
Super, mache mich gleich mal dran und teste es. Vielen Dank
-
Was verbirgt sich hinter der Variablen "Sprachausgabe"?
-
Das was am Ende über Alexa ausgegeben werden soll
-
Also zum Beispiel: Folgende Fenster sind geöffnet
-
Pack doch erstmal Deine Objekt ids an den richtigen Stellen rein und teste, ob dieses skript überhaupt läuft. Es ist wie gesagt ungetestet.
Kümmere dich nicht um die variablen. -
@buggybeast Hab das mal ausprobiert. Bei mir funktioniert es nur in soweit, das Alexa mir sagt, das alle Fenster geschlossen sind, obwohl sie auf sind ... Man kann sie alle oder einzelene schließen, das Ergebniss ist stets, das alle Fenster angeblich alle geschlossen sind, obwohl sie offen sind.
Damit ich während des testens nicht permanent durch die gnze Wohnung rennen muss, habe ich für die verschiedenen Räume jedoch erst einmal den Sensor genommen, welcher in meiner unmittelbaren Reichweite ist:
Triggern tue ich das ganze über eine Alexa Routine "Alexa, welche Fenster sind noch offen" ...
-
Du könntest es auch so machen. Das ist nur ein Beispiel mit 3 Fenstern. Diese Fenster geben 0 geschlossen und 1 geöffnet aus. Das musst Du dann bei Dir mit true/false machen. (es gibt viele Wege...)
-
@dslraser Hat super funktioniert, habe jedoch bei Deinem Beispiel den ersten Block "setzte offene_fenster_liste" entfernt, da es aus meiner Sicht keinen Sinn machte, eine Liste vor dem Trigger zu erstellen und wenn der Trigger eintritt, noch einmal eine Liste zu erstellen. Sollte es einen Sinn machen, würde ich um kurze Info/Belehrung bitten wollen, wobei die Entfernung in der Praxis zumindest bei mir keinen Nachteil zeigte ...
-
@Sanweb
Ja, die außerhalb vom Trigger kann weg. -
@Sanweb sagte in Fenster offen Ausgabe mit Alexa:
Man kann sie alle oder einzelene schließen, das Ergebniss ist stets, das alle Fenster angeblich alle geschlossen sind, obwohl sie offen sind
Ist jetzt zwar gelöst, aber wurmt mich grad etwas, da ich einfach spontan keinen Fehler sehe
Ist Dein Objekt OpenClose 6 open auch ein Boolean? Oder hat der Sensor Zahlenwerte? -
@buggybeast Der Sensor gibt wahr/falsch zurück, wobei Dein Script fand ich auch sehr schick, allein von der sprachlichen Syntax Widedergabe durch Alexa, fließend und nicht merklich stumpf aufgezählt ... Wüd's gern auch zum laufen bringen wollen ...
-
@Sanweb Hi ich habe das mal getestet. Da ich kein Alexa habe, hab ich halt Debug Outputs eingebaut. Außerdem geben meine HmIP Fenstersensoren 0(geschlossen) und 1(offen) zurück. Das Skript hat bei mir jetzt sauber funktioniert. Ich glaube mein Fehler war, dass ich die Variable sprachausgabe zweimal erstellt habe, einmal als Variable im Skript und einmal als Parameter in der Funktion. Das hat es dann versaut
Wenn Du Lust hast, versuch es mal mit Alexa ...
Hier mal die Logeinträge dazu:
-
Funktioniert so (nur drann denken, falls es zu viele Fenster/Türen sind, die Sprachausgabe durch Semikolons zu trennen --- 250 Zeichen Grenze bei der Sprachausgabe)
Hier mal mit 4 Türen als "Test" (ohne Trennung, ist bei 4 Türen nicht nötig)
EDIT:
@SanwebTriggern tue ich das ganze über eine Alexa Routine "Alexa, welche Fenster sind noch offen" ...
Als Trigger zum Auslösen der Ansage ginge ja auch ein eigener Button. (Trigger auf wurde aktualisiert stellen)
-
@buggybeast
Hab es ausprobiert und es funktioniert insoweit, wie Alexa Lust hat ... ... Mal sagt sie es komplett richtig, danach sagt sie nur mal ein Zimmer an, dann zwei Zimmer und mal gar nichts. Habe mal Deine Debug Ausgabe mit drin gelassen und da habe ich gesehen, das alle Worte zusammengefasst in einem Wort bei mir wieder gegeben werden und nicht wie bei Dir schön getrennt. Bei Einbau von Leerzeichen hat sich die Debug Ausgabe auch nicht verändert. Denke das die Ausetzer kommen wegen dem zu langen Wort?@dslraser said in Fenster offen Ausgabe mit Alexa:
Als Trigger zum Auslösen der Ansage ginge ja auch ein eigener Button. (Trigger auf wurde aktualisiert stellen)
Nu ja, wenn ich mir für jeden Trigger einen Button an die Wand klatsche, dann brauch ich diese bald nicht mehr zu tapezieren, sondern muss mir dann überlegen, wie ich die ganzen Buttons beschrifte oder triggere ...
-
@Sanweb sagte in Fenster offen Ausgabe mit Alexa:
Nu ja, wenn ich mir für jeden Trigger einen Button an die Wand klatsche, dann brauch ich diese bald nicht mehr zu tapezieren, sondern muss mir dann überlegen, wie ich die ganzen Buttons beschrifte oder triggere ...
???
einen eigenen Button als Datenpunkt für die Routine habe ich gemeint ! -
@buggybeast
Hallo, ich muss das mal wieder hoch holen.
ich nutze das Script auch..als Trigger oben habe ich den Kontakt der Tür.. also ich will es hören wenn ich die Haustür auf mache..
Das Falls Objekt steht bei mir aber auf "geändert", wenn ich es auf wahr ändere sollte es doch richtig sein oder?
aber irgendwie hat das nicht funktioniert... (ist ein Homematic Fenster kontakt)
bei "geändert" sagt sie es wenn ich die Tür auf mache und einmal wenn ich sie schliesse.. das Nervt etwas