@ralf sagte in Keine Ansage vom Blockly mehr über Alexa? :
Nu weis ich nicht weiter
Probiere das mal. Bei mir wird alles angelegt und auch in IOT eingefügt. Danach erstellst Du Deine Routine neu.
Zum DP anlegen über dieses Blockly muß das hier im Javascript Adapter erlaubt sein.
Den Installationsort kannst Du javascript.x (x=Instanznummer) oder 0_userdata.0 eintragen. Den Pfad bestimmst Du auch selbst.
Hier z.B. unter javascript.0
IOT ist dann auch da (SpartNamen trägst Du im Blockly ein.
Blockly Export
<xml xmlns="https://developers.google.com/blockly/xml">
<variables>
<variable id="F~us1B[+$*iQFrv~91aG">anlegen_in</variable>
<variable id="HWvQnVk_?e;,KYNe#CW|">Pfad</variable>
<variable id=")ShCNJdILU$%oDW)!JTD">Triggerdatenpunkt</variable>
<variable id="H02(PYzlPlXqEfz%xzZ:">Geraetename</variable>
<variable id="~8$)Lh#;!KiqzKw-]#t#">SmartName</variable>
<variable id="fP0L+%YJ6$80O(7`i}))">Ansage</variable>
<variable type="timeout" id="timeout">timeout</variable>
</variables>
<block type="procedures_defcustomnoreturn" id="eZsGA^2r{c%G,YpuLp]K" x="37" y="-1163">
<mutation statements="false"></mutation>
<field name="NAME">Datenpunkte_anlegen</field>
<field name="SCRIPT">LyoqCiAqIENyZWF0ZSBzdGF0ZXMgdW5kZXIgMF91c2VyZGF0YS4wIG9yIGphdmFzY3JpcHQueAogKiBDdXJyZW50IFZlcnNpb246ICAgICBodHRwczovL2dpdGh1Yi5jb20vTWljLU0vaW9icm9rZXIuY3JlYXRlVXNlclN0YXRlcwogKiBTdXBwb3J0OiAgICAgICAgICAgICBodHRwczovL2ZvcnVtLmlvYnJva2VyLm5ldC90b3BpYy8yNjgzOS8KICogQXV0b3I6ICAgICAgICAgICAgICAgTWljIChpb0Jyb2tlcikgfCBNaWMtTSAoZ2l0aHViKQogKiBWZXJzaW9uOiAgICAgICAgICAgICAxLjIgKDIwIE9jdG9iZXIgMjAyMCkKICogRXhhbXBsZTogICAgICAgICAgICAgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWMtTS9pb2Jyb2tlci5jcmVhdGVVc2VyU3RhdGVzI2JlaXNwaWVsCiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqIFBMRUFTRSBOT1RFOiBQZXIgaHR0cHM6Ly9naXRodWIuY29tL2lvQnJva2VyL2lvQnJva2VyLmphdmFzY3JpcHQvaXNzdWVzLzQ3NCwgdGhlIHVzZWQgZnVuY3Rpb24gc2V0T2JqZWN0KCkgCiAqICAgICAgICAgICAgICBleGVjdXRlcyB0aGUgY2FsbGJhY2sgUFJJT1IgdG8gY29tcGxldGluZyB0aGUgc3RhdGUgY3JlYXRpb24uIFRoZXJlZm9yZSwgd2UgdXNlIGEgc2V0VGltZW91dCBhbmQgY291bnRlci4gCiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqIEBwYXJhbSB7c3RyaW5nfSB3aGVyZSAgICAgICAgICBXaGVyZSB0byBjcmVhdGUgdGhlIHN0YXRlOiAnMF91c2VyZGF0YS4wJyBvciAnamF2YXNjcmlwdC54Jy4KICogQHBhcmFtIHtib29sZWFufSBmb3JjZSAgICAgICAgIEZvcmNlIHN0YXRlIGNyZWF0aW9uIChvdmVyd3JpdGUpLCBpZiBzdGF0ZSBpcyBleGlzdGluZy4KICogQHBhcmFtIHthcnJheX0gc3RhdGVzVG9DcmVhdGUgIFN0YXRlKHMpIHRvIGNyZWF0ZS4gc2luZ2xlIGFycmF5IG9yIGFycmF5IG9mIGFycmF5cwogKiBAcGFyYW0ge29iamVjdH0gW2NhbGxiYWNrXSAgICAgT3B0aW9uYWw6IGEgY2FsbGJhY2sgZnVuY3Rpb24gLS0gVGhpcyBwcm92aWRlZCBmdW5jdGlvbiB3aWxsIGJlIGV4ZWN1dGVkIGFmdGVyIGFsbCBzdGF0ZXMgYXJlIGNyZWF0ZWQuCiAqLwpmdW5jdGlvbiBjcmVhdGVVc2VyU3RhdGVzKHdoZXJlLCBmb3JjZSwgc3RhdGVzVG9DcmVhdGUsIGNhbGxiYWNrID0gdW5kZWZpbmVkKSB7CiAKICAgIGNvbnN0IFdBUk4gPSBmYWxzZTsgLy8gT25seSBmb3IgMF91c2VyZGF0YS4wOiBUaHJvd3Mgd2FybmluZyBpbiBsb2csIGlmIHN0YXRlIGlzIGFscmVhZHkgZXhpc3RpbmcgYW5kIGZvcmNlPWZhbHNlLiBEZWZhdWx0IGlzIGZhbHNlLCBzbyBubyB3YXJuaW5nIGluIGxvZywgaWYgc3RhdGUgZXhpc3RzLgogICAgY29uc3QgTE9HX0RFQlVHID0gZmFsc2U7IC8vIFRvIGRlYnVnIHRoaXMgZnVuY3Rpb24sIHNldCB0byB0cnVlCiAgICAvLyBQZXIgaXNzdWUgIzQ3NCAoaHR0cHM6Ly9naXRodWIuY29tL2lvQnJva2VyL2lvQnJva2VyLmphdmFzY3JpcHQvaXNzdWVzLzQ3NCksIHRoZSB1c2VkIGZ1bmN0aW9uIHNldE9iamVjdCgpIGV4ZWN1dGVzIHRoZSBjYWxsYmFjayAKICAgIC8vIGJlZm9yZSB0aGUgc3RhdGUgaXMgYWN0dWFsIGNyZWF0ZWQuIFRoZXJlZm9yZSwgd2UgdXNlIGEgc2V0VGltZW91dCBhbmQgY291bnRlciBhcyBhIHdvcmthcm91bmQuCiAgICBjb25zdCBERUxBWSA9IDUwOyAvLyBEZWxheSBpbiBtaWxsaXNlY29uZHMgKG1zKS4gSW5jcmVhc2UgdGhpcyB0byAxMDAsIGlmIGl0IGlzIG5vdCB3b3JraW5nLgoKICAgIC8vIFZhbGlkYXRlICJ3aGVyZSIKICAgIGlmICh3aGVyZS5lbmRzV2l0aCgnLicpKSB3aGVyZSA9IHdoZXJlLnNsaWNlKDAsIC0xKTsgLy8gUmVtb3ZlIHRyYWlsaW5nIGRvdAogICAgaWYgKCAod2hlcmUubWF0Y2goL14oKGphdmFzY3JpcHRcLihbMS05XVswLTldfFswLTldKSkkfDBfdXNlcmRhdGFcLjAkKS8pID09IG51bGwpICkgewogICAgICAgIGxvZygnVGhpcyBzY3JpcHQgZG9lcyBub3Qgc3VwcG9ydCB0byBjcmVhdGUgc3RhdGVzIHVuZGVyIFsnICsgd2hlcmUgKyAnXScsICdlcnJvcicpOwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICAvLyBQcmVwYXJlICJzdGF0ZXNUb0NyZWF0ZSIgc2luY2Ugd2UgYWxzbyBhbGxvdyBhIHNpbmdsZSBzdGF0ZSB0byBjcmVhdGUKICAgIGlmKCFBcnJheS5pc0FycmF5KHN0YXRlc1RvQ3JlYXRlWzBdKSkgc3RhdGVzVG9DcmVhdGUgPSBbc3RhdGVzVG9DcmVhdGVdOyAvLyB3cmFwIGludG8gYXJyYXksIGlmIGp1c3Qgb25lIGFycmF5IGFuZCBub3QgaW5zaWRlIGFuIGFycmF5CgogICAgLy8gQWRkICJ3aGVyZSIgdG8gU1RBVEVTX1RPX0NSRUFURQogICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdGF0ZXNUb0NyZWF0ZS5sZW5ndGg7IGkrKykgewogICAgICAgIGxldCBscFBhdGggPSBzdGF0ZXNUb0NyZWF0ZVtpXVswXS5yZXBsYWNlKC9cLipcLi9nLCAnLicpOyAvLyByZXBsYWNlIGFsbCBtdWx0aXBsZSBkb3RzIGxpa2UgJy4uJywgJy4uLicgd2l0aCBhIHNpbmdsZSAnLicKICAgICAgICBscFBhdGggPSBscFBhdGgucmVwbGFjZSgvXigoamF2YXNjcmlwdFwuKFsxLTldWzAtOV18WzAtOV0pXC4pfDBfdXNlcmRhdGFcLjBcLikvLCcnKSAvLyByZW1vdmUgYW55IGphdmFzY3JpcHQueC4gLyAwX3VzZXJkYXRhLjAuIGZyb20gYmVnaW5uaW5nCiAgICAgICAgbHBQYXRoID0gd2hlcmUgKyAnLicgKyBscFBhdGg7IC8vIGFkZCB3aGVyZSB0byBiZWdpbm5pbmcgb2Ygc3RyaW5nCiAgICAgICAgc3RhdGVzVG9DcmVhdGVbaV1bMF0gPSBscFBhdGg7CiAgICB9CgogICAgaWYgKHdoZXJlICE9ICcwX3VzZXJkYXRhLjAnKSB7CiAgICAgICAgLy8gQ3JlYXRlIFN0YXRlcyB1bmRlciBqYXZhc2NyaXB0LngKICAgICAgICBsZXQgbnVtU3RhdGVzID0gc3RhdGVzVG9DcmVhdGUubGVuZ3RoOwogICAgICAgIHN0YXRlc1RvQ3JlYXRlLmZvckVhY2goZnVuY3Rpb24obG9vcFBhcmFtKSB7CiAgICAgICAgICAgIGlmIChMT0dfREVCVUcpIGxvZygnW0RlYnVnXSBOb3cgd2UgYXJlIGNyZWF0aW5nIG5ldyBzdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddJyk7CiAgICAgICAgICAgIGxldCBsb29wSW5pdCA9IChsb29wUGFyYW1bMV1bJ2RlZiddID09IHVuZGVmaW5lZCkgPyBudWxsIDogbG9vcFBhcmFtWzFdWydkZWYnXTsgLy8gbWltaWMgc2FtZSBiZWhhdmlvciBhcyBjcmVhdGVTdGF0ZSBpZiBubyBpbml0IHZhbHVlIGlzIHByb3ZpZGVkCiAgICAgICAgICAgIGNyZWF0ZVN0YXRlKGxvb3BQYXJhbVswXSwgbG9vcEluaXQsIGZvcmNlLCBsb29wUGFyYW1bMV0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbnVtU3RhdGVzLS07CiAgICAgICAgICAgICAgICBpZiAobnVtU3RhdGVzID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFsbCBzdGF0ZXMgcHJvY2Vzc2VkLicpOwogICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIHsgLy8gZXhlY3V0ZSBpZiBhIGZ1bmN0aW9uIHdhcyBwcm92aWRlZCB0byBwYXJhbWV0ZXIgY2FsbGJhY2sKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEZ1bmN0aW9uIHRvIGNhbGxiYWNrIHBhcmFtZXRlciB3YXMgcHJvdmlkZWQnKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICB9IGVsc2UgewogICAgICAgIC8vIENyZWF0ZSBTdGF0ZXMgdW5kZXIgMF91c2VyZGF0YS4wCiAgICAgICAgbGV0IG51bVN0YXRlcyA9IHN0YXRlc1RvQ3JlYXRlLmxlbmd0aDsKICAgICAgICBsZXQgY291bnRlciA9IC0xOwogICAgICAgIHN0YXRlc1RvQ3JlYXRlLmZvckVhY2goZnVuY3Rpb24obG9vcFBhcmFtKSB7CiAgICAgICAgICAgIGNvdW50ZXIgKz0gMTsKICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nICgnW0RlYnVnXSBDdXJyZW50bHkgcHJvY2Vzc2luZyBmb2xsb3dpbmcgc3RhdGU6IFsnICsgbG9vcFBhcmFtWzBdICsgJ10nKTsKICAgICAgICAgICAgaWYoICgkKGxvb3BQYXJhbVswXSkubGVuZ3RoID4gMCkgJiYgKGV4aXN0c1N0YXRlKGxvb3BQYXJhbVswXSkpICkgeyAvLyBXb3JrYXJvdW5kIGR1ZSB0byBodHRwczovL2dpdGh1Yi5jb20vaW9Ccm9rZXIvaW9Ccm9rZXIuamF2YXNjcmlwdC9pc3N1ZXMvNDc4CiAgICAgICAgICAgICAgICAvLyBTdGF0ZSBpcyBleGlzdGluZy4KICAgICAgICAgICAgICAgIGlmIChXQVJOICYmICFmb3JjZSkgbG9nKCdTdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddIGlzIGFscmVhZHkgZXhpc3RpbmcgYW5kIHdpbGwgbm8gbG9uZ2VyIGJlIGNyZWF0ZWQuJywgJ3dhcm4nKTsKICAgICAgICAgICAgICAgIGlmICghV0FSTiAmJiBMT0dfREVCVUcpIGxvZygnW0RlYnVnXSBTdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddIGlzIGFscmVhZHkgZXhpc3RpbmcuIE9wdGlvbiBmb3JjZSAoPW92ZXJ3cml0ZSkgaXMgc2V0IHRvIFsnICsgZm9yY2UgKyAnXS4nKTsKICAgICAgICAgICAgICAgIGlmKCFmb3JjZSkgewogICAgICAgICAgICAgICAgICAgIC8vIFN0YXRlIGV4aXN0cyBhbmQgc2hhbGwgbm90IGJlIG92ZXJ3cml0dGVuIHNpbmNlIGZvcmNlPWZhbHNlCiAgICAgICAgICAgICAgICAgICAgLy8gU28sIHdlIGRvIG5vdCBwcm9jZWVkLgogICAgICAgICAgICAgICAgICAgIG51bVN0YXRlcy0tOwogICAgICAgICAgICAgICAgICAgIGlmIChudW1TdGF0ZXMgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFsbCBzdGF0ZXMgc3VjY2Vzc2Z1bGx5IHByb2Nlc3NlZCEnKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykgeyAvLyBleGVjdXRlIGlmIGEgZnVuY3Rpb24gd2FzIHByb3ZpZGVkIHRvIHBhcmFtZXRlciBjYWxsYmFjawogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFuIG9wdGlvbmFsIGNhbGxiYWNrIGZ1bmN0aW9uIHdhcyBwcm92aWRlZCwgd2hpY2ggd2UgYXJlIGdvaW5nIHRvIGV4ZWN1dGUgbm93LicpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7ICAvLyBubyBjYWxsYmFjaywgcmV0dXJuIGFueXdheQogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBnbyBvdXQgYW5kIGNvbnRpbnVlIHdpdGggbmV4dCBlbGVtZW50IGluIGxvb3AuCiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTg0NTI5MjAvY29udGludWUtaW4tY3Vyc29yLWZvcmVhY2gKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IC8vIGlmKCFmb3JjZSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgLy8gU3RhdGUgaXMgbm90IGV4aXN0aW5nIG9yIGZvcmNlID0gdHJ1ZSwgc28gd2UgYXJlIGNvbnRpbnVpbmcgdG8gY3JlYXRlIHRoZSBzdGF0ZSB0aHJvdWdoIHNldE9iamVjdCgpLgogICAgICAgICAgICBsZXQgb2JqID0ge307CiAgICAgICAgICAgIG9iai50eXBlID0gJ3N0YXRlJzsKICAgICAgICAgICAgb2JqLm5hdGl2ZSA9IHt9OwogICAgICAgICAgICBvYmouY29tbW9uID0gbG9vcFBhcmFtWzFdOwogICAgICAgICAgICBzZXRPYmplY3QobG9vcFBhcmFtWzBdLCBvYmosIGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICAgICAgICAgIGlmIChlcnIpIHsKICAgICAgICAgICAgICAgICAgICBsb2coJ0Nhbm5vdCB3cml0ZSBvYmplY3QgZm9yIHN0YXRlIFsnICsgbG9vcFBhcmFtWzBdICsgJ106ICcgKyBlcnIpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBpZiAoTE9HX0RFQlVHKSBsb2coJ1tEZWJ1Z10gTm93IHdlIGFyZSBjcmVhdGluZyBuZXcgc3RhdGUgWycgKyBsb29wUGFyYW1bMF0gKyAnXScpCiAgICAgICAgICAgICAgICAgICAgbGV0IGluaXQgPSBudWxsOwogICAgICAgICAgICAgICAgICAgIGlmKGxvb3BQYXJhbVsxXS5kZWYgPT09IHVuZGVmaW5lZCkgewogICAgICAgICAgICAgICAgICAgICAgICBpZihsb29wUGFyYW1bMV0udHlwZSA9PT0gJ251bWJlcicpIGluaXQgPSAwOwogICAgICAgICAgICAgICAgICAgICAgICBpZihsb29wUGFyYW1bMV0udHlwZSA9PT0gJ2Jvb2xlYW4nKSBpbml0ID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKGxvb3BQYXJhbVsxXS50eXBlID09PSAnc3RyaW5nJykgaW5pdCA9ICcnOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGluaXQgPSBsb29wUGFyYW1bMV0uZGVmOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBzZXRTdGF0ZShsb29wUGFyYW1bMF0sIGluaXQsIHRydWUsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIHNldFN0YXRlIGR1cmNoZ2Vmw7xocnQ6ICcgKyBsb29wUGFyYW1bMF0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtU3RhdGVzLS07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobnVtU3RhdGVzID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFsbCBzdGF0ZXMgcHJvY2Vzc2VkLicpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIHsgLy8gZXhlY3V0ZSBpZiBhIGZ1bmN0aW9uIHdhcyBwcm92aWRlZCB0byBwYXJhbWV0ZXIgY2FsbGJhY2sKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEZ1bmN0aW9uIHRvIGNhbGxiYWNrIHBhcmFtZXRlciB3YXMgcHJvdmlkZWQnKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICB9LCBERUxBWSArICgyMCAqIGNvdW50ZXIpICk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgfQp9CgovLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCi8vQW5zYWdlIEJ1dHRvbiBUZW1wZXJhdHVyZW5hbnNhZ2UgYW5sZWdlbgoKbGV0IHN0YXRlc1RvQ3JlYXRlID0gWwogICAgW1BmYWQsIHsnbmFtZSc6IEdlcmFldGVuYW1lLCd0eXBlJzogJ2Jvb2xlYW4nLCAncmVhZCc6IGZhbHNlLCAnd3JpdGUnOiB0cnVlLCAncm9sZSc6ICdidXR0b24nLCdkZWYnOnRydWUsICJzbWFydE5hbWUiOiB7ImRlIjogU21hcnROYW1lLCJzbWFydFR5cGUiOiAiU1dJVENIIn0gfV0sIApdOwpjcmVhdGVVc2VyU3RhdGVzKGFubGVnZW5faW4sdHJ1ZSwgc3RhdGVzVG9DcmVhdGUpOwoKCi8vRnVua3Rpb24gbWFpbiBtaXQgVmVyesO2Z2VydW5nIGF1ZnJ1ZmVuCnRpbWVvdXQgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKICBtYWluKCk7Cn0sIDUwMDApOwovL21haW4oKTs=</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
</block>
<block type="variables_set" id="2$iadS/8MvlZI5+Q8BfU" x="37" y="-1112">
<field name="VAR" id="F~us1B[+$*iQFrv~91aG">anlegen_in</field>
<value name="VALUE">
<block type="text" id=",=P09E1E~iYN;|v}7IMo">
<field name="TEXT">javascript.0</field>
</block>
</value>
<next>
<block type="variables_set" id="FrVz2l;UdnKEfOW{y6Mp">
<field name="VAR" id="HWvQnVk_?e;,KYNe#CW|">Pfad</field>
<value name="VALUE">
<block type="text" id="@$pN)}Cs4xgx[;x=@r=m">
<field name="TEXT">Eigene_Datenpunkte.Alexa_Ansagen.Temperaturansage</field>
</block>
</value>
<next>
<block type="variables_set" id="QM{!lmZn-ik7OhD~+GL_">
<field name="VAR" id="H02(PYzlPlXqEfz%xzZ:">Geraetename</field>
<value name="VALUE">
<block type="text" id="EHQJ|3RtnWTl|f4Hl#Zf">
<field name="TEXT">Alexa Temperaturansage</field>
</block>
</value>
<next>
<block type="variables_set" id="gc}q6`IIhkvJ6r)vU;Mr">
<field name="VAR" id="~8$)Lh#;!KiqzKw-]#t#">SmartName</field>
<value name="VALUE">
<block type="text" id="XO@u,-Y?Ex#TK{`8mF0]">
<field name="TEXT">01Temperaturansage</field>
</block>
</value>
<next>
<block type="procedures_callcustomnoreturn" id="f+9XJgG1]_zqGuR+em@%">
<mutation name="Datenpunkte_anlegen"></mutation>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
<block type="procedures_defnoreturn" id="mJt}Sr/I-Y6hum-vspZ[" x="38" y="-962">
<field name="NAME">main</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
<statement name="STACK">
<block type="variables_set" id="XWV2J0{SCe%t2MW#^%wW">
<field name="VAR" id=")ShCNJdILU$%oDW)!JTD">Triggerdatenpunkt</field>
<value name="VALUE">
<block type="text_join" id="X(06)hm+pQN0+p2t.2MN">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="variables_get" id="l-NC2%);8(%rM_`BR~ks">
<field name="VAR" id="F~us1B[+$*iQFrv~91aG">anlegen_in</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="R$Vdk5#K|(FU:]N.`f_h">
<field name="TEXT">.</field>
</block>
</value>
<value name="ADD2">
<block type="variables_get" id="kcGSLOE/O%zsr{^{khlH">
<field name="VAR" id="HWvQnVk_?e;,KYNe#CW|">Pfad</field>
</block>
</value>
</block>
</value>
<next>
<block type="on_ext" id=";uf=zwP2D$c}%nR-ro3E">
<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="nnM92dE}Jyk3H!R]Gg8p">
<field name="oid">default</field>
</shadow>
<block type="variables_get" id="%urm)MVk{y|EH:.|HH]7">
<field name="VAR" id=")ShCNJdILU$%oDW)!JTD">Triggerdatenpunkt</field>
</block>
</value>
<statement name="STATEMENT">
<block type="comment" id="0CYTjV~E92o-.22CVA?{">
<field name="COMMENT">Leerstelle hinter Garten und vor Grad beachten</field>
<next>
<block type="variables_set" id="uO`xyWvTFjg|xX#r7F~b">
<field name="VAR" id="fP0L+%YJ6$80O(7`i}))">Ansage</field>
<value name="VALUE">
<block type="text_join" id="~I];VI-W]RxVAlbB=/Fk">
<mutation items="5"></mutation>
<value name="ADD0">
<block type="text" id="4b)Y~igzZCb@npFpgY)X">
<field name="TEXT">Moment, ich geh mal kucken. Aktuell ist die Temperatur im Garten</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="U+%iqTtl@9d!phsZ*t8@">
<field name="TEXT"> </field>
</block>
</value>
<value name="ADD2">
<block type="get_value" id="a-0z^vC/6*p)rc^fkXg3">
<field name="ATTR">val</field>
<field name="OID">hm-rpc.2.0010D8A990A344.1.ACTUAL_TEMPERATURE</field>
</block>
</value>
<value name="ADD3">
<block type="text" id="8)98)~kou9ZBXVALgDv(">
<field name="TEXT"> </field>
</block>
</value>
<value name="ADD4">
<block type="text" id="4U6RSx4uipX7;^?cMu4S">
<field name="TEXT">Grad</field>
</block>
</value>
</block>
</value>
<next>
<block type="timeouts_cleartimeout" id="C).bwr|XA_W6t9PY;W``">
<field name="NAME">timeout</field>
<next>
<block type="timeouts_settimeout" id="#e`|uiUhVZ24/q[qDE_b">
<field name="NAME">timeout</field>
<field name="DELAY">500</field>
<field name="UNIT">ms</field>
<statement name="STATEMENT">
<block type="comment" id="_yq2i}3HVo!Uv9tgxDx_">
<field name="COMMENT">Alexa2 Adapter / History</field>
<next>
<block type="comment" id="_amxz6B=9F}_2uEGsK}`">
<field name="COMMENT">Kinderzimmer</field>
<next>
<block type="controls_if" id=".n7JtGwDJDGfaeyl!8*B">
<value name="IF0">
<block type="logic_compare" id="PB!#`4nSj^|+L!hG+vV,">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="x.y##PRU2o?1_JwX?dv%">
<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">Kinderzimmer</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="/nC7//u.)?4gl#ATOdb6">
<field name="COMMENT">Alexa2 Adapter / Echo-Devices / Kinderzimmer / Commands / ssml</field>
<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.G090U50990760US4.Commands.speak</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="variables_get" id="oc2kkQGu]Cq^o;R0u^SS">
<field name="VAR" id="fP0L+%YJ6$80O(7`i}))">Ansage</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="comment" id="c][apE[1G{#1_],HwEOK">
<field name="COMMENT">Esszimmer</field>
<next>
<block type="controls_if" id="/jD`RK@F#5GJ,so/Y*uD">
<value name="IF0">
<block type="logic_compare" id="vioj7N:f=_tN.bLI@qs-">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="e^%O/fKI?+!qX3+;(S;f">
<field name="ATTR">val</field>
<field name="OID">alexa2.0.History.name</field>
</block>
</value>
<value name="B">
<block type="text" id="nr*2bC[aF^NJ}eo^rtXP">
<field name="TEXT">Esszimmer</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="=cOc^-;V!+2n3G|xq_gE">
<field name="COMMENT">Alexa2 Adapter / Echo-Devices / Esszimmer / Commands / ssml</field>
<next>
<block type="control" id="%Ou2i3PrLv@)wy4mfcTr">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">alexa2.0.Echo-Devices.G0916D099492059U.Commands.speak</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="variables_get" id="oU%v95Sdet^%-T(nfpa3">
<field name="VAR" id="fP0L+%YJ6$80O(7`i}))">Ansage</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="comment" id="SbI09DQT7}=KjO5Y]C,6">
<field name="COMMENT">Küche</field>
<next>
<block type="controls_if" id="!/gvjM[J:/apT-uG_)V{">
<value name="IF0">
<block type="logic_compare" id="O[evUwqB,oNLz#XCMWR*">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="PVOgLg,k/+3BR-~q:_Ix">
<field name="ATTR">val</field>
<field name="OID">alexa2.0.History.name</field>
</block>
</value>
<value name="B">
<block type="text" id="BYqRr([mR5HMAY2P?7y*">
<field name="TEXT">Küche</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="ku:96COhF@LTnLR#N=v1">
<field name="COMMENT">Alexa2 Adapter / Echo-Devices / Küche / Commands / ssml</field>
<next>
<block type="control" id="LxO_VtiM(e4v`wc{;HQ{">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">alexa2.0.Echo-Devices.G091ET10105309N2.Commands.speak</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="variables_get" id="S+(-5|4T:yFp[leKBJEj">
<field name="VAR" id="fP0L+%YJ6$80O(7`i}))">Ansage</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="comment" id="daXs?LyMF*2OO@LSlQQ`">
<field name="COMMENT">Schlafzimmer</field>
<next>
<block type="controls_if" id="fkYCfFs9JG%MY0mJP3RX">
<value name="IF0">
<block type="logic_compare" id="fhqQIKM%kUscsup*.|/D">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="LB2uvFoM8pX)ni1.o=rj">
<field name="ATTR">val</field>
<field name="OID">alexa2.0.History.name</field>
</block>
</value>
<value name="B">
<block type="text" id="4D!m]8#Y`tUuAfX9L10|">
<field name="TEXT">Schlafzimmer</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="|oBKZ9:;w*/vGzS2drie">
<field name="COMMENT">Alexa2 Adapter / Echo-Devices / Schlafzimmer / Commands / ssml</field>
<next>
<block type="control" id="+;ZMD3_Ta7s/@6sg!.6G">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">alexa2.0.Echo-Devices.G090U50984763A4X.Commands.speak</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="variables_get" id="sK}ku|yS*+DjeV?vh-.v">
<field name="VAR" id="fP0L+%YJ6$80O(7`i}))">Ansage</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="comment" id="WsE/(Q0~pQxzl8$?NDp*">
<field name="COMMENT">Keller</field>
<next>
<block type="controls_if" id="[_x.k-40dEUU~w)[(kx(">
<value name="IF0">
<block type="logic_compare" id="~k]}opd=D7ohotqVFv2V">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="JTbD%-usLblmryL6Acz=">
<field name="ATTR">val</field>
<field name="OID">alexa2.0.History.name</field>
</block>
</value>
<value name="B">
<block type="text" id="=zVN}}0-ollPHgmGBFmm">
<field name="TEXT">Keller</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="SM]USv#={5(^C.RY?Q-O">
<field name="COMMENT">Alexa2 Adapter / Echo-Devices / Keller / Commands / ssml</field>
<next>
<block type="control" id=":YrVz6aQr-d(n+FJWW+#">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">alexa2.0.Echo-Devices.90F00718652606EM.Commands.speak</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="variables_get" id=":XZY%mOGkUw~0EIBoD4|">
<field name="VAR" id="fP0L+%YJ6$80O(7`i}))">Ansage</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="comment" id="F/y)=za,;/m+=l.vaN-@">
<field name="COMMENT">Garage</field>
<next>
<block type="controls_if" id="k=U_B!B*crU%PtK/1msx">
<value name="IF0">
<block type="logic_compare" id="AH{0/Ym=Ty*nJU!NW]0a">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="e.Su5t]FMoszU4@4mI*N">
<field name="ATTR">val</field>
<field name="OID">alexa2.0.History.name</field>
</block>
</value>
<value name="B">
<block type="text" id="BC)by{Oa:HW#L)h3V$V}">
<field name="TEXT">Garage</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="P{-MzD/[B7g|=%:ha(*3">
<field name="COMMENT">Alexa2 Adapter / Echo-Devices / Keller / Commands / ssml</field>
<next>
<block type="control" id="0/8|z#sU]eH@q;8jW6jf">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">alexa2.0.Echo-Devices.G090U50783673S84.Commands.speak</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="variables_get" id="S}N-Tu`oK+4l6n}Q)Oxl">
<field name="VAR" id="fP0L+%YJ6$80O(7`i}))">Ansage</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="controls_if" id="bNNSuI?sW_l~d?i0cVF)">
<value name="IF0">
<block type="logic_compare" id="GeqezZ9Tsw9:,uat%GC#">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="{5aR_6ly4E?bOgSf9;xA">
<field name="ATTR">val</field>
<field name="OID">alexa2.0.History.name</field>
</block>
</value>
<value name="B">
<block type="text" id="ZVQL_a#sJ_KaAnhtg[(j">
<field name="TEXT">Gäste WC</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="$(pf^@sPsxBW0}#$y+}:">
<field name="COMMENT">Alexa2 Adapter / Echo-Devices / Gäste WC / Commands / ssml</field>
<next>
<block type="control" id="J;RJcZD^gM^.+-{[nePw">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">alexa2.0.Echo-Devices.G090U50991350GNL.Commands.speak</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="variables_get" id="[q+gjqtEasw,:.ku2,SC">
<field name="VAR" id="fP0L+%YJ6$80O(7`i}))">Ansage</field>
</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>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</statement>
</block>
</xml>
EDIT: Deine Geräte sind in dem Blockly alle noch drinn