Hi
Using the jsonrpc.js command interface from my plugin, I'm currently getting basic information an all players using the 'players' command;
However, I find in testing that not all device types return the same information (eg squeezebox3 and boom don't seem to include power and isplaying states while touch, softsqueeze and radio do). Is this a known issue?
Because of this and as I need further details around playlists etc., I've been looking at the 'status' command.
Now, due to the nature of the application (Alexa<->Plugin), it's inefficient to issue discrete 'Status' commands from the cloud service to the LMS for each device as the round trip time adds up. My design approach is to NOT build commands in the plugin but rather have it parse commands passed in but I'd be prepared to make an exception in this case.
Therefore, I have a few questions....
Is there a form of status that's similar to players in that no playerid is required eg (which I've tried unsuccessfully);
If not, I can of course iterate through the players and issue the command to each in turn. However, this gets very messy inside the plugin using Slim::Networking::SimpleAsyncHTTP
I would therefore wonder, is there a convenient solution that could use Slim::Player::Client::clients() to obtain similar or equivalent return data to a status command?
I've tried this but the volume of data return is immense;
Any pointers appreciated!
Peter
Using the jsonrpc.js command interface from my plugin, I'm currently getting basic information an all players using the 'players' command;
Code:
{"id":1, "method":"slim.request", "params":[ "", [ "players","0","50", "playerprefs:volume"]]}
Because of this and as I need further details around playlists etc., I've been looking at the 'status' command.
Now, due to the nature of the application (Alexa<->Plugin), it's inefficient to issue discrete 'Status' commands from the cloud service to the LMS for each device as the round trip time adds up. My design approach is to NOT build commands in the plugin but rather have it parse commands passed in but I'd be prepared to make an exception in this case.
Therefore, I have a few questions....
Is there a form of status that's similar to players in that no playerid is required eg (which I've tried unsuccessfully);
Code:
{"id":1, "method":"slim.request", "params":[ "", [ "status","0","2", "tags:"]]}
I would therefore wonder, is there a convenient solution that could use Slim::Player::Client::clients() to obtain similar or equivalent return data to a status command?
I've tried this but the volume of data return is immense;
Code:
foreach $client (Slim::Player::Client::clients()) { myDebug("Client details = ".Dumper($client)); }
Any pointers appreciated!
Peter
Comment