MagicMirror-Sonos-Module
This is an adaption of the MagicMirror-SonosModule by Vaggan. It was modified to fit the new module system and got some enhancements in visualisation an configuration.
Usage
Prerequisites:
- requires MagicMirror v2.0.0
- install and run node-sonos-http-api
Installation
Navigate into your MagicMirror's modules folder:
cd ~/MagicMirror/modules
Clone this repository:
git clone https://github.com/CFenner/MMM-Sonos
Navigate to the new MMM-Sonos folder and install the node dependencies.
cd MMM-Sonos/ && npm install --production
Configure the module in your config.js file.
Configuration
To run the module properly, you need to add the following data to your config.js file.
{
module: 'MMM-Sonos',
position: 'top_right', // you may choose any location
config: {}
}
You also can set some options to hide different parts of the module.
Option | Description | Default |
---|---|---|
showStoppedRoom |
Trigger the visualization of stopped rooms. | true |
showAlbumArt |
Trigger the visualization of the album art. | true |
showRoomName |
Trigger the visualization of the room name. | true |
Known Issues
The module may not be able to access the data of the sonos API due to a Cross-Origin Resource Sharing (CORS) issue. This could be solved by adding the following lines to the sonos-http-api.js
just before res.write(new Buffer(jsonResponse));
in the sonos api. Remember to restart the service after the change.
res.setHeader("Access-Control-Allow-Origin", "http://localhost");
res.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
How to Install Sonos-API
To install the Sonos-API just clone the repository to your PI.
git clone https://github.com/jishi/node-sonos-http-api.git
Navigate to the new node-sonos-http-api folder and install the node dependencies.
cd node-sonos-http-api && npm install --production
Now you can run the service with:
npm start
I really recommend to use PM2 like it is described on the MagicMirror Wiki page.
cd ~/Sonos
npm start