This was discussed a while ago — and sorry if it’s already found its way in the code and I haven’t noticed — but two small features I’d love to see for completeness when calling out to the ssc are:
1) the IP address of the requesting player and
2) some identifier — if any information is available — on the type of player (“user-agent”) making the request
#1 is necessary to do pushing data out to clients, like the Roku, which I’m currently using the ssc scripts for as a hack, though you might imagine having the playing of a song also spawn off some other process, typically on the same machine that’s making the request
#2 would be nice to avoid unnecessary conversions, such as when an iTunes client makes a request for an ogg file and quicktime extensions can handle it. It would be far better if DAAP made use of HTTP request headers (or its own protocol) for listing accepted types… I assume that’s not part of the spec? If the user-agent field is provided in an HTTP request and appears to be unique, that would be a good start. I could make assumptions on type based on that.
Number 2 will be coming soon, once the configuration moves into the database. I’ve got some “quirks” stuff to add that I’m going to make part of the same configuration. For each client type, a list of quirks and natively understood codec types.
It will be a while until I get to the ip stuff… that will be part of the multiple-user support, as I am going to cast to user classes by password or by ip address. But yeah, that’s on my list.