SoCo 0.13 release notes
SoCo 0.13 is a new version of the SoCo library. This release adds new features and fixes several bugs.
SoCo (Sonos Controller) is a simple Python class that allows you to programmatically control Sonos speakers.
New Features and Improvements
The IP address used by the events listener can be configured (#444)
Add support for night mode (#421) and dialog mode (#422) on devices supporting the respective feature.
Add queue-able data structures for the music service items (#455)
Add a method for queueing multiple items with a single request (#470)
Add methods to get and set the uri(s) of a
DidlObject
. (#482)Add support for line in from other speakers (#460)
Enhance
add_to_queue()
to with optional position argument (#471)Added
by_name
function to discovery to be able to get a device byplayer_name
(#487)allow choice of how to play streams in
play_uri
(override Sonos default withforce_radio=True
) (#491)Added
ramp_to_volume()
method to smoothly change the volume (#506)Added FAQ, documentation and two examples to explain using SoCo’s Snapshot function (#493)
Update documentation for
add_uri_to_queue
(#503)Added a FAQ section to the docs with play_uri and play local files answers (#481)
A few queue related micro examples was added to the examples page in the docs (#484)
Further documentation updates (#435, #436, #459, #476, #489, #496, #522)
Bugfixes
Fixes an issue where restarting an application that had subscribed to events sometimes causes an error when the events are delivered to the new instance (#437)
Fixes an issue where multiple threads trying to subscribe to events in parallel would sometimes cause SoCo to attempt to create multiple event listener servers and fail on
socket.bind()
. (#437)Fixes an issue where SoCo would not recognize
object.container.playlistContainer.sonos-favorite
when receiving events (#438).Fixes a bug in
play_uri
where it would not play a http or https prefixed radio stream due to a change in the Sonos API (issue #434). This change fixes it by replacing the two http type prefixes with Sonos’x-rincon-mp3radio://
prefix (#434, #443)Fixes an exception being raised on Windows with
discover
. The error was caused bysocket.getsockname
raising an exception on Windows with and unconnected unbound socket. Fixed by now simply logging the sockets. (#445)Change to use SoCo method to determine coordinator in Snapshot (#529, #519)
Prevent error when queue started from Alexa and using snapshot. Currently there is no was to restart a cloud queue from SoCo, this PR just prevents Snapshot causing an error. (#530, #521)
Fix
add_multiple_to_queue
fails with too many items (#488)Fixed log level (#534)