Originally posted by deanrparry
View Post
Still not perfect though. There are long delays between device-updates and really inconsistent functionality, but that might be the plugin or the docker itself (both are quite messy).
Anyways, use -p 1900:1900/udp when creating your container with the docker run command and it should detect the player after a short while of initiating the plugin.
UPDATE:
Opening port 1900 will enable the discovery of the Sonos speakers, and you will be able to control it from homeseer, but it won't help with the receiving of broadcast messages from the speakers (current track, volume, album art, etc).
I realized that this is because of upnp/ssdp multicast which uses a wide spectrum of random ports to broadcast the info to all its clients. Because homeseer was in a closed container with a virtual network, only allowing communication on a selected few ports, it could not receive this info. Setting up port forwarding for the whole spectrum was impossible.
There are solutions to somehow forward the communication on multicast ports, but it required more work than I wanted to. So the quick and easy way to fix this was to add --net=host when creating the docker container so that no virtual network is created and the IP plus all ports are shared with the host computer.
Works great for me, as I mainly wanted homeseer in a closed container because of mono and dependencies conflicting with other apps on my server.
Leave a comment: