#### 1. Alexa Speak Dashboard Enter a phrase for Alexa to say on a chosen device. ``` [{"id":"616a147e.9afb6c","type":"tab","label":"Alexa Speak","disabled":false,"info":""},{"id":"a65fd0b2.c8dea","type":"ui_text_input","z":"616a147e.9afb6c","name":"","label":"","group":"326ce2f.8d02d1e","order":3,"width":0,"height":0,"passthru":true,"mode":"text","delay":"1","topic":"","x":120,"y":180,"wires":[["dc657f0d.0c93e"]]},{"id":"dc657f0d.0c93e","type":"change","z":"616a147e.9afb6c","name":"","rules":[{"t":"set","p":"textToSpeak","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":340,"y":180,"wires":[[]]},{"id":"9e48fbc9.4689b8","type":"ui_button","z":"616a147e.9afb6c","name":"","group":"326ce2f.8d02d1e","order":4,"width":0,"height":0,"passthru":false,"label":"Speak","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"","x":110,"y":220,"wires":[["28655ba0.1963b4"]]},{"id":"6a7e215e.3657a","type":"change","z":"616a147e.9afb6c","name":"","rules":[{"t":"set","p":"device","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":440,"y":120,"wires":[[]]},{"id":"1bc89b6b.1579d5","type":"change","z":"616a147e.9afb6c","name":"","rules":[{"t":"set","p":"options","pt":"msg","to":"payload.accountName[]","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":140,"y":120,"wires":[["6cc46d56.1244a4"]]},{"id":"6cc46d56.1244a4","type":"ui_dropdown","z":"616a147e.9afb6c","name":"","label":"Device","tooltip":"","place":"","group":"326ce2f.8d02d1e","order":1,"width":"5","height":"1","passthru":true,"options":[{"label":"","value":"","type":"str"}],"payload":"","topic":"","x":290,"y":120,"wires":[["6a7e215e.3657a"]]},{"id":"eb184d38.3de8e","type":"ui_button","z":"616a147e.9afb6c","name":"","group":"326ce2f.8d02d1e","order":2,"width":"1","height":"1","passthru":false,"label":"","tooltip":"","color":"","bgcolor":"","icon":"refresh","payload":"","payloadType":"str","topic":"","x":110,"y":60,"wires":[["6f483b7d.f1a6f4"]]},{"id":"28655ba0.1963b4","type":"alexa-remote-routine","z":"616a147e.9afb6c","name":"","account":"","routineNode":{"type":"speak","payload":{"type":"regular","text":{"type":"flow","value":"textToSpeak"},"devices":{"type":"flow","value":"device"}}},"x":320,"y":220,"wires":[[]]},{"id":"6f483b7d.f1a6f4","type":"alexa-remote-echo","z":"616a147e.9afb6c","name":"","account":"","config":{"option":"get","value":{"what":"device","device":{"type":"str","value":"ALEXA_ALL_DSN"}}},"x":270,"y":60,"wires":[["1bc89b6b.1579d5"]]},{"id":"326ce2f.8d02d1e","type":"ui_group","z":"","name":"Alexa Speak","tab":"fc4efe2d.639d2","order":1,"disp":true,"width":"6","collapse":false},{"id":"fc4efe2d.639d2","type":"ui_tab","z":"","name":"Alexa Speak","icon":"speaker","order":2}] ``` #### 2. Alexa SSML Examples what you can do with SSML. ``` [{"id":"f1a56049.b84ac","type":"tab","label":"SSML","disabled":false,"info":""},{"id":"e504b1c.8fb8e5","type":"inject","z":"f1a56049.b84ac","name":"","topic":"","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":60,"wires":[["92a27055.927e2"]]},{"id":"92a27055.927e2","type":"template","z":"f1a56049.b84ac","name":"Good Morning","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":" \nBonjour!\nGuten Morgen!\nGood Morning!\nBuongiorno!\n¡Buenos días!\n","output":"str","x":260,"y":60,"wires":[["e7a8d82e.baf3e8"]]},{"id":"1ce26b01.0359b5","type":"template","z":"f1a56049.b84ac","name":"Effects","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"\nThis is louder.\nThis is quieter.\nThis is slow.\nThis is fast.\nThis is deep.\nThis is high.\nThis is whispering.\n","output":"str","x":230,"y":100,"wires":[["e7a8d82e.baf3e8"]]},{"id":"c30b0f6f.4a30e","type":"inject","z":"f1a56049.b84ac","name":"","topic":"","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":100,"wires":[["1ce26b01.0359b5"]]},{"id":"e7a8d82e.baf3e8","type":"alexa-remote-routine","z":"f1a56049.b84ac","name":"","account":"","routineNode":{"type":"speak","payload":{"type":"ssml","text":{"type":"msg","value":"payload"},"devices":[]}},"x":460,"y":100,"wires":[[]]},{"id":"f459218f.47a8f","type":"template","z":"f1a56049.b84ac","name":"Time and Date","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"\n Time 08:30.\n Duration 12'3\".\n Date 28/02/2020.\n","output":"str","x":260,"y":140,"wires":[["e7a8d82e.baf3e8"]]},{"id":"7771dc17.c0ec74","type":"inject","z":"f1a56049.b84ac","name":"","topic":"","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":140,"wires":[["f459218f.47a8f"]]}] ``` #### 3. Alexa Music Dashboard: Dashboard in which you can enter a query for music to be played from a chosen provider on a chosen device. You can also pause, resume and change the volume, toggle repeat and toggle shuffle. ``` [{"id":"22117ef5.34e782","type":"tab","label":"Alexa Play Music","disabled":false,"info":""},{"id":"9f76a73d.640158","type":"ui_dropdown","z":"22117ef5.34e782","name":"","label":"Provider","tooltip":"","place":" ","group":"7bea4aa8.d8cdb4","order":5,"width":"5","height":"1","passthru":true,"options":[{"label":"","value":"","type":"str"}],"payload":"","topic":"","x":280,"y":340,"wires":[["6b030e1e.22ab4"]]},{"id":"6b030e1e.22ab4","type":"change","z":"22117ef5.34e782","name":"","rules":[{"t":"set","p":"provider","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":300,"y":380,"wires":[[]]},{"id":"795331d2.4d248","type":"ui_button","z":"22117ef5.34e782","name":"","group":"7bea4aa8.d8cdb4","order":9,"width":"0","height":"0","passthru":false,"label":"Play","tooltip":"","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"","x":70,"y":480,"wires":[["694ab438.033a6c"]]},{"id":"4be302b4.1a858c","type":"ui_text_input","z":"22117ef5.34e782","name":"","label":"Query","tooltip":"","group":"7bea4aa8.d8cdb4","order":8,"width":"0","height":"0","passthru":true,"mode":"text","delay":300,"topic":"","x":70,"y":440,"wires":[["cfbacffa.4610d"]]},{"id":"cfbacffa.4610d","type":"change","z":"22117ef5.34e782","name":"","rules":[{"t":"set","p":"query","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":240,"y":440,"wires":[[]]},{"id":"cdaafda8.522d2","type":"change","z":"22117ef5.34e782","name":"","rules":[{"t":"set","p":"device","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":300,"y":180,"wires":[[]]},{"id":"ef3ab5e9.2ff358","type":"ui_button","z":"22117ef5.34e782","name":"Pause","group":"39eba160.64cc2e","order":1,"width":"3","height":"1","passthru":false,"label":"","tooltip":"","color":"","bgcolor":"","icon":"fa-pause","payload":"","payloadType":"str","topic":"","x":70,"y":540,"wires":[["faa04f1d.4e6b2"]]},{"id":"9699ce9d.52c47","type":"ui_button","z":"22117ef5.34e782","name":"Resume","group":"39eba160.64cc2e","order":2,"width":"3","height":"1","passthru":false,"label":"","tooltip":"","color":"","bgcolor":"","icon":"fa-play","payload":"","payloadType":"str","topic":"","x":80,"y":580,"wires":[["82967d34.a410f"]]},{"id":"d6bf1cf0.0bb69","type":"ui_slider","z":"22117ef5.34e782","name":"Volume Slider","label":"","tooltip":"","group":"39eba160.64cc2e","order":6,"width":"4","height":"1","passthru":true,"outs":"end","topic":"","min":0,"max":"100","step":1,"x":240,"y":720,"wires":[["91ba2c5a.82db3"]]},{"id":"5655df2f.935bd","type":"change","z":"22117ef5.34e782","name":"","rules":[{"t":"set","p":"options","pt":"msg","to":"payload.accountName[]","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":300,"y":100,"wires":[["88993c00.433968"]]},{"id":"88993c00.433968","type":"ui_dropdown","z":"22117ef5.34e782","name":"","label":"Device","tooltip":"","place":" ","group":"7bea4aa8.d8cdb4","order":2,"width":"5","height":"1","passthru":true,"options":[{"label":"","value":"","type":"str"}],"payload":"","topic":"","x":270,"y":140,"wires":[["cdaafda8.522d2"]]},{"id":"40afda1c.564ec4","type":"change","z":"22117ef5.34e782","name":"","rules":[{"t":"set","p":"options","pt":"msg","to":"payload.id[]","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":300,"y":260,"wires":[["8e70f216.b7341"]]},{"id":"8e70f216.b7341","type":"function","z":"22117ef5.34e782","name":"pretty label","func":"let prettify = s => {\n\ts = s.replace('_', ' ');\n\ts = s.toLowerCase();\n\ts = s.split(' ').map(w => w[0].toUpperCase() + w.slice(1)).join(' ');\n\treturn s;\n};\n\nmsg.options = msg.options.map(o => {\n let obj = {};\n obj[prettify(o)] = o;\n return obj;\n});\n\nreturn msg;","outputs":1,"noerr":0,"x":290,"y":300,"wires":[["9f76a73d.640158"]]},{"id":"9b9bacaa.ee2c2","type":"ui_template","z":"22117ef5.34e782","group":"39eba160.64cc2e","name":"Repeat","order":7,"width":"2","height":"1","format":"
Repeat
","storeOutMessages":true,"fwdInMessages":true,"templateScope":"local","x":80,"y":780,"wires":[[]]},{"id":"ac618b73.695ca8","type":"ui_button","z":"22117ef5.34e782","name":"Repeat On","group":"39eba160.64cc2e","order":8,"width":"2","height":"1","passthru":false,"label":"On","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"","x":230,"y":780,"wires":[["eb84a704.c92f88"]]},{"id":"fbff271.7bdcfd8","type":"ui_button","z":"22117ef5.34e782","name":"Repeat Off","group":"39eba160.64cc2e","order":9,"width":"2","height":"1","passthru":false,"label":"Off","tooltip":"","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"","x":230,"y":820,"wires":[["f1fe4ffd.f8afb"]]},{"id":"c2a9a7b3.2476d8","type":"ui_template","z":"22117ef5.34e782","group":"39eba160.64cc2e","name":"Shuffle","order":10,"width":"2","height":"1","format":"
Shuffle
","storeOutMessages":true,"fwdInMessages":true,"templateScope":"local","x":70,"y":860,"wires":[[]]},{"id":"27a2a0a2.5cd2d","type":"ui_button","z":"22117ef5.34e782","name":"Shuffle On","group":"39eba160.64cc2e","order":11,"width":"2","height":"1","passthru":false,"label":"On","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"","x":230,"y":860,"wires":[["f4ea2c6a.a281"]]},{"id":"bbe5acbe.21cc9","type":"ui_button","z":"22117ef5.34e782","name":"Shuffle Off","group":"39eba160.64cc2e","order":12,"width":"2","height":"1","passthru":false,"label":"Off","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"","x":230,"y":900,"wires":[["dec300d8.233c3"]]},{"id":"7fb436ef.f2d3b8","type":"ui_button","z":"22117ef5.34e782","name":"Refresh Device","group":"7bea4aa8.d8cdb4","order":3,"width":"1","height":"1","passthru":false,"label":"","tooltip":"","color":"","bgcolor":"","icon":"refresh","payload":"","payloadType":"str","topic":"","x":120,"y":60,"wires":[["a8b2ebcc.daf8b8"]]},{"id":"d7a24427.f140d8","type":"ui_button","z":"22117ef5.34e782","name":"Refresh Provider","group":"7bea4aa8.d8cdb4","order":6,"width":"1","height":"1","passthru":false,"label":"","color":"","bgcolor":"","icon":"refresh","payload":"","payloadType":"str","topic":"","x":110,"y":220,"wires":[["1daf530a.aa95fd"]]},{"id":"b4a01419.463b68","type":"alexa-remote-event","z":"22117ef5.34e782","name":"","account":"","event":"ws-audio-player-state-change","x":150,"y":1000,"wires":[["5eb2b40b.4daaac"]]},{"id":"7f91a549.1de88c","type":"ui_template","z":"22117ef5.34e782","group":"c67b7b1.78a7c88","name":"Image","order":2,"width":"6","height":"7","format":"\n \"oh\n","storeOutMessages":true,"fwdInMessages":true,"templateScope":"local","x":570,"y":1040,"wires":[[]]},{"id":"7571c57d.0ab18c","type":"ui_template","z":"22117ef5.34e782","group":"c67b7b1.78a7c88","name":"Title","order":1,"width":"6","height":"1","format":"
\n
","storeOutMessages":true,"fwdInMessages":true,"templateScope":"local","x":570,"y":1000,"wires":[[]]},{"id":"841d671e.75e718","type":"ui_slider","z":"22117ef5.34e782","name":"","label":"","tooltip":"","group":"c67b7b1.78a7c88","order":3,"width":0,"height":0,"passthru":false,"outs":"end","topic":"","min":0,"max":"100","step":"1","x":570,"y":1080,"wires":[[]]},{"id":"ce0bd87e.fff938","type":"function","z":"22117ef5.34e782","name":"progress","func":"let interval = context.get('interval');\nif(interval) clearInterval(interval);\ncontext.set('interval', undefined);\n\nif(!msg.payload.progress) return;\n\nconst updateTime = Date.now();\nconst updateProgress = msg.payload.progress.mediaProgress;\nconst mediaLength = msg.payload.progress.mediaLength;\nconst fraction = updateProgress / mediaLength;\nnode.send({ payload: fraction * 100 });\n\nif(msg.payload.state !== 'PLAYING') return;\n\ncontext.set('interval', setInterval(() => {\n const elapsed = Date.now() - updateTime;\n const progress = updateProgress + elapsed / 1000;\n const fraction = progress / mediaLength;\n node.send({ payload: fraction * 100 });\n}, 1000));\n\n\n\n","outputs":1,"noerr":0,"x":440,"y":1080,"wires":[["841d671e.75e718"]]},{"id":"3d0ef7dc.c363f8","type":"change","z":"22117ef5.34e782","name":"infoText","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload.infoText.title","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":440,"y":1000,"wires":[["7571c57d.0ab18c"]]},{"id":"8c8d3f25.8a171","type":"change","z":"22117ef5.34e782","name":"mainArt","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload.mainArt.url","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":440,"y":1040,"wires":[["7f91a549.1de88c"]]},{"id":"a8b2ebcc.daf8b8","type":"alexa-remote-echo","z":"22117ef5.34e782","name":"","account":"","config":{"option":"get","value":{"what":"device","device":{"type":"str","value":"ALEXA_ALL_DSN"}}},"x":310,"y":60,"wires":[["5655df2f.935bd"]]},{"id":"1daf530a.aa95fd","type":"alexa-remote-other","z":"22117ef5.34e782","name":"","account":"","config":{"option":"get","value":{"what":"musicProviders"}},"x":320,"y":220,"wires":[["40afda1c.564ec4"]]},{"id":"faa04f1d.4e6b2","type":"alexa-remote-echo","z":"22117ef5.34e782","name":"","account":"","config":{"option":"command","value":{"device":{"type":"flow","value":"device"},"what":"pause"}},"x":230,"y":540,"wires":[[]]},{"id":"82967d34.a410f","type":"alexa-remote-echo","z":"22117ef5.34e782","name":"","account":"","config":{"option":"command","value":{"device":{"type":"flow","value":"device"},"what":"play"}},"x":220,"y":580,"wires":[[]]},{"id":"694ab438.033a6c","type":"alexa-remote-routine","z":"22117ef5.34e782","name":"","account":"","routineNode":{"type":"music","payload":{"device":{"type":"flow","value":"device"},"provider":{"type":"flow","value":"provider"},"search":{"type":"flow","value":"query"},"duration":{"type":"num","value":""}}},"x":240,"y":480,"wires":[[]]},{"id":"91ba2c5a.82db3","type":"alexa-remote-echo","z":"22117ef5.34e782","name":"","account":"","config":{"option":"command","value":{"device":{"type":"flow","value":"device"},"what":"volume","value":{"type":"msg","value":"payload"}}},"x":410,"y":720,"wires":[[]]},{"id":"eb84a704.c92f88","type":"alexa-remote-echo","z":"22117ef5.34e782","name":"","account":"","config":{"option":"command","value":{"device":{"type":"flow","value":"device"},"what":"repeat","value":{"type":"bool","value":"true"}}},"x":410,"y":780,"wires":[[]]},{"id":"f1fe4ffd.f8afb","type":"alexa-remote-echo","z":"22117ef5.34e782","name":"","account":"","config":{"option":"command","value":{"device":{"type":"flow","value":"device"},"what":"repeat","value":{"type":"bool","value":"true"}}},"x":410,"y":820,"wires":[[]]},{"id":"f4ea2c6a.a281","type":"alexa-remote-echo","z":"22117ef5.34e782","name":"","account":"","config":{"option":"command","value":{"device":{"type":"flow","value":"device"},"what":"shuffle","value":{"type":"bool","value":"true"}}},"x":400,"y":860,"wires":[[]]},{"id":"dec300d8.233c3","type":"alexa-remote-echo","z":"22117ef5.34e782","name":"","account":"","config":{"option":"command","value":{"device":{"type":"flow","value":"device"},"what":"shuffle","value":{"type":"bool","value":"false"}}},"x":400,"y":900,"wires":[[]]},{"id":"5eb2b40b.4daaac","type":"alexa-remote-echo","z":"22117ef5.34e782","name":"","account":"","config":{"option":"get","value":{"what":"playerInfo","device":{"type":"flow","value":"device"}}},"x":240,"y":1040,"wires":[["3d0ef7dc.c363f8","8c8d3f25.8a171","ce0bd87e.fff938"]]},{"id":"34484c2.09056b4","type":"ui_button","z":"22117ef5.34e782","name":"Previous","group":"39eba160.64cc2e","order":3,"width":"3","height":"1","passthru":false,"label":"","tooltip":"","color":"","bgcolor":"","icon":"fa-arrow-left","payload":"","payloadType":"str","topic":"","x":80,"y":620,"wires":[["78d01d19.8aa394"]]},{"id":"9a6648eb.c51938","type":"ui_button","z":"22117ef5.34e782","name":"Next","group":"39eba160.64cc2e","order":4,"width":"3","height":"1","passthru":false,"label":"","tooltip":"","color":"","bgcolor":"","icon":"fa-arrow-right","payload":"","payloadType":"str","topic":"","x":70,"y":660,"wires":[["abfde996.fc2028"]]},{"id":"78d01d19.8aa394","type":"alexa-remote-echo","z":"22117ef5.34e782","name":"","account":"","config":{"option":"command","value":{"device":{"type":"flow","value":"device"},"what":"previous"}},"x":240,"y":620,"wires":[[]]},{"id":"abfde996.fc2028","type":"alexa-remote-echo","z":"22117ef5.34e782","name":"","account":"","config":{"option":"command","value":{"device":{"type":"flow","value":"device"},"what":"next"}},"x":230,"y":660,"wires":[[]]},{"id":"2b007d23.413502","type":"ui_template","z":"22117ef5.34e782","group":"39eba160.64cc2e","name":"Volume","order":5,"width":"2","height":"1","format":"
Volume
","storeOutMessages":true,"fwdInMessages":true,"templateScope":"local","x":80,"y":720,"wires":[[]]},{"id":"7bea4aa8.d8cdb4","type":"ui_group","z":"","name":"Choose","tab":"d90ac71.2bb0038","order":1,"disp":true,"width":"6","collapse":false},{"id":"39eba160.64cc2e","type":"ui_group","z":"","name":"Controls","tab":"d90ac71.2bb0038","order":2,"disp":true,"width":"6","collapse":false},{"id":"c67b7b1.78a7c88","type":"ui_group","z":"","name":"Music","tab":"d90ac71.2bb0038","order":3,"disp":true,"width":"6","collapse":false},{"id":"d90ac71.2bb0038","type":"ui_tab","z":"","name":"Alexa Play Music","icon":"speaker","order":12,"disabled":false,"hidden":false}] ``` #### 4. Alexa Lists Dashboard View and edit Shopping and Todo lists. You need to manually select "Shopping" list for the top nodes and "To-do" for the bottom nodes. (first select your account and then you can select the list) ``` [{"id":"9ae5928.011d07","type":"tab","label":"Alexa Lists","disabled":false,"info":""},{"id":"f80a37a3.da6748","type":"inject","z":"9ae5928.011d07","name":"","topic":"","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":90,"y":440,"wires":[["1c0e17dc.37f548"]]},{"id":"1c0e17dc.37f548","type":"alexa-remote-list","z":"9ae5928.011d07","name":"Todo","account":"","config":{"option":"getListItems","value":{"list":{"type":"str","value":""}}},"x":210,"y":440,"wires":[["d70c660e.9ac3c8"]]},{"id":"a8ec769a.275d48","type":"alexa-remote-list","z":"9ae5928.011d07","name":"","account":"","config":{"option":"removeItem","value":{"list":{"type":"str","value":""},"item":{"type":"msg","value":"payload.id"}}},"x":890,"y":540,"wires":[[]]},{"id":"ce09d6f6.09d1f8","type":"ui_template","z":"9ae5928.011d07","group":"2315beea.977712","name":"","order":2,"width":6,"height":12,"format":"\n
\n \n \n
\n \n \n \n \n \n
\n \n \n
\n

{{item.value}}

\n
\n \n \n
\n \n \n \n \n \n
\n
","storeOutMessages":false,"fwdInMessages":false,"templateScope":"local","x":520,"y":480,"wires":[["3411d00.b67e63"]]},{"id":"b2942ba9.30dcd8","type":"alexa-remote-list","z":"9ae5928.011d07","name":"","account":"","config":{"option":"editItem","value":{"list":{"type":"str","value":""},"item":{"type":"msg","value":"payload.id"},"text":{"type":"msg","value":"payload.value"},"completed":{"type":"msg","value":"payload.completed"},"version":{"type":"msg","value":"payload.version"}}},"x":880,"y":480,"wires":[["7b963656.0a2768"]]},{"id":"3411d00.b67e63","type":"switch","z":"9ae5928.011d07","name":"","property":"action","propertyType":"msg","rules":[{"t":"eq","v":"edit","vt":"str"},{"t":"eq","v":"delete","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":730,"y":480,"wires":[["b2942ba9.30dcd8"],["a8ec769a.275d48","176925ea.e3828a"]]},{"id":"a5a9c429.53ad58","type":"change","z":"9ae5928.011d07","name":"","rules":[{"t":"set","p":"todo","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":490,"y":440,"wires":[["463de5c2.649eac"]]},{"id":"463de5c2.649eac","type":"change","z":"9ae5928.011d07","name":"get flow.todo","rules":[{"t":"set","p":"payload","pt":"msg","to":"todo","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":370,"y":480,"wires":[["ce09d6f6.09d1f8"]]},{"id":"176925ea.e3828a","type":"function","z":"9ae5928.011d07","name":"remove","func":"let list = flow.get('todo');\nlist = list.filter(o => o.id != msg.payload.id);\nflow.set('todo', list);\nreturn msg;","outputs":1,"noerr":0,"x":1040,"y":540,"wires":[["463de5c2.649eac"]]},{"id":"7b963656.0a2768","type":"function","z":"9ae5928.011d07","name":"update","func":"let list = flow.get('todo');\nlist = list.filter(o => o.id != msg.payload.id);\nlist.push(msg.payload);\nflow.set('todo', list);\nreturn msg;","outputs":1,"noerr":0,"x":1030,"y":480,"wires":[["c29f3f5c.fd95c"]]},{"id":"c29f3f5c.fd95c","type":"function","z":"9ae5928.011d07","name":"sort","func":"let list = flow.get('todo');\nlist = list.sort((a, b) => b.createdDateTime - a.createdDateTime)\nflow.set('todo', list);\nreturn msg;","outputs":1,"noerr":0,"x":1170,"y":480,"wires":[["463de5c2.649eac"]]},{"id":"12abd958.326df7","type":"ui_button","z":"9ae5928.011d07","name":"Refresh","group":"2315beea.977712","order":5,"width":6,"height":1,"passthru":false,"label":"","tooltip":"","color":"","bgcolor":"","icon":"refresh","payload":"","payloadType":"str","topic":"","x":100,"y":400,"wires":[["1c0e17dc.37f548"]]},{"id":"d70c660e.9ac3c8","type":"function","z":"9ae5928.011d07","name":"sort","func":"msg.payload = msg.payload.sort((a, b) => b.createdDateTime - a.createdDateTime)\nreturn msg;","outputs":1,"noerr":0,"x":350,"y":440,"wires":[["a5a9c429.53ad58"]]},{"id":"e167da49.9ea808","type":"alexa-remote-list","z":"9ae5928.011d07","name":"Shopping","account":"","config":{"option":"getListItems","value":{"list":{"type":"str","value":""}}},"x":220,"y":180,"wires":[["13b8031d.f9b80d"]]},{"id":"8e7fe170.9a0c9","type":"inject","z":"9ae5928.011d07","name":"","topic":"","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":90,"y":180,"wires":[["e167da49.9ea808"]]},{"id":"134114f9.9eefbb","type":"ui_button","z":"9ae5928.011d07","name":"Refresh","group":"1654aec2.080031","order":5,"width":6,"height":1,"passthru":false,"label":"","tooltip":"","color":"","bgcolor":"","icon":"refresh","payload":"","payloadType":"str","topic":"","x":100,"y":140,"wires":[["e167da49.9ea808"]]},{"id":"13b8031d.f9b80d","type":"function","z":"9ae5928.011d07","name":"sort","func":"msg.payload = msg.payload.sort((a, b) => b.createdDateTime - a.createdDateTime)\nreturn msg;","outputs":1,"noerr":0,"x":370,"y":180,"wires":[["74d9d0e8.ccb51"]]},{"id":"74d9d0e8.ccb51","type":"change","z":"9ae5928.011d07","name":"","rules":[{"t":"set","p":"shopping","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":530,"y":180,"wires":[["e934f31c.c0f19"]]},{"id":"e934f31c.c0f19","type":"change","z":"9ae5928.011d07","name":"get flow.shopping","rules":[{"t":"set","p":"payload","pt":"msg","to":"shopping","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":410,"y":220,"wires":[["2af3296f.119576"]]},{"id":"2af3296f.119576","type":"ui_template","z":"9ae5928.011d07","group":"1654aec2.080031","name":"","order":2,"width":6,"height":12,"format":"\n
\n \n \n
\n \n \n \n \n \n
\n \n \n
\n

{{item.value}}

\n
\n \n \n
\n \n \n \n \n \n
\n
","storeOutMessages":false,"fwdInMessages":false,"templateScope":"local","x":580,"y":220,"wires":[["45f0959e.f36cfc"]]},{"id":"6f2caf5a.66fcd","type":"function","z":"9ae5928.011d07","name":"sort","func":"let list = flow.get('shopping');\nlist = list.sort((a, b) => b.createdDateTime - a.createdDateTime)\nflow.set('shopping', list);\nreturn msg;","outputs":1,"noerr":0,"x":1170,"y":220,"wires":[["e934f31c.c0f19"]]},{"id":"e5c0d140.592a3","type":"function","z":"9ae5928.011d07","name":"remove","func":"let list = flow.get('shopping');\nlist = list.filter(o => o.id != msg.payload.id);\nflow.set('shopping', list);\nreturn msg;","outputs":1,"noerr":0,"x":1040,"y":280,"wires":[["e934f31c.c0f19"]]},{"id":"45f0959e.f36cfc","type":"switch","z":"9ae5928.011d07","name":"","property":"action","propertyType":"msg","rules":[{"t":"eq","v":"edit","vt":"str"},{"t":"eq","v":"delete","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":730,"y":220,"wires":[["73aa29df.f88ae8"],["780335c.85ce5cc","e5c0d140.592a3"]]},{"id":"d9ece8f3.e00b58","type":"function","z":"9ae5928.011d07","name":"update","func":"let list = flow.get('shopping');\nlist = list.filter(o => o.id != msg.payload.id);\nlist.push(msg.payload);\nflow.set('shopping', list);\nreturn msg;","outputs":1,"noerr":0,"x":1030,"y":220,"wires":[["6f2caf5a.66fcd"]]},{"id":"73aa29df.f88ae8","type":"alexa-remote-list","z":"9ae5928.011d07","name":"","account":"","config":{"option":"editItem","value":{"list":{"type":"str","value":""},"item":{"type":"msg","value":"payload.id"},"text":{"type":"msg","value":"payload.value"},"completed":{"type":"msg","value":"payload.completed"},"version":{"type":"msg","value":"payload.version"}}},"x":880,"y":220,"wires":[["d9ece8f3.e00b58"]]},{"id":"780335c.85ce5cc","type":"alexa-remote-list","z":"9ae5928.011d07","name":"","account":"","config":{"option":"removeItem","value":{"list":{"type":"str","value":""},"item":{"type":"msg","value":"payload.id"}}},"x":890,"y":280,"wires":[[]]},{"id":"ea86bf3d.6eb89","type":"ui_text_input","z":"9ae5928.011d07","name":"Item","label":"Add new item","tooltip":"Add new item","group":"2315beea.977712","order":3,"width":5,"height":1,"passthru":true,"mode":"text","delay":300,"topic":"","x":90,"y":320,"wires":[["b45c7f78.d3705"]]},{"id":"e299221f.5d186","type":"ui_button","z":"9ae5928.011d07","name":"Add","group":"2315beea.977712","order":4,"width":1,"height":1,"passthru":false,"label":"","tooltip":"","color":"","bgcolor":"","icon":"add","payload":"","payloadType":"str","topic":"","x":90,"y":360,"wires":[["e1178d6f.c4def"]]},{"id":"b45c7f78.d3705","type":"change","z":"9ae5928.011d07","name":"","rules":[{"t":"set","p":"todoItem","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":250,"y":320,"wires":[[]]},{"id":"e1178d6f.c4def","type":"alexa-remote-list","z":"9ae5928.011d07","name":"","account":"","config":{"option":"addItem","value":{"list":{"type":"str","value":""},"text":{"type":"flow","value":"todoItem"}}},"x":220,"y":360,"wires":[["29ad6b0.9f81696"]]},{"id":"29ad6b0.9f81696","type":"function","z":"9ae5928.011d07","name":"add","func":"let list = flow.get('todo');\nlist.unshift(msg.payload);\nflow.set('todo', list);\nreturn msg;","outputs":1,"noerr":0,"x":350,"y":360,"wires":[["463de5c2.649eac"]]},{"id":"fdaa843c.51b1e8","type":"ui_text_input","z":"9ae5928.011d07","name":"Item","label":"Add new item","tooltip":"Add new item","group":"1654aec2.080031","order":3,"width":5,"height":1,"passthru":true,"mode":"text","delay":300,"topic":"","x":90,"y":60,"wires":[["39c2daff.6a9776"]]},{"id":"bb3a5088.59c12","type":"ui_button","z":"9ae5928.011d07","name":"Add","group":"1654aec2.080031","order":4,"width":1,"height":1,"passthru":false,"label":"","tooltip":"","color":"","bgcolor":"","icon":"add","payload":"","payloadType":"str","topic":"","x":90,"y":100,"wires":[["739541e3.67808"]]},{"id":"39c2daff.6a9776","type":"change","z":"9ae5928.011d07","name":"","rules":[{"t":"set","p":"shoppingItem","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":260,"y":60,"wires":[[]]},{"id":"739541e3.67808","type":"alexa-remote-list","z":"9ae5928.011d07","name":"","account":"","config":{"option":"addItem","value":{"list":{"type":"str","value":""},"text":{"type":"flow","value":"shoppingItem"}}},"x":220,"y":100,"wires":[["cc63fb0c.9c2648"]]},{"id":"cc63fb0c.9c2648","type":"function","z":"9ae5928.011d07","name":"add","func":"let list = flow.get('shopping');\nlist.unshift(msg.payload);\nflow.set('shopping', list);\nreturn msg;","outputs":1,"noerr":0,"x":350,"y":100,"wires":[["e934f31c.c0f19"]]},{"id":"2315beea.977712","type":"ui_group","z":"","name":"To do","tab":"25dc5022.14d9","order":2,"disp":true,"width":6,"collapse":false},{"id":"1654aec2.080031","type":"ui_group","z":"","name":"Shopping","tab":"25dc5022.14d9","order":1,"disp":true,"width":6,"collapse":false},{"id":"25dc5022.14d9","type":"ui_tab","z":"","name":"Alexa Lists","icon":"list","order":12,"disabled":false,"hidden":false}] ``` #### 5. Alexa Timers Dashboard View your Alexa Timers in the dashboard. ``` [{"id":"1bb950f3.b79d1f","type":"tab","label":"Alexa Timers","disabled":false,"info":""},{"id":"a99c1f33.4cc28","type":"alexa-remote-event","z":"1bb950f3.b79d1f","name":"","account":"","event":"ws-notification-change","x":160,"y":100,"wires":[["93f9b374.b4b85"]]},{"id":"93f9b374.b4b85","type":"alexa-remote-other","z":"1bb950f3.b79d1f","name":"","account":"","config":{"option":"get","value":{"what":"notifications"}},"x":380,"y":100,"wires":[["9a89b42.be1e448"]]},{"id":"c74e9d4d.9f7a5","type":"function","z":"1bb950f3.b79d1f","name":"map timers","func":"const timers = msg.payload.map(x => ({\n name: x.timerLabel || 'Unnamed',\n remaining: x.remainingTime,\n paused: x.status !== 'ON',\n}));\n\nmsg.payload = { \n timers: timers, \n time: Date.now() \n};\n\nreturn msg;","outputs":1,"noerr":0,"x":410,"y":160,"wires":[["de00ea13.50d0b8"]]},{"id":"9a89b42.be1e448","type":"function","z":"1bb950f3.b79d1f","name":"filter active timers","func":"msg.payload = msg.payload.filter(x => \n x.type === 'Timer' && x.status !== 'OFF'\n);\nreturn msg;","outputs":1,"noerr":0,"x":230,"y":160,"wires":[["c74e9d4d.9f7a5"]]},{"id":"de00ea13.50d0b8","type":"ui_template","z":"1bb950f3.b79d1f","group":"765c4d0d.672094","name":"","order":1,"width":"0","height":"0","format":"
\n \n
\n","storeOutMessages":true,"fwdInMessages":true,"templateScope":"local","x":560,"y":160,"wires":[[]]},{"id":"4d4395d0.1d2cbc","type":"inject","z":"1bb950f3.b79d1f","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":200,"y":60,"wires":[["93f9b374.b4b85"]]},{"id":"765c4d0d.672094","type":"ui_group","z":"","name":"Timers","tab":"8ed3b3d9.bbfcb","disp":true,"width":"6","collapse":false},{"id":"8ed3b3d9.bbfcb","type":"ui_tab","z":"","name":"Alexa Timers","icon":"fa-clock-o","order":1,"disabled":false,"hidden":false}] ```