Giter Club home page Giter Club logo

iobroker.sonos's Introduction

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 it 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 clicking on a row, the playlist or track will be played immediately. Format the table with the following css classes:

Favorites

  • sonosFavoriteTable: hole favorite table
  • sonosFavoriteRow: rows with favorite information
  • sonosFavoriteNumber: Number of favorites
  • 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 the 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

WORK IN PROGRESS

  • (seb2010) Added support for treble and bass information
  • (Apollon77) stores the tts files in files instead of binary states

3.0.0 (2023-10-09)

  • (udondan) Added support for the playing Sonos playlists (added new state playlist_set)
  • (bluefox) The minimal node.js version is 16

2.3.3 (2023-09-21)

  • (foxriver76) fixed cover url

2.3.2 (2023-09-20)

  • (foxriver76) stores the cover file in files instead of binary states

2.3.1 (2023-03-22)

  • (Apollon77) Prepare for future js-controller versions

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-2024, bluefox [email protected]

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.

iobroker.sonos's People

Contributors

apollon77 avatar dependabot[bot] avatar foxriver76 avatar germanbluefox avatar jens-maus avatar justr1 avatar klein0r avatar lgtm-migrator avatar maeb3 avatar marty56 avatar mic-m avatar rello avatar ruhr70 avatar scrounger avatar seb2010 avatar soef avatar standarduser avatar t4qjxh8n avatar udondan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

iobroker.sonos's Issues

1.7.6. TTS does not work anymore

The sayit does not work anymore since 1.7.6
Is there a way to downgrade to 1.7.4 or 1.6.2? These versions worked

Log says:
sonos.0 | 2018-08-27 22:47:53.533 | info | http sonos server listening on port 8080
sonos.0 | 2018-08-27 22:47:53.512 | info | starting. Version 1.7.6 in /opt/iobroker/node_modules/iobroker.sonos, node: v8.11.4
sonos.0 | 2018-08-27 22:47:20.785 | info | terminating
sonos.0 | 2018-08-27 22:47:20.770 | info | terminating
sonos.0 | 2018-08-27 22:47:20.765 | error | at Timer.listOnTimeout (timers.js:290:5)
sonos.0 | 2018-08-27 22:47:20.765 | error | at tryOnTimeout (timers.js:323:5)
sonos.0 | 2018-08-27 22:47:20.765 | error | at ontimeout (timers.js:508:15)
sonos.0 | 2018-08-27 22:47:20.765 | error | at Timeout.playOnSonos [as _onTimeout] (/opt/iobroker/node_modules/iobroker.sonos/main.js:1015:9)
sonos.0 | 2018-08-27 22:47:20.765 | error | at fadeOut (/opt/iobroker/node_modules/iobroker.sonos/main.js:821:38)
sonos.0 | 2018-08-27 22:47:20.765 | error | TypeError: Cannot read property 'actual' of undefined
sonos.0 | 2018-08-27 22:47:20.764 | error | uncaught exception: Cannot read property 'actual' of undefined

Blockly script for test:
<xml xmlns="http://www.w3.org/1999/xhtml">
  <block type="on" id="C28rU(g@cUlNr-Yxpa-;" x="163" y="388">
    <field name="OID">cloud.1.services.ifttt</field>
    <field name="CONDITION">any</field>
    <field name="ACK_CONDITION"></field>
    <statement name="STATEMENT">
      <block type="controls_if" id="@5QrqlYJh;UW5ukVI=1K">
        <value name="IF0">
          <block type="logic_compare" id="3+{vuTd8NuZ47B{e-6k[">
            <field name="OP">EQ</field>
            <value name="A">
              <block type="get_value" id="UQ1Q~O[b-wB28s~x|A!~">
                <field name="ATTR">val</field>
                <field name="OID">cloud.1.services.ifttt</field>
              </block>
            </value>
            <value name="B">
              <block type="text" id="fh#A~Bgmbx|21=0Jc77s">
                <field name="TEXT">sonos</field>
              </block>
            </value>
          </block>
        </value>
        <statement name="DO0">
          <block type="sayit" id="3dkJ!/2[Pf`X^VD+b8L2">
            <field name="INSTANCE">.1</field>
            <field name="LANGUAGE"></field>
            <field name="LOG"></field>
            <value name="MESSAGE">
              <shadow type="text" id="zM^nm,p:m[cnfeg{LYA[">
                <field name="TEXT">Das ist ein Test</field>
              </shadow>
            </value>
          </block>
        </statement>
      </block>
    </statement>
  </block>
</xml>

Nach sayIt Ansage wird eine vorhandene Gruppe aufgelöst

Wenn ich eine Gruppe mit mind. 2 Sonos Play:1 eingestellt habe, Radio höre und dann eine SayIt Ansage für den Adapter laufen lasse, wird danach zwar auf beiden der ursprüngliche Radiosender wieder weiter gespielt, jedoch nicht mehr in einer Gruppe, sondern einzeln. Wäre super wenn das behoben werden würde.
Danke für die Arbeit :-). Gruß AlGu

Sonos sayit follow by mp3 sound not working

When trying to play an mp3 file on my Sonos speaker following a previous sayit command the sound is not playing but instead the text from the sayit command is repeated.
My Sonos player is assigned to an instance "sayit.2".

Example:
setState('sayit.2.tts.text','This is a test');

... wait some time (minutes)

the trying to play sound by

// 192_168_12_32 is IP of Sonos box
// 192.168.12.28 is IP of iobroker instance

setState("sonos.0.root.192_168_12_32.tts",'50;http://192.168.12.28:8082/sayit.1/tts.userfiles/hunde.mp3');

results into a replay of "This is a test".

Playing several subsequent sayit texts are working fine.
It seems that the sayit adapter is leaving Sonos is a kind of half completed state.
If my Sonos player has stopped playing a song from my music library, trying to play sound with the command above is working fine.

PS: I have tested it and the bug is not always happening. Sometimes the sequence is working, sometimes not. I have not found out what the critical fringe conditions are when the bug is occurring.

Txt to Speech adapter is locking Sonos if text is short

If the text which should be played by the Text to speech adapter using Sonos is too short (about 3-5 sec) then Sonos does not play the corresponding output. Further it refuses to play further text to speech commands and also any mp3 sounds.
This kind of "lock" state can only be left by hitting play in the Sonos App and deleting the playlist.

Workaround: test length of spoken text and add some dummy text if text is too short.
In my tests 20 characters seem to be about minimum text length.

My test setup is a Sonos Play and a Sonos Playbar. I have conducted the tests on the Playbar.

To reproduce try playing the text "hallo" which causes this state.
In contrast "hallo! Schönes Wetter heute!" does not fail.

Neustart von Adapter nach Favoriten setzen.

Es führt jedoch dazu, dass der Adapter neu gestartet werden muss
http://forum.iobroker.org/viewtopic.php?f=22&t=1322

var idSonos     = "sonos.0.root.x_y_z_9";         // id verschleiert
var idButton    = "hm-rpc.1.LEQ09xxxxx.1";     // id verschleiert

idSonos=idSonos+".";
idButton=idButton+".";

/* --- Next list of favorites --- */
subscribe({id: idButton+"PRESS_LONG", val: true}, function (obj) {
            var volume = "10";                                                  //Standardlautstärke
            var favList = getState(idSonos+"favorites_list").val.split(',');    //Hole Favoritenlisten
            var curList = getState(idSonos+"favorites_set").val;                //Akutelle Favoritenliste
            var i = favList.indexOf(curList);                                   //Finde Index der akutellen Favoritenliste                        
            i++;                                                                //Nächste Favoritenliste; wenn kein Treffer Index = 0;
            setState(idSonos+"favorites_set",favList[i].trim());                //Spiele nächste Favoritenliste ab
});

Sonos-Cache directory missing

on new iobroker with new Sonos adapter installation the Sonos-cache directory is not created:

`

2019-08-18 22:55:32.358 - error: Caught by controller[0]: { [Error: ENOENT: no such file or directory, open '/opt/iobroker/iobroker-data/sonosCache/xxxxx']

2019-08-18 22:55:32.359 - error: Caught by controller[0]: errno: -2,
2019-08-18 22:55:32.359 - error: Caught by controller[0]: code: 'ENOENT',
2019-08-18 22:55:32.359 - error: Caught by controller[0]: syscall: 'open',
2019-08-18 22:55:32.359 - error: Caught by controller[0]: path:
2019-08-18 22:55:32.359 - error: Caught by controller[0]: '/opt/iobroker/iobroker-data/sonosCache/xxxxxx' }
2019-08-18 22:55:32.359 - error: host.iob instance system.adapter.sonos.0 terminated with code 0 (OK)

`

Sonos Geraete in anderem Subnetz -> geht nicht

Mein IOBroker Server war in einem anderen Subnetz (192.168.1.x/24) als die Sonos Player (192.168.5.x/24), dadurch funktionierte nichts - es gab aber auch keine Fehlermeldung, weder im Config Dialog noch im Log. Die Objektwerte blieben einfach nur 0 :-(

Ich habe mal testweise ein tcpdump mitlaufen lassen und es war keinerlei Kommunikation mit den Playern zu sehen.

Sobald ich meinem Server eine Alias IP im selben Subnetz wie die Player gegeben habe, funktionierte alles.

Problem with SayIt

host.buanet-iobroker1 2018-10-23 13:48:58.824 error instance system.adapter.sonos.0 terminated with code 0 (OK)
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: (node:1852) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 5): Error: Got status 500 when invoking /MediaRenderer/AVTransport/Control
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: (node:1852) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 4): Error: Got status 500 when invoking /MediaRenderer/AVTransport/Control
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: (node:1852) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 3): Error: Got status 500 when invoking /MediaRenderer/AVTransport/Control
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: path: '/opt/iobroker/iobroker-data/sonosCache/tts1.mp3"/' }
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: syscall: 'open',
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: code: 'EISDIR',
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: errno: -21,
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: at Error (native)
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: { Error: EISDIR: illegal operation on a directory, open '/opt/iobroker/iobroker-data/sonosCache/tts1.mp3"/'
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: path: '" "sayit.0.tts.mp3"/' }
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: syscall: 'open',
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: code: 'ENOENT',
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: errno: -2,
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: at Error (native)
host.buanet-iobroker1 2018-10-23 13:48:58.823 error Caught by controller[2]: { Error: ENOENT: no such file or directory, open '" "sayit.0.tts.mp3"/'
host.buanet-iobroker1 2018-10-23 13:48:58.822 error Caught by controller[1]: path: '/opt/iobroker/iobroker-data/sonosCache/tts0.mp3"/' }
host.buanet-iobroker1 2018-10-23 13:48:58.822 error Caught by controller[1]: syscall: 'open',
host.buanet-iobroker1 2018-10-23 13:48:58.822 error Caught by controller[1]: code: 'EISDIR',
host.buanet-iobroker1 2018-10-23 13:48:58.822 error Caught by controller[1]: errno: -21,
host.buanet-iobroker1 2018-10-23 13:48:58.822 error Caught by controller[1]: at Error (native)
host.buanet-iobroker1 2018-10-23 13:48:58.822 error Caught by controller[1]: { Error: EISDIR: illegal operation on a directory, open '/opt/iobroker/iobroker-data/sonosCache/tts0.mp3"/'
host.buanet-iobroker1 2018-10-23 13:48:58.822 error Caught by controller[0]: path: '" "sayit.0.tts.mp3"/' }
host.buanet-iobroker1 2018-10-23 13:48:58.822 error Caught by controller[0]: syscall: 'open',
host.buanet-iobroker1 2018-10-23 13:48:58.822 error Caught by controller[0]: code: 'ENOENT',
host.buanet-iobroker1 2018-10-23 13:48:58.822 error Caught by controller[0]: errno: -2,
host.buanet-iobroker1 2018-10-23 13:48:58.822 error Caught by controller[0]: at Error (native)
host.buanet-iobroker1 2018-10-23 13:48:58.820 error Caught by controller[0]: { Error: ENOENT: no such file or directory, open '" "sayit.0.tts.mp3"/'

its Version 1.77

startInstance system.adapter.sonos.0: required adapter "web" not found!

Ich habe heute ein System Update gemacht auf js-controller 1.514 und node.js 10.16.0
Mein System ist Master Slave. Der Sonos Adapter lief in der Vergangenheit immer auf dem Slave. Lässt sich jetzt aber nicht mehr starten ->

startInstance system.adapter.sonos.0: required adapter "web" not found!

Gibt es da eine Lösung. 2x den Web Adapter zu installieren macht in meinen Augen keinen Sinn. Der Sonos Adapter läuft auf dem Slave um Resourcen zu sparen.

[Request] Change state favorites_list from comma separated to semicolon separated

The state favorites_list lists all Sonos favorites separated by comma and space ", ". This is causing issues if the favorite name contains a comma. See discussion in the ioBroker forum: https://forum.iobroker.net/post/298674
My suggestion is to change this state from comma & space separated list to a semicolon-separated list, like this is done also in other adapters (like Spotify).
Or, ideally, provide an additional JSON state with all the favorites.

Thoughts?

Thanks.

Keine Steuerung möglich, obwohl Web-Frontend funktioniert

Mein iobroker läuft auf meinem Synology-Server und ist mit Amazon Alexa per iobroker cloud verbunden. Ich habe Sonos als Smart Gerät eingebunden und steuere es so per Sprache an.
Die Sonos-Steuerung per Adapter-Webseite funktioniert einwandfrei, alle Sonos-Geräte werden erkannt.
Leider funktioniert aber die Sprachsteuerung nicht, der Sonos-Adapter tut trotz ansteuerung (im Log sichtbar) nichts. Auch die Ausgabe der Bestätigung per sayit kommt nicht an.
Hier das Log:
sayit.0 2017-02-17 23:44:00.255 info sayit.0 Copied file "/opt/iobroker/node_modules/iobroker.sayit/say.mp3" to "/opt/iobroker/cache/f3879be4ea7d254b3a90e80f147c78a5.mp3" sayit.0 2017-02-17 23:44:00.254 info sayit.0 Send to sonos 70;http://192.168.0.122:8082/state/sayit.0.tts.mp3 DiskStation 2017-02-17 23:44:00.144 info host.DiskStation Restart adapter system.adapter.sonos.0 because enabled DiskStation 2017-02-17 23:44:00.143 error host.DiskStation instance system.adapter.sonos.0 terminated with code 0 (OK) sonos.0 2017-02-17 23:44:00.103 info sonos.0 terminating sonos.0 2017-02-17 23:44:00.103 error sonos.0 TypeError: fileName.indexOf is not a function at text2speech (/opt/iobroker/node_modules/iobroker.sonos/sonos.js:576:24) at Adapter. (/opt/iobroker/node_modules/iobroker.son sonos.0 2017-02-17 23:44:00.103 error sonos.0 uncaught exception: fileName.indexOf is not a function sonos.0 2017-02-17 23:44:00.103 info sonos.0 try to control id sonos.0.root.192_168_0_227.tts with {"val":false,"ack":false,"ts":1487371440087,"q":0,"from":"system.adapter.cloud.0","lc":1487371440087} sayit.0 2017-02-17 23:44:00.080 info sayit.0 saying: Sonos Wohnzimmer ist ausgeschaltet! sonos.0 2017-02-17 23:39:53.908 info sonos.0 http sonos server listening on port 8080 sonos.0 2017-02-17 23:39:53.905 info sonos.0 starting. Version 1.4.2 in /opt/iobroker/node_modules/iobroker.sonos, node: v4.4.2 DiskStation 2017-02-17 23:39:52.040 info host.DiskStation instance system.adapter.sonos.0 started with pid 20004 sayit.0 2017-02-17 23:39:22.150 info sayit.0 Copied file "/opt/iobroker/node_modules/iobroker.sayit/say.mp3" to "/opt/iobroker/cache/8df2f0414f57e3e1780155b37813da40.mp3" sayit.0 2017-02-17 23:39:22.145 info sayit.0 Send to sonos 70;http://192.168.0.122:8082/state/sayit.0.tts.mp3 DiskStation 2017-02-17 23:39:22.028 info host.DiskStation Restart adapter system.adapter.sonos.0 because enabled DiskStation 2017-02-17 23:39:22.028 error host.DiskStation instance system.adapter.sonos.0 terminated with code 0 (OK) sonos.0 2017-02-17 23:39:21.995 info sonos.0 terminating sonos.0 2017-02-17 23:39:21.995 error sonos.0 TypeError: fileName.indexOf is not a function at text2speech (/opt/iobroker/node_modules/iobroker.sonos/sonos.js:576:24) at Adapter. (/opt/iobroker/node_modules/iobroker.son sonos.0 2017-02-17 23:39:21.995 error sonos.0 uncaught exception: fileName.indexOf is not a function sonos.0 2017-02-17 23:39:21.994 info sonos.0 try to control id sonos.0.root.192_168_0_227.tts with {"val":true,"ack":false,"ts":1487371161977,"q":0,"from":"system.adapter.cloud.0","lc":1487371109860} sayit.0 2017-02-17 23:39:21.977 info sayit.0 saying: Sonos Wohnzimmer ist eingeschaltet! sonos.0 2017-02-17 23:38:32.750 info sonos.0 http sonos server listening on port 8080 sonos.0 2017-02-17 23:38:32.746 info sonos.0 starting. Version 1.4.2 in /opt/iobroker/node_modules/iobroker.sonos, node: v4.4.2 DiskStation 2017-02-17 23:38:30.906 info host.DiskStation instance system.adapter.sonos.0 started with pid 19706 sayit.0 2017-02-17 23:38:30.038 info sayit.0 Copied file "/opt/iobroker/node_modules/iobroker.sayit/say.mp3" to "/opt/iobroker/cache/8df2f0414f57e3e1780155b37813da40.mp3" sayit.0 2017-02-17 23:38:30.031 info sayit.0 Send to sonos 70;http://192.168.0.122:8082/state/sayit.0.tts.mp3 sayit.0 2017-02-17 23:38:29.870 info sayit.0 saying: Sonos Wohnzimmer ist eingeschaltet! sayit.0 2017-02-17 23:38:01.144 info Copied file "/opt/iobroker/node_modules/iobroker.sayit/say.mp3" to "/opt/iobroker/cache/f3879be4ea7d254b3a90e80f147c78a5.mp3" sayit.0 2017-02-17 23:38:01.128 info Send to sonos 70;http://192.168.0.122:8082/state/sayit.0.tts.mp3 host.DiskStation 2017-02-17 23:38:00.889 info Restart adapter system.adapter.sonos.0 because enabled host.DiskStation 2017-02-17 23:38:00.888 error instance system.adapter.sonos.0 terminated with code 0 (OK) sonos.0 2017-02-17 23:38:00.852 info terminating sonos.0 2017-02-17 23:38:00.851 error at Timer.listOnTimeout (timers.js:92:15) sonos.0 2017-02-17 23:38:00.851 error at null._onTimeout (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:2870:38) sonos.0 2017-02-17 23:38:00.851 error at Adapter.emit (events.js:172:7) sonos.0 2017-02-17 23:38:00.851 error at emitTwo (events.js:87:13) sonos.0 2017-02-17 23:38:00.851 error at Adapter. (/opt/iobroker/node_modules/iobroker.sonos/sonos.js:146:17) sonos.0 2017-02-17 23:38:00.851 error at text2speech (/opt/iobroker/node_modules/iobroker.sonos/sonos.js:576:24) sonos.0 2017-02-17 23:38:00.851 error TypeError: fileName.indexOf is not a function sonos.0 2017-02-17 23:38:00.844 error uncaught exception: fileName.indexOf is not a function

Feature Request: Zufallswiedergabe

Sofern dies über die API unterstützt wird, wäre die Erweiterung des SONOS Adapters um die Funktion "Zufallswiedergabe von Playlisten ein/auschalten" interessant

TTS starts playback

hi, instead of playing the mp3 track from sayit .. sonos starts to play music.

SONOS "" not found

Hi,

when i try to control my sonos speakers with the adapter i get the answer
SONOS "" not found
Doesnt matter with command I try.

2019-10-31 05:08:22.841 - info: sonos.0 (8376) try to control id sonos.0.root.10_0_0_50.play with {"val":true,"ack":false,"ts":1572494902839,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1571502439311}
2019-10-31 05:08:22.841 - warn: sonos.0 (8376) SONOS "" not found

Win 10
JS 2.0.38
Sonos 2.0.0
Web 2.4.8 (if necessary)

No update on states.

Hi all, I´ve moved my ioBroker installation from an RaspberryPI to an Beeling BT3 pro with Debian.
Now the sonos adapter is not getting any updates in its states except volume, favorites and members indicator.

Current track, artist, cover, etc stays empty. I have this problem on Sonos Play 1 and Sonos Connect.

Connection to Sonos device is basically working because play, pause, stop, etc buttons are working. Also volume state gets updated.

I already tried to remove adapter and reinstall it - no changes
I´ve also tested to use different music source in Sonos device. Amazon Music, local music from my phone, music from plex server, nothing helped.

Tested with 1.7.7 from adapters page and 1.8 (I think this was from github)

Even in the log of iobroker I cannot find anything.

Any idea?
Thanks in advance.

Feature Request: Datei per URL abspielen

Hi, tolles Plugin! Ich habe damit + Alexa eine tolle Steuerung für meine Sonos Boxen gebaut.

Was mir nur noch fehlen würde - ich möchte gerne eine MP3 Datei direkt via URL abspielen können. Andere Sonos-Node Libraries können das grundsätzlich.

Also entweder würde State eine URL verstehen und diese dann abspielen oder es gäbe einen neuen Eintrag in der Konfiguration.

Was meinst du, wäre das möglich? Ich würde selbst versuchen einen Pull Request zu basteln allerdings blicke ich noch nicht so ganz durch bei dem ioBroker Sachen.

Feature Request: externe Geräte auswählen

Sofern dies über die API unterstützt wird, wäre die Erweiterung des SONOS Adapters um die Funktion "externe Geräte" bzw. "Eingang" von SONOS Connect oder SONOS ConnectAmp Geräten auswählen zu können interessant.

Sofern dies über die SONOS App erfolgt, wird "current_type" auf "track(0)" und "current_title" auf den Namen des Einganges (externes Gerät" gesetzt (z.B.: current_title = "Computer")

Sofern dies über ein Script versucht wird, erfolgt jedoch kein Umschalten. Eventuell ist hier noch ein weiterer Datenpunkt anzusprechen/nötig(??)

Sonos Cover mit Amazon Musik

Bei abspielen von Amazon Musik durch einen Alexa Sprachbefehl erscheint keine Coveranzeige.

Es wird generell kein Cover angezeigt wenn man den Sonos Player mit Alexa ansteuert.
Des Weiteren ist der absoluteAlbumArtUri bei Aufruf über Alexa ein Audiofile und kein Pfad auf das Cover

State/state_simple nicht korrekt.

Hallo, super Plugin! Habe damit innerhalb kürzeste Zeit einiges auf die Beine gestellt.
Was mir auffiel, ist das „state“ und „state_simple“ bei mir nicht korrekt angezeigt werden, wenn ich über SONOS App Gruppen bilde, dann ein oder mehrere Lautsprecher aus der Gruppe rausnehme, werden die beide Größen nicht bei allen Lautsprechern aktualisiert.
Ist das nur bei mir so? oder kann ich was dagegen mache?
Gruß Waleri

Sonos like & dislike Button

hey guys,

i need the functions for "like / dislike" or "thumb up / thumb down" for this Song.

my sonos running with google music, and there i will get always the option in Sonos UI to "like or dislike" a song, no matter if we listen Album, Radio, Playlist, Song-Radio ....

Thank you for this great Adapter

Error with js-controller 1.5.14

On a new iobroker installtion, with the new installtion script and js-controller version 1.5.14, the datapoint of the sonos speaker are not getting update and the adapter is starting new alle the time and creating the following log entries:

2019-07-30 19:05:52.116 - info: sonos.0 terminating 2019-07-30 19:05:52.124 - error: sonos.0 Got error: Parse Error 2019-07-30 19:05:52.167 - error: Caught by controller[1]: TypeError [ERR_INVALID_CALLBACK]: Callback must be a function 2019-07-30 19:05:52.167 - error: Caught by controller[1]: at maybeCallback (fs.js:128:9) 2019-07-30 19:05:52.168 - error: Caught by controller[1]: at Object.exists (fs.js:196:3) 2019-07-30 19:05:52.168 - error: Caught by controller[1]: at ClientRequest.http.get.res2 (/opt/iobroker/node_modules/iobroker.sonos/main.js:1783:37) 2019-07-30 19:05:52.168 - error: Caught by controller[1]: at Object.onceWrapper (events.js:286:20) 2019-07-30 19:05:52.168 - error: Caught by controller[1]: at ClientRequest.emit (events.js:198:13) 2019-07-30 19:05:52.169 - error: Caught by controller[1]: at HTTPParser.parserOnIncomingClient [as onIncoming] (_http_client.js:556:21) 2019-07-30 19:05:52.169 - error: Caught by controller[1]: at HTTPParser.parserOnHeadersComplete (_http_common.js:109:17) 2019-07-30 19:05:52.169 - error: Caught by controller[1]: at Socket.socketOnData (_http_client.js:442:20) 2019-07-30 19:05:52.170 - error: Caught by controller[1]: at Socket.emit (events.js:198:13) 2019-07-30 19:05:52.170 - error: Caught by controller[1]: at addChunk (_stream_readable.js:288:12) 2019-07-30 19:05:52.170 - error: Caught by controller[1]: at readableAddChunk (_stream_readable.js:269:11) 2019-07-30 19:05:52.170 - error: Caught by controller[1]: at Socket.Readable.push (_stream_readable.js:224:10) 2019-07-30 19:05:52.171 - error: Caught by controller[1]: at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17) 2019-07-30 19:05:52.171 - error: host.iobroker instance system.adapter.sonos.0 terminated with code 0 (OK) 2019-07-30 19:05:52.171 - info: host.iobroker Restart adapter system.adapter.sonos.0 because enabled 2019-07-30 19:06:22.198 - info: host.iobroker instance system.adapter.sonos.0 started with pid 21570 2019-07-30 19:06:24.125 - info: sonos.0 starting. Version 1.8.0 in /opt/iobroker/node_modules/iobroker.sonos, node: v10.16.0 2019-07-30 19:06:24.241 - info: sonos.0 http sonos server listening on port 8080

On my older test installation with js-controller version 1.5.12 it is working fine.

I tried it with the adapter version 1.7.7 and 1.8.0 with the same result.

Verify Compact mode for your adapter

We have detected that your adapter supports the compact mode. Please use the latest js-controller 2.0 and verify that everything works.

Some more information what is important to check can be found at ioBroker/ioBroker.js-controller#512

On questions please answer to the linked issue. Please close this issue after your test and add the version number that you have tested please as a comment.

Thank you for your support.

Scan nach Sonos ohne Funktion

Hi,
Installation lief ohne Fehler im Log unter Docker / Synology DS 916+.
Config-Menü öffnet und zeigt alle Optionen. Ein Klick auf "Scan" bleibt ohne Werte. Auch "Räume" bleibt leer.
Trägt man die IP der Sonos per Hand ein, so findet er auch keine Sonos. Die Webansicht öffnet, aber alle Felder sind leer. Es gibt nur ein Subnetz; Sonos und ioBroker arbeiten in gleicher IP-Umgebung mit 192.168.178.45 + .46 für Sonos und x.x.x.1 an Fritzbox. Any Idea?

TTS does not work correctly

Hi, I've found out that TTS is not working correctly if the playlist of my Sonos Box is already filled. In this case TTS MP3 will be added for later listening at a false place. Afterwards the next Song of the List will be played (not the TTS MP3). Volume is different from before. It looks like 1-2 errors in coding? The "take state" action and somewhere else? Can you help? It works very good if the playlist is empty! Great adapter so far ...

[Feature Request] Status "isCurrentlyPlaying" (true/false)

It would be very useful having a state like "isCurrentlyPlaying", and set to true, if Sonos device is currently playing something, and set to false, if not playing anything (pause/stop).

Subscribing to states "sonos.0.....play", ".pause", ".stop" by the Javascript adapter and maintaining a state under "javascript.0...." does not work, if Sonos is controlled not via ioBroker (like through the app or by the buttons directly on a Sonos speaker, like Sonos One).
Therefore I would love to have this information within the Sonos adapter.

Thank you.
Other than that, awesome adapter, many thanks for the hard work! It works fantastic.

Sleep-Timer setzen

Das Paket "node-sonos-discovery" von Jimmy Shimizu bietet die Möglichkeit den Sleep-Timer bei einzelnen Sonos-Lautsprechner zu setzen. Es wäre toll, wenn das beim ioBroker auch integriert wäre.

Think about to fix the issues found by adapter checker

I am an automatic service that looks for possible errors in ioBroker and creates an issue for it. The link below leads directly to the test:

https://adapter-check.iobroker.in/?q=https://raw.githubusercontent.com/ioBroker/ioBroker.sonos

  • [E021] "licenses" in package.json are depricated. Please use only "license": "NAME" field.
  • [E150] No common.connectionType found in io-package.json
  • [E152] No common.dataSource found in io-package.json
  • [E504] found setInterval in "main.js, but no clearInterval detected
  • [E605] No actual year found in copyright. Please add "Copyright (c) 2014-2021 bluefox [email protected]" at the end of README.md
  • [E701] No actual year found in LICENSE. Please add "Copyright (c) 2014-2021 bluefox [email protected]" at the start of LICENSE
  • [E812] file test/ found in repository, but not found in .npmignore
  • [E814] file appveyor.yml found in repository, but not found in .npmignore
  • [E815] file .travis.yml found in repository, but not found in .npmignore

I have also found warnings that may be fixed if possible.

  • [W505] setTimeout found in "main.js", but no clearTimeout detected

Thanks,
your automatic adapter checker.

Sonos and Ubuntu 18.04 LTS - No Titel Cover is displayed or Web Control possible

Hello everybody
I moved my Iobroker installation from a Raspberry PI to a Linux Mini Calculator (Beelink) with the OS Ubuntu LTS installed. All adapters are working fine, but unfortunately not the Sonos adapter. In the object view as well as via the Sonos Web Controller, no covers are displayed.

Even if the link behind the "Cover URL" in the object view clicks it is displayed correctly, but in the browser you can not see a picture

For example, if I connect the Sonos to FHEM on the same machine, it works fine.

I suspect that it might have something to do with JSON, which may not work on Ubuntu or where you still need to install libaries / packages / permissions on em OS.

Does anyone have a tip?

Thanks for a help in advance

The OS installed is:

Distributor ID: Ubuntu
Description: Ubuntu 18.04.2 LTS
Release: 18.04
Codename: bionic

Markus

Sonos Default Port von 8083 auf 8080 ändern

siehe: ioBroker Forum

In der Konfigurationsseite wird der Port 8032 für dei Webseite angezeigt. Wenn man diese bestätigt, funktioniert die Webseite nciht.

Wenn man die Default-Portnummer des Web-Adapters (8080) verwendet, funktioniert die Sonos-Steuerung per Webseite.

Der Default-Eintrag sollte von 8083 auf 8080 geändert werden.

after update to 1.7.2, sayit "doorbell script" doesn't work anymore

here is the error log:
host.iobroker 2018-07-23 08:24:37.347 error instance system.adapter.sonos.0 terminated with code 0 (OK) Caught 2018-07-23 08:24:37.347 error by controller[0]: at Timer.listOnTimeout (timers.js:290:5) Caught 2018-07-23 08:24:37.347 error by controller[0]: at tryOnTimeout (timers.js:323:5) Caught 2018-07-23 08:24:37.347 error by controller[0]: at ontimeout (timers.js:508:15) Caught 2018-07-23 08:24:37.347 error by controller[0]: at Timeout.playOnSonos [as _onTimeout] (C:\ioBroker\node_modules\iobroker.sonos\main.js:987:9) Caught 2018-07-23 08:24:37.347 error by controller[0]: at fadeOut (C:\ioBroker\node_modules\iobroker.sonos\main.js:805:20) Caught 2018-07-23 08:24:37.347 error by controller[0]: TypeError: Cannot create property 'actual' on boolean 'false' sonos.0 2018-07-23 08:24:37.299 info terminating sonos.0 2018-07-23 08:24:37.299 error at Timer.listOnTimeout (timers.js:290:5) sonos.0 2018-07-23 08:24:37.299 error at tryOnTimeout (timers.js:323:5) sonos.0 2018-07-23 08:24:37.299 error at ontimeout (timers.js:508:15) sonos.0 2018-07-23 08:24:37.299 error at Timeout.playOnSonos [as _onTimeout] (C:\ioBroker\node_modules\iobroker.sonos\main.js:987:9) sonos.0 2018-07-23 08:24:37.299 error at fadeOut (C:\ioBroker\node_modules\iobroker.sonos\main.js:805:20) sonos.0 2018-07-23 08:24:37.299 error TypeError: Cannot create property 'actual' on boolean 'false' sonos.0 2018-07-23 08:24:37.299 error uncaught exception: Cannot create property 'actual' on boolean 'false'

here is the doorbell script:
`var vol ="sayit.0.tts.volume";

function esklingelt() {
var idSonosfav = getState("sonos.0.root.192_168_30_17.favorites_set").val; //speichern des aktuellen Senders
var idSonosplay = getState ("sonos.0.root.192_168_30_17.state_simple").val; //Status des Speakers
if (idSonosplay) { //Wenn Radio läuft
sendTo('sonos', 'send', '50;http://192.168.30.9:8082/sayit.0/tts.userfiles/maus.mp3'); //Mp3 Ausgabe mit Lautstärke 60
setState ("sonos.0.root.192_168_30_17.favorites_set", idSonosfav); //nach 23 Sekunden gespeicherten Favoriten Sender wieder stellen
setStateDelayed ("sonos.0.root.192_168_30_17.state_simple", idSonosplay, 23000); //nach 23 Sekunden wieder starten
} else { //Wenn Radio nicht läuft
sendTo('sonos', 'send', '50;http://192.168.30.9:8082/sayit.0/tts.userfiles/maus.mp3'); //Mp3 Ausgabe mit Lautstärke 60
}
}

on({id: "hm-rpc.0.LEQ01xxxxx.1.PRESS_SHORT"/Taster_Haustuer_Klingel.PRESS_SHORT/, val: true}, esklingelt); //bei kurzem Tastendruck "esklingelt" aufrufen
on({id: "hm-rpc.0.LEQ01xxxxx.1.PRESS_LONG"/Taster_Haustuer_Klingel.PRESS_LONG/, val: true}, esklingelt); //bei langem Tastendruck "esklingelt" aufrufen`

with older versions of sonos adapter the script is working fine ...

1.7.4: still error in function fadeout

Reproduzierbar mit Sayit während Radio läuft:
2018-08-03 08:18:36.621 - �error: sonos.0 uncaught exception: Cannot create property 'actual' on boolean 'true'
2018-08-03 08:18:36.621 - �error: sonos.0 TypeError: Cannot create property 'actual' on boolean 'true'
at fadeOut (/Users/Shared/iobroker/node_modules/iobroker.sonos/main.js:805:20)
at playOnSonos (/Users/Shared/iobroker/node_modules/iobroker.sonos/main.js:987:9)
at Immediate.setImmediate [as _onImmediate] (/Users/Shared/iobroker/node_modules/iobroker.sonos/main.js:1067:40)
2018-08-03 08:18:36.622 - info: sonos.0 terminating
Es scheint so, als ob in der Funktion fadeout der Fall (typeof options === 'boolean' && options === true) nicht korrekt berücksichtigt wäre.

setState("sayit.0.tts.text", "Test");
hat bei mir zuletzt mit Version 1.6.2 funktioniert.

Please check ioBroker.sonos with js-controller 2.0

Hi,

the new js-controller 2.0 will come into latest repository in the next days and we want to make sure that all adapters are working well. We already did a 2 weeks Beta test and so some adapter were aleady checked and some needed slight adjustments.

You can find more information in ioBroker/ioBroker.js-controller#482 and in the ioBroker Forum. If you have more technical questions please write in the referenced issue or in the Developer thread please. General questions are best in the genral thread.

Please update your systems to js-controller 2.0 and check your adapter.

Please close this issue once you have checked your adapter or received successfull reports from users.

Thank you very much for your support. Please contact us in the other Threads or Forum on any question.

Adapter-website is not working

Hi Team,

I installed 2.0.1 and the adapter-website is not working for me although iobroker shows me the symbol/lint to the adapter-website in the instances overview. I'm aware the website was removed with 2.0.0 but it seems in 2.0.1 she's back but not working. Also there is no port (8080) open on my system.
Screenshot 2019-12-31 at 14 38 05
Screenshot 2019-12-31 at 14 39 08
Screenshot 2019-12-31 at 14 38 52

error Caught by controller[0]: '/opt/iobroker/iobroker-data/sonosCache/86e1252ff62242c0de6a8c11e700cbfd'

Hallo,
habe das Problem das dieser Fehler auftritt: host.intelnuc-GB-BACE-3160 2019-10-27 20:55:07.296 error Caught by controller[0]: path:
host.intelnuc-GB-BACE-3160 2019-10-27 20:55:07.296 error Caught by controller[0]: syscall: 'open',
host.intelnuc-GB-BACE-3160 2019-10-27 20:55:07.296 error Caught by controller[0]: code: 'ENOENT',
host.intelnuc-GB-BACE-3160 2019-10-27 20:55:07.296 error Caught by controller[0]: errno: -2,
host.intelnuc-GB-BACE-3160 2019-10-27 20:55:07.296 error Caught by controller[0]: { [Error: ENOENT: no such file or directory, open '/opt/iobroker/iobroker-data/sonosCache/86e1252ff62242c0de6a8c11e700cbfd']
sonos.0 2019-10-27 20:55:07.251 error uncaught exception: ENOENT: no such file or directory, open '/opt/iobroker/iobroker-data/sonosCache/86e1252ff62242c0de6a8c11e700cbfd'
Habe 2 Sonos Boxen der Fehler tritt nur bei 1 Box auf.

Hat vielleicht schon jemand so einen Fehler

Feature Request; Repeat Funktion

Sofern dies über die API unterstützt wird, wäre die Erweiterung des SONOS Adapters um die Funktion "Repeat/Wiederholung ein/auschalten" interessant.

TypeError: Cannot read property '$text' of undefined

Adapter starts new again and again and always throws this error.
`

host.iobroker 2019-10-01 21:20:29.284 error instance system.adapter.sonos.0 terminated with code 0 (OK)
Caught 2019-10-01 21:20:29.284 error by controller[0]: at Immediate.setImmediate (/D/iobroker/node_modules/sonos-discovery/lib/helpers/streamer.js:12:18)
Caught 2019-10-01 21:20:29.283 error by controller[0]: at Readable.push (_stream_readable.js:220:10)
Caught 2019-10-01 21:20:29.283 error by controller[0]: at readableAddChunk (_stream_readable.js:265:11)
Caught 2019-10-01 21:20:29.283 error by controller[0]: at addChunk (_stream_readable.js:284:12)
Caught 2019-10-01 21:20:29.283 error by controller[0]: at Readable.emit (events.js:189:13)
Caught 2019-10-01 21:20:29.283 error by controller[0]: at Readable.ondata (_stream_readable.js:689:20)
Caught 2019-10-01 21:20:29.283 error by controller[0]: at SAXStream.write (/D/iobroker/node_modules/sax/lib/sax.js:239:18)
Caught 2019-10-01 21:20:29.282 error by controller[0]: at SAXParser.write (/D/iobroker/node_modules/sax/lib/sax.js:1436:13)
Caught 2019-10-01 21:20:29.282 error by controller[0]: at closeTag (/D/iobroker/node_modules/sax/lib/sax.js:889:7)
Caught 2019-10-01 21:20:29.282 error by controller[0]: at emitNode (/D/iobroker/node_modules/sax/lib/sax.js:629:5)
Caught 2019-10-01 21:20:29.282 error by controller[0]: at emit (/D/iobroker/node_modules/sax/lib/sax.js:624:35)
Caught 2019-10-01 21:20:29.281 error by controller[0]: at SAXParser.me._parser.(anonymous function) [as onclosetag] (/D/iobroker/node_modules/sax/lib/sax.js:258:17)
Caught 2019-10-01 21:20:29.281 error by controller[0]: at SAXStream.emit (events.js:189:13)
Caught 2019-10-01 21:20:29.281 error by controller[0]: at SAXStream.onCloseTag (/D/iobroker/node_modules/xml-flow/lib/xml-flow.js:131:15)
Caught 2019-10-01 21:20:29.280 error by controller[0]: at EventEmitter.emit (events.js:189:13)
Caught 2019-10-01 21:20:29.280 error by controller[0]: at EventEmitter.sax.on (/D/iobroker/node_modules/sonos-discovery/lib/models/Player.js:89:28)
Caught 2019-10-01 21:20:29.278 error by controller[0]: TypeError: Cannot read property '$text' of undefined
sonos.0 2019-10-01 21:20:29.112 info terminating

`

Falscher Player wird angesprochen

Ich habe das Problem, daß bei mir der falsche Player angesprochen wird. Es scheint daran zu liegen, daß unter "Member" der Falsche Raum steht. Wie kann ich das ändern?
bildschirmfoto 2019-01-31 um 10 23 02

Request: Update with node-sonos-http-api

As the actual Sonos Adapter is making more and more trouble and the tts is not working for a long time. Maybe it would be good idea to create a new version based on the newer http api from jishy:

https://github.com/jishi/node-sonos-http-api

This would also be an option to include the newer sonos functions for the TV soundbars like night mode and improved speak sound.

Also the TTS functionality is working much better with this API

Remove root

Please remove root as device and use each Sonos device as device and not as channel.

Get List of alarms -> Smart Home Automation

Dear Developers of this awesome Plugin,

this is basically no issue but a feature request.
Is it possible to read the set sonos alarms and put them into objects?

Goal is to start my HUE wakeup light a few minutes before the sonos musik in my bedroom starts.

Thank you very much!

Autoplay-Raum

Hi
Ist es möglich irgendwie den autoplay Raum zu ändern?

uncaught exception: mime.lookup is not a function

Hello.

Each time I open the Web-Adapter I get this entrys in my log.

sonos.0 2017-10-04 14:35:17.205 info http sonos server listening on port 8080
sonos.0 2017-10-04 14:35:17.166 info starting. Version 1.6.2 in /opt/iobroker/node_modules/iobroker.sonos, node: v4.8.4
sonos.0 2017-10-04 14:34:46.475 info terminating
sonos.0 2017-10-04 14:34:46.472 info terminating
sonos.0 2017-10-04 14:34:46.472 error at FSReqWrap.oncomplete (fs.js:82:15)
sonos.0 2017-10-04 14:34:46.472 error at /opt/iobroker/node_modules/iobroker.sonos/node_modules/node-static/lib/node-static.js:64:22
sonos.0 2017-10-04 14:34:46.472 error at Server.respond (/opt/iobroker/node_modules/iobroker.sonos/node_modules/node-static/lib/node-static.js:348:28)
sonos.0 2017-10-04 14:34:46.472 error TypeError: mime.lookup is not a function
sonos.0 2017-10-04 14:34:46.471 error uncaught exception: mime.lookup is not a function
sonos.0 2017-10-04 14:24:04.985 info http sonos server listening on port 8080
sonos.0 2017-10-04 14:24:04.926 info starting. Version 1.6.2 in /opt/iobroker/node_modules/iobroker.sonos, node: v4.8.4

Greats
pr0

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.