SoCo 0.11 release notes¶
SoCo 0.11 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 new properties
is_playing_tv
,is_playing_radio
andis_playing_line_in
have been added (#225) - A method
get_item_album_art_uri
has been added to return the absolute album art full uri so that it is easy to put the album art in user interfaces (#240). - Added support for satellite speaker detection in network topology parsing code (#245)
- Added support to search the music library for tracks, an artists’ albums and an artist’s album’s tracks (#246)
- A fairly extensive re-organisation of the DIDL metadata handling code, which brings SoCo more into line with the DIDL-Lite spec, as adopted by Sonos. DIDL objects can have now have multiple URIs, and the interface is much simpler. (#256)
- Event objects now have a timestamp field (#273)
- The IP address (ie network interface) for discovering Sonos speakers can now be specified (#277)
- It is now possible to trigger an update of the music library (#286)
- The event listener port is now configurable (#288)
- Methods that can only be executed on master speakers will now raise a
SoCoSlaveException
(#296) - An example has been added that shows how to play local files by setting up a temporary HTTP server in python (#307)
- Test cleanup (#309)
Bugfixes¶
- The value of the IP_MULTICAST_TTL option is now ensured to be one byte long (#269)
- Various encoding issues have been fixed (#293, #281, #306)
- Fix bug with browsing of imported playlists (#265)
- The
discover
method was broken in Python 3.4 (#271) - An unknown / missing UPnP class in event subscriptions has been added (#266, #301, #303)
- Fix
add_to_queue
which was broken since the data structure refactoring (#308, #310)