General discussions about the sonos http api, ideas, help setting it up etc.
Hello, i'm actually trying to run the application on a Raspberry PI. The server starts well but when i invoke the 'play' command the application crashes (but the music start...). Could you help me please ?
logs :
0 verbose cli [
0 verbose cli '/home/pi/.nvm/versions/node/v15.3.0/bin/node',
0 verbose cli '/home/pi/.nvm/versions/node/v15.3.0/bin/npm',
0 verbose cli 'start'
0 verbose cli ]
1 info using npm@7.0.14
2 info using node@v15.3.0
3 timing config:load:defaults Completed in 12ms
4 timing config:load:file:/home/pi/.nvm/versions/node/v15.3.0/lib/node_modules/npm/npmrc Completed in 3ms
5 timing config:load:builtin Completed in 3ms
6 timing config:load:cli Completed in 9ms
7 timing config:load:env Completed in 1ms
8 timing config:load:file:/home/pi/node-sonos-http-api/.npmrc Completed in 1ms
9 timing config:load:project Completed in 3ms
10 timing config:load:file:/home/pi/.npmrc Completed in 1ms
11 timing config:load:user Completed in 1ms
12 timing config:load:file:/home/pi/.nvm/versions/node/v15.3.0/etc/npmrc Completed in 0ms
13 timing config:load:global Completed in 1ms
14 timing config:load:cafile Completed in 0ms
15 timing config:load:validate Completed in 0ms
16 timing config:load:setUserAgent Completed in 3ms
17 timing config:load:setEnvs Completed in 4ms
18 timing config:load Completed in 38ms
19 verbose npm-session cea9cd7dfbebc89c
20 timing npm:load Completed in 75ms
21 timing command:run-script Completed in 37301ms
22 timing command:start Completed in 37312ms
23 verbose stack Error: command failed
23 verbose stack at ChildProcess.<anonymous> (/home/pi/.nvm/versions/node/v15.3.0/lib/node_modules/npm/node_modules/@npmcli/promise-spawn/index.js:64:27)
23 verbose stack at ChildProcess.emit (node:events:376:20)
23 verbose stack at maybeClose (node:internal/child_process:1055:16)
23 verbose stack at Process.ChildProcess._handle.onexit (node:internal/child_process:288:5)
24 verbose pkgid sonos-http-api@1.6.0
25 verbose cwd /home/pi/node-sonos-http-api
26 verbose Linux 5.4.72-v7+
27 verbose argv "/home/pi/.nvm/versions/node/v15.3.0/bin/node" "/home/pi/.nvm/versions/node/v15.3.0/bin/npm" "start"
28 verbose node v15.3.0
29 verbose npm v7.0.14
30 error code 1
31 error path /home/pi/node-sonos-http-api
32 error command failed
33 error command sh -c node server.js
34 verbose exit 1
@jishi Thanks for your answer. I downgraded to 14.0.0 and the problem is still there
nvm ls :
code
v9.0.0
-> v14.0.0
v15.3.0
system
default -> 9.0.0 (-> v9.0.0)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v15.3.0) (default)
stable -> 15.3 (-> v15.3.0) (default)
lts/* -> lts/fermium (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.23.0 (-> N/A)
lts/erbium -> v12.20.0 (-> N/A)
lts/fermium -> v14.15.1 (-> N/A)code
@jishi here it is :
code
2020-11-29T10:35:29.469Z DEBUG resuming all players
2020-11-29T10:35:34.517Z DEBUG invoking play
2020-11-29T10:35:34.518Z TRACE http://192.168.0.44:1400/MediaRenderer/AVTransport/Control urn:schemas-upnp-org:service:AVTransport:1#Play <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:Play xmlns:u="urn:schemas-upnp-org:service:AVTransport:1"><InstanceID>0</InstanceID><Speed>1</Speed></u:Play></s:Body></s:Envelope>
2020-11-29T10:35:34.574Z TRACE status code: 200
2020-11-29T10:35:34.959Z TRACE <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/" xmlns:r="urn:schemas-rinconnetworks-com:metadata-1-0/"><InstanceID val="0"><TransportState val="PLAYING"/><CurrentPlayMode val="REPEAT_ALL"/><CurrentCrossfadeMode val="0"/><NumberOfTracks val="1"/><CurrentTrack val="1"/><CurrentSection val="0"/><CurrentTrackURI val="x-sonos-spotify:spotify:track:02kDW379Yfd5PzW5A6vuGt?sid=9&flags=0&sn=1"/><CurrentTrackDuration val="0:03:15"/><CurrentTrackMetaData val="<DIDL-Lite xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:r="urn:schemas-rinconnetworks-com:metadata-1-0/" xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/"><item id="-1" parentID="-1"><res duration="0:03:15">x-sonos-spotify:spotify:track:02kDW379Yfd5PzW5A6vuGt?sid=9&flags=0&sn=1</res><upnp:albumArtURI>https://i.scdn.co/image/ab67616d0000b273d46a8fffbe6c8630784f04da</upnp:albumArtURI><upnp:class>object.item.audioItem.musicTrack</upnp:class><dc:title>Lemonade</dc:title><dc:creator>Internet Money</dc:creator><upnp:album>Lemonade (feat. Gunna, Don Toliver & NAV)</upnp:album></item></DIDL-Lite>"/><r:NextTrackURI val=""/><r:NextTrackMetaData val="<DIDL-Lite xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:r="urn:schemas-rinconnetworks-com:metadata-1-0/" xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/"><item id="-1" parentID="-1"><res></res><upnp:albumArtURI></upnp:albumArtURI><upnp:class>object.item.audioItem.musicTrack</upnp:class><dc:title>Goosebumps</dc:title><dc:creator>HVME</dc:creator><upnp:album>Goosebumps</upnp:album></item></DIDL-Lite>"/><r:EnqueuedTransportURI val=""/><r:EnqueuedTransportURIMetaData val="<DIDL-Lite xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:r="urn:schemas-rinconnetworks-com:metadata-1-0/" xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/"><item id="" parentID="-1" restricted="true"><dc:title>Hits du Moment</dc:title><upnp:class>object.container.playlistContainer</upnp:class><desc id="cdudn" nameSpace="urn:schemas-rinconnetworks-com:metadata-1-0/">SA_RINCON2311_X_#Svc2311-0-Token</desc><upnp:albumArtURI></upnp:albumArtURI></item></DIDL-Lite>"/><PlaybackStorageMedium val="NETWORK"/><AVTransportURI val="x-rincon-queue:RINCON_7828CAE6616E01400#vli"/><AVTransportURIMetaData val="<DIDL-Lite xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:r="urn:schemas-rinconnetworks-com:metadata-1-0/" xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/"><item id="spotify" parentID="0" restricted="false"><dc:title>Spotify</dc:title><upnp:class>object.item.audioItem.linein</upnp:class><res protocolInfo="x-sonos-vli::audio:">x-sonos-vli:RINCON_7828CAE6616E01400:2,spotify:ab7bc1d44ce416fc45f0721593b4656b</res><v
cookie="10" group=""></vli></item></DIDL-Lite>"/><CurrentTransportActions val="Set, Stop, Pause, Play, X_DLNA_SeekTime, Next, Previous"/><r:CurrentValidPlayModes val="SHUFFLE,REPEAT,REPEATONE"/><r:MuseSessions val=""/><r:DirectControlClientID val="spotify.connect.adapter"/><r:DirectControlIsSuspended val="0"/><r:DirectControlAccountID val=""/></InstanceID></Event>
2020-11-29T10:35:34.992Z DEBUG Updated playback state in notification handler
2020-11-29T10:35:35.010Z DEBUG No such service x-sonos-spotify:spotify:track:02kDW379Yfd5PzW5A6vuGt?sid=9&flags=0&sn=1
/home/pi/node-sonos-http-api/node_modules/sonos-discovery/lib/models/Player.js:99
track.duration = parseTime((item.res.$attrs || item.res).duration);
^
TypeError: Cannot read property '$attrs' of undefined
at EventEmitter.<anonymous> (/home/pi/node-sonos-http-api/node_modules/sonos-discovery/lib/models/Player.js:99:44)
at EventEmitter.emit (events.js:315:20)
at EventEmitter.emit (domain.js:485:12)
at SAXStream.onCloseTag (/home/pi/node-sonos-http-api/node_modules/xml-flow/lib/xml-flow.js:131:15)
at SAXStream.emit (events.js:315:20)
at SAXStream.EventEmitter.emit (domain.js:485:12)
at SAXParser.me._parser.<computed> [as onclosetag] (/home/pi/node-sonos-http-api/node_modules/sax/lib/sax.js:258:17)
at emit (/home/pi/node-sonos-http-api/node_modules/sax/lib/sax.js:640:35)
at emitNode (/home/pi/node-sonos-http-api/node_modules/sax/lib/sax.js:645:5)
at closeTag (/home/pi/node-sonos-http-api/node_modules/sax/lib/sax.js:905:7)
at SAXParser.write (/home/pi/node-sonos-http-api/node_modules/sax/lib/sax.js:1449:13)
at SAXStream.write (/home/pi/node-sonos-http-api/node_modules/sax/lib/sax.js:239:18)
at Readable.ondata (_stream_readable.js:707:22)
at Readable.emit (events.js:315:20)
at Readable.EventEmitter.emit (domain.js:485:12)
at addChunk (_stream_readable.js:296:12)
at readableAddChunk (_stream_readable.js:272:9)
at Readable.push (_stream_readable.js:213:10)
at Immediate.<anonymous> (/home/pi/node-sonos-http-api/node_modules/sonos-discovery/lib/helpers/streamer.js:12:18)
at processImmediate (internal/timers.js:456:21)
at process.topLevelDomainCallback (domain.js:137:15)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! sonos-http-api@1.6.0 start: node server.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the sonos-http-api@1.6.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/pi/.npm/_logs/2020-11-29T10_35_35_075Z-debug.log