Nautical Pea Maker

    iobroker.sonos

    2.3.0 • Public • Published

    Logo

    ioBroker.sonos

    Number of Installations Number of Installations NPM version

    Test and Release Translation status Downloads

    Control and monitor SONOS devices with ioBroker.

    Handling of groups

    • States for handling SONOS groups:
      • coordinator: set/get the coordinator, so the SONOS device which is the master and coordinating the group. It requires the IP address (channel name) of the SONOS device to be the coordinator, but with underscore _ instead of dot ., so use for example 192_168_0_100 for IP address 192.168.0.100. If the device does not belong to any group, then the value is equal to the own channel name (IP).
      • group_volume: the volume of the group
      • group_muted: mute status of the group.
      • add_to_group: Add a certain SONOS device to the SONOS device under which this state is. Use IP address with underscores (see above).
      • remove_from_group: Remove a certain SONOS device from the SONOS device under which this state is. Use IP address with underscores (see above).

    *) These states will be updated if changes are made in the SONOS app.

    Using with the sayIt adapter

    To use the sayit adapter with this SONOS adapter, ensure that the web adapter is instantiated and running too. The web adapter is required to allow the SONOS adapter to read the generated MP3 file from the sayit adapter.

    Warning: Stability problems in combination with sayIt adapter

    Please note: This SONOS adapter has stability issues if using 'text to speech' with the sayIt adapter. Symptoms observed:

    1. Arbitrary change of volume to 0 or 100 %.
    2. No response after a random number of text to speech sequences

    Workaround for text to speech is to use the SONOS HTTP API.

    Favorites & Queue in VIS

    Use states favorites_list_html and queue_html to show playlists and current queue with basic html widget in VIS. By click on a row the playlist or track will be played immediatly. Format the table with following css classes:

    Favorites

    • sonosFavoriteTable: hole favorite table
    • sonosFavoriteRow: rows with favorite information
    • sonosFavoriteNumber: Number of favorite
    • sonosFavoriteCover: Album art of favorite (grab image with .sonosFavoriteCover img)
    • sonosFavoriteTitle: Name of favorite

    Queue

    • .sonosQueueTable: hole table
    • .sonosQueueRow: rows containing track information
    • .currentTrack: added to the row containg current playing track
    • .sonosQueueTrackNumber: Number or track
    • .sonosQueueTrackCover: Album art of track (grab image with .sonosQueueTrackCover img)
    • .sonosQueueTrackArtist: Name of artist
    • .sonosQueueTrackAlbum: Name of album (use display:noneif not needed)
    • .sonosQueueTrackTitle: Name of title

    For long lists add overflow:auto; or overflow-y:auto; to basic html widget. Please note: highlighting current playing favorite is not supported.

    Sample CSS

    .sonosFavoriteTable {
        color: #bbb;
        font-size: 12px;
    }
    .sonosFavoriteRow {
        cursor: pointer;
    }
    .sonosFavoriteNumber {}
    .sonosFavoriteCover img {
        width: 30px;
        height: 30px;
    }
    .sonosFavoriteTitle {}
    
    .sonosQueueTable {
        color: #bbb;
        font-size: 12px;
    }
    .sonosQueueRow {
        display: table-row;
        cursor: pointer;
    }
    .sonosQueueRow.currentTrack {
        color: #fff;
        font-weight: bold;
    }
    .sonosQueueTrackNumber {}
    .sonosQueueTrackCover img {
        width: 30px;
        height: 30px;
        display: table-column;
    }
    .sonosQueueTrackArtist {
        display: table-row;
    }
    .sonosQueueTrackAlbum {
        display: none;
    }
    .sonosQueueTrackTitle {
        display: table-row;
    }
    

    To Do

    Configuration

    • Web server - [optional] If web server enabled or not
    • Update of elapsed time(ms) - Interval in ms how often to update elapsed timer when the title is playing. (Default 2000)

    Changelog

    2.3.0 (2023-01-11)

    • (Standarduser & Jey-Cee) Added new states favorites_list_html and queue_html with covers
    • (Standarduser) Changed default album art if no cover was found
    • (bluefox) Configuration migrated to JSON-Config

    2.2.3 (2022-07-04)

    • (Rello) Added track number state

    2.2.2 (2022-06-12)

    • (Apollon77) Prevent js-controller warnings

    2.2.1 (2022-06-12)

    • (Apollon77) fix group volume state

    2.2.0 (2022-06-08)

    • (Apollon77) Remove logic that adjusted the group volume after one member volume was set
    • (Apollon77) Make sure to not set state values for devices that are not configured
    • (Apollon77) Try to catch network errors

    2.1.7 (2021-12-20)

    • (bluefox) Corrected error with "SONOS not found"

    2.1.4 (2021-12-17)

    • (bluefox) Catch possible errors by the start and unload

    2.1.1 (2020-11-08)

    • (Apollon77) Prevent crash case (Sentry IOBROKER-JS-CONTROLLER-S7, #78)

    2.1.0 (2020-05-31)

    • (bluefox) TTS Refactoring

    2.0.2 (2020-05-25)

    • (bluefox) Refactoring

    2.0.1 (2019-11-04)

    • (klein0r) create sonos cache directory

    2.0.0 (2019-08-13)

    • (bluefox) no web server any more
    • (bluefox) update all used npm packages

    1.8.0 (2019-01-04)

    • (bluefox) Support js-controller compact mode

    1.7.7 (2018-08-06)

    • (bluefox) Fixed error with node.js 6

    1.7.5 (2018-08-06)

    • (bluefox) Trying to correct fade-out

    1.7.4 (2018-07-23)

    • (bluefox) The group volume has a valid role now
    • (bluefox) Important changes: state cover.png renamed to "cover_png"
    • (bluefox) added shuffle, repeat and crossfade modes. To enable it you must delete device from list and add it again
    • (bluefox) better icon
    • (bluefox) fix fade out option

    1.7.1 (2018-07-17)

    • (bluefox) Ready for npm6

    1.7.0 (2018-07-16)

    • (bluefox) Added the support of Admin3

    1.6.2 (2017-08-16)

    • (soef) no duration/elapsed update on radio

    1.6.0 (2017-04-09)

    • (justr1) Enhance group Handling

    1.5.0 (2017-02-23)

    • (bluefox) use new configuration dialog

    1.4.4 (2017-01-29)

    • (soef) removeFromGroup extended

    1.4.3 (2017-01-08)

    • (bluefox) Allow to use the sonos web via with proxy

    1.4.2 (2016-12-29)

    • (bluefox) add states for vis control and change some roles

    1.3.1 (2016-12-27)

    • (bluefox) Fix TTS if fade was 0

    1.3.0 (2016-12-13)

    • (bluefox) Fix api changes of SONOS module

    1.2.1 (2016-12-10)

    • (bluefox) add web adapter as dependency

    1.2.0 (2016-10-25)

    • (bluefox) tts was rewritten because of new sonos-discovery interface

    1.1.0 (2016-10-20)

    • (bluefox) update sonos npm packets
    • (bluefox) configurable fadeIn and fadeOut

    1.0.0 (2016-10-16)

    • (bluefox) fix fade out

    0.2.2 (2016-09-30)

    • (bluefox) fix types of states

    0.2.1 (2016-09-25)

    • (soef) fixed restore of radio after sayIt

    0.2.0 (2016-07-28)

    • (soef) fixed restore of radio after sayIt
    • (bluefox) fix log outputs
    • (bluefox) update libraries and use fix versions of it

    0.1.10 (2016-05-26)

    • (bluefox) check type of "state"

    0.1.9 (2016-05-20)

    • (bluefox) change default port to 8080

    0.1.8 (2016-02-22)

    • (hagen) - Better handling of radio stations (show -> album, streamInfo -> artist)
    • (hagen) New state 'current_type' to tell if a track or radio is playing
    • (hagen) (Hopefully) fixed the unreliable cover art update

    0.1.7 (2015-09-14)

    • (bluefox) fix favorites set

    0.1.6 (2015-02-25)

    • (bluefox) implement tts if radio is playing

    0.1.5 (2015-02-13)

    • (bluefox) set volume by TTS

    0.1.4 (2015-01-04)

    • (bluefox) catch errors if states deleted

    0.1.3 (2015-01-02)

    • (bluefox) enable npm install

    0.1.2 (2014-12-12)

    • (bluefox) redirect logging messages to ioBroker

    0.1.1 (2014-12-04)

    • (bluefox) translate grid in config dialog

    0.1.0 (2014-12-04)

    • (bluefox) use sonos-web-controller module as tarball from git

    0.0.5 (2014-11-24)

    • (bluefox) support of new naming concept

    0.0.4 (2014-11-22)

    • (bluefox) support of text to speech

    0.0.3 (2014-11-01)

    • (bluefox) support of text to speech and cover image

    0.0.2 (2014-11-01)

    • (bluefox) improve configuration edit

    License

    The MIT License (MIT)

    Copyright (c) 2014-2023, bluefox dogafox@gmail.com

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

    Install

    npm i iobroker.sonos

    DownloadsWeekly Downloads

    303

    Version

    2.3.0

    License

    MIT

    Unpacked Size

    713 kB

    Total Files

    24

    Last publish

    Collaborators

    • foxriver76
    • iobluefox
    • bluefox
    • apollon77
    • ldittmar
    • alcalzone