x anlegen_in Bezeichnung_Geraet DP_Alexa_Ansage ECHO_Lautstaerke DP_Stunden ECHO_speak_DP DP_Minuten DP_Sekunden DP_Gesamt_Rest timeout Datenpunkte_anlegen LyoqCiAqIENyZWF0ZSBzdGF0ZXMgdW5kZXIgMF91c2VyZGF0YS4wIG9yIGphdmFzY3JpcHQueAogKiBDdXJyZW50IFZlcnNpb246ICAgICBodHRwczovL2dpdGh1Yi5jb20vTWljLU0vaW9icm9rZXIuY3JlYXRlVXNlclN0YXRlcwogKiBTdXBwb3J0OiAgICAgICAgICAgICBodHRwczovL2ZvcnVtLmlvYnJva2VyLm5ldC90b3BpYy8yNjgzOS8KICogQXV0b3I6ICAgICAgICAgICAgICAgTWljIChpb0Jyb2tlcikgfCBNaWMtTSAoZ2l0aHViKQogKiBWZXJzaW9uOiAgICAgICAgICAgICAxLjIgKDIwIE9jdG9iZXIgMjAyMCkKICogRXhhbXBsZTogICAgICAgICAgICAgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWMtTS9pb2Jyb2tlci5jcmVhdGVVc2VyU3RhdGVzI2JlaXNwaWVsCiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqIFBMRUFTRSBOT1RFOiBQZXIgaHR0cHM6Ly9naXRodWIuY29tL2lvQnJva2VyL2lvQnJva2VyLmphdmFzY3JpcHQvaXNzdWVzLzQ3NCwgdGhlIHVzZWQgZnVuY3Rpb24gc2V0T2JqZWN0KCkgCiAqICAgICAgICAgICAgICBleGVjdXRlcyB0aGUgY2FsbGJhY2sgUFJJT1IgdG8gY29tcGxldGluZyB0aGUgc3RhdGUgY3JlYXRpb24uIFRoZXJlZm9yZSwgd2UgdXNlIGEgc2V0VGltZW91dCBhbmQgY291bnRlci4gCiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAqIEBwYXJhbSB7c3RyaW5nfSB3aGVyZSAgICAgICAgICBXaGVyZSB0byBjcmVhdGUgdGhlIHN0YXRlOiAnMF91c2VyZGF0YS4wJyBvciAnamF2YXNjcmlwdC54Jy4KICogQHBhcmFtIHtib29sZWFufSBmb3JjZSAgICAgICAgIEZvcmNlIHN0YXRlIGNyZWF0aW9uIChvdmVyd3JpdGUpLCBpZiBzdGF0ZSBpcyBleGlzdGluZy4KICogQHBhcmFtIHthcnJheX0gc3RhdGVzVG9DcmVhdGUgIFN0YXRlKHMpIHRvIGNyZWF0ZS4gc2luZ2xlIGFycmF5IG9yIGFycmF5IG9mIGFycmF5cwogKiBAcGFyYW0ge29iamVjdH0gW2NhbGxiYWNrXSAgICAgT3B0aW9uYWw6IGEgY2FsbGJhY2sgZnVuY3Rpb24gLS0gVGhpcyBwcm92aWRlZCBmdW5jdGlvbiB3aWxsIGJlIGV4ZWN1dGVkIGFmdGVyIGFsbCBzdGF0ZXMgYXJlIGNyZWF0ZWQuCiAqLwpmdW5jdGlvbiBjcmVhdGVVc2VyU3RhdGVzKHdoZXJlLCBmb3JjZSwgc3RhdGVzVG9DcmVhdGUsIGNhbGxiYWNrID0gdW5kZWZpbmVkKSB7CiAKICAgIGNvbnN0IFdBUk4gPSBmYWxzZTsgLy8gT25seSBmb3IgMF91c2VyZGF0YS4wOiBUaHJvd3Mgd2FybmluZyBpbiBsb2csIGlmIHN0YXRlIGlzIGFscmVhZHkgZXhpc3RpbmcgYW5kIGZvcmNlPWZhbHNlLiBEZWZhdWx0IGlzIGZhbHNlLCBzbyBubyB3YXJuaW5nIGluIGxvZywgaWYgc3RhdGUgZXhpc3RzLgogICAgY29uc3QgTE9HX0RFQlVHID0gZmFsc2U7IC8vIFRvIGRlYnVnIHRoaXMgZnVuY3Rpb24sIHNldCB0byB0cnVlCiAgICAvLyBQZXIgaXNzdWUgIzQ3NCAoaHR0cHM6Ly9naXRodWIuY29tL2lvQnJva2VyL2lvQnJva2VyLmphdmFzY3JpcHQvaXNzdWVzLzQ3NCksIHRoZSB1c2VkIGZ1bmN0aW9uIHNldE9iamVjdCgpIGV4ZWN1dGVzIHRoZSBjYWxsYmFjayAKICAgIC8vIGJlZm9yZSB0aGUgc3RhdGUgaXMgYWN0dWFsIGNyZWF0ZWQuIFRoZXJlZm9yZSwgd2UgdXNlIGEgc2V0VGltZW91dCBhbmQgY291bnRlciBhcyBhIHdvcmthcm91bmQuCiAgICBjb25zdCBERUxBWSA9IDUwOyAvLyBEZWxheSBpbiBtaWxsaXNlY29uZHMgKG1zKS4gSW5jcmVhc2UgdGhpcyB0byAxMDAsIGlmIGl0IGlzIG5vdCB3b3JraW5nLgoKICAgIC8vIFZhbGlkYXRlICJ3aGVyZSIKICAgIGlmICh3aGVyZS5lbmRzV2l0aCgnLicpKSB3aGVyZSA9IHdoZXJlLnNsaWNlKDAsIC0xKTsgLy8gUmVtb3ZlIHRyYWlsaW5nIGRvdAogICAgaWYgKCAod2hlcmUubWF0Y2goL14oKGphdmFzY3JpcHRcLihbMS05XVswLTldfFswLTldKSkkfDBfdXNlcmRhdGFcLjAkKS8pID09IG51bGwpICkgewogICAgICAgIGxvZygnVGhpcyBzY3JpcHQgZG9lcyBub3Qgc3VwcG9ydCB0byBjcmVhdGUgc3RhdGVzIHVuZGVyIFsnICsgd2hlcmUgKyAnXScsICdlcnJvcicpOwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICAvLyBQcmVwYXJlICJzdGF0ZXNUb0NyZWF0ZSIgc2luY2Ugd2UgYWxzbyBhbGxvdyBhIHNpbmdsZSBzdGF0ZSB0byBjcmVhdGUKICAgIGlmKCFBcnJheS5pc0FycmF5KHN0YXRlc1RvQ3JlYXRlWzBdKSkgc3RhdGVzVG9DcmVhdGUgPSBbc3RhdGVzVG9DcmVhdGVdOyAvLyB3cmFwIGludG8gYXJyYXksIGlmIGp1c3Qgb25lIGFycmF5IGFuZCBub3QgaW5zaWRlIGFuIGFycmF5CgogICAgLy8gQWRkICJ3aGVyZSIgdG8gU1RBVEVTX1RPX0NSRUFURQogICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdGF0ZXNUb0NyZWF0ZS5sZW5ndGg7IGkrKykgewogICAgICAgIGxldCBscFBhdGggPSBzdGF0ZXNUb0NyZWF0ZVtpXVswXS5yZXBsYWNlKC9cLipcLi9nLCAnLicpOyAvLyByZXBsYWNlIGFsbCBtdWx0aXBsZSBkb3RzIGxpa2UgJy4uJywgJy4uLicgd2l0aCBhIHNpbmdsZSAnLicKICAgICAgICBscFBhdGggPSBscFBhdGgucmVwbGFjZSgvXigoamF2YXNjcmlwdFwuKFsxLTldWzAtOV18WzAtOV0pXC4pfDBfdXNlcmRhdGFcLjBcLikvLCcnKSAvLyByZW1vdmUgYW55IGphdmFzY3JpcHQueC4gLyAwX3VzZXJkYXRhLjAuIGZyb20gYmVnaW5uaW5nCiAgICAgICAgbHBQYXRoID0gd2hlcmUgKyAnLicgKyBscFBhdGg7IC8vIGFkZCB3aGVyZSB0byBiZWdpbm5pbmcgb2Ygc3RyaW5nCiAgICAgICAgc3RhdGVzVG9DcmVhdGVbaV1bMF0gPSBscFBhdGg7CiAgICB9CgogICAgaWYgKHdoZXJlICE9ICcwX3VzZXJkYXRhLjAnKSB7CiAgICAgICAgLy8gQ3JlYXRlIFN0YXRlcyB1bmRlciBqYXZhc2NyaXB0LngKICAgICAgICBsZXQgbnVtU3RhdGVzID0gc3RhdGVzVG9DcmVhdGUubGVuZ3RoOwogICAgICAgIHN0YXRlc1RvQ3JlYXRlLmZvckVhY2goZnVuY3Rpb24obG9vcFBhcmFtKSB7CiAgICAgICAgICAgIGlmIChMT0dfREVCVUcpIGxvZygnW0RlYnVnXSBOb3cgd2UgYXJlIGNyZWF0aW5nIG5ldyBzdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddJyk7CiAgICAgICAgICAgIGxldCBsb29wSW5pdCA9IChsb29wUGFyYW1bMV1bJ2RlZiddID09IHVuZGVmaW5lZCkgPyBudWxsIDogbG9vcFBhcmFtWzFdWydkZWYnXTsgLy8gbWltaWMgc2FtZSBiZWhhdmlvciBhcyBjcmVhdGVTdGF0ZSBpZiBubyBpbml0IHZhbHVlIGlzIHByb3ZpZGVkCiAgICAgICAgICAgIGNyZWF0ZVN0YXRlKGxvb3BQYXJhbVswXSwgbG9vcEluaXQsIGZvcmNlLCBsb29wUGFyYW1bMV0sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbnVtU3RhdGVzLS07CiAgICAgICAgICAgICAgICBpZiAobnVtU3RhdGVzID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFsbCBzdGF0ZXMgcHJvY2Vzc2VkLicpOwogICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIHsgLy8gZXhlY3V0ZSBpZiBhIGZ1bmN0aW9uIHdhcyBwcm92aWRlZCB0byBwYXJhbWV0ZXIgY2FsbGJhY2sKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEZ1bmN0aW9uIHRvIGNhbGxiYWNrIHBhcmFtZXRlciB3YXMgcHJvdmlkZWQnKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICB9IGVsc2UgewogICAgICAgIC8vIENyZWF0ZSBTdGF0ZXMgdW5kZXIgMF91c2VyZGF0YS4wCiAgICAgICAgbGV0IG51bVN0YXRlcyA9IHN0YXRlc1RvQ3JlYXRlLmxlbmd0aDsKICAgICAgICBsZXQgY291bnRlciA9IC0xOwogICAgICAgIHN0YXRlc1RvQ3JlYXRlLmZvckVhY2goZnVuY3Rpb24obG9vcFBhcmFtKSB7CiAgICAgICAgICAgIGNvdW50ZXIgKz0gMTsKICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nICgnW0RlYnVnXSBDdXJyZW50bHkgcHJvY2Vzc2luZyBmb2xsb3dpbmcgc3RhdGU6IFsnICsgbG9vcFBhcmFtWzBdICsgJ10nKTsKICAgICAgICAgICAgaWYoICgkKGxvb3BQYXJhbVswXSkubGVuZ3RoID4gMCkgJiYgKGV4aXN0c1N0YXRlKGxvb3BQYXJhbVswXSkpICkgeyAvLyBXb3JrYXJvdW5kIGR1ZSB0byBodHRwczovL2dpdGh1Yi5jb20vaW9Ccm9rZXIvaW9Ccm9rZXIuamF2YXNjcmlwdC9pc3N1ZXMvNDc4CiAgICAgICAgICAgICAgICAvLyBTdGF0ZSBpcyBleGlzdGluZy4KICAgICAgICAgICAgICAgIGlmIChXQVJOICYmICFmb3JjZSkgbG9nKCdTdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddIGlzIGFscmVhZHkgZXhpc3RpbmcgYW5kIHdpbGwgbm8gbG9uZ2VyIGJlIGNyZWF0ZWQuJywgJ3dhcm4nKTsKICAgICAgICAgICAgICAgIGlmICghV0FSTiAmJiBMT0dfREVCVUcpIGxvZygnW0RlYnVnXSBTdGF0ZSBbJyArIGxvb3BQYXJhbVswXSArICddIGlzIGFscmVhZHkgZXhpc3RpbmcuIE9wdGlvbiBmb3JjZSAoPW92ZXJ3cml0ZSkgaXMgc2V0IHRvIFsnICsgZm9yY2UgKyAnXS4nKTsKICAgICAgICAgICAgICAgIGlmKCFmb3JjZSkgewogICAgICAgICAgICAgICAgICAgIC8vIFN0YXRlIGV4aXN0cyBhbmQgc2hhbGwgbm90IGJlIG92ZXJ3cml0dGVuIHNpbmNlIGZvcmNlPWZhbHNlCiAgICAgICAgICAgICAgICAgICAgLy8gU28sIHdlIGRvIG5vdCBwcm9jZWVkLgogICAgICAgICAgICAgICAgICAgIG51bVN0YXRlcy0tOwogICAgICAgICAgICAgICAgICAgIGlmIChudW1TdGF0ZXMgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFsbCBzdGF0ZXMgc3VjY2Vzc2Z1bGx5IHByb2Nlc3NlZCEnKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykgeyAvLyBleGVjdXRlIGlmIGEgZnVuY3Rpb24gd2FzIHByb3ZpZGVkIHRvIHBhcmFtZXRlciBjYWxsYmFjawogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFuIG9wdGlvbmFsIGNhbGxiYWNrIGZ1bmN0aW9uIHdhcyBwcm92aWRlZCwgd2hpY2ggd2UgYXJlIGdvaW5nIHRvIGV4ZWN1dGUgbm93LicpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7ICAvLyBubyBjYWxsYmFjaywgcmV0dXJuIGFueXdheQogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBnbyBvdXQgYW5kIGNvbnRpbnVlIHdpdGggbmV4dCBlbGVtZW50IGluIGxvb3AuCiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTg0NTI5MjAvY29udGludWUtaW4tY3Vyc29yLWZvcmVhY2gKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IC8vIGlmKCFmb3JjZSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgLy8gU3RhdGUgaXMgbm90IGV4aXN0aW5nIG9yIGZvcmNlID0gdHJ1ZSwgc28gd2UgYXJlIGNvbnRpbnVpbmcgdG8gY3JlYXRlIHRoZSBzdGF0ZSB0aHJvdWdoIHNldE9iamVjdCgpLgogICAgICAgICAgICBsZXQgb2JqID0ge307CiAgICAgICAgICAgIG9iai50eXBlID0gJ3N0YXRlJzsKICAgICAgICAgICAgb2JqLm5hdGl2ZSA9IHt9OwogICAgICAgICAgICBvYmouY29tbW9uID0gbG9vcFBhcmFtWzFdOwogICAgICAgICAgICBzZXRPYmplY3QobG9vcFBhcmFtWzBdLCBvYmosIGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICAgICAgICAgIGlmIChlcnIpIHsKICAgICAgICAgICAgICAgICAgICBsb2coJ0Nhbm5vdCB3cml0ZSBvYmplY3QgZm9yIHN0YXRlIFsnICsgbG9vcFBhcmFtWzBdICsgJ106ICcgKyBlcnIpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBpZiAoTE9HX0RFQlVHKSBsb2coJ1tEZWJ1Z10gTm93IHdlIGFyZSBjcmVhdGluZyBuZXcgc3RhdGUgWycgKyBsb29wUGFyYW1bMF0gKyAnXScpCiAgICAgICAgICAgICAgICAgICAgbGV0IGluaXQgPSBudWxsOwogICAgICAgICAgICAgICAgICAgIGlmKGxvb3BQYXJhbVsxXS5kZWYgPT09IHVuZGVmaW5lZCkgewogICAgICAgICAgICAgICAgICAgICAgICBpZihsb29wUGFyYW1bMV0udHlwZSA9PT0gJ251bWJlcicpIGluaXQgPSAwOwogICAgICAgICAgICAgICAgICAgICAgICBpZihsb29wUGFyYW1bMV0udHlwZSA9PT0gJ2Jvb2xlYW4nKSBpbml0ID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKGxvb3BQYXJhbVsxXS50eXBlID09PSAnc3RyaW5nJykgaW5pdCA9ICcnOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGluaXQgPSBsb29wUGFyYW1bMV0uZGVmOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBzZXRTdGF0ZShsb29wUGFyYW1bMF0sIGluaXQsIHRydWUsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIHNldFN0YXRlIGR1cmNoZ2Vmw7xocnQ6ICcgKyBsb29wUGFyYW1bMF0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtU3RhdGVzLS07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobnVtU3RhdGVzID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEFsbCBzdGF0ZXMgcHJvY2Vzc2VkLicpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIHsgLy8gZXhlY3V0ZSBpZiBhIGZ1bmN0aW9uIHdhcyBwcm92aWRlZCB0byBwYXJhbWV0ZXIgY2FsbGJhY2sKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKExPR19ERUJVRykgbG9nKCdbRGVidWddIEZ1bmN0aW9uIHRvIGNhbGxiYWNrIHBhcmFtZXRlciB3YXMgcHJvdmlkZWQnKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICB9LCBERUxBWSArICgyMCAqIGNvdW50ZXIpICk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgfQp9CgoKCi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKbGV0IHN0YXRlc1RvQ3JlYXRlID0gWwogICAgWydUaW1lci4nK1tCZXplaWNobnVuZ19HZXJhZXRdKycuMDBfQWxleGFfQW5zYWdlJywgeyduYW1lJzogJ0FsZXhhIEFuc2FnZScsJ3R5cGUnOiAnYm9vbGVhbicsICdyZWFkJzogZmFsc2UsICd3cml0ZSc6IHRydWUsICdyb2xlJzogJ2J1dHRvbid9XSwKICAgIFsnVGltZXIuJytbQmV6ZWljaG51bmdfR2VyYWV0XSsnLjAxX1Jlc3RsYXVmemVpdF9TdHVuZGVuJywgeyduYW1lJzogJ1Jlc3RsYXVmemVpdCBTdHVuZGVuJywndHlwZSc6ICdtaXhlZCcsICdyZWFkJzogdHJ1ZSwgJ3dyaXRlJzogdHJ1ZSwgJ3JvbGUnOiAnbWl4ZWQnLCAndW5pdCc6J2gnLCAnZGVmJzowfV0sIAogICAgWydUaW1lci4nK1tCZXplaWNobnVuZ19HZXJhZXRdKycuMDJfUmVzdGxhdWZ6ZWl0X01pbnV0ZW4nLCB7J25hbWUnOiAnUmVzdGxhdWZ6ZWl0IE1pbnV0ZW4nLCd0eXBlJzogJ21peGVkJywgJ3JlYWQnOiB0cnVlLCAnd3JpdGUnOiB0cnVlLCAncm9sZSc6ICdtaXhlZCcsICd1bml0JzonbWluJywgJ2RlZic6MH1dLCAKICAgIFsnVGltZXIuJytbQmV6ZWljaG51bmdfR2VyYWV0XSsnLjAzX1Jlc3RsYXVmemVpdF9TZWt1bmRlbicsIHsnbmFtZSc6ICdSZXN0bGF1ZnplaXQgU2VrdW5kZW4nLCd0eXBlJzogJ21peGVkJywgJ3JlYWQnOiB0cnVlLCAnd3JpdGUnOiB0cnVlLCAncm9sZSc6ICdtaXhlZCcsICd1bml0Jzonc2VrJywgJ2RlZic6MH1dLCAKICAgIFsnVGltZXIuJytbQmV6ZWljaG51bmdfR2VyYWV0XSsnLjA0X1Jlc3RsYXVmemVpdF9HZXNhbXQnLCB7J25hbWUnOiAnUmVzdGxhdWZ6ZWl0IEdlc2FtdCcsJ3R5cGUnOiAnbWl4ZWQnLCAncmVhZCc6IHRydWUsICd3cml0ZSc6IGZhbHNlLCAncm9sZSc6ICdtaXhlZCcsICdkZWYnOicwMDowMDowMCd9XSwgCl07CmNyZWF0ZVVzZXJTdGF0ZXMoYW5sZWdlbl9pbixmYWxzZSwgc3RhdGVzVG9DcmVhdGUpOwoKLy9GdW5rdGlvbiBtYWluIG1pdCBWZXJ6w7ZnZXJ1bmcgYXVmcnVmZW4KdGltZW91dCA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewogIG1haW4oKTsKfSwgNTAwMCk7Ci8vbWFpbigpOw== Beschreibe diese Funktion … hours cmV0dXJuIE1hdGguZmxvb3IoICgoeCkvNjAvNjApICUgMjQgKTs= Beschreibe diese Funktion … mins cmV0dXJuIE1hdGguZmxvb3IoICgoeCkvNjApICUgNjAgKTs= Beschreibe diese Funktion … seks cmV0dXJuIE1hdGguZmxvb3IoICgoeCkpICUgNjAgKTs= Beschreibe diese Funktion … anlegen_in 0_userdata.0 Bezeichnung_Geraet Geschirrspüler ECHO_Lautstaerke Zahl; (Lautstärke als Zahl mit anschliessendem Semikolon. z.B.: 70; 70; ECHO_speak_DP alexa2.0.Echo-Devices.G090LF1182231CD6.Commands.speak main Beschreibe diese Funktion … DP_Alexa_Ansage anlegen_in .Timer. Bezeichnung_Geraet .00_Alexa_Ansage DP_Stunden anlegen_in .Timer. Bezeichnung_Geraet .01_Restlaufzeit_Stunden DP_Minuten anlegen_in .Timer. Bezeichnung_Geraet .02_Restlaufzeit_Minuten DP_Sekunden anlegen_in .Timer. Bezeichnung_Geraet .03_Restlaufzeit_Sekunden DP_Gesamt_Rest anlegen_in .Timer. Bezeichnung_Geraet .04_Restlaufzeit_Gesamt ne homeconnect.0.401010522278007458.status.BSH_Common_Status_OperationState EQ state.val BSH.Common.EnumType.OperationState.Finished false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler ist fertig 0 TRUE sigiking1@gmail.com Der Geschirrspüler ist fertig Status Geschirrspüler EQ state.val BSH.Common.EnumType.OperationState.Inactive false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler ist ausgeschaltet 0 TRUE sigiking1@gmail.com Der Geschirrspüler ist ausgeschaltet Status Geschirrspüler EQ state.val BSH.Common.EnumType.OperationState.Run false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft 0 TRUE sigiking1@gmail.com Der Geschirrspüler läuft Status Geschirrspüler Trigger auf .select ne homeconnect.0.401010522278007458.programs.active.BSH_Common_Root_ActiveProgram EQ state.val Dishcare.Dishwasher.Program.NightWash false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft mit dem Programm Eco 50 0 EQ state.val Dishcare.Dishwasher.Program.Auto2 false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft mit dem Programm Automatik 2 0 EQ state.val Dishcare.Dishwasher.Program.Quick65 false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft mit dem Programm Express 65 0 EQ state.val Dishcare.Dishwasher.Program.Intensiv70 false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft mit dem Programm Intensiv 70 0 EQ state.val Dishcare.Dishwasher.Program.MachineCare false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft mit dem Programm Maschinenpflege 0 EQ state.val BSH.Common.Program.Favorite001 false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft mit dem Programm Favoriten 1 0 ne homeconnect.0.401010522278007458.programs.active.options.BSH_Common_Option_RemainingProgramTime GT state.val 0 true FALSE Object ID DP_Stunden TRUE val homeconnect.0.401010522278007458.programs.active.options.BSH_Common_Option_RemainingProgramTime 0 true FALSE Object ID DP_Minuten TRUE val homeconnect.0.401010522278007458.programs.active.options.BSH_Common_Option_RemainingProgramTime 0 true FALSE Object ID DP_Sekunden TRUE val homeconnect.0.401010522278007458.programs.active.options.BSH_Common_Option_RemainingProgramTime 0 true FALSE Object ID DP_Gesamt_Rest TRUE val homeconnect.0.401010522278007458.programs.active.options.BSH_Common_Option_RemainingProgramTime h val homeconnect.0.401010522278007458.programs.active.options.BSH_Common_Option_RemainingProgramTime min val homeconnect.0.401010522278007458.programs.active.options.BSH_Common_Option_RemainingProgramTime s 0 LTE state.val 0 true FALSE Object ID DP_Stunden TRUE 0 0 true FALSE Object ID DP_Minuten TRUE 0 0 true FALSE Object ID DP_Sekunden TRUE 0 0 true FALSE Object ID DP_Gesamt_Rest TRUE 0h 0m 0s 0 GT state.val oldState.val timeout timeout 1000 ms false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft noch EQ val DP_Stunden 1 eine Stunde, val DP_Stunden Stunden, EQ val DP_Minuten 1 eine Minute, val DP_Minuten Minuten, EQ val DP_Sekunden 1 eine Sekunde, dann ist er fertig. val DP_Sekunden Sekunden, dann ist er fertig. 0 AND EQ val DP_Stunden 0 AND GTE val DP_Minuten 1 GTE val DP_Sekunden 0 false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft noch EQ val DP_Minuten 1 eine Minute, val DP_Minuten Minuten, EQ val DP_Sekunden 1 eine Sekunde, dann ist er fertig. val DP_Sekunden Sekunden, dann ist er fertig. 0 AND EQ val DP_Stunden 0 AND EQ val DP_Minuten 0 GTE val DP_Sekunden 0 false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft noch EQ val DP_Sekunden 1 eine Sekunde, dann ist er fertig. val DP_Sekunden Sekunden, dann ist er fertig. 0 any default DP_Alexa_Ansage GT val DP_Stunden 0 false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft noch EQ val DP_Stunden 1 eine Stunde, val DP_Stunden Stunden, EQ val DP_Minuten 1 eine Minute, val DP_Minuten Minuten, EQ val DP_Sekunden 1 eine Sekunde, dann ist er fertig. val DP_Sekunden Sekunden, dann ist er fertig. 0 AND EQ val DP_Stunden 0 AND GTE val DP_Minuten 1 GTE val DP_Sekunden 0 false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft noch EQ val DP_Minuten 1 eine Minute, val DP_Minuten Minuten, EQ val DP_Sekunden 1 eine Sekunde, dann ist er fertig. val DP_Sekunden Sekunden, dann ist er fertig. 0 AND EQ val DP_Stunden 0 AND EQ val DP_Minuten 0 GTE val DP_Sekunden 0 false FALSE Object ID ECHO_speak_DP TRUE ECHO_Lautstaerke Der Geschirrspüler läuft noch EQ val DP_Sekunden 1 eine Sekunde, dann ist er fertig. val DP_Sekunden Sekunden, dann ist er fertig. 0 EQ val lgtv.0.states.power TRUE EQ val homeconnect.0.401010522278007458.status.BSH_Common_Status_OperationState BSH.Common.EnumType.OperationState.Finished false FALSE lgtv.0.states.popup TRUE Der Geschirrspüler ist fertig 0