Current version: 1.5.2 Stable
Date: 18/12/2021
FUNCTIONS
The functions of this Quick App are:
Allowing to control Sonos Player from Home Center 3. It does support basic and advanced functions:
-
Basic Transport Control
- Initiate playback
- Toogle, Pause or Stop playback
- Skip to the previous or Next track
-
Basic Rendering Control
- Get player volume and mute state
- Set player volume to a specific level and unmute the player if muted
- Increase or decrease player volume
- Get or Set or Toggle player mute state (Mute or unmute the player)
- Get or Set or Toggle player loudness state
- Device Properties
- Get or Set group LED state
- Restart the QA Device
- Enable Debug Mode
See Changelog / Manual for basic and advanced available actions
Examples:
- Set player volume to a specific level and unmute the player if muted.
fibaro.call(ID_QUICKAPP, "setVolume", volume_number, "MASTER")
- Increase or decrease player volume.
fibaro.call(ID_QUICKAPP, "setRelativeVolume", relative_value, "MASTER")
- Initiate playback.
fibaro.call(ID_QUICKAPP, "play")
Play radio station
fibaro.call(ID_QUICKAPP, "playRadio", radio_index)
-
Play a file at volume 10 with snapshot/revert process to restore previous state
fibaro.call(ID_QUICKAPP, "playFile", "35HTGV34R7S/CD/Album/song.flac", true, 10)
- Play a stream at volume 20 & 8s duration with snapshot/revert process to restore previous state
fibaro.call(ID_QUICKAPP, "playStream", "https://s3.amazonaws.com/smartapp-media/sonos/bell1.mp3", true, 20, 8000)
PREREQUISITES
- Fibaro Home Center 3 with firmware 5.050.xx or greater
- One or more Sonos devices
INSTALLATION AND SETUP
How to configurate the Quick App:
Fibaro Quick Apps manual: https://manuals.fibaro.com/home-center-3/ (see installing a quick APP)
Uploading file:
- Open the Configuration Interface.
- Go to Settings > Devices.
- Click
- Choose Other Device
- Choose Upload File
- Choose file from your computer > SonosZoneController.fqa
Define variables:
- Go to > Devices
- Choose Other Device
- Open QA
- Choose Varibles tab
- Update the variables
- IP Address (ex: 192.168.1.200)
- TCP Port (1400 is the default port)
- Polling (Main polling setted to 10 seconds by default)
- Save
Notes: notifications can be sent in case of configuration problems or communication errors with the device
ADDITIONAL DEVICES
Not required
DISCLAIMER
This software is provided by copyright owner "as is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the author and distributor be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.
Fibar Group S.A. and their employees are not responsible for support of the Sonos Zone Controller Quick App.Please contact the author Jean-Christophe Vermandé (Krikroff), on the Fibaro Forum, for any questions or support required.
Fibaro Main Forum: https://forum.fibaro.com/profile/523-krikroff/
Non official French Forum: https://www.domotique-fibaro.fr/profile/3-krikroff/
LEGAL NOTICE
Sonos® is the trading name of Sonos Inc. in Santa Barbara, U.S.A. (Sonos legal terms)
PACKAGE CONTENT
- Sonos Zone Controller QuickApp (fqa)
- Changelog EN
- User Manual / Install EN
- Icon
RELEASE NOTES
Version 1.5.2
Tested with Sonos OS: S2 - Version 13.4.1 (number 66423300)
Tested with HC3 & HC3Lite v5.091.00
- Improved support for Sonos Amp & Sonos One Gen2/SL and communication performance improvement
- Add new volume limiter feature: an option to prevent damage with unwanted high volume
- Add support for "Device disabled" option available in quick app advanced panel
- Add possibility to emits custom event when initiating a playback (playing), paused and stop playback state (just declare event name used in quick app variable panel ex: "event.stopped" or "event.playing" and the events in "General => Events". You can now triggering scenes on events) (https://forum.fibaro.com/topic/55510-create-a-scene-when-sonos-play-it-activate-a-whall-socket/#comment-235990)
- Fix a problem occured in some cases when zone controller browse device directory and parse items Declaration (DIDL) resulting an out of service for the QuickApp
Version 1.4.0
Tested with Sonos Sonos OS: S2 - Version 13 (number 62186220)
Tested with HC3 & HC3Lite v5.050.13 -> v5.063.30
- Fix for Sonos firmware version 13
- Fix for Sonos ARC getPositionInfo and malformed xmlsoap (hope full supoport soon)
- Add playNextRadio command to navigate the radios
- Add play mode control from QA button (loop in NORMAL,REPEAT_ALL,REPEAT_ONE,SHUFFLE_NOREPEAT,SHUFFLE,SHUFFLE_REPEAT_ONE)
- Fix Radio metadata strange behaviors in some situations
Version 1.3.8
Tested with Sonos Sonos OS: S2 - Version 12.2.2 (number 61183220)
- Improved support for albumArt, now work with Sonos Radio, Amazon Music, Spotify, TuneIn, Music library
- Add option 'protect' to playFile and playStream for disallow to restart a playing
- Add Crossfade mode support with getCrossfadeMode, setCrossfadeMode and toggleCrossfadeMode commands
- Add sleepTimer command
- Add setPlayMode command, support: NORMAL,REPEAT_ALL,REPEAT_ONE,SHUFFLE_NOREPEAT,SHUFFLE,SHUFFLE_REPEAT_ONE
- Add selectLineIn command
- Add in variables panel, "notification" variable to enable or disable the "Device notification error", if disabled QA trace the message in QA console only
- Various improvement
Version 1.3.1 RC
Tested with Sonos Software Version: 56.0-76060 / Sonos OS: S2 - Version 12.0.5 & 12.1
- Add support to use in block scenes (Play, Pause, Stop, Next, Prev, Set Volume, Set mute)
- Support for album covers when available (cf. music library)
- Performance improvement when initiating a playback
- Improved radio playback and track information
- Increase the number of supported radio stations (with auto configuration up to 9)
- Support for Sonos playlists (with auto configuration up to 6 saved queues)
- Add playFile command
- Add playStream command
- Add playSavedQueue command
- Add startQueue command
- Add clearQueue command
- Add seek command
- Add snapshot command
- Add revert command
- Add getListSavedQueues command
- Add addURIToQueue command
- Add checkForUpdate command
- Add getTreble and setTreble commands
- Add getBass and setBass commands
- Various Bug fixes (Polling when not configured, parsing ...)
Version 1.1.0
- Support for TuneIn "My radio stations" (with auto configuration up to 6 radios)
- Deletion of the variable variable "isConfigured" used by internal FTI Configuration
- Minor bug fixes (No route to host cause wrong configuration status)
- Tested with Sonos Software Version:55.1-74250 and 56.0-76060
- Performance improvement
Version 1.0.3
- Fix a problem with internal zoneGroups and ZoneGroupMembers parsing (Thanks to jgab, Alan Klepacz and robw)
Version 1.0.2
- Minor bug fixes (Thanks to Macschimmi, Bodyart, minsad79)
Version 1.0.0
- Based on my HC2 virtual Device and completely rewriten for HC3 v5.030.45 or highter
- Very low latency and more robust device (commands execution, processing)
- Easy installation with auto configuration assist
- Support standard capabilities (AVTransport, RenderingControl)
- Displaying information on the currently playing or media loaded
- Fully controllable from the LUA scenarios (see available command list)
ROADMAP
- Support for multi-devices in group used for triggering in scene and prepare for group-ungroup
- Support for TV source (if supporteed by device)
- Support for Group
- Support for TTS
Hello Jean, thank you for this awesome QA! As always your work is exceptional and welcomed! I have learned much from your work.