nickthegroot / vscode-gmusic

:notes: A VS Code Extension for the Google Play Music Desktop Player
https://marketplace.visualstudio.com/items?itemName=nbdeg.vscode-gmusic
MIT License
15 stars 3 forks source link

Like/Dislike menu action is broken with GPMDP 4.6.0+ #5

Closed darkvertex closed 5 years ago

darkvertex commented 6 years ago

I have google-play-music-desktop-player-4.6.0-1.x86_64 installed and the extension's GMusic: Like/Dislike Song action isn't working.

It doesn't print or report any errors but nothing happens on the player side, except that when I check the terminal I launched it from, I saw:

error: WebSocketAPI Error: Invalid message recieved , data={"namespace":"rating","method":"setRating","arguments":5}
Error: Bad arguments
    at WebSocket.<anonymous> (/usr/share/google-play-music-desktop-player/resources/app.asar/build/main/features/core/websocketAPI.js:197:17)
    at emitTwo (events.js:126:13)
    at WebSocket.emit (events.js:214:7)
    at Receiver.ontext (/usr/share/google-play-music-desktop-player/resources/app.asar/node_modules/ws/lib/WebSocket.js:841:10)
    at /usr/share/google-play-music-desktop-player/resources/app.asar/node_modules/ws/lib/Receiver.js:536:18
    at Receiver.applyExtensions (/usr/share/google-play-music-desktop-player/resources/app.asar/node_modules/ws/lib/Receiver.js:371:5)
    at /usr/share/google-play-music-desktop-player/resources/app.asar/node_modules/ws/lib/Receiver.js:508:14
    at Receiver.flush (/usr/share/google-play-music-desktop-player/resources/app.asar/node_modules/ws/lib/Receiver.js:347:3)
    at Receiver.finish (/usr/share/google-play-music-desktop-player/resources/app.asar/node_modules/ws/lib/Receiver.js:541:12)
    at Receiver.expectHandler (/usr/share/google-play-music-desktop-player/resources/app.asar/node_modules/ws/lib/Receiver.js:493:33)
    at Receiver.add (/usr/share/google-play-music-desktop-player/resources/app.asar/node_modules/ws/lib/Receiver.js:103:24)
    at Socket.realHandler (/usr/share/google-play-music-desktop-player/resources/app.asar/node_modules/ws/lib/WebSocket.js:825:20)
    at emitOne (events.js:116:13)
    at Socket.emit (events.js:211:7)
    at addChunk (_stream_readable.js:263:12)
    at readableAddChunk (_stream_readable.js:250:11)
    at Socket.Readable.push (_stream_readable.js:208:10)
    at TCP.onread (net.js:594:20)
error: WebSocketAPI Error: Invalid message recieved , data={"namespace":"rating","method":"setRating","arguments":5}

It appears that the WebSocket API has changed slightly: https://github.com/MarshallOfSound/Google-Play-Music-Desktop-Player-UNOFFICIAL-/blob/master/docs/PlaybackAPI_WebSocket.md#rating as I don't see anything about setRating there.

nickthegroot commented 5 years ago

Thanks for the bug report! Sorry for the delay - I have moved on to another music streaming service so maintaining this hasn't been a priority. The command shouldn't have been the issue, as setRating is a still accepted (i.e. why it worked in playlists).

Nonetheless, 5141ac90c08443d4adac0c0dfe2385f254ea947d should have fixed it.

darkvertex commented 5 years ago

Thank you. What music streaming service did you switch to, out of curiosity? Spotify? YouTube Music?

nickthegroot commented 5 years ago

Spotify. Their student deal pulled me from Google Play Music.