Common Objects
These objects often appear in the output of many JSON-RPC calls.
The definitions of these objects will be here, instead of everywhere they appear in the documentation.
Collection
The Collection is the main music library/database in festivald.
The 3 Common Objects
The 3 common "objects" that appear almost everywhere are:
Keys
And the number key that acts as the identifier for them:
ArtistkeyAlbumkeySongkey
Entry
Entry is an "absolute" key, as it holds all integer Key's and all string key's relating to a Song.
Playlist
Playlist's are regular lists of Song's.
The "entries" within a Playlist aren't Song objects themselves, but Entry-like objects called Playlist Entry's.
Generic Response
This is the generic "success" response object, just an empty result:
{
"jsonrpc": "2.0",
"result": null, // <--- everything went ok.
"id": 0 // the `result` field existing in JSON-RPC means success,
} // so the value in this case (null) doesn't matter.
This is the response to many JSON-RPC as well, typically the Playback Control methods.
If an error occurred in this situation, the JSON-RPC defined error would be used:
{
"jsonrpc": "2.0",
"error": { // <--- something went wrong.
"code": -1, // <--- the error code.
"message": "...", // <--- short message of the error.
},
"id": 0
}