NEWS
Echo device als default ausgabe Gerät
-
Hi,
irgendwann habe ich mir einmal aus einem Script abgekupfert, wie man ein Echo Device als Default setzen kann.
Jedenfalls konnte man den Wert History.name in alten Versionen beschreiben, jetzt ist er ein State und das geht nicht.
Kann ich den Wert einfach in etwas anderes, beschreibbares ändern oder gibt es einen anderen Weg ein Echo als Ausgabegerät zu setzten?Gruß
HDM<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="timeout" id="timeout2">timeout2</variable> <variable id="sj*gwj)~.6[t_Msoa*(m">Ausgabetext</variable> <variable type="timeout" id="timeout">timeout</variable> <variable type="timeout" id="timeout3">timeout3</variable> </variables> <block type="comment" id="5scM%@0Rw#~7l`gC4`j@" x="-587" y="-612"> <field name="COMMENT">Allgemein - Temperatur Oben </field> <next> <block type="comment" id="R6%Fs/DXtvyE1PY3iADI"> <field name="COMMENT">By extern Doku ?</field> <comment pinned="false" h="32" w="470">Liesst die Temperaturen der Sensoren aus und gibt sie auf dem angragenden Gerät aus. Nur nicht im Wohnzimmer da Echo ja auch in der Küche. </comment> <next> <block type="on_ext" id="Ac;^b|`@QSn~WL%:8Hxc"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="hD}F{s%j}T;e:l|Y_t5O"> <field name="oid">0_userdata.0.Allgemeines.Temperatur oben</field> </shadow> </value> <statement name="STATEMENT"> <block type="debug" id="kiiw(#,#.?{hy`[y=(F!"> <field name="Severity">warn</field> <value name="TEXT"> <shadow type="text" id="UZf,^JB2SJz1Ox@~^^qm"> <field name="TEXT">Script Temperatur Oben wird gestartet</field> </shadow> </value> <next> <block type="comment" id="n/{=U+[F;mPs2xE#y~Aq"> <field name="COMMENT">Echo Küche soll als default gesetzt werden</field> <next> <block type="control_ex" id="w^d~MWtK{*G`Y?KPFZpm"> <field name="TYPE">true</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="Ai;b_p|CI5aH.Z;V64-D"> <field name="oid">alexa2.0.History.name</field> </shadow> </value> <value name="VALUE"> <shadow type="logic_boolean" id="X{f;54pxwxLFsdRH^`Rz"> <field name="BOOL">TRUE</field> </shadow> <block type="text" id="/irwVF){XbNI(AnO#*~q"> <field name="TEXT">Echo Küche</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="yVYT1G3#4j=7[cBK7]WG"> <field name="NUM">0</field> </shadow> </value> <next> <block type="timeouts_settimeout" id="Kf+pY@hZ1_tJG83TKYYV"> <field name="NAME">timeout2</field> <field name="DELAY">500</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="variables_set" id="5VFfHYTB!S7A^A*?SicA"> <field name="VAR" id="sj*gwj)~.6[t_Msoa*(m">Ausgabetext</field> <value name="VALUE"> <block type="text_join" id="4?k[0reCRn.mjkxHg41~"> <mutation items="8"></mutation> <value name="ADD0"> <block type="text_join" id="ZmQmi(8rSQwnTHmbtjXY"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="75Z)Wn`YF@;38~bIM;pA"> <field name="TEXT">Im Wohnzimmer sind </field> </block> </value> <value name="ADD1"> <block type="get_value" id="Wbs}M!Y#v^O/FCR=ZHbS"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.2.temperature</field> </block> </value> </block> </value> <value name="ADD1"> <block type="text" id="gj9|0C4CJF7J/jO@)Qa0"> <field name="TEXT"> Grad,</field> </block> </value> <value name="ADD2"> <block type="text_join" id="/OqaV#R0fBz?!j{M}d.4"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="S5_s|F5_Z,5*j_MUnOQy"> <field name="TEXT"> in der Küche sind </field> </block> </value> <value name="ADD1"> <block type="get_value" id="zmnIm]cR#fwJ^DSyjn8x"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.4.temperature</field> </block> </value> </block> </value> <value name="ADD3"> <block type="text" id="psW)bV:jxy].Oq,TVa^|"> <field name="TEXT"> Grad,</field> </block> </value> <value name="ADD4"> <block type="text_join" id="WlOpT(Aqq9=.Pfc2:348"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="]z}ZZ4ffz~NZCjyrsS!k"> <field name="TEXT"> im Esszimmer sind </field> </block> </value> <value name="ADD1"> <block type="get_value" id="vpnH(etC/yvyU*|(Xq,/"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.8.temperature</field> </block> </value> </block> </value> <value name="ADD5"> <block type="text" id="=9*~;2As+4jdwnG)[ZaT"> <field name="TEXT"> Grad,</field> </block> </value> <value name="ADD6"> <block type="text_join" id="3EgUtSkGcNg)7]VkmTKG"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="^hNa]9{L,Dpf7V:o4@N+"> <field name="TEXT"> im Schlafzimmer sind </field> </block> </value> <value name="ADD1"> <block type="get_value" id="~Y]]h~_%Ad`P1mVihjSG"> <field name="ATTR">val</field> <field name="OID">deconz.0.Sensors.6.temperature</field> </block> </value> </block> </value> <value name="ADD7"> <block type="text" id="c2I2]DQ]fU,e8,BD|jN="> <field name="TEXT"> Grad.</field> </block> </value> </block> </value> <next> <block type="timeouts_settimeout" id="xA_MJ^@=AB=-WtDTe(3}"> <field name="NAME">timeout</field> <field name="DELAY">500</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="comment" id="M_5TO8{c?fn+*5C(4{!c"> <field name="COMMENT">Abfrage zu welchem Echo gesprochen wurde und Ausgabe des Text über die Variable</field> <next> <block type="comment" id="As,dG(xO[B@wIYcyAG?h"> <field name="COMMENT">Küche</field> <next> <block type="controls_if" id="wrH-}P(84mn7Y/rg8A[."> <value name="IF0"> <block type="logic_compare" id="kg.QKB751NaS#Ihk1Vlg"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="qnTz1Oe31sq:NXjmbxIJ"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id="3=W.?c8BZN+QrGX4xL}h"> <field name="TEXT">Echo Küche</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="Vcy^E]#:sv!g)uvfj:CO"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Küche.Echo Küche.speak-volume</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="Pko+p265QG9TKqbO}wd9"> <field name="NUM">50</field> </block> </value> <next> <block type="control" id="}?dK++*V.7JQcjG{3uhB"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Küche.Echo Küche.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="qHoN]~u1FI@iDQs*2C2v"> <field name="VAR" id="sj*gwj)~.6[t_Msoa*(m">Ausgabetext</field> </block> </value> </block> </next> </block> </statement> <next> <block type="comment" id="_amxz6B=9F}_2uEGsK}`"> <field name="COMMENT">Badezimmer</field> <next> <block type="controls_if" id=".n7JtGwDJDGfaeyl!8*B"> <value name="IF0"> <block type="logic_compare" id="I-@9%{Ng!%}9rE#IESc;"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="c?dSeG!fu]W8UO@?D4I3"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id="MivGV@*kt)3rY9COKpKA"> <field name="TEXT">Echo Badezimmer</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="{nVkvN*+(,`gb8wqY.M_"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.G2A1A60314660241.Commands.speak-volume</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id=")(Rd,vO]RNc}goj=P)ev"> <field name="NUM">50</field> </block> </value> <next> <block type="control" id="zTwXc~r8Ldt0u-5TNcVn"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.G2A1A60314660241.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="*X*~qQG3]~[NC{WMMndW"> <field name="VAR" id="sj*gwj)~.6[t_Msoa*(m">Ausgabetext</field> </block> </value> </block> </next> </block> </statement> <next> <block type="comment" id="CJNG59[?CJ|U-=Bf]c)z"> <field name="COMMENT">Wohnzimmer</field> <next> <block type="controls_if" id="OC]k1_}iDlExQPVc=(ib"> <value name="IF0"> <block type="logic_compare" id="OBIXw6hJ@]2Xr`HBIz5h"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="=x~5W)ns/VV;c|RFqQcE"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id="IxW:hplIvDQm1ax=@X+M"> <field name="TEXT">Echo Wohnzimmer</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="b$B{i/^oLF8)a:n7J+11"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.G091AA13210717CV.Commands.speak-volume</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="w~xj@fnVeW-J:}ZH_EGE"> <field name="NUM">50</field> </block> </value> <next> <block type="control" id="g+2]wvsrhR8vxv7c,kJ_"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.G091AA13210717CV.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="5q6/z~S`0DeJ6sYrWhj1"> <field name="VAR" id="sj*gwj)~.6[t_Msoa*(m">Ausgabetext</field> </block> </value> </block> </next> </block> </statement> <next> <block type="comment" id="qKD3bDxHV;NBtuFFs|e."> <field name="COMMENT">Büro</field> <next> <block type="controls_if" id="iMz(H}c1#NO@KVNnhnlQ"> <value name="IF0"> <block type="logic_compare" id="z`vyyAWvaYdxt8YZt,0O"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="mEF)naqwJ#xLCe1NeKO:"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id="F7::fb4cokeJJD:fk~pV"> <field name="TEXT">Echo Büro</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="TT[_Ey8O}L_?[~^l!j?w"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Büro.Echo Büro (Alexa im Büro).Echo Büro - Lautstärke</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="MW;A|OPi#T4/S6:|mkVw"> <field name="NUM">50</field> </block> </value> <next> <block type="debug" id="t{qRkZ@[:gab`C(ySGP="> <field name="Severity">warn</field> <value name="TEXT"> <shadow type="text" id="5{.om#Y4|FaRX^Ed3OOM"> <field name="TEXT">test</field> </shadow> <block type="text_join" id="6f3O3RPZq3j18Pp=o~9C"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="s=f$Ya`l]nY(_7!nrV32"> <field name="TEXT">Lautstärke im Büro wurde auf </field> </block> </value> <value name="ADD1"> <block type="get_value" id="r)2}p7zto+9kWr7QP)Js"> <field name="ATTR">val</field> <field name="OID">alias.0.Büro.Echo Büro (Alexa im Büro).Echo Büro - Lautstärke</field> </block> </value> <value name="ADD2"> <block type="text" id="U0o6tKli}iS9.yq5iLe7"> <field name="TEXT"> gestellt.</field> </block> </value> </block> </value> <next> <block type="control" id="{2s/h/xpkm]F+1ik-f4m"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Büro.Echo Büro (Alexa im Büro).Echo Büro - speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="ft7Uf33@IB1zu_xdTAxn"> <field name="VAR" id="sj*gwj)~.6[t_Msoa*(m">Ausgabetext</field> </block> </value> </block> </next> </block> </next> </block> </statement> <next> <block type="timeouts_settimeout" id="2o_9@sUvhSWjwuT2A+(S"> <field name="NAME">timeout3</field> <field name="DELAY">500</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="debug" id="~jyM`3ly%x3Y`WaFpFYG"> <field name="Severity">warn</field> <value name="TEXT"> <shadow type="text" id="l%wyG%l0;NCS)QbQog6b"> <field name="TEXT">test</field> </shadow> <block type="text_join" id="mMiDx($I!jQeGG7Row#p"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="#;^!yKQ~*R]k6/Ia_L,h"> <field name="TEXT">Ausgabe auf: </field> </block> </value> <value name="ADD1"> <block type="get_value" id=":%C5+}2bX_%#@vwKh]ma"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> </block> </value> <next> <block type="debug" id="0iDI?xP]jL$mDCKGT;Va"> <field name="Severity">warn</field> <value name="TEXT"> <shadow type="text" id="aIplJu`!=yY(=Jr(fKLU"> <field name="TEXT">test</field> </shadow> <block type="text_join" id="W)0S:]+FpYKL$IX/K,t,"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="ytv8?*PX{!Ufr%yT!NZ)"> <field name="TEXT">Es wurde ausgegeben: </field> </block> </value> <value name="ADD1"> <block type="variables_get" id="0IQam,8X8PB,kc(~#:cg"> <field name="VAR" id="sj*gwj)~.6[t_Msoa*(m">Ausgabetext</field> </block> </value> </block> </value> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </statement> <next> <block type="comment" id="2~|)*6l;h$.:!Bnz(n?#"> <field name="COMMENT">13.10.2020</field> <comment pinned="false" h="80" w="160">Debug information hinzugefügt für Log. </comment> <next> <block type="comment" id="V_g$|]Fq6.:07_cG2W,m"> <field name="COMMENT">13.10.2020</field> <comment pinned="false" h="80" w="160">Temperatur Sensor für Badezimmer hinzugefügt.</comment> <next> <block type="comment" id="BJq.Bi5W`wvdkPkrFh6K"> <field name="COMMENT">23.10.2020</field> <comment pinned="false" h="80" w="160">Debug Wert für anzusprechenden Echo hinzugefügt. Festgestellt das Echo Badezimmer der Wert ist der als letztes Angesprochen wurde, deshalb höre ich in der Küche nichts. </comment> <next> <block type="comment" id="7v!Qt=~`}F!YI+(WXs`_"> <field name="COMMENT">30.10.2020</field> <comment pinned="false" h="80" w="160">Timeout 2 hinzugefügt da ich im scrip gesehen habe das der default Wert für echo küche nicht gesetzt wird. </comment> <next> <block type="comment" id="u86@pFYjW~c4?N4iEBgQ"> <field name="COMMENT">2.11.2020</field> <comment pinned="false" h="80" w="160">Debug Werte für bessere lesbarkeit angepasst. </comment> <next> <block type="comment" id="{@sf$*FMK0UTZ:}#=0-|"> <field name="COMMENT">04.01.2021</field> <comment pinned="false" h="80" w="160">Lenovo im Wohnzimmer hinzugefügt. </comment> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </xml>
-
@spitfire4all Einen einzelnen kann man nicht als default setzen.
Aber wenn Du erreichen möchtest dass Dir der Echo antwortet zu dem Du sprichst dann gibt es da schon Möglichkeiten.
Falls dies so gewünscht ist dann bastel ich Dir gern ein Blockly zusammen -
-
@djmarc75
Danke, das ist sehr nett, aber das macht das angehängte Script eigentlich schon.Mein Problem ist halt, dass ich mir die Temperaturen vorlesen, lassen möchte, wenn ich nach Hause komme und dann gibt er den Wert, auf dem zuletzt benutzen Echo aus. Das kann unter Umständen der im Badezimmer 1. OG gewesen sein, als ich diesen am Morgen zuletzt benutzt habe. Ich stehe aber in der Küche und höre dann leider nichts bzw. war ich jetzt immer der Meinung das mein Script nicht richtig funktioniert.
So als Workaround würde mir einfallen den in der Küche alle naselang ein Textkommando mit irgendwas (fraglich ist noch was) zu schicken, ist aber auch nicht das Gelbe vom Ei. Falls jemandem etwas Besseres einfällt, gerne.
Gruß
HDM -
@spitfire4all sagte in Echo device als default ausgabe Gerät:
wenn ich nach Hause komme
Dann musst Du auf was ganz anderes Triggern nämlich auf einen DP welcher bei Anwesenheit auf true schaltet:
-
Im ersten Trigger legst Du Deinen Ausgabetext fest.
Im Trigger darunter startest Du die Sprachausgabe auf dem Echo zu dem Du sprichst.
Dort trägst Du dann folgendes ein:alexa2.0.Echo-Devices.*.Routines.DeineRoutine
Dazu habe ich z.B. eine Routine in Alexa angelegt welche auf das Wort Temperaturstatus reagiert.
Die Routine bleibt an sich aber leer, d.h. es wird nichts ausgeführt !Und wie schon geschrieben im rechten Trigger startet die Sprachausgabe auf Deinem Echo Küche - sobald ioBroker erkennt dass Du gerade heimkommst. (Ich nutze für solche Dinge entweder die Adapter TR064 oder fbCheckpresence mit dem jeweiligen DP von meinem Smartphone.
-
OK danke was mach der Schreibe Objekt ID anders als:
-
@spitfire4all ganz einfach:
Im Schreibeblock kannst Du Dir Deinen Datenpunkt "zusammenbauen" im Gegensatz zu dem steuereBlock. -
@djmarc75
Ähm, ich glaube, ich habe nicht verstanden, was da genau passiert, würde mich als Anfänger bezeichnen.
Wenn es Grundlagen zum Nachlesen gibt, dann schaue ich mir das gerne an.
Beim einfachen Nachmachen lernt man ja nichts
Du schreibst einfach einen neuen Wert in die Datenstruktur des Alexa 2 Adapters, aber commands.speek gibt es doch? -
@spitfire4all sagte in Echo device als default ausgabe Gerät:
Du schreibst einfach einen neuen Wert in die Datenstruktur des Alexa 2 Adapters, aber commands.speek gibt es doch?
Natürlich keinen neuen, sondern der "anzusteuernde" Datenpunkt (Objekt ID) wird zusammengebaut:
alexa2.Echo-Devices. DP serialNumber .Commands.speak
also wird folgender DP mit dem Wert der Variable Ausgabetext angesteuert:
alexa2.0.Echo-Devices.xxxxxxxxxxxxxxx.Commands.speak
Der DP serialNumber ist ja der:
alexa2.0.History.serialNumber
und in diesem befindet sich die Seriennummer des im Moment angesprochenen Echos.
-
@djmarc75 sagte in Echo device als default ausgabe Gerät:
@spitfire4all ganz einfach:
Im Schreibeblock kannst Du Dir Deinen Datenpunkt "zusammenbauen" im Gegensatz zu dem steuereBlock.Mein Gehirn will nicht verstehen, was der Vorteil zu steureBlock ist.
Scheint mir viel komplizierter zu sein und mehr Aufwand als einfach SteureBlock.
Bitte nicht als Kritik auffassen, ich möchte es nur verstehen. -
@spitfire4all sagte in Echo device als default ausgabe Gerät:
was der Vorteil zu steureBlock ist.
im steuereBlock kannst Du ja nur einen fixen, von Dir gewählten Datenpunkt auswählen.
Im schreibeBlock kann man den Datenpunkt flexibel auswählen.
dieser schreibeBlock erspart quasi folgendes: