MPD protocol: implement outputs and plchangesposid commands

This commit is contained in:
Andrew Kelley 2014-02-28 11:05:31 -05:00
parent 0ca3c286f2
commit 7696b9791f

View file

@ -443,7 +443,13 @@ var commands = {
"outputs": {
permission: 'read',
fn: function (self, socket, args, cb) {
cb(ERR_CODE_UNKNOWN, "unimplemented");
socket.write("outputid: 0\n");
socket.write("outputname: default detected output\n");
socket.write("outputenabled: 1\n");
socket.write("outputid: 1\n");
socket.write("outputname: GrooveBasin HTTP Stream\n");
socket.write("outputenabled: 1\n");
cb();
},
},
"password": {
@ -620,15 +626,26 @@ var commands = {
},
],
fn: function(self, socket, args, cb) {
// TODO actually do versioning?
writePlaylistInfo(self, socket, 0, self.gb.player.tracksInOrder.length);
cb();
},
},
"plchangesposid": {
permission: 'read',
args: [
{
name: "version",
type: "integer",
},
],
fn: function (self, socket, args, cb) {
cb(ERR_CODE_UNKNOWN, "unimplemented");
var tracksInOrder = self.gb.player.tracksInOrder;
for (var i = 0; i < tracksInOrder.length; i += 1) {
var item = tracksInOrder[i];
socket.write("cpos: " + i + "\n");
socket.write("Id: " + self.toMpdId(item.id) + "\n");
}
cb();
},
},
"previous": {