NEWS
Lampen Status abfragen mit Alexa
-
Hat jemand ein Skript was folgendes macht:
Alexa, sagen mir den Status der Lampen.
Alexa soll dann sagen:
Lampen im Flur aus/an.
Lampen im Wohnzimmer aus/an.
usw.Habe selber schon mal was versucht aber komme nicht weiter.....
Gruss
-
Stell mal oben den Trigger auf wurde geändert.
Das geht natürlich nur wenn der Datenpunkt Schalter true oder false anzeigt. -
@Flopsi
wie @haselchen schon geschrieben hat, den Trigger umstellen und poste mal den Export vom Blockly, da kann man einige vereinfachen -
ich habe hier eine Variante (ist schon etwas älter)
https://forum.iobroker.net/post/273896aktuell verwende ich dieses Blockly dafür
https://forum.iobroker.net/post/346230Hörprobe für Fenster
(geht aber auch für Licht/Steckdosen/Bewegungsmelder/Rasenmäher/Staubsauger usw...)
1581859293762-fensterstatus (1).wav -
Erstmal der Export:
<xml xmlns="http://www.w3.org/1999/xhtml"> <block type="on" id="#bZkN$jIVqU+,OcI.7%j" x="-1338" y="-1012"> <field name="OID">javascript.0.Eigene_Datenpunkte.Schalter</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="comment" id="}-YO3!vNiNVSl6_{:a~A"> <field name="COMMENT">Flurlicht</field> <next> <block type="controls_if" id="Lgw?iDvZtq[6KK/Bf2~r"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id="$fEX7Te1UI2)k1EnY9QW"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="jk83[/k.1_Kv7(KF]JCC"> <field name="ATTR">val</field> <field name="OID">ham.0.Licht-Flur.Licht-Flur.On</field> </block> </value> <value name="B"> <block type="logic_boolean" id="5glzMwva1o^R#ffCNeB3"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="1WB*/:yo!/jv;ad~uU[K"> <mutation delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.G090LF096512376R.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text_join" id="P^s9G@;Fro7[/]E.K^[s"> <mutation items="1"></mutation> <value name="ADD0"> <block type="text" id="7wz|G@]R$+SKM1|hf;~n"> <field name="TEXT">Das Licht im Flur ist an;</field> </block> </value> </block> </value> </block> </statement> <value name="IF1"> <block type="logic_compare" id="=Jg(|#P`/0;4h_V1tkiK"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="II+J4NEn8O+?aer7zuLW"> <field name="ATTR">val</field> <field name="OID">ham.0.Licht-Flur.Licht-Flur.On</field> </block> </value> <value name="B"> <block type="logic_boolean" id="]_|5dev;_Te_d/slRgs]"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="e5ND^W^e`LhMe#UpM?rI"> <mutation delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.G090LF096512376R.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text_join" id="]B0yeP$no/$]MituR$4i"> <mutation items="1"></mutation> <value name="ADD0"> <block type="text" id="JZ/?]|HH%UvRBV~2n,NB"> <field name="TEXT">Das Licht im Flur ist aus;</field> </block> </value> </block> </value> </block> </statement> <next> <block type="comment" id="wbPD`@:gy(9BpF$f-LkH"> <field name="COMMENT">Schranklicht</field> <next> <block type="controls_if" id="8GA,AHD_NR%oxsRqkiBh"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id="U+%n]Y8c~.lDS0Y(X[r^"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="g2^f.JcE;CiyK0s8p.DO"> <field name="ATTR">val</field> <field name="OID">ham.0.Schrankbeleuchtung.Schrankbeleuchtung.On</field> </block> </value> <value name="B"> <block type="logic_boolean" id="vj89m@#4@^~;~b$SC:l!"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="onJ2:{2B@R{N#.L)UPaG"> <mutation delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.G090LF096512376R.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text_join" id="Dv4(w5oKU@^zw:34i4LS"> <mutation items="1"></mutation> <value name="ADD0"> <block type="text" id="#.gOVo:PtB6{YunIFdQ/"> <field name="TEXT">Das Licht im Wohnzimmer ist an;</field> </block> </value> </block> </value> </block> </statement> <value name="IF1"> <block type="logic_compare" id="uE/}MoZWBmM]/`]2;J^x"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="L{..:BQyz?y#woq(=vn+"> <field name="ATTR">val</field> <field name="OID">ham.0.Schrankbeleuchtung.Schrankbeleuchtung.On</field> </block> </value> <value name="B"> <block type="logic_boolean" id="C=V9(xbXCL[MFL:ds%:X"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO1"> <block type="control" id="rC*oqv!?a}ixG5ItTs*C"> <mutation delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.G090LF096512376R.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text_join" id="R`_7|~.s;`^Yf3_{nJT4"> <mutation items="1"></mutation> <value name="ADD0"> <block type="text" id="UehjIi=0l%1_L{oXwLtf"> <field name="TEXT">Das Licht im Wohnzimmer ist aus;</field> </block> </value> </block> </value> </block> </statement> <next> <block type="control" id="tv@!%nW]5CE=HyMzRw#O"> <mutation delay_input="true"></mutation> <field name="OID">javascript.0.Eigene_Datenpunkte.Schalter</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">2</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="H^?)~EA+!NrG.AN4}Ex?"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </xml>
Alexa berücksichtigt auch nur das Wohnzimmer.
@dslraser
deine Varianten schaue ich mir auf jeden Fall mal an -
selbe Funktion, aber wesentlich kürzer
Eins ist mir aber noch aufgefallen. Du gibst die Ansage für beide Lampen zur selben Zeit auf dem selben Echo aus, das wird nix.
-
Ja das ist auch ein Problem
-
So habe mal ein verzögerung eingebaut:
Jetzt sagt Alexa Das Licht im Flur ist aus immer zwei mal hintereinander und dann Das Licht im Wohnzimmer ist aus.
-
@Flopsi
und ich weiter optimiert:
Musst mal schauen ob das läuft. So werden Variablen gesetzt aus der ein Text generiert wird und der dann eben angesagt. Theortisch sollte das laufen
-
@Flopsi
probiere mal... -
-
@dslraser
genau das was ich wollte wie immer super support von dirJetzt aber nochmal zu deiner Variante ....
https://forum.iobroker.net/post/346230
die ist viel umfangreicher ..... vom Prinzip her ist doch diese Variante gleich...ich wüsste schon gar nicht wie ich diese ganzen gruppen anlegen soll etc....
Gruss
-
@Flopsi sagte in Lampen Status abfragen mit Alexa:
ich wüsste schon gar nicht wie ich diese ganzen gruppen anlegen soll etc....
? was für Gruppen meinst Du ?
die ist viel umfangreicher
ja, alles in einem Blockly.
-
@dslraser
Diese Aufzählungen...Wo ist da der Vorteil kann man damit mehr machen .....
-
@Flopsi sagte in Lampen Status abfragen mit Alexa:
Wo ist da der Vorteil kann man damit mehr machen .....
Der Vorteil ist z.B. das man im Blockly selbst nichts mehr ändern muß, wenn Geräte dazu kommen oder weg fallen. Man muß dann nur die Aufzählungen pflegen. Um das "sinnvoll" zu nutzen, sollten aber "lesbare/sprechbare" Namen vergeben sein/werden, da ich diese Namen dann auch direkt in den Ansagen und iQontrol Listen verwende.
-
Gibts irgendwo ne Anleitung wie man sich diese Aufzählungen erstellen kann so ein to DO ?? Will mir das dann auch mal gerne anschauen, ob ich das hinbekomme.
Gruss
-
@Flopsi
Die Aufzählungen erstellst Du selbst. Wo die Namen Deiner Geräte her kommen kannst nur Du wissen.
Ich habe z.B. sinnvolle Namen in meiner CCU oder HUE Bridge für meine Geräte vergeben.
Ob es eine Anleitung dafür gibt weiß ich nicht. -
Danke dir habe da schon was gefunden im iobroker bastel mich mal da durch
-
Ich habe noch eine Frage zu dem Blockly hier Alexa sagt mir ja jetzt welche Lichter an und welche aus sind.
Kann man da noch hinzufügen das wenn alle Lichter aus sind nur gesagt wird das alle Lichter aus sind ?
Es würde quasi geprüft ob alle Lichter aus sind und dann eine andere Sprachausgabe benutzt.
-
vielleicht so...
Hier werden Dir nur die eingeschalteten Lampen angesagt. Wenn alle Lampen aus sind, dann Kommt der erste und der letzte Satz.