I wrote a Slack bot that controls and reacts to the state of Sonos controllers on your network. It can send GIPHYs to the channel as well as analyze the sentiment of the lyrics of the current song.

jim [5:35 PM]
whats playing

sonosbot BOT [5:35 PM]
`The Avener & Phoebe Killdeer - Fade Out Lines - The Avener Rework`

jim [5:35 PM]

sonosbot BOT [5:35 PM]
`jim requested to pause this track.`

jim [5:35 PM] 

sonosbot BOT [5:35 PM]
`jim requested to continue playing music.`


You will need to provide your own credentials within config.js, a sample-config.js is provided as an example. The bot server must run on the same network that hosts your Sonos devices.

npm install
node bot.js

Source code

You can find the latest version on GitHub.