- Home
- Deutsch
- Skripten / Logik
- Blockly
- [Blockly] Skript für "Sprich mir nach" auf beliebigem Echo
[Blockly] Skript für "Sprich mir nach" auf beliebigem Echo
-
Version 1.6 ist fertig.
Robuster, präziser, informativer.Im Einzelnen:
- Code (hoffentlich) etwas aufgeräumt
- "ok" kommt jetzt nur, wenn auch wirklich ein Echo zum Abspielen gefunden wurde (Dennoch Probleme? Dann bitte mal den entsprechenden Datenpunkt "...Commands.speak" prüfen. In Tests steht der Text dort immer drin, aber der Echo bleibt manchmal trotzdem stumm. )
- wurde kein passendes Gerät gefunden, wird der Name ausgegeben, den Alexa verstanden hat
Blockly Code
<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="" id=";F.(K|mb2VDLFz4584#t">Echo_gefunden</variable> <variable type="" id="C2wE+cVgznP#j}r/`dl(">Echo_Seriennummer</variable> <variable type="" id="xci3X!4nlXF:sZ?64H_G">Zielecho_Name</variable> <variable type="" id="b7aB$`+O!Gi*`TEysg7u">Text</variable> <variable type="undefined" id="Intervall">Intervall</variable> <variable type="" id="@v/?ezVeiXzj^,$=!Nr.">i</variable> <variable type="" id="Ru|{8SkwlsBK~^n=lN=G">Echo_DP-Name</variable> </variables> <block type="comment" id="FOjQ$9KpZ.MP~N%WI;S|" x="-1774" y="27"> <field name="COMMENT">Version 1.6 (09.10.2019) by padrino</field> <next> <block type="on" id="fhfKzXrq)P[aOmo9~(rW"> <field name="OID">alexa2.0.History.summary</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="controls_if" id="OElmPyfLv#/1YKRV;(yB"> <value name="IF0"> <block type="logic_compare" id="7|bX(FK%8-kvxd;yxQbo"> <field name="OP">GT</field> <value name="A"> <block type="text_indexOf" id="Iu^2N42]m*BM7c;Q2K-m"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="{fTb5h|jC._Ga|xDga{I"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="1GVke=Zw#PVlU,W6aLH/"> <field name="TEXT">bis</field> </shadow> <block type="text" id="(~gUYI,1p[/KsA?AEFaA"> <field name="TEXT">sprich mir nach</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="qoffb!hgM^%hj6qW|}p;"> <field name="NUM">1</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="X{FOz:*I4)]D?~s*[:af"> <field name="VAR" id=";F.(K|mb2VDLFz4584#t" variabletype="">Echo_gefunden</field> <value name="VALUE"> <block type="logic_boolean" id="u_RoVSM%*9n#%*`9bSaK"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="variables_set" id="$%FoWwYys?P%_gb`qQh#"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(" variabletype="">Echo_Seriennummer</field> <value name="VALUE"> <block type="get_value" id="Q/Ba=ZEzaq*4f(R$8TV-"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.serialNumber</field> </block> </value> <next> <block type="variables_set" id="#(KOcl2PK``7{9,ihtgn"> <field name="VAR" id="xci3X!4nlXF:sZ?64H_G" variabletype="">Zielecho_Name</field> <value name="VALUE"> <block type="text_getSubstring" id="Zf;s@pJw,rWD||Jvmnbk" inline="false"> <mutation at1="true" at2="true"></mutation> <field name="WHERE1">FROM_START</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="on_source" id=";+v~efkH8agiOHMYqNTS"> <field name="ATTR">state.val</field> </block> </value> <value name="AT1"> <block type="math_arithmetic" id="OYk4;y5{czDP`m+gzp#x"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id=":Pt%sy);(Elj}B;/,1ix"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="8iVOD?ge5zEWtZNYR)Xa"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="-WhQ].ljU?y50Tw:4K8c"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="=SDY/u1Y#~]_%{#8u2q?"> <field name="TEXT"> </field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="}zdvVy2;C-Jy`,}Gyhxv"> <field name="NUM">1</field> </shadow> </value> </block> </value> <value name="AT2"> <block type="math_arithmetic" id="SH2qw5Y([Kz61GRYELOb"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id=":Pt%sy);(Elj}B;/,1ix"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="?4FxA-!N!j0aWW@J,Wve"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="$Vqh@pd:79t{ag0649QW"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="frF5wE;Uu[cV+_/+]y;/"> <field name="TEXT">sprich mir nach</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="46zj.O5@$,TNr[sKB%Wy"> <field name="NUM">2</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="adlf:C2Y5g{K6^P5+p7i"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u" variabletype="">Text</field> <value name="VALUE"> <block type="text_getSubstring" id="%B5?NrR/^@Yo,^V+%OhP" inline="false"> <mutation at1="true" at2="false"></mutation> <field name="WHERE1">FROM_START</field> <field name="WHERE2">LAST</field> <value name="STRING"> <block type="on_source" id="h4oo,nxxHz=.G-i*N{ji"> <field name="ATTR">state.val</field> </block> </value> <value name="AT1"> <block type="math_arithmetic" id=")%)x6|Y|YNte:#s,[#k6"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id=":Pt%sy);(Elj}B;/,1ix"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id=",|z]4aSUy?sDT,c1AvJL"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="=E588TF4q|%PEqde4dNC"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="gG59_T:atKMo)MfX?b8R"> <field name="TEXT">sprich mir nach</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="~hv6Rq;ZlwM/_wQTUG?3"> <field name="NUM">16</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="timeouts_setinterval" id="miNtAEzWrW!38@Fp-B9G"> <field name="NAME">Intervall</field> <field name="INTERVAL">100</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="controls_if" id="{.dZ6J@TT)dT$X0B11@B"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_compare" id="}4g,b2Rump%DF?X|R2x|"> <field name="OP">GT</field> <value name="A"> <block type="text_indexOf" id="@GimeZnlY*9c7e6|ry00"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="Pc`tevbQVdMq4z21un41"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u" variabletype="">Text</field> </block> </value> <value name="FIND"> <shadow type="text" id="f49n2)2Hr7}{s+h-*Gw@"> <field name="TEXT">komma</field> </shadow> </value> </block> </value> <value name="B"> <block type="math_number" id=";#~83!KbomHjI2cMskc5"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="t=7;62256;O%}H}AL@=E"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u" variabletype="">Text</field> <value name="VALUE"> <block type="text_join" id="VOAsg5t?qE1Ov9_]51-V"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text_getSubstring" id=".pmvED[zCE[x0;tS|./P" inline="false"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id="!04jvOP$ICy9#5.MjkO#"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u" variabletype="">Text</field> </block> </value> <value name="AT2"> <block type="math_arithmetic" id="OVRF/BRjp,$pO3xj5O:g"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="Pbqc_BagmV4#c4CTH)x{"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="Mg~|V66tmym6QlcrH9bt"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="{gzgQt43s]aDb/wE!+4T"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u" variabletype="">Text</field> </block> </value> <value name="FIND"> <shadow type="text" id="RZ]0E}P0b2qyWw:**/@u"> <field name="TEXT">komma</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="*%~T6x=^6gQlk9*pEv]#"> <field name="NUM">2</field> </shadow> </value> </block> </value> </block> </value> <value name="ADD1"> <block type="text" id="?.0ya;9n7Q,U6kPWmM$O"> <field name="TEXT">,</field> </block> </value> <value name="ADD2"> <block type="text_getSubstring" id="UUzSVFg)~7fFhc;c)M?Q" inline="false"> <mutation at1="true" at2="false"></mutation> <field name="WHERE1">FROM_START</field> <field name="WHERE2">LAST</field> <value name="STRING"> <block type="variables_get" id="};TEYDX0^eT6`~HpXVEO"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u" variabletype="">Text</field> </block> </value> <value name="AT1"> <block type="math_arithmetic" id="#;JW=Df7YV94qNAUwa~A"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="JwLmL+K/3(|#Dz*K/60O"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="Zol|Sko.trB86P.Ax~bb"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="FTuhD8+RqBvSQpREtRuG"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u" variabletype="">Text</field> </block> </value> <value name="FIND"> <shadow type="text" id="{jndIcu|aOn);?{y;IN:"> <field name="TEXT">komma</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="B{^$FO|D;gb5b;7lwp9*"> <field name="NUM">5</field> </shadow> </value> </block> </value> </block> </value> </block> </value> </block> </statement> <statement name="ELSE"> <block type="controls_forEach" id="~KP4iuN[;V#LrB5hF7r%"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr." variabletype="">i</field> <value name="LIST"> <block type="selector" id="x{9_a!8.pV[pT.lfZ+y("> <field name="TEXT">channel[state.id=alexa2.0.Echo-Devices.*.Commands.speak]</field> </block> </value> <statement name="DO"> <block type="controls_if" id=",pLI}Vt9gWA4`._;^@ej"> <value name="IF0"> <block type="logic_compare" id="#(ESgNUhC609VgIr|-3q"> <field name="OP">EQ</field> <value name="A"> <block type="text_indexOf" id="/~DZ$WLaa]YdDw{Btb50"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="^K,W(i1s-6wacCBg(Lzi"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr." variabletype="">i</field> </block> </value> <value name="FIND"> <shadow type="text" id="{0I=FhYjc]~9c}@^K}|b"> <field name="TEXT">speak-volume</field> </shadow> </value> </block> </value> <value name="B"> <block type="math_number" id="ad%[(xHUfv65ABFCq%g+"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="BoVO,+_n*QF~twf/M|3O"> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G" variabletype="">Echo_DP-Name</field> <value name="VALUE"> <block type="text_join" id="/v4t*CP}tuDD:_K,^M|U"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text_getSubstring" id=";!mI{,,2[0[prWPf9@(5" inline="false"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id="X6{Ts.Pbs,v9@3k8I}{E"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr." variabletype="">i</field> </block> </value> <value name="AT2"> <block type="text_indexOf" id="e/:GxUq(_TN4MoeO]M?S"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="x-*a[s,2SPQ5WNi:oq?o"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr." variabletype="">i</field> </block> </value> <value name="FIND"> <shadow type="text" id="dm+nwoI9u4T~|!Lz(IZ("> <field name="TEXT">.Commands</field> </shadow> </value> </block> </value> </block> </value> <value name="ADD1"> <block type="text" id="Xu@WJeey`h2FyXeieZr1"> <field name="TEXT">Info.name</field> </block> </value> </block> </value> <next> <block type="controls_if" id="?dS]Aqv?To%$v;FOb}XF"> <value name="IF0"> <block type="logic_compare" id="gx?L{$0hx671N19w%h-v" inline="false"> <field name="OP">GT</field> <value name="A"> <block type="text_indexOf" id="1R68:[/k;%|f/114v^DN" inline="false"> <field name="END">FIRST</field> <value name="VALUE"> <block type="text_changeCase" id="-#uODff*%-YCq@7U_}q3"> <field name="CASE">LOWERCASE</field> <value name="TEXT"> <shadow type="text" id="V,sqOp1hR.j/Nr0t5OA#"> <field name="TEXT">abc</field> </shadow> <block type="get_value_var" id="#]e~f2$Sc*O}:p06|/`?"> <field name="ATTR">val</field> <value name="OID"> <shadow type="text" id="#($Z1dL/5P^o|fV#/lZ."> <field name="TEXT"></field> </shadow> <block type="variables_get" id="gJ+883n}HvRZJUymh`09"> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G" variabletype="">Echo_DP-Name</field> </block> </value> </block> </value> </block> </value> <value name="FIND"> <shadow type="text" id="Xu7is5=?~Q{+2ip9fC(t"> <field name="TEXT">abc</field> </shadow> <block type="variables_get" id="Khc++ExtX)qBbOl!LQlJ"> <field name="VAR" id="xci3X!4nlXF:sZ?64H_G" variabletype="">Zielecho_Name</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="CLAXj`4?pj-iu!rJdN7H"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="X_eFO|_!K{Z=`uA|g?gg"> <field name="VAR" id=";F.(K|mb2VDLFz4584#t" variabletype="">Echo_gefunden</field> <value name="VALUE"> <block type="logic_boolean" id=".Y+:m}scy[LgZ[!hE9TD"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control_ex" id="u]lxbXd(oPb!+qmpULp#"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="fwZLrtqkG5Ro2sbRcbdL"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="$VJ#(BMiw2^It4A3Btx:"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="A^-+*@#_b+izsQ0cKph}"> <field name="TEXT">alexa2.0.Echo-Devices.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="e)EDFN~LTA=yddXz!Rj_"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(" variabletype="">Echo_Seriennummer</field> </block> </value> <value name="ADD2"> <block type="text" id="fru4dBVS!?k=A;uBh7*G"> <field name="TEXT">.Commands.speak</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="4Q-~O)0Tq3Bl0SL#OKOU"> <field name="BOOL">TRUE</field> </shadow> <block type="text" id="DOlCDBLal=hl!tv@g+?%"> <field name="TEXT">Ok.</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="Fdd(cgfC~Ct|qFml75Vj"> <field name="NUM">0</field> </shadow> </value> <next> <block type="control_ex" id="n_uzWG@(N)_]F0A~!=Ie"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="g3_@D*L!}QU+=~%+3_x^"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="N17x+U)^B!)~vF,OMkS2"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text_getSubstring" id="QPQNQ2S:6vHbct5d]=ed" inline="false"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id="XwdG4+Eyt}fY?/yGiT+b"> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G" variabletype="">Echo_DP-Name</field> </block> </value> <value name="AT2"> <block type="text_indexOf" id="HpYi[*EjVCpYW;k#gizi"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="FeG=Smp=L05X8`7}YxWM"> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G" variabletype="">Echo_DP-Name</field> </block> </value> <value name="FIND"> <shadow type="text" id="!5r.@5BU^Z{[,q;b#sKP"> <field name="TEXT">.Info</field> </shadow> </value> </block> </value> </block> </value> <value name="ADD1"> <block type="text" id="p3FZS)oLOzAg)DDyFVb6"> <field name="TEXT">Commands.speak</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="TLX|*;oi~r_65#6jP-I+"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="-TI|1rh5akK=7%RvO$mj"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u" variabletype="">Text</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="@5xD^V/w8IAL%(jE`,.a"> <field name="NUM">0</field> </shadow> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </statement> <next> <block type="controls_if" id="@)6`d%HOeQoURRp47|_G"> <value name="IF0"> <block type="logic_compare" id="Yje$.F.Jlq/t1K;9l[$n"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="^uBH}_uskN;+KRf84B=s"> <field name="VAR" id=";F.(K|mb2VDLFz4584#t" variabletype="">Echo_gefunden</field> </block> </value> <value name="B"> <block type="logic_boolean" id="qOs29yEpuK7fK)3Iq,D{"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control_ex" id="Qmpb4$v80:TPOU,QF.)i"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="fwZLrtqkG5Ro2sbRcbdL"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="B/T;uwvUx:AZg.Tv1Z}K"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="OwO=9`U#05m*KZx_XnYp"> <field name="TEXT">alexa2.0.Echo-Devices.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="=dGXbqL38jYJq-XBQln@"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(" variabletype="">Echo_Seriennummer</field> </block> </value> <value name="ADD2"> <block type="text" id=")pilr%swl1]zwp3u0.Xr"> <field name="TEXT">.Commands.speak</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="4Q-~O)0Tq3Bl0SL#OKOU"> <field name="BOOL">TRUE</field> </shadow> <block type="text_join" id="^qxx:S%f7udQi/U+mlSx"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="{(*_9a$/z_*v{I5#;CyB"> <field name="TEXT">Leider konnte ich kein Gerät mit dem Namen "</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="Q5JW`W_e^KvL~A?S;)7E"> <field name="VAR" id="xci3X!4nlXF:sZ?64H_G" variabletype="">Zielecho_Name</field> </block> </value> <value name="ADD2"> <block type="text" id="A1V#RQX}(d^kRXxOTaFA"> <field name="TEXT">" finden.</field> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="aMJx=]mX7et4[PcXye^*"> <field name="NUM">0</field> </shadow> </value> </block> </statement> <next> <block type="timeouts_clearinterval" id="a@-/gbH(=bjkDX0({ucu"> <field name="NAME">Intervall</field> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> </xml>
-
@padrino sagte in "Sprich mir nach" auf Echo XY:
Version 1.6 ist fertig.
Servus!
Hab gerade dein Script entdeckt.
Bin gerade am testen.
Danke dafür. Kann man immer gut brauchen.
Echo, auf Küche sprich mir nach Schatzi ich hab hungerHab leider erst auf der letzten Seite die 1.6 gesehen.
-
@Negalein sagte in "Sprich mir nach" auf Echo XY:
@padrino sagte in "Sprich mir nach" auf Echo XY:
Version 1.6 ist fertig.
Servus!
Hab gerade dein Script entdeckt.
Bin gerade am testen.
Danke dafür. Kann man immer gut brauchen.
Echo, auf Küche sprich mir nach Schatzi ich hab hungerHab leider erst auf der letzten Seite die 1.6 gesehen.
Ja die eingeklappten Spoiler sind mir auch suspekt.
Hatte ich anfangs auch nicht gesehen.
Es kann nur besser werden. -
@Aphofis sagte in "Sprich mir nach" auf Echo XY:
Es kann nur besser werden.
Echt jetzt?
Wird hier jetzt meine Art zu posten kritisiert?Ziel der Spoiler (für mich) ist es das Forum übersichtlich und "vertikal klein" zu halten.
-
@padrino sagte in "Sprich mir nach" auf Echo XY:
Wird hier jetzt meine Art zu posten kritisiert?
Nö, definitiv nicht!
Ziel der Spoiler (für mich) ist es das Forum übersichtlich und "vertikal klein" zu halten.
Ich mag die Spoiler auch sehr. Finde macht das ganze übersichtlicher!
PS: Tipp: editiere bitte immer deinen 1. Beitrag wenn du eine neue Version veröffentlichst! Macht es einfacher aktuelle Versionen anzubieten.
-
@Negalein sagte in "Sprich mir nach" auf Echo XY:
PS: Tipp: editiere bitte immer deinen 1. Beitrag wenn du eine neue Version veröffentlichst! Macht es einfacher aktuelle Versionen anzubieten.
Hm, mach ich doch eigentlich...
(nachguck) Oha, dort steht nur was von 1.5
Werd ich dann wohl anpassen. -
So, neues Jahr, da hau' ich mal V1.9 raus.
Alles so ewig her, dass ich keinen Schimmer mehr habe, was ich da so alles in der Zwischenzeit geändert habe - vermutlich nur Kleinigkeiten.
Naja, auf jeden Fall wird jetzt auch das Wort "fragezeichen" durch "?" ersetzt.
Also aus z.B.
"eins komma zwei oder drei fragezeichen"
wird
"eins, zwei oder drei?"Wie immer, Feedback ist gern gesehen.
Blockly Code
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="T0YZa/guj,^|n505HM4w">TextMitSZ</variable> <variable id=";F.(K|mb2VDLFz4584#t">Echo_gefunden</variable> <variable id="C2wE+cVgznP#j}r/`dl(">Echo_Seriennummer</variable> <variable id="xci3X!4nlXF:sZ?64H_G">Zielecho_Name</variable> <variable id="b7aB$`+O!Gi*`TEysg7u">Text</variable> <variable type="interval" id="Intervall">Intervall</variable> <variable id="@v/?ezVeiXzj^,$=!Nr.">i</variable> <variable id="Ru|{8SkwlsBK~^n=lN=G">Echo_DP-Name</variable> </variables> <block type="comment" id="FOjQ$9KpZ.MP~N%WI;S|" x="-1774" y="27"> <field name="COMMENT">Version 1.9 (07.01.2021) by padrino</field> <next> <block type="on" id="fhfKzXrq)P[aOmo9~(rW"> <field name="OID">alexa2.0.History.summary</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="controls_if" id="OElmPyfLv#/1YKRV;(yB"> <value name="IF0"> <block type="logic_compare" id="7|bX(FK%8-kvxd;yxQbo"> <field name="OP">GT</field> <value name="A"> <block type="text_indexOf" id="Iu^2N42]m*BM7c;Q2K-m"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="{fTb5h|jC._Ga|xDga{I"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="1GVke=Zw#PVlU,W6aLH/"> <field name="TEXT">bis</field> </shadow> <block type="text" id="(~gUYI,1p[/KsA?AEFaA"> <field name="TEXT">sprich mir nach</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="qoffb!hgM^%hj6qW|}p;"> <field name="NUM">1</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="X{FOz:*I4)]D?~s*[:af"> <field name="VAR" id=";F.(K|mb2VDLFz4584#t">Echo_gefunden</field> <value name="VALUE"> <block type="logic_boolean" id="u_RoVSM%*9n#%*`9bSaK"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="variables_set" id="$%FoWwYys?P%_gb`qQh#"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(">Echo_Seriennummer</field> <value name="VALUE"> <block type="get_value" id="Q/Ba=ZEzaq*4f(R$8TV-"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.serialNumber</field> </block> </value> <next> <block type="variables_set" id="#(KOcl2PK``7{9,ihtgn"> <field name="VAR" id="xci3X!4nlXF:sZ?64H_G">Zielecho_Name</field> <value name="VALUE"> <block type="text_getSubstring" id="Zf;s@pJw,rWD||Jvmnbk" inline="false"> <mutation at1="true" at2="true"></mutation> <field name="WHERE1">FROM_START</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="on_source" id=";+v~efkH8agiOHMYqNTS"> <field name="ATTR">state.val</field> </block> </value> <value name="AT1"> <block type="math_arithmetic" id="OYk4;y5{czDP`m+gzp#x"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id=":Pt%sy);(Elj}B;/,1ix"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="8iVOD?ge5zEWtZNYR)Xa"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="-WhQ].ljU?y50Tw:4K8c"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="=SDY/u1Y#~]_%{#8u2q?"> <field name="TEXT"> </field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="}zdvVy2;C-Jy`,}Gyhxv"> <field name="NUM">1</field> </shadow> </value> </block> </value> <value name="AT2"> <block type="math_arithmetic" id="SH2qw5Y([Kz61GRYELOb"> <field name="OP">MINUS</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id=":Pt%sy);(Elj}B;/,1ix"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="?4FxA-!N!j0aWW@J,Wve"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="$Vqh@pd:79t{ag0649QW"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="frF5wE;Uu[cV+_/+]y;/"> <field name="TEXT">sprich mir nach</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="46zj.O5@$,TNr[sKB%Wy"> <field name="NUM">2</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="control_ex" id="q[?Nl1:K==I([B.*/V-P"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="fwZLrtqkG5Ro2sbRcbdL"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="@xW-c8RyZ5h0X3GYi4.P"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="|S=qk$b:/3?~qcY-(2EM"> <field name="TEXT">alexa2.0.Echo-Devices.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="ea_4IeR.Q)N4r[_RP|Cs"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(">Echo_Seriennummer</field> </block> </value> <value name="ADD2"> <block type="text" id="`(L|`[_t{P%B;|7G+$1A"> <field name="TEXT">.Commands.deviceStop</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="4Q-~O)0Tq3Bl0SL#OKOU"> <field name="BOOL">TRUE</field> </shadow> </value> <value name="DELAY_MS"> <shadow type="math_number" id="tE.$Aa1u#o~)EemNkhQS"> <field name="NUM">0</field> </shadow> </value> <next> <block type="variables_set" id="adlf:C2Y5g{K6^P5+p7i"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u">Text</field> <value name="VALUE"> <block type="text_getSubstring" id="%B5?NrR/^@Yo,^V+%OhP" inline="false"> <mutation at1="true" at2="false"></mutation> <field name="WHERE1">FROM_START</field> <field name="WHERE2">LAST</field> <value name="STRING"> <block type="on_source" id="h4oo,nxxHz=.G-i*N{ji"> <field name="ATTR">state.val</field> </block> </value> <value name="AT1"> <block type="math_arithmetic" id=")%)x6|Y|YNte:#s,[#k6"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id=":Pt%sy);(Elj}B;/,1ix"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id=",|z]4aSUy?sDT,c1AvJL"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="=E588TF4q|%PEqde4dNC"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="gG59_T:atKMo)MfX?b8R"> <field name="TEXT">sprich mir nach</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="~hv6Rq;ZlwM/_wQTUG?3"> <field name="NUM">16</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="_ptG}f`${r;QIp2:S?ed"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u">Text</field> <value name="VALUE"> <block type="procedures_callcustomreturn" id="Q,WyTP?+KD6kA*zz:d[g"> <mutation name="Satzzeichen_umwandeln"> <arg name="TextMitSZ"></arg> </mutation> <value name="ARG0"> <block type="variables_get" id="$C%HltOrxZ_{0DZO}:[p"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u">Text</field> </block> </value> </block> </value> <next> <block type="timeouts_setinterval" id="miNtAEzWrW!38@Fp-B9G"> <field name="NAME">Intervall</field> <field name="INTERVAL">200</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="controls_forEach" id="~KP4iuN[;V#LrB5hF7r%"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr.">i</field> <value name="LIST"> <block type="selector" id="x{9_a!8.pV[pT.lfZ+y("> <field name="TEXT">channel[state.id=alexa2.0.Echo-Devices.*.Commands.speak]</field> </block> </value> <statement name="DO"> <block type="controls_if" id=",pLI}Vt9gWA4`._;^@ej"> <value name="IF0"> <block type="logic_compare" id="#(ESgNUhC609VgIr|-3q"> <field name="OP">EQ</field> <value name="A"> <block type="text_indexOf" id="/~DZ$WLaa]YdDw{Btb50"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="^K,W(i1s-6wacCBg(Lzi"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr.">i</field> </block> </value> <value name="FIND"> <shadow type="text" id="{0I=FhYjc]~9c}@^K}|b"> <field name="TEXT">speak-volume</field> </shadow> </value> </block> </value> <value name="B"> <block type="math_number" id="ad%[(xHUfv65ABFCq%g+"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="BoVO,+_n*QF~twf/M|3O"> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G">Echo_DP-Name</field> <value name="VALUE"> <block type="text_join" id="/v4t*CP}tuDD:_K,^M|U"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text_getSubstring" id=";!mI{,,2[0[prWPf9@(5" inline="false"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id="X6{Ts.Pbs,v9@3k8I}{E"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr.">i</field> </block> </value> <value name="AT2"> <block type="text_indexOf" id="e/:GxUq(_TN4MoeO]M?S"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="x-*a[s,2SPQ5WNi:oq?o"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr.">i</field> </block> </value> <value name="FIND"> <shadow type="text" id="dm+nwoI9u4T~|!Lz(IZ("> <field name="TEXT">.Commands</field> </shadow> </value> </block> </value> </block> </value> <value name="ADD1"> <block type="text" id="Xu@WJeey`h2FyXeieZr1"> <field name="TEXT">Info.name</field> </block> </value> </block> </value> <next> <block type="controls_if" id="?dS]Aqv?To%$v;FOb}XF"> <value name="IF0"> <block type="logic_compare" id="gx?L{$0hx671N19w%h-v" inline="false"> <field name="OP">GT</field> <value name="A"> <block type="text_indexOf" id="1R68:[/k;%|f/114v^DN" inline="false"> <field name="END">FIRST</field> <value name="VALUE"> <block type="text_changeCase" id="-#uODff*%-YCq@7U_}q3"> <field name="CASE">LOWERCASE</field> <value name="TEXT"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="V,sqOp1hR.j/Nr0t5OA#"> <field name="TEXT">abc</field> </shadow> <block type="get_value_var" id="#]e~f2$Sc*O}:p06|/`?"> <field name="ATTR">val</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="#($Z1dL/5P^o|fV#/lZ."> <field name="TEXT"></field> </shadow> <block type="variables_get" id="gJ+883n}HvRZJUymh`09"> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G">Echo_DP-Name</field> </block> </value> </block> </value> </block> </value> <value name="FIND"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="Xu7is5=?~Q{+2ip9fC(t"> <field name="TEXT">abc</field> </shadow> <block type="variables_get" id="Khc++ExtX)qBbOl!LQlJ"> <field name="VAR" id="xci3X!4nlXF:sZ?64H_G">Zielecho_Name</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="CLAXj`4?pj-iu!rJdN7H"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="X_eFO|_!K{Z=`uA|g?gg"> <field name="VAR" id=";F.(K|mb2VDLFz4584#t">Echo_gefunden</field> <value name="VALUE"> <block type="logic_boolean" id=".Y+:m}scy[LgZ[!hE9TD"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control_ex" id="u]lxbXd(oPb!+qmpULp#"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="fwZLrtqkG5Ro2sbRcbdL"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="$VJ#(BMiw2^It4A3Btx:"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="A^-+*@#_b+izsQ0cKph}"> <field name="TEXT">alexa2.0.Echo-Devices.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="e)EDFN~LTA=yddXz!Rj_"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(">Echo_Seriennummer</field> </block> </value> <value name="ADD2"> <block type="text" id="fru4dBVS!?k=A;uBh7*G"> <field name="TEXT">.Commands.speak</field> </block> </value> </block> </value> <value name="VALUE"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="4Q-~O)0Tq3Bl0SL#OKOU"> <field name="BOOL">TRUE</field> </shadow> <block type="text" id="DOlCDBLal=hl!tv@g+?%"> <field name="TEXT">Ok.</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="Fdd(cgfC~Ct|qFml75Vj"> <field name="NUM">0</field> </shadow> </value> <next> <block type="controls_if" id="iMeDg7sjZ@+H2vhU|IKm" disabled="true"> <value name="IF0"> <block type="logic_compare" id="lbiT=D,P^^Jv(yX)Gd1}"> <field name="OP">EQ</field> <value name="A"> <block type="get_value_var" id=":)lR7cXoiwSL]oxeIO-O"> <field name="ATTR">val</field> <value name="OID"> <shadow type="text" id="EiRfCY8xESJWxx|+E.kS"> <field name="TEXT"></field> </shadow> <block type="text_join" id="J_nt)3naa(c=6.+uvUV!"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text_getSubstring" id="Ncg({y5|z/bPUplXJed~" inline="false"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id=",wLR_G%(MoOg40ggT+Vj"> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G">Echo_DP-Name</field> </block> </value> <value name="AT2"> <block type="text_indexOf" id="_r*fH!.P(Hw[NT)#K[.0"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="e%Od?kv~=I$ca,B}i[%x"> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G">Echo_DP-Name</field> </block> </value> <value name="FIND"> <shadow type="text" id="X6gan}M~pExCK)#90jmn"> <field name="TEXT">.Info</field> </shadow> </value> </block> </value> </block> </value> <value name="ADD1"> <block type="text" id="mn8KN)LOB[p|b9yFoSim"> <field name="TEXT">Player.currentState</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="logic_boolean" id="6]}~h]S+PWJf!+-Gr?z("> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control_ex" id="+CH,}HeoL!aYZ8bkbwn_"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="em[yglSpre.~n.WvPs-^"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="%=XVR:9DN$a^Na0tJW09"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text_getSubstring" id="11uk5eLxlK|zg*lM1C)b" inline="false"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id="x]Wo0B}M)h#r|K1]%+=="> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G">Echo_DP-Name</field> </block> </value> <value name="AT2"> <block type="text_indexOf" id="0g`!K-rF~_|Y:bQdzItw"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="K/pEV(tK*Wx?c5bpb+y="> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G">Echo_DP-Name</field> </block> </value> <value name="FIND"> <shadow type="text" id="E1eHub.;[-3aDrD7+8sZ"> <field name="TEXT">.Info</field> </shadow> </value> </block> </value> </block> </value> <value name="ADD1"> <block type="text" id="wL8ZDp+y6n(44FX^;J=?"> <field name="TEXT">Player.controlPause</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="6qcgPn3LFREv3;$vv~_7"> <field name="BOOL">TRUE</field> </shadow> <block type="logic_boolean" id="`Osb%,dhE465q`prS6}M"> <field name="BOOL">TRUE</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="GDQE|ILE}-[,:@unwhin"> <field name="NUM">0</field> </shadow> </value> <next> <block type="control_ex" id="iq.Bhp3CM-8{C:AS6W)="> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="cqF!99y~+JLlD=%nch)v"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text_getSubstring" id="oTp5=E[N)c39Mc7AVjdL" inline="false"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id="zff5)D9f]ps?@n`/s,YJ"> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G">Echo_DP-Name</field> </block> </value> <value name="AT2"> <block type="text_indexOf" id="_#hlu=6vE@F.wSjayobR"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="k/|buXIsN]oF52RF.$Dv"> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G">Echo_DP-Name</field> </block> </value> <value name="FIND"> <shadow type="text" id="f5SCpq!bnng1GMAS0:9}"> <field name="TEXT">.Info</field> </shadow> </value> </block> </value> </block> </value> <value name="ADD1"> <block type="text" id="/1X}KXBW~h0wSY9!Q_pJ"> <field name="TEXT">Player.controlPlay</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean"> <field name="BOOL">TRUE</field> </shadow> <block type="logic_boolean" id="0(?Dbe6;F/DEtTx|I`w8"> <field name="BOOL">TRUE</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="QV!x39Kvw/P2a(`B?LuR"> <field name="NUM">5000</field> </shadow> </value> </block> </next> </block> </statement> <next> <block type="control_ex" id="n_uzWG@(N)_]F0A~!=Ie"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="g3_@D*L!}QU+=~%+3_x^"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="N17x+U)^B!)~vF,OMkS2"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text_getSubstring" id="QPQNQ2S:6vHbct5d]=ed" inline="false"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id="XwdG4+Eyt}fY?/yGiT+b"> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G">Echo_DP-Name</field> </block> </value> <value name="AT2"> <block type="text_indexOf" id="HpYi[*EjVCpYW;k#gizi"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="FeG=Smp=L05X8`7}YxWM"> <field name="VAR" id="Ru|{8SkwlsBK~^n=lN=G">Echo_DP-Name</field> </block> </value> <value name="FIND"> <shadow type="text" id="!5r.@5BU^Z{[,q;b#sKP"> <field name="TEXT">.Info</field> </shadow> </value> </block> </value> </block> </value> <value name="ADD1"> <block type="text" id="p3FZS)oLOzAg)DDyFVb6"> <field name="TEXT">Commands.speak</field> </block> </value> </block> </value> <value name="VALUE"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="TLX|*;oi~r_65#6jP-I+"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="-TI|1rh5akK=7%RvO$mj"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u">Text</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="@5xD^V/w8IAL%(jE`,.a"> <field name="NUM">1000</field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </statement> <next> <block type="controls_if" id="@)6`d%HOeQoURRp47|_G"> <value name="IF0"> <block type="logic_compare" id="Yje$.F.Jlq/t1K;9l[$n"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="^uBH}_uskN;+KRf84B=s"> <field name="VAR" id=";F.(K|mb2VDLFz4584#t">Echo_gefunden</field> </block> </value> <value name="B"> <block type="logic_boolean" id="qOs29yEpuK7fK)3Iq,D{"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control_ex" id="Qmpb4$v80:TPOU,QF.)i"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="fwZLrtqkG5Ro2sbRcbdL"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="B/T;uwvUx:AZg.Tv1Z}K"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="OwO=9`U#05m*KZx_XnYp"> <field name="TEXT">alexa2.0.Echo-Devices.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="=dGXbqL38jYJq-XBQln@"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(">Echo_Seriennummer</field> </block> </value> <value name="ADD2"> <block type="text" id=")pilr%swl1]zwp3u0.Xr"> <field name="TEXT">.Commands.speak</field> </block> </value> </block> </value> <value name="VALUE"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="4Q-~O)0Tq3Bl0SL#OKOU"> <field name="BOOL">TRUE</field> </shadow> <block type="text_join" id="^qxx:S%f7udQi/U+mlSx"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="{(*_9a$/z_*v{I5#;CyB"> <field name="TEXT">Leider konnte ich kein Gerät mit dem Namen "</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="Q5JW`W_e^KvL~A?S;)7E"> <field name="VAR" id="xci3X!4nlXF:sZ?64H_G">Zielecho_Name</field> </block> </value> <value name="ADD2"> <block type="text" id="A1V#RQX}(d^kRXxOTaFA"> <field name="TEXT">" finden.</field> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="aMJx=]mX7et4[PcXye^*"> <field name="NUM">0</field> </shadow> </value> </block> </statement> <next> <block type="timeouts_clearinterval" id="a@-/gbH(=bjkDX0({ucu"> <field name="NAME">Intervall</field> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> <block type="procedures_defcustomreturn" id="[.kLmP/S?e;|npPP7WZN" x="-1562" y="88"> <mutation statements="false"> <arg name="TextMitSZ" varid="T0YZa/guj,^|n505HM4w"></arg> </mutation> <field name="NAME">Satzzeichen_umwandeln</field> <field name="SCRIPT">bGV0IE9obmVLb21tYXMgPSBUZXh0TWl0U1oucmVwbGFjZSgvIGtvbW1hL2csICJcLCIpOw0KbGV0IE9obmVTWiA9IE9obmVLb21tYXMucmVwbGFjZSgvIGZyYWdlemVpY2hlbi9nLCAiXD8iKTsNCnJldHVybiBPaG5lU1o7</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> </xml>
-
Kurzer "Hotfix"
- neues Feature "wenn Musik spielt, wird diese für die Ausgabe kurz (5 Sekunden) pausiert" war fehlerhaft. Läuft jetzt hoffentlich.
V1.9a
<block xmlns="https://developers.google.com/blockly/xml" type="comment" id="FOjQ$9KpZ.MP~N%WI;S|" x="-1774" y="27"> <field name="COMMENT">Version 1.9a (07.01.2021) by padrino</field> </block>
-
V2.0 ist fertig. 🥳
Änderungen?
- hab den Code aufgeräumt, dadurch isser hoffentlich effizienter und zuverlässiger - zumindest etwas.
- statt des "speak" bzw. "ssml" Datenpunkts nutze ich nun "textCommand" mit "sprich mir nach [text]". Scheint bei mir nicht so oft den Text zu schlucken wie die anderen beiden...
- passend dazu habe ich "deviceStop" durch "textCommand" mit "stopp" ersetzt, da so mehr (unerwünschtes) Feedback auf den "Eingabe Echo" gestoppt wird (z.B. auch das öffnen einen Skills - bei mir dauernd "Eishockey Guru" )
@apollon77 nochmal vielen, vielen Dank für "textCommand"! 🥰 - Falls der Zielecho gerade etwas abspielt, wird die Wiedergabe pausiert. Dabei ist die Pause jetzt dynamisch und abhängig von der Länge des zu sprechenden Textes (Achtung, höchst experimentell 🤪)
- da Frauchen getestet hat und immer etwas macht, das ich natürlich nicht bedacht habe, wird jetzt auch "punkt" durch "." ersetzt.
Dachte eigentlich nicht, dass man das brauchen würde.
V2.0a Blockly
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="T0YZa/guj,^|n505HM4w">TextMitSZ</variable> <variable id=";F.(K|mb2VDLFz4584#t">Echo_Ziel_gefunden</variable> <variable id="C2wE+cVgznP#j}r/`dl(">Echo_Start_Seriennummer</variable> <variable id="xci3X!4nlXF:sZ?64H_G">Echo_Ziel_Name</variable> <variable id="b7aB$`+O!Gi*`TEysg7u">zu_sprechender_Text</variable> <variable id="!5j6XLhoQm_S9B.5BB`=">Pause</variable> <variable type="interval" id="Intervall">Intervall</variable> <variable id="@v/?ezVeiXzj^,$=!Nr.">i</variable> <variable id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</variable> <variable id="#o|;Mx(pH:s{+-*%Vpai">Echo_gefunden_Name</variable> </variables> <block type="comment" id="FOjQ$9KpZ.MP~N%WI;S|" x="-2463" y="-137"> <field name="COMMENT">Version 2.0a (10.01.2021) by padrino</field> <next> <block type="on" id="fhfKzXrq)P[aOmo9~(rW"> <field name="OID">alexa2.0.History.summary</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="controls_if" id="OElmPyfLv#/1YKRV;(yB"> <value name="IF0"> <block type="logic_compare" id="7|bX(FK%8-kvxd;yxQbo"> <field name="OP">GT</field> <value name="A"> <block type="text_indexOf" id="Iu^2N42]m*BM7c;Q2K-m"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="{fTb5h|jC._Ga|xDga{I"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="1GVke=Zw#PVlU,W6aLH/"> <field name="TEXT">bis</field> </shadow> <block type="text" id="(~gUYI,1p[/KsA?AEFaA"> <field name="TEXT">sprich mir nach</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="qoffb!hgM^%hj6qW|}p;"> <field name="NUM">1</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="X{FOz:*I4)]D?~s*[:af"> <field name="VAR" id=";F.(K|mb2VDLFz4584#t">Echo_Ziel_gefunden</field> <value name="VALUE"> <block type="logic_boolean" id="u_RoVSM%*9n#%*`9bSaK"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="variables_set" id="$%FoWwYys?P%_gb`qQh#"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(">Echo_Start_Seriennummer</field> <value name="VALUE"> <block type="get_value" id="Q/Ba=ZEzaq*4f(R$8TV-"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.serialNumber</field> </block> </value> <next> <block type="variables_set" id="#(KOcl2PK``7{9,ihtgn"> <field name="VAR" id="xci3X!4nlXF:sZ?64H_G">Echo_Ziel_Name</field> <value name="VALUE"> <block type="text_getSubstring" id="Zf;s@pJw,rWD||Jvmnbk" inline="false"> <mutation at1="true" at2="true"></mutation> <field name="WHERE1">FROM_START</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="on_source" id=";+v~efkH8agiOHMYqNTS"> <field name="ATTR">state.val</field> </block> </value> <value name="AT1"> <block type="math_arithmetic" id="OYk4;y5{czDP`m+gzp#x"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id=":Pt%sy);(Elj}B;/,1ix"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="8iVOD?ge5zEWtZNYR)Xa"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="-WhQ].ljU?y50Tw:4K8c"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="=SDY/u1Y#~]_%{#8u2q?"> <field name="TEXT"> </field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="}zdvVy2;C-Jy`,}Gyhxv"> <field name="NUM">1</field> </shadow> </value> </block> </value> <value name="AT2"> <block type="math_arithmetic" id="SH2qw5Y([Kz61GRYELOb"> <field name="OP">MINUS</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id=":Pt%sy);(Elj}B;/,1ix"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="?4FxA-!N!j0aWW@J,Wve"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="$Vqh@pd:79t{ag0649QW"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="frF5wE;Uu[cV+_/+]y;/"> <field name="TEXT">sprich mir nach</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="46zj.O5@$,TNr[sKB%Wy"> <field name="NUM">2</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="control_ex" id="q[?Nl1:K==I([B.*/V-P"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="fwZLrtqkG5Ro2sbRcbdL"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="@xW-c8RyZ5h0X3GYi4.P"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="|S=qk$b:/3?~qcY-(2EM"> <field name="TEXT">alexa2.0.Echo-Devices.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="ea_4IeR.Q)N4r[_RP|Cs"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(">Echo_Start_Seriennummer</field> </block> </value> <value name="ADD2"> <block type="text" id="`(L|`[_t{P%B;|7G+$1A"> <field name="TEXT">.Commands.textCommand</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="4Q-~O)0Tq3Bl0SL#OKOU"> <field name="BOOL">TRUE</field> </shadow> <block type="text" id="S,F(I`H_YDTUMA]h,Md)"> <field name="TEXT">stopp</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="tE.$Aa1u#o~)EemNkhQS"> <field name="NUM">0</field> </shadow> </value> <next> <block type="variables_set" id="adlf:C2Y5g{K6^P5+p7i"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u">zu_sprechender_Text</field> <value name="VALUE"> <block type="procedures_callcustomreturn" id="Xw!a{`OOvc0N7/rc=Kw."> <mutation name="Satzzeichen_umwandeln"> <arg name="TextMitSZ"></arg> </mutation> <value name="ARG0"> <block type="text_getSubstring" id="%B5?NrR/^@Yo,^V+%OhP" inline="false"> <mutation at1="true" at2="false"></mutation> <field name="WHERE1">FROM_START</field> <field name="WHERE2">LAST</field> <value name="STRING"> <block type="on_source" id="h4oo,nxxHz=.G-i*N{ji"> <field name="ATTR">state.val</field> </block> </value> <value name="AT1"> <block type="math_arithmetic" id=")%)x6|Y|YNte:#s,[#k6"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id=":Pt%sy);(Elj}B;/,1ix"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id=",|z]4aSUy?sDT,c1AvJL"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="=E588TF4q|%PEqde4dNC"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="gG59_T:atKMo)MfX?b8R"> <field name="TEXT">sprich mir nach</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="~hv6Rq;ZlwM/_wQTUG?3"> <field name="NUM">16</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="n84}S|~^Si#I(rvieSD$"> <field name="VAR" id="!5j6XLhoQm_S9B.5BB`=">Pause</field> <value name="VALUE"> <block type="math_arithmetic" id="nWf(m+xLHeZfbk0|o$}("> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="sGlKFjcrPC{PM,G,Yu1T"> <field name="NUM">1</field> </shadow> <block type="text_length" id="3GBB.wJ_eOoU3~,u|sbW"> <value name="VALUE"> <shadow type="text"> <field name="TEXT"></field> </shadow> <block type="variables_get" id=")iO?hn.aeX,Cf.rZ6kk_"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u">zu_sprechender_Text</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="4O*Yl6^{J?Q0)U-DT^K_"> <field name="NUM">80</field> </shadow> </value> </block> </value> <next> <block type="timeouts_setinterval" id="miNtAEzWrW!38@Fp-B9G"> <field name="NAME">Intervall</field> <field name="INTERVAL">200</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="controls_forEach" id="~KP4iuN[;V#LrB5hF7r%"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr.">i</field> <value name="LIST"> <block type="selector" id="x{9_a!8.pV[pT.lfZ+y("> <field name="TEXT">channel[state.id=alexa2.0.Echo-Devices.*.Commands.speak]</field> </block> </value> <statement name="DO"> <block type="variables_set" id="?`6.%GbF+xM6c65S;*rU"> <field name="VAR" id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</field> <value name="VALUE"> <block type="text_join" id="__9$io,!tWsl@yWr:[CY"> <mutation items="1"></mutation> <value name="ADD0"> <block type="text_getSubstring" id="SC!fZKZLN%[aq:yR4;,#" inline="false"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id="H^g(b~ln]Jl.,;u0SQS$"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr.">i</field> </block> </value> <value name="AT2"> <block type="text_indexOf" id="wpDPI=,hr4^j6zp)~#[S"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="qWxeYwC,R[F:ieS37e|R"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr.">i</field> </block> </value> <value name="FIND"> <shadow type="text" id="lRA]|dZrb!GE!y@3!HNV"> <field name="TEXT">.Commands</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="gC,0gBJchG`P+#Kh`,No"> <field name="VAR" id="#o|;Mx(pH:s{+-*%Vpai">Echo_gefunden_Name</field> <value name="VALUE"> <block type="get_value_var" id="OhB)P~;POJ*k)(AW;QVk"> <field name="ATTR">val</field> <value name="OID"> <shadow type="text" id="0DTEXt$;]]WC$bG~2ujA"> <field name="TEXT"></field> </shadow> <block type="text_join" id="!`sU}fMZEh=e=Mqzn:iF"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="~}@;L`@qv#SP4-HMORc7"> <field name="VAR" id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</field> </block> </value> <value name="ADD1"> <block type="text" id="I)T]Gqf/|]jCQ$EXKx%Q"> <field name="TEXT">Info.name</field> </block> </value> </block> </value> </block> </value> <next> <block type="controls_if" id="?dS]Aqv?To%$v;FOb}XF"> <value name="IF0"> <block type="logic_compare" id="gx?L{$0hx671N19w%h-v" inline="false"> <field name="OP">GT</field> <value name="A"> <block type="text_indexOf" id="cg$1M$n)@c)_-yaKbepd" inline="false"> <field name="END">FIRST</field> <value name="VALUE"> <block type="text_changeCase" id="M^i|re|4t%J[wCHb=~`~"> <field name="CASE">LOWERCASE</field> <value name="TEXT"> <shadow type="text" id="E$%!K/)i0)rK3*Q0Hxb]"> <field name="TEXT">abc</field> </shadow> <block type="variables_get" id="slZBP^Eql;wPI+JCK|DX"> <field name="VAR" id="#o|;Mx(pH:s{+-*%Vpai">Echo_gefunden_Name</field> </block> </value> </block> </value> <value name="FIND"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text"> <field name="TEXT">abc</field> </shadow> <block type="variables_get" id="gy5Hp#t0_^q%dW~8?OUm"> <field name="VAR" id="xci3X!4nlXF:sZ?64H_G">Echo_Ziel_Name</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="CLAXj`4?pj-iu!rJdN7H"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="X_eFO|_!K{Z=`uA|g?gg"> <field name="VAR" id=";F.(K|mb2VDLFz4584#t">Echo_Ziel_gefunden</field> <value name="VALUE"> <block type="logic_boolean" id=".Y+:m}scy[LgZ[!hE9TD"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control_ex" id="u]lxbXd(oPb!+qmpULp#"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="fwZLrtqkG5Ro2sbRcbdL"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="$VJ#(BMiw2^It4A3Btx:"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="A^-+*@#_b+izsQ0cKph}"> <field name="TEXT">alexa2.0.Echo-Devices.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="e)EDFN~LTA=yddXz!Rj_"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(">Echo_Start_Seriennummer</field> </block> </value> <value name="ADD2"> <block type="text" id="fru4dBVS!?k=A;uBh7*G"> <field name="TEXT">.Commands.speak</field> </block> </value> </block> </value> <value name="VALUE"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="4Q-~O)0Tq3Bl0SL#OKOU"> <field name="BOOL">TRUE</field> </shadow> <block type="text" id="DOlCDBLal=hl!tv@g+?%"> <field name="TEXT">Ok.</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="Fdd(cgfC~Ct|qFml75Vj"> <field name="NUM">0</field> </shadow> </value> <next> <block type="controls_if" id="iMeDg7sjZ@+H2vhU|IKm"> <value name="IF0"> <block type="get_value_var" id=":)lR7cXoiwSL]oxeIO-O"> <field name="ATTR">val</field> <value name="OID"> <shadow type="text" id="EiRfCY8xESJWxx|+E.kS"> <field name="TEXT"></field> </shadow> <block type="text_join" id="J_nt)3naa(c=6.+uvUV!"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id=",wLR_G%(MoOg40ggT+Vj"> <field name="VAR" id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</field> </block> </value> <value name="ADD1"> <block type="text" id="mn8KN)LOB[p|b9yFoSim"> <field name="TEXT">Player.currentState</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control_ex" id="+CH,}HeoL!aYZ8bkbwn_"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="em[yglSpre.~n.WvPs-^"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="%=XVR:9DN$a^Na0tJW09"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="x]Wo0B}M)h#r|K1]%+=="> <field name="VAR" id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</field> </block> </value> <value name="ADD1"> <block type="text" id="wL8ZDp+y6n(44FX^;J=?"> <field name="TEXT">Player.controlPause</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="6qcgPn3LFREv3;$vv~_7"> <field name="BOOL">TRUE</field> </shadow> <block type="logic_boolean" id="`Osb%,dhE465q`prS6}M"> <field name="BOOL">TRUE</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="GDQE|ILE}-[,:@unwhin"> <field name="NUM">0</field> </shadow> </value> <next> <block type="control_ex" id="iq.Bhp3CM-8{C:AS6W)="> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="cqF!99y~+JLlD=%nch)v"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="zff5)D9f]ps?@n`/s,YJ"> <field name="VAR" id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</field> </block> </value> <value name="ADD1"> <block type="text" id="/1X}KXBW~h0wSY9!Q_pJ"> <field name="TEXT">Player.controlPlay</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean"> <field name="BOOL">TRUE</field> </shadow> <block type="logic_boolean" id="0(?Dbe6;F/DEtTx|I`w8"> <field name="BOOL">TRUE</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="QV!x39Kvw/P2a(`B?LuR"> <field name="NUM">0</field> </shadow> <block type="variables_get" id="PL@m(d;+Os07R|k:n#,c"> <field name="VAR" id="!5j6XLhoQm_S9B.5BB`=">Pause</field> </block> </value> </block> </next> </block> </statement> <next> <block type="control_ex" id="(cz%Rmza1VupLRgf+SPq"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="TRnYey?r=pk;DC=DMN:-"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="((Ofwfjlsa=|3YdRd?OT"> <field name="VAR" id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</field> </block> </value> <value name="ADD1"> <block type="text" id="dRzQuCo@@Z:Ify(3+6]o"> <field name="TEXT">Commands.textCommand</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="ZM(0j:2hO56O`t9.8~k)"> <field name="BOOL">TRUE</field> </shadow> <block type="text_join" id="_@Lu#5y#ZaGP=HnB:.hH"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="`h[%VgHk]X(!]2`=2!v`"> <field name="TEXT">sprich mir nach </field> </block> </value> <value name="ADD1"> <block type="variables_get" id="eGQ`RRY+4T;sA1+3mW.f"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u">zu_sprechender_Text</field> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="X,T:mq[JXtV85EyIKr]O"> <field name="NUM">0</field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> <next> <block type="controls_if" id="@)6`d%HOeQoURRp47|_G"> <value name="IF0"> <block type="logic_compare" id="Yje$.F.Jlq/t1K;9l[$n"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="^uBH}_uskN;+KRf84B=s"> <field name="VAR" id=";F.(K|mb2VDLFz4584#t">Echo_Ziel_gefunden</field> </block> </value> <value name="B"> <block type="logic_boolean" id="qOs29yEpuK7fK)3Iq,D{"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control_ex" id="Qmpb4$v80:TPOU,QF.)i"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="fwZLrtqkG5Ro2sbRcbdL"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="B/T;uwvUx:AZg.Tv1Z}K"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="OwO=9`U#05m*KZx_XnYp"> <field name="TEXT">alexa2.0.Echo-Devices.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="=dGXbqL38jYJq-XBQln@"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(">Echo_Start_Seriennummer</field> </block> </value> <value name="ADD2"> <block type="text" id=")pilr%swl1]zwp3u0.Xr"> <field name="TEXT">.Commands.speak</field> </block> </value> </block> </value> <value name="VALUE"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="4Q-~O)0Tq3Bl0SL#OKOU"> <field name="BOOL">TRUE</field> </shadow> <block type="text_join" id="^qxx:S%f7udQi/U+mlSx"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="{(*_9a$/z_*v{I5#;CyB"> <field name="TEXT">Leider konnte ich kein Gerät mit dem Namen "</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="Q5JW`W_e^KvL~A?S;)7E"> <field name="VAR" id="xci3X!4nlXF:sZ?64H_G">Echo_Ziel_Name</field> </block> </value> <value name="ADD2"> <block type="text" id="A1V#RQX}(d^kRXxOTaFA"> <field name="TEXT">" finden.</field> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="aMJx=]mX7et4[PcXye^*"> <field name="NUM">0</field> </shadow> </value> </block> </statement> <next> <block type="timeouts_clearinterval" id="a@-/gbH(=bjkDX0({ucu"> <field name="NAME">Intervall</field> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> <block type="procedures_defcustomreturn" id="[.kLmP/S?e;|npPP7WZN" x="-2287" y="-62"> <mutation statements="false"> <arg name="TextMitSZ" varid="T0YZa/guj,^|n505HM4w"></arg> </mutation> <field name="NAME">Satzzeichen_umwandeln</field> <field name="SCRIPT">bGV0IE9obmVLb21tYXMgPSBUZXh0TWl0U1oucmVwbGFjZSgvIGtvbW1hL2csICJcLCIpOw0KbGV0IE9obmVQdW5rdCA9IE9obmVLb21tYXMucmVwbGFjZSgvIHB1bmt0L2csICJcLiIpOw0KbGV0IE9obmVTWiA9IE9obmVQdW5rdC5yZXBsYWNlKC8gZnJhZ2V6ZWljaGVuL2csICJcPyIpOw0KcmV0dXJuIE9obmVTWjs=</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> </xml>
-
... und V2.1
- (weiteren) unsinnigen Code entfernt
- von "textCommand" zurück auf "speak" gewechselt - sonst machen die Satzzeichen keinen Sinn (werden nicht gesprochen/beachtet).
V2.1
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="T0YZa/guj,^|n505HM4w">TextMitSZ</variable> <variable id=";F.(K|mb2VDLFz4584#t">Echo_Ziel_gefunden</variable> <variable id="C2wE+cVgznP#j}r/`dl(">Echo_Start_Seriennummer</variable> <variable id="xci3X!4nlXF:sZ?64H_G">Echo_Ziel_Name</variable> <variable id="b7aB$`+O!Gi*`TEysg7u">zu_sprechender_Text</variable> <variable id="!5j6XLhoQm_S9B.5BB`=">Pause</variable> <variable id="@v/?ezVeiXzj^,$=!Nr.">i</variable> <variable id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</variable> <variable id="#o|;Mx(pH:s{+-*%Vpai">Echo_gefunden_Name</variable> </variables> <block type="comment" id="FOjQ$9KpZ.MP~N%WI;S|" x="-2463" y="-137"> <field name="COMMENT">Version 2.1 (10.01.2021) by padrino</field> <next> <block type="on" id="fhfKzXrq)P[aOmo9~(rW"> <field name="OID">alexa2.0.History.summary</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="controls_if" id="OElmPyfLv#/1YKRV;(yB"> <value name="IF0"> <block type="logic_compare" id="7|bX(FK%8-kvxd;yxQbo"> <field name="OP">GT</field> <value name="A"> <block type="text_indexOf" id="Iu^2N42]m*BM7c;Q2K-m"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="{fTb5h|jC._Ga|xDga{I"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="1GVke=Zw#PVlU,W6aLH/"> <field name="TEXT">bis</field> </shadow> <block type="text" id="(~gUYI,1p[/KsA?AEFaA"> <field name="TEXT">sprich mir nach</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="qoffb!hgM^%hj6qW|}p;"> <field name="NUM">1</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="X{FOz:*I4)]D?~s*[:af"> <field name="VAR" id=";F.(K|mb2VDLFz4584#t">Echo_Ziel_gefunden</field> <value name="VALUE"> <block type="logic_boolean" id="u_RoVSM%*9n#%*`9bSaK"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="variables_set" id="$%FoWwYys?P%_gb`qQh#"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(">Echo_Start_Seriennummer</field> <value name="VALUE"> <block type="get_value" id="Q/Ba=ZEzaq*4f(R$8TV-"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.serialNumber</field> </block> </value> <next> <block type="variables_set" id="#(KOcl2PK``7{9,ihtgn"> <field name="VAR" id="xci3X!4nlXF:sZ?64H_G">Echo_Ziel_Name</field> <value name="VALUE"> <block type="text_getSubstring" id="Zf;s@pJw,rWD||Jvmnbk" inline="false"> <mutation at1="true" at2="true"></mutation> <field name="WHERE1">FROM_START</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="on_source" id=";+v~efkH8agiOHMYqNTS"> <field name="ATTR">state.val</field> </block> </value> <value name="AT1"> <block type="math_arithmetic" id="OYk4;y5{czDP`m+gzp#x"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id=":Pt%sy);(Elj}B;/,1ix"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="8iVOD?ge5zEWtZNYR)Xa"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="-WhQ].ljU?y50Tw:4K8c"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="=SDY/u1Y#~]_%{#8u2q?"> <field name="TEXT"> </field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="}zdvVy2;C-Jy`,}Gyhxv"> <field name="NUM">1</field> </shadow> </value> </block> </value> <value name="AT2"> <block type="math_arithmetic" id="SH2qw5Y([Kz61GRYELOb"> <field name="OP">MINUS</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id=":Pt%sy);(Elj}B;/,1ix"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="?4FxA-!N!j0aWW@J,Wve"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="$Vqh@pd:79t{ag0649QW"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="frF5wE;Uu[cV+_/+]y;/"> <field name="TEXT">sprich mir nach</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="46zj.O5@$,TNr[sKB%Wy"> <field name="NUM">2</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="control_ex" id="q[?Nl1:K==I([B.*/V-P"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="fwZLrtqkG5Ro2sbRcbdL"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="@xW-c8RyZ5h0X3GYi4.P"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="|S=qk$b:/3?~qcY-(2EM"> <field name="TEXT">alexa2.0.Echo-Devices.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="ea_4IeR.Q)N4r[_RP|Cs"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(">Echo_Start_Seriennummer</field> </block> </value> <value name="ADD2"> <block type="text" id="`(L|`[_t{P%B;|7G+$1A"> <field name="TEXT">.Commands.textCommand</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="4Q-~O)0Tq3Bl0SL#OKOU"> <field name="BOOL">TRUE</field> </shadow> <block type="text" id="S,F(I`H_YDTUMA]h,Md)"> <field name="TEXT">stopp</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="tE.$Aa1u#o~)EemNkhQS"> <field name="NUM">0</field> </shadow> </value> <next> <block type="variables_set" id="adlf:C2Y5g{K6^P5+p7i"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u">zu_sprechender_Text</field> <value name="VALUE"> <block type="procedures_callcustomreturn" id="Xw!a{`OOvc0N7/rc=Kw."> <mutation name="Satzzeichen_umwandeln"> <arg name="TextMitSZ"></arg> </mutation> <value name="ARG0"> <block type="text_getSubstring" id="%B5?NrR/^@Yo,^V+%OhP" inline="false"> <mutation at1="true" at2="false"></mutation> <field name="WHERE1">FROM_START</field> <field name="WHERE2">LAST</field> <value name="STRING"> <block type="on_source" id="h4oo,nxxHz=.G-i*N{ji"> <field name="ATTR">state.val</field> </block> </value> <value name="AT1"> <block type="math_arithmetic" id=")%)x6|Y|YNte:#s,[#k6"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id=":Pt%sy);(Elj}B;/,1ix"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id=",|z]4aSUy?sDT,c1AvJL"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="=E588TF4q|%PEqde4dNC"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="gG59_T:atKMo)MfX?b8R"> <field name="TEXT">sprich mir nach</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="~hv6Rq;ZlwM/_wQTUG?3"> <field name="NUM">16</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="n84}S|~^Si#I(rvieSD$"> <field name="VAR" id="!5j6XLhoQm_S9B.5BB`=">Pause</field> <value name="VALUE"> <block type="math_arithmetic" id="nWf(m+xLHeZfbk0|o$}("> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="sGlKFjcrPC{PM,G,Yu1T"> <field name="NUM">1</field> </shadow> <block type="text_length" id="3GBB.wJ_eOoU3~,u|sbW"> <value name="VALUE"> <shadow type="text"> <field name="TEXT"></field> </shadow> <block type="variables_get" id=")iO?hn.aeX,Cf.rZ6kk_"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u">zu_sprechender_Text</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="4O*Yl6^{J?Q0)U-DT^K_"> <field name="NUM">80</field> </shadow> </value> </block> </value> <next> <block type="controls_forEach" id="~KP4iuN[;V#LrB5hF7r%"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr.">i</field> <value name="LIST"> <block type="selector" id="x{9_a!8.pV[pT.lfZ+y("> <field name="TEXT">channel[state.id=alexa2.0.Echo-Devices.*.Commands.speak]</field> </block> </value> <statement name="DO"> <block type="variables_set" id="?`6.%GbF+xM6c65S;*rU"> <field name="VAR" id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</field> <value name="VALUE"> <block type="text_join" id="__9$io,!tWsl@yWr:[CY"> <mutation items="1"></mutation> <value name="ADD0"> <block type="text_getSubstring" id="SC!fZKZLN%[aq:yR4;,#" inline="false"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id="H^g(b~ln]Jl.,;u0SQS$"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr.">i</field> </block> </value> <value name="AT2"> <block type="text_indexOf" id="wpDPI=,hr4^j6zp)~#[S"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="qWxeYwC,R[F:ieS37e|R"> <field name="VAR" id="@v/?ezVeiXzj^,$=!Nr.">i</field> </block> </value> <value name="FIND"> <shadow type="text" id="lRA]|dZrb!GE!y@3!HNV"> <field name="TEXT">.Commands</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="gC,0gBJchG`P+#Kh`,No"> <field name="VAR" id="#o|;Mx(pH:s{+-*%Vpai">Echo_gefunden_Name</field> <value name="VALUE"> <block type="get_value_var" id="OhB)P~;POJ*k)(AW;QVk"> <field name="ATTR">val</field> <value name="OID"> <shadow type="text" id="0DTEXt$;]]WC$bG~2ujA"> <field name="TEXT"></field> </shadow> <block type="text_join" id="!`sU}fMZEh=e=Mqzn:iF"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="~}@;L`@qv#SP4-HMORc7"> <field name="VAR" id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</field> </block> </value> <value name="ADD1"> <block type="text" id="I)T]Gqf/|]jCQ$EXKx%Q"> <field name="TEXT">Info.name</field> </block> </value> </block> </value> </block> </value> <next> <block type="controls_if" id="?dS]Aqv?To%$v;FOb}XF"> <value name="IF0"> <block type="logic_compare" id="gx?L{$0hx671N19w%h-v" inline="false"> <field name="OP">GT</field> <value name="A"> <block type="text_indexOf" id="cg$1M$n)@c)_-yaKbepd" inline="false"> <field name="END">FIRST</field> <value name="VALUE"> <block type="text_changeCase" id="M^i|re|4t%J[wCHb=~`~"> <field name="CASE">LOWERCASE</field> <value name="TEXT"> <shadow type="text" id="E$%!K/)i0)rK3*Q0Hxb]"> <field name="TEXT">abc</field> </shadow> <block type="variables_get" id="slZBP^Eql;wPI+JCK|DX"> <field name="VAR" id="#o|;Mx(pH:s{+-*%Vpai">Echo_gefunden_Name</field> </block> </value> </block> </value> <value name="FIND"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text"> <field name="TEXT">abc</field> </shadow> <block type="variables_get" id="gy5Hp#t0_^q%dW~8?OUm"> <field name="VAR" id="xci3X!4nlXF:sZ?64H_G">Echo_Ziel_Name</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="CLAXj`4?pj-iu!rJdN7H"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="X_eFO|_!K{Z=`uA|g?gg"> <field name="VAR" id=";F.(K|mb2VDLFz4584#t">Echo_Ziel_gefunden</field> <value name="VALUE"> <block type="logic_boolean" id=".Y+:m}scy[LgZ[!hE9TD"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="controls_if" id="iMeDg7sjZ@+H2vhU|IKm"> <value name="IF0"> <block type="get_value_var" id=":)lR7cXoiwSL]oxeIO-O"> <field name="ATTR">val</field> <value name="OID"> <shadow type="text" id="EiRfCY8xESJWxx|+E.kS"> <field name="TEXT"></field> </shadow> <block type="text_join" id="J_nt)3naa(c=6.+uvUV!"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id=",wLR_G%(MoOg40ggT+Vj"> <field name="VAR" id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</field> </block> </value> <value name="ADD1"> <block type="text" id="mn8KN)LOB[p|b9yFoSim"> <field name="TEXT">Player.currentState</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control_ex" id="+CH,}HeoL!aYZ8bkbwn_"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="em[yglSpre.~n.WvPs-^"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="%=XVR:9DN$a^Na0tJW09"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="x]Wo0B}M)h#r|K1]%+=="> <field name="VAR" id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</field> </block> </value> <value name="ADD1"> <block type="text" id="wL8ZDp+y6n(44FX^;J=?"> <field name="TEXT">Player.controlPause</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="6qcgPn3LFREv3;$vv~_7"> <field name="BOOL">TRUE</field> </shadow> <block type="logic_boolean" id="`Osb%,dhE465q`prS6}M"> <field name="BOOL">TRUE</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="GDQE|ILE}-[,:@unwhin"> <field name="NUM">0</field> </shadow> </value> <next> <block type="control_ex" id="iq.Bhp3CM-8{C:AS6W)="> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="cqF!99y~+JLlD=%nch)v"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="zff5)D9f]ps?@n`/s,YJ"> <field name="VAR" id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</field> </block> </value> <value name="ADD1"> <block type="text" id="/1X}KXBW~h0wSY9!Q_pJ"> <field name="TEXT">Player.controlPlay</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean"> <field name="BOOL">TRUE</field> </shadow> <block type="logic_boolean" id="0(?Dbe6;F/DEtTx|I`w8"> <field name="BOOL">TRUE</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="QV!x39Kvw/P2a(`B?LuR"> <field name="NUM">0</field> </shadow> <block type="variables_get" id="PL@m(d;+Os07R|k:n#,c"> <field name="VAR" id="!5j6XLhoQm_S9B.5BB`=">Pause</field> </block> </value> </block> </next> </block> </statement> <next> <block type="control_ex" id="*llwxZ6RK}X:~Z5?7[,r"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="uNAK6PIeZK|;]vfgJ;W`"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="f0k?y`OSLlS2)V`%;?(#"> <field name="VAR" id="nhP!NL9agVO{Ru1Uv8:U">Echo_Ziel_Basis</field> </block> </value> <value name="ADD1"> <block type="text" id="f224-KDK67fnxyYJ6u1}"> <field name="TEXT">Commands.speak</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="7vGB/=SUs$N/DMY-ii/]"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="V[r9nHLsYhML~$jPS4;+"> <field name="VAR" id="b7aB$`+O!Gi*`TEysg7u">zu_sprechender_Text</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="=Jm~obL@is|,BRM5WXR0"> <field name="NUM">0</field> </shadow> </value> <next> <block type="control_ex" id=";R=2ZYO)jam:::@XHRTJ"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="T=[+A(IHk)gY{7|!P}@v"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="|SU7`2PI^@iqU@}AFf)`"> <field name="TEXT">alexa2.0.Echo-Devices.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="TP7E$wis1|L3p`VgF5s5"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(">Echo_Start_Seriennummer</field> </block> </value> <value name="ADD2"> <block type="text" id="iy#K263579DUizP)33Ge"> <field name="TEXT">.Commands.speak</field> </block> </value> </block> </value> <value name="VALUE"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean"> <field name="BOOL">TRUE</field> </shadow> <block type="text" id="hu}1v+tW,2fO{!{X8GLB"> <field name="TEXT">Ok.</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="V,6o%i.n6mgjGW_2ibuy"> <field name="NUM">0</field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> <next> <block type="controls_if" id="@)6`d%HOeQoURRp47|_G"> <value name="IF0"> <block type="logic_compare" id="Yje$.F.Jlq/t1K;9l[$n"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="^uBH}_uskN;+KRf84B=s"> <field name="VAR" id=";F.(K|mb2VDLFz4584#t">Echo_Ziel_gefunden</field> </block> </value> <value name="B"> <block type="logic_boolean" id="qOs29yEpuK7fK)3Iq,D{"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control_ex" id="Qmpb4$v80:TPOU,QF.)i"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="fwZLrtqkG5Ro2sbRcbdL"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="B/T;uwvUx:AZg.Tv1Z}K"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="OwO=9`U#05m*KZx_XnYp"> <field name="TEXT">alexa2.0.Echo-Devices.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="=dGXbqL38jYJq-XBQln@"> <field name="VAR" id="C2wE+cVgznP#j}r/`dl(">Echo_Start_Seriennummer</field> </block> </value> <value name="ADD2"> <block type="text" id=")pilr%swl1]zwp3u0.Xr"> <field name="TEXT">.Commands.speak</field> </block> </value> </block> </value> <value name="VALUE"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="4Q-~O)0Tq3Bl0SL#OKOU"> <field name="BOOL">TRUE</field> </shadow> <block type="text_join" id="^qxx:S%f7udQi/U+mlSx"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="{(*_9a$/z_*v{I5#;CyB"> <field name="TEXT">Leider konnte ich kein Gerät mit dem Namen "</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="Q5JW`W_e^KvL~A?S;)7E"> <field name="VAR" id="xci3X!4nlXF:sZ?64H_G">Echo_Ziel_Name</field> </block> </value> <value name="ADD2"> <block type="text" id="A1V#RQX}(d^kRXxOTaFA"> <field name="TEXT">" finden.</field> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="aMJx=]mX7et4[PcXye^*"> <field name="NUM">0</field> </shadow> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> <block type="procedures_defcustomreturn" id="[.kLmP/S?e;|npPP7WZN" x="-2287" y="-62"> <mutation statements="false"> <arg name="TextMitSZ" varid="T0YZa/guj,^|n505HM4w"></arg> </mutation> <field name="NAME">Satzzeichen_umwandeln</field> <field name="SCRIPT">bGV0IE9obmVLb21tYXMgPSBUZXh0TWl0U1oucmVwbGFjZSgvIGtvbW1hL2csICJcLCIpOw0KbGV0IE9obmVQdW5rdCA9IE9obmVLb21tYXMucmVwbGFjZSgvIHB1bmt0L2csICJcLiIpOw0KbGV0IE9obmVTWiA9IE9obmVQdW5rdC5yZXBsYWNlKC8gZnJhZ2V6ZWljaGVuL2csICJcPyIpOw0KcmV0dXJuIE9obmVTWjs=</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> </xml>
-
@padrino habs mal importiert bei mir.
Kannst du kurz mal schreiben wie es funktionieren soll? Welche Kommandos muss man geben?Ich habe im Bad einen Echo mit Namen "Bad Echo Dot" und in der Küche einen mit Namen: "Küche Echo Spot".
-
Hi,
z.B.
..., im Bad sprich mir nach raus aus der Dusche komma ich will auch
oder
..., in Küche sprich mir nach habe hunger komma gibt es bald etwas zu essen fragezeichen
-
@padrino Hi, ich habe jetzt meine Echos mal alle nach deinen Vorschlag umbenannt, also Echo Küche, Echo Bad, Echo Wohnzimmer ...
Ich sage im Bad: Alexa, auf Echo Küche sprich mir nach: XYZAlso nach dem Muster: Aktivierungswort, ZielEchoName, Sprich mir nach Befehl: mein Text.
Ist das so angedacht?
-
@accu said in [Blockly] Skript für "Sprich mir nach" auf beliebigem Echo:
@padrino Hi, ich habe jetzt meine Echos mal alle nach deinen Vorschlag umbenannt,
Wieso umbenannt und welcher Vorschlag?
Das Skript is eigentlich so gestalltet, dass es sich der Konfiguration des Anwenders anpasst und nicht umgekehrt.Ich sage im Bad: Alexa, auf Echo Küche sprich mir nach: XYZ
Also nach dem Muster: Aktivierungswort, ZielEchoName, Sprich mir nach Befehl: mein Text.
Ist das so angedacht?
Ja, schon, wobei du brauchst nur einen unterscheidbaren Teil des Namens zu sagen.
Also, wenn Du z.B. "Echo Küche" und "Echo Bad" hast, dann brauchst Du nur sagen "..., auf bad/küche sprich mir nach dein Text".
Würdest Du sageb "..., auf Echo sprich mir nach test", dann würde es auf "Echo Küche" und "Echo Bad" ausgegeben - oder sollte es zumindest.Falls ich irgendetwas mißverständlich dargestellt habe, sag mir bitte wo genau, damit ich das fixen kann.
-
@padrino funktioniert jetzt alles top. Was jetzt noch super wäre, wenn man auch die Alexa von der Alexa App am Telefon dazu bringen kann "nachzusprechen" bzw. sie dazu bringen könnte dass sie Sätze auf anderen Echos sagen lässt.
-
@accu
also, das sollte eigentlich tun.
Wenn ich in der App sage "in Küche sprich mir nach das ist ein Test", dann plaudert der Echo in der Küche los.
Was nicht geht, dass ich von einem Echo das Handy plappern lasse, das liegt allerdings an amazon und/oder dem Alexa2 Adapter, denn dieser bietet leider nicht die Möglichkeit Text auf dem Handy auszugeben...Übrigens, wenn Du zufrieden bist, nehm ich gerne auch ein "like" im ersten Beitrag.
-
@padrino leider nein. Bleibt still
-
Hmm, kurz nochmal getestet.... grübel... könnte sein...
Sag mal nicht "Alexa, blabla..." sondern drück den "Alexa" button und sag "blabla"...
Ersteres scheint nicht zu klappen, zweiteres, aber schon.Nachtrag: wie vermutet, das Aktivierungswort wird wohl nicht, wie normal, gefiltert, wenn man auf dem Handy "Alexa" (etc.) sagt, muss ich @apollon77 mal dazu befragen.
-
@padrino Es wird das Wakeword des Gerätes gefiltert was eingestellt ist. Da die Apps aber gerade ausgenommen sind kann er da kein Wakeword ermitteln und daher wird auch nichts gefiltert
-
@apollon77
Ok, Wakeword für die App kann ja nicht geändert werden und ist immer Alexa.
Dachte das würde immer gefiltert.