Dialogic Systems GmbH & Co. KG

Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Quellen: Packete > node-red-contrib-sonos-plus 2.1.7

Image Modified

Code Block
languagejs
titleSonos Türgong
[{"id":"2853f874.2afff8","type":"tab","label":"Sonos Türgong (sipphone)","disabled":false,"info":""},{"id":"d5fd717b.77dbe","type":"inject","z":"2853f874.2afff8","name":"Test stop","topic":"","payload":"<State>Connected</State>","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":100,"y":320,"wires":[["db55d813.08a9c8"]]},{"id":"390b75df.93a82a","type":"inject","z":"2853f874.2afff8","name":"Test start (play)","topic":"","payload":"<State>Incoming</State>","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":120,"y":280,"wires":[["db55d813.08a9c8"]]},{"id":"7a299d2e.45b654","type":"change","z":"2853f874.2afff8","name":"play_notification","rules":[{"t":"set","p":"payload","pt":"msg","to":"play_httpradio","tot":"str"},{"t":"set","p":"topic","pt":"msg","to":"http://192.168.1.168:1880/tuergong.wav","tot":"str"},{"t":"set","p":"volume","pt":"msg","to":"20","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":380,"y":360,"wires":[["8d5a0401.a439e8"]]},{"id":"a80dd3d6.b6278","type":"udp in","z":"2853f874.2afff8","name":"","iface":"","port":"55002","ipv":"udp4","multicast":"false","group":"","datatype":"utf8","x":100,"y":240,"wires":[["ae943bbb.e97f88","db55d813.08a9c8"]]},{"id":"db55d813.08a9c8","type":"function","z":"2853f874.2afff8","name":"Read SipphoneState","func":" const compareLastValue = (str) => {\n    let lastValue = context.get('lastValue');\n    if (lastValue == str) return true;\n\n    return false;\n};\n\n// prüfe ob string im payload vorhanden\nconst existStr = (str) => {\n    if (msg.payload.search(str) > -1) return true;\n    \n    return false;\n};\n\n// neue Messages erstellen\nconst setMessage = (str) => {\n    let newMsg = { payload: str };\n    return [newMsg,null]; // output 1\n};\n\n\nif (existStr(\"Incoming\") && !compareLastValue(\"Incoming\")) {\n    context.set('lastValue',\"Incoming\");\n    return [null,setMessage(\"play\")];\n}\n\nif (!existStr(\"Incoming\")){\n    // prüfe ob letzter Wert Incoming war\n    if (compareLastValue(\"Incoming\")) \n    {\n        context.set('lastValue',\"NotIncoming\");\n        return [setMessage(\"stop\"),null];\n    }\n} \nreturn;","outputs":2,"noerr":0,"x":400,"y":280,"wires":[["8d5a0401.a439e8"],["7a299d2e.45b654","2356b0ae.0b7ce"]]},{"id":"ae943bbb.e97f88","type":"udp out","z":"2853f874.2afff8","name":"","addr":"127.0.0.1","iface":"","port":"55001","ipv":"udp4","outport":"","base64":false,"multicast":"false","x":400,"y":240,"wires":[]},{"id":"2356b0ae.0b7ce","type":"trigger","z":"2853f874.2afff8","op1":"","op2":"stop","op1type":"nul","op2type":"str","duration":"10","extend":false,"units":"s","reset":"","bytopic":"all","name":"","x":370,"y":320,"wires":[["8d5a0401.a439e8"]]},{"id":"8d5a0401.a439e8","type":"function","z":"2853f874.2afff8","name":"compare_msg","func":"const compareLastValue = (str) => {\n    let lastValue = context.get('lastValue');\n    if (lastValue == str) return true;\n    context.set('lastValue',str);\n    return false;\n};\n\nif (compareLastValue(msg.payload)) return;\nif (msg.payload == \"stop\") return [null,msg]\n\nreturn msg;","outputs":2,"noerr":0,"x":680,"y":300,"wires":[["15172177.226ecf","b44957ff.cd3688"],["348a00d8.ef869"]]},{"id":"15172177.226ecf","type":"link out","z":"2853f874.2afff8","name":"","links":["3242ac1d.2bbb84","efe643f4.56ff1","f2bf8ae6.e8a868","71593740.d437f8"],"x":575,"y":240,"wires":[]},{"id":"3b26d347.9c4d4c","type":"http in","z":"2853f874.2afff8","name":"","url":"/tuergong.wav","method":"get","upload":false,"swaggerDoc":"","x":130,"y":80,"wires":[["24dc4e16.b67a12"]]},{"id":"24dc4e16.b67a12","type":"file in","z":"2853f874.2afff8","name":"","filename":"D:/Musik/tuergong2.wav","format":"","x":410,"y":80,"wires":[["d3c22398.9da05"]]},{"id":"d3c22398.9da05","type":"http response","z":"2853f874.2afff8","name":"http://192.168.1.168:1880/tuergong.wav","statusCode":"","headers":{"content-type":"audio/mpeg"},"x":760,"y":80,"wires":[]},{"id":"1984c5de.1c230a","type":"comment","z":"2853f874.2afff8","name":"Sonos lädt Musik nur von http (Node-Red umstellen)","info":"","x":210,"y":40,"wires":[]},{"id":"411ce117.73a8","type":"comment","z":"2853f874.2afff8","name":"sipphone Control","info":"","x":100,"y":180,"wires":[]},{"id":"348a00d8.ef869","type":"link out","z":"2853f874.2afff8","name":"wiederherstellen","links":["32cd99f1.965256","9e66d9d8.444668","cbf63868.cbb708","a7d3439d.3d066"],"x":615,"y":340,"wires":[]},{"id":"fb1a331d.1eb5f","type":"sonos-manage-radio","z":"2853f874.2afff8","confignode":"8f2bef6d.a6b2f","name":"","x":920,"y":240,"wires":[["b093fefe.56c19"]]},{"id":"b093fefe.56c19","type":"debug","z":"2853f874.2afff8","name":"httpPlay","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":1200,"y":300,"wires":[]},{"id":"b44957ff.cd3688","type":"delay","z":"2853f874.2afff8","name":"","pauseType":"delay","timeout":"1","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":700,"y":240,"wires":[["fb1a331d.1eb5f","512caacf.6f2534","c3c2c146.a3be6"]]},{"id":"8b3eb95e.d30638","type":"sonos-manage-radio","z":"2853f874.2afff8","confignode":"5a9ae98b.4e1608","name":"","x":920,"y":340,"wires":[["b093fefe.56c19"]]},{"id":"8a9b467c.90c0f8","type":"sonos-manage-radio","z":"2853f874.2afff8","confignode":"79184be3.d683a4","name":"","x":920,"y":440,"wires":[["b093fefe.56c19"]]},{"id":"a1750354.c9755","type":"sonos-get-status","z":"2853f874.2afff8","confignode":"8f2bef6d.a6b2f","name":"","x":370,"y":600,"wires":[["f2b6197e.305058"]]},{"id":"8be3c77a.6608e8","type":"debug","z":"2853f874.2afff8","name":"Get Status","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":770,"y":600,"wires":[]},{"id":"c6447bd9.df10b8","type":"inject","z":"2853f874.2afff8","name":"speichern","topic":"","payload":"get_basics","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":100,"y":600,"wires":[["378a4134.a3b55e"]]},{"id":"f2b6197e.305058","type":"function","z":"2853f874.2afff8","name":"Set mediainfo","func":"let lastSonosValue = flow.get('lastSonosValue');\nlastSonosValue.queueActivated = msg.queueActivated;\n\nif (!msg.queueActivated){\n    lastSonosValue.radioId = msg.radioId;\n     //flow.set('lastSonosValue',sonosValue);\n    return [lastSonosValue,null];\n}\nmsg.payload = \"get_songinfo\"\nreturn [null,msg];","outputs":2,"noerr":0,"x":540,"y":600,"wires":[["8be3c77a.6608e8"],["ec311343.138e1"]]},{"id":"402deaea.7ef624","type":"function","z":"2853f874.2afff8","name":"GetData","func":"let lastSonosValue = flow.get('lastSonosValue');\nif (lastSonosValue == null) return;\nif (!lastSonosValue.queueActivated)\n{\n    msg.payload = lastSonosValue.radio\n    msg.topic = lastSonosValue.radioId\n    msg.volume = lastSonosValue.volume\n    return [msg,null]\n}\nmsg.payload = \"play_song\";//\"activate_queue\";\nmsg.topic = lastSonosValue.queuePosition//lastSonosValue.volume;\nreturn [null,msg]","outputs":2,"noerr":0,"x":160,"y":800,"wires":[["c91a6447.580578"],["1bfc759a.45c48a"]]},{"id":"aaa77430.cf1678","type":"inject","z":"2853f874.2afff8","name":"setzen","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":90,"y":840,"wires":[["402deaea.7ef624"]]},{"id":"c91a6447.580578","type":"sonos-manage-radio","z":"2853f874.2afff8","confignode":"8f2bef6d.a6b2f","name":"","x":380,"y":760,"wires":[["2228c46d.45a7bc"]]},{"id":"1e569afc.b92025","type":"debug","z":"2853f874.2afff8","name":"Playlist","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":1060,"y":900,"wires":[]},{"id":"1bfc759a.45c48a","type":"sonos-manage-queue","z":"2853f874.2afff8","confignode":"8f2bef6d.a6b2f","name":"","x":380,"y":840,"wires":[["f73aa8ab.11fd78"]]},{"id":"f73aa8ab.11fd78","type":"change","z":"2853f874.2afff8","name":"set seek","rules":[{"t":"set","p":"payload","pt":"msg","to":"seek","tot":"str"},{"t":"set","p":"topic","pt":"msg","to":"lastSonosValue.position","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":560,"y":840,"wires":[["5d5e06b3.e15c58"]]},{"id":"5d5e06b3.e15c58","type":"sonos-manage-queue","z":"2853f874.2afff8","confignode":"8f2bef6d.a6b2f","name":"","x":740,"y":840,"wires":[["a812e798.32a078"]]},{"id":"6e59b589.0c43ac","type":"comment","z":"2853f874.2afff8","name":"Setzen","info":"","x":70,"y":720,"wires":[]},{"id":"9bbb2751.dd60b8","type":"function","z":"2853f874.2afff8","name":"Set basics","func":"    let sonosValue = { \n        //get_basic\n        state: msg.state,\n        volume: msg.volume,\n        muted: msg.muted,\n        \n        //get_mediainfo\n        queueActivated: false,\n        radio: \"play_tunein\",\n        radioId: \"\",\n        \n        //get_songinfo\n        uri: \"\",\n        queuePosition: \"\",\n        position: \"\",\n    };\n   flow.set('lastSonosValue',sonosValue);\nmsg.payload = \"get_mediainfo\";\nreturn msg;","outputs":1,"noerr":0,"x":530,"y":560,"wires":[["a1750354.c9755"]]},{"id":"378a4134.a3b55e","type":"sonos-get-status","z":"2853f874.2afff8","confignode":"8f2bef6d.a6b2f","name":"","x":370,"y":560,"wires":[["9bbb2751.dd60b8"]]},{"id":"7ac4ab5c.63fe04","type":"function","z":"2853f874.2afff8","name":"Set songinfo","func":"let lastSonosValue = flow.get('lastSonosValue');\nlastSonosValue.queueActivated = msg.queueActivated;\nlastSonosValue.uri = msg.payload.uri;\nlastSonosValue.queuePosition = msg.payload.queuePosition;\nvar date = new Date(null);\ndate.setSeconds(msg.payload.position); // specify value for SECONDS here\nlastSonosValue.position =  date.toISOString().substr(11, 8);\nmsg.payload.position;\nreturn lastSonosValue;","outputs":1,"noerr":0,"x":530,"y":640,"wires":[["8be3c77a.6608e8"]]},{"id":"ec311343.138e1","type":"sonos-get-status","z":"2853f874.2afff8","confignode":"8f2bef6d.a6b2f","name":"","x":370,"y":640,"wires":[["7ac4ab5c.63fe04"]]},{"id":"71ddb9ce.deb768","type":"comment","z":"2853f874.2afff8","name":"Speichern","info":"","x":80,"y":480,"wires":[]},{"id":"65c69ff0.ef308","type":"sonos-control-player","z":"2853f874.2afff8","confignode":"8f2bef6d.a6b2f","name":"","x":740,"y":760,"wires":[["2635911.6f83e6e"]]},{"id":"2228c46d.45a7bc","type":"function","z":"2853f874.2afff8","name":"Set State","func":"let lastSonosValue = flow.get('lastSonosValue');\n//play/stop/pause/mute/ummute/\nif (lastSonosValue.state == \"stopped\") msg.payload = \"stop\";\nif (lastSonosValue.state == \"playing\") msg.payload = \"play\";\nif (lastSonosValue.state == \"paused\") msg.payload = \"pause\";\n\nmsg.topic = null;\nreturn msg;","outputs":1,"noerr":0,"x":560,"y":760,"wires":[["65c69ff0.ef308"]]},{"id":"a8732bdf.923448","type":"debug","z":"2853f874.2afff8","name":"Radio","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":950,"y":800,"wires":[]},{"id":"2635911.6f83e6e","type":"function","z":"2853f874.2afff8","name":"Set mute / unmute","func":"let lastSonosValue = flow.get('lastSonosValue');\n\n//play/stop/pause/mute/ummute/\nif (lastSonosValue.muted) msg.payload = \"mute\";\nif (!lastSonosValue.muted) msg.payload = \"unmute\";\n\nmsg.topic = null;\nreturn msg;","outputs":1,"noerr":0,"x":550,"y":800,"wires":[["2cd4dd0e.5d20b2"]]},{"id":"2cd4dd0e.5d20b2","type":"sonos-control-player","z":"2853f874.2afff8","confignode":"8f2bef6d.a6b2f","name":"","x":740,"y":800,"wires":[["a8732bdf.923448"]]},{"id":"4f2b52c3.ea57bc","type":"sonos-control-player","z":"2853f874.2afff8","confignode":"8f2bef6d.a6b2f","name":"","x":520,"y":900,"wires":[["b2783aaa.d18058"]]},{"id":"a812e798.32a078","type":"function","z":"2853f874.2afff8","name":"Set State","func":"let lastSonosValue = flow.get('lastSonosValue');\n//play/stop/pause/mute/ummute/\nif (lastSonosValue.state == \"stopped\") msg.payload = \"stop\";\nif (lastSonosValue.state == \"playing\") msg.payload = \"play\";\nif (lastSonosValue.state == \"paused\") msg.payload = \"pause\";\n\nmsg.topic = null;\nreturn msg;","outputs":1,"noerr":0,"x":360,"y":900,"wires":[["4f2b52c3.ea57bc"]]},{"id":"b2783aaa.d18058","type":"function","z":"2853f874.2afff8","name":"Set mute / unmute","func":"let lastSonosValue = flow.get('lastSonosValue');\n\n//play/stop/pause/mute/ummute/\nif (lastSonosValue.muted) msg.payload = \"mute\";\nif (!lastSonosValue.muted) msg.payload = \"unmute\";\n\nmsg.topic = null;\nreturn msg;","outputs":1,"noerr":0,"x":710,"y":900,"wires":[["c983bba8.095348"]]},{"id":"c983bba8.095348","type":"sonos-control-player","z":"2853f874.2afff8","confignode":"8f2bef6d.a6b2f","name":"","x":900,"y":900,"wires":[["1e569afc.b92025"]]},{"id":"18f82cc6.ee27d3","type":"change","z":"2853f874.2afff8","name":"get_basics","rules":[{"t":"set","p":"payload","pt":"msg","to":"get_basics","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":150,"y":560,"wires":[["378a4134.a3b55e"]]},{"id":"71593740.d437f8","type":"link in","z":"2853f874.2afff8","name":"","links":["a10cee98.84604","15172177.226ecf"],"x":35,"y":560,"wires":[["18f82cc6.ee27d3"]]},{"id":"a7d3439d.3d066","type":"link in","z":"2853f874.2afff8","name":"","links":["35d572a1.b61a8e","348a00d8.ef869"],"x":35,"y":800,"wires":[["402deaea.7ef624"]]},{"id":"1d3d7d3a.a6c903","type":"comment","z":"2853f874.2afff8","name":"Speichern uns Setzen weiterer Zonen in eigen Flow","info":"","x":210,"y":440,"wires":[]},{"id":"c3c2c146.a3be6","type":"delay","z":"2853f874.2afff8","name":"","pauseType":"delay","timeout":"100","timeoutUnits":"milliseconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":940,"y":400,"wires":[["8a9b467c.90c0f8"]]},{"id":"512caacf.6f2534","type":"delay","z":"2853f874.2afff8","name":"","pauseType":"delay","timeout":"100","timeoutUnits":"milliseconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":940,"y":300,"wires":[["8b3eb95e.d30638"]]},{"id":"8f2bef6d.a6b2f","type":"sonos-config","z":"","name":"Ausstellung","serialnum":"00-0E-58-7C-35-64:8","ipaddress":"192.168.1.155"},{"id":"5a9ae98b.4e1608","type":"sonos-config","z":"","name":"Bad OG","serialnum":"00-0E-58-7C-34-6C:F","ipaddress":"192.168.1.88"},{"id":"79184be3.d683a4","type":"sonos-config","z":"","name":"Sommerhaus","serialnum":"00-0E-58-A1-7E-14:4","ipaddress":"192.168.1.97"}]

...