Appendix B: Media Server Queries

12/21/04

Full list of query types (these go in the type field)

Query Type

Description

themes

get a list of themes

whatsnext

get a list of upcoming songs on a given stream

longestsinceplayed

get a list of songs, ordered by when last played

recentadditions

get a list of songs, ordered by when added to the system

recentlyplayed

get a list of songs, ordered by when last played

searchgenres

search for genres whose name matches given search string

searchartists

search for artists whose name matches given search string

searchalbums

search for albums whose name matches given search string

searchinternetradio

search for Internet radio whose name matches given search string

searchtitles

search for songs whose name matches given search string

searchall

search for songs whose name,artist,album or genre matches given search string



Options common to all queries1

Option Name

Description

quantity2

Maximum number of entries to return

offset2

How many entries to skip

anynameyoulike3

To allow embedding of session IDs or anything else the caller wants to use to identify queries, all XML

fields are echoed back in the query result.
(see the anynameyoullike field in the sample from the XML Protocol Overview).



Only valid in the queries which start with 'search'

letters

restrict selections to items which start with this text

idGenre4

restrict selections to items which are in the genre idGenre

idArtist4

restrict selections to items which are by the artist idArtist

idAlbum4

restrict selections to items which are in the album idAlbum


Note 1
- a blank search (no letters or id fields) returns all results (so the searches can be used to get a complete list)

Note 2 - quantity and offset are used to control which entries in the query result list are returned. If a query has 20 results, a quantity of 10 will get the first 10, quantity of 10 with an offset of 5 will return entries 5-15.

Note 3 – The name anynameyoulike is just an example, you can name the field any string you wish, as long as it conforms to the XML naming rules, and doesn't conflict with any of our field names. Also note you can have as many custom tags as you want.

Note 4 - these ids are indexes into the genre/artist/albums, these indexes are given in the results of queries (so they are usually used to restrict an existing query, for example, a list of genres might be shown to the user, then they select one, then a list of artists in that genre would be displayed.