I don't like that the service is always discoverable - it should provide a discovery timeout option.
When timeout is set, the controller will only advertise SSDP and the setup URL for the specified duration. After that, only devices that have already discovered (or otherwise "know" the address/protocol) can control the smartswitch.