Incomplete data returned?

To discuss development of addons / skins / customization of MediaMonkey v5 / v2024

Moderators: jiri, drakinite, Addon Administrators

birwin2
Posts: 19
Joined: Sat May 09, 2015 4:47 pm

Incomplete data returned?

Post by birwin2 »

I have an external app that communicates with MediaMonkey via Chrome Dev Tools. I'm having a problem with the object that gets returned not containing all the data it should. In particular I'm requesting the player tracklist, and the object returned frequently doesn't contain the bpm values I need. Looking at what gets returned it appears that the extended tag data and more is missing. Is this a case where a promise is not getting fulfilled? Is there something I'm doing incorrectly in my request?

let mmREQUEST_ID = 1; // Changes with each request

let dataRequest = "app.player.getTracklist().asJSON";

request = { id:mmREQUEST_ID,method:'Runtime.evaluate',params:{expression: dataRequest } };

mmSocket.send(JSON.stringify(request));
birwin2
Posts: 19
Joined: Sat May 09, 2015 4:47 pm

getTracklist().asJSON bug

Post by birwin2 »

Environment:
Developing Electron app that talks to MediaMonkey via websocket.
Windows 11 Home
MediaMonkey v.2024.2.1.3124 and v.2024.2.1.3208
Electron 40.1.0
Node.js v24.13.0 (WebSocket)
Also WebSocketAsPromised with W3CWebSocket

Issue:
Sending a getTracklist().asJSON request through a websocket connection, the returned tracklist doesn't include bpm
values (other data is also missing) unless the song has been played, even for as little as a half second.

Reproducible?
Yes, easily.
Post Reply