From 5abe307a2878e3e523cfd76fa3343cf904c9297f Mon Sep 17 00:00:00 2001 Message-Id: <5abe307a2878e3e523cfd76fa3343cf904c9297f.1715415476.git.mdw@distorted.org.uk> From: Mark Wooding Date: Sun, 30 Sep 2007 22:58:40 +0100 Subject: [PATCH] send "playing" at start of log; document log state updates Organization: Straylight/Edgeware From: Richard Kettlewell --- doc/disorder_protocol.5.in | 15 +++++++++++++++ server/server.c | 3 +++ 2 files changed, 18 insertions(+) diff --git a/doc/disorder_protocol.5.in b/doc/disorder_protocol.5.in index d3ad537..07fada9 100644 --- a/doc/disorder_protocol.5.in +++ b/doc/disorder_protocol.5.in @@ -408,6 +408,9 @@ Queue entry \fIID\fR was removed. This is used both for explicit removal (when Some state change occurred. The current set of keywords is: .RS .TP +.B completed +The current track completed successfully. +.TP .B disable_play Playing was disabled. .TP @@ -420,11 +423,23 @@ Playing was enabled. .B enable_random Random play was enabled. .TP +.B failed +The current track failed. +.TP .B pause The current track was paused. .TP +.B playing +A track started playing. +.TP .B resume The current track was resumed. +.TP +.B scratched +The current track was scratched. +.PP +To simplify client implementation, \fBstate\fR commands reflecting the current +state are sent at the start of the log. .RE .TP .B volume \fILEFT\fR \fIRIGHT\fR diff --git a/server/server.c b/server/server.c index cb7714e..1d3e682 100644 --- a/server/server.c +++ b/server/server.c @@ -759,6 +759,9 @@ static int c_log(struct conn *c, sink_printf(ev_writer_sink(c->w), "%"PRIxMAX" state %s\n", (uintmax_t)now, paused ? "pause" : "resume"); + if(playing) + sink_printf(ev_writer_sink(c->w), "%"PRIxMAX" state playing\n", + (uintmax_t)now); c->lo = xmalloc(sizeof *c->lo); c->lo->fn = logclient; c->lo->user = c; -- [mdw]