This command can be used without logging in.
.TP
.B cookie \fICOOKIE
-Log a user back in using a cookie created with \fBmake-cookie\fR.
+Log a user back in using a cookie created with \fBmake\-cookie\fR.
The response contains the username.
.TP
.B deluser \fIUSERNAME
With the \fBadmin\fR right any username and property may be specified.
Otherwise the \fBuserinfo\fR right is required and only the
\fBemail\fR and \fBpassword\fR properties may be set.
+.IP
+User properties are syntax-checked before setting. For instance \fBemail\fR
+must contain an "@" sign or you will get an error. (Setting an empty value for
+\fBemail\fR is allowed and removes the property.)
.TP
.B enable
Re-enable further playing, and is the opposite of \fBdisable\fR.
.IP
If the track or preference do not exist then the response code is 555.
.TP
-.B get-global \fIKEY\fR
+.B get\-global \fIKEY\fR
Get a global preference.
.IP
If the preference does not exist then the response code is 555.
.IP
See \fBEVENT LOG\fR below for more details.
.TP
-.B make-cookie
+.B make\-cookie
Returns an opaque string that can be used by the \fBcookie\fR command to log
this user back in on another connection (until the cookie expires).
.TP
at the head of the queue (i.e. next to be be played) first.
See below for the track information syntax.
.TP
-.B random-disable
+.B random\-disable
Disable random play (but don't stop the current track).
Requires the \fBglobal prefs\fR right.
.TP
-.B random-enable
+.B random\-enable
Enable random play.
Requires the \fBglobal prefs\fR right.
.TP
-.B random-enabled
+.B random\-enabled
Report whether random play is enabled.
The second field of the response line will be \fByes\fR or \fBno\fR.
.TP
Request that DisOrder reconfigure itself.
Requires the \fBadmin\fR right.
.TP
-.B register \fIUSER PASSWORD EMAIL
+.B register \fIUSERNAME PASSWORD EMAIL
Register a new user.
Requires the \fBregister\fR right.
The result contains a confirmation string; the user will be be able
to log in until this has been presented back to the server via the
\fBconfirm\fR command.
.TP
-.B reminder \fIUSER\fR
-Send a password reminder to \fIUSER\fR.
+.B reminder \fIUSERNAME\fR
+Send a password reminder to user \fIUSERNAME\fR.
If the user has no valid email address, or no password, or a
reminder has been sent too recently, then no reminder will be sent.
.TP
Requires the \fBpause\fR right.
.TP
.B revoke \fBcookie\fR
-Revoke a cookie previously created with \fBmake-cookie\fR.
+Revoke a cookie previously created with \fBmake\-cookie\fR.
It will not be possible to use this cookie in the future.
.TP
-.B rtp-address
+.B rtp\-address
Report the RTP broadcast (or multicast) address, in the form \fIADDRESS
PORT\fR.
This command does not require authentication.
Set a preference.
Requires the \fBprefs\fR right.
.TP
-.B set-global \fIKEY\fR \fIVALUE\fR
+.B set\-global \fIKEY\fR \fIVALUE\fR
Set a global preference.
Requires the \fBglobal prefs\fR right.
.TP
Unset a preference.
Requires the \fBprefs\fR right.
.TP
-.B \fBunset-global\fR \fIKEY\fR
+.B \fBunset\-global\fR \fIKEY\fR
Unset a global preference.
Requires the \fBglobal prefs\fR right.
.TP
-.B user \fIUSER\fR \fIRESPONSE\fR
-Authenticate as \fIUSER\fR.
+.B user \fIUSERNAME\fR \fIRESPONSE\fR
+Authenticate as user \fIUSERNAME\fR.
See
.B AUTHENTICATION
below.
.TP
+.B userinfo \fIUSERNAME PROPERTY
+Get a user property.
+.TP
.B users
Send the list of currently known users in a response body.
.TP
.B failed \fITRACK\fR \fIERROR\fR
Completed playing \fITRACK\fR with an error status
.TP
-.B moved \fIUSER\fR
-User \fIUSER\fR moved some track(s).
+.B moved \fIUSERNAME\fR
+User \fIUSERNAME\fR moved some track(s).
Further details aren't included any more.
.TP
-.B playing \fITRACK\fR [\fIUSER\fR]
+.B playing \fITRACK\fR [\fIUSERNAME\fR]
Started playing \fITRACK\fR.
.TP
.B queue \fIQUEUE-ENTRY\fR...
.B recent_removed \fIID\fR
Removed \fIID\fR from the recently played list.
.TP
-.B removed \fIID\fR [\fIUSER\fR]
+.B removed \fIID\fR [\fIUSERNAME\fR]
Queue entry \fIID\fR was removed.
-This is used both for explicit removal (when \fIUSER\fR is present)
+This is used both for explicit removal (when \fIUSERNAME\fR is present)
and when playing a track (when it is absent).
.TP
.B rescanned
A rescan completed.
.TP
-.B scratched \fITRACK\fR \fIUSER\fR
-\fITRACK\fR was scratched by \fIUSER\fR.
+.B scratched \fITRACK\fR \fIUSERNAME\fR
+\fITRACK\fR was scratched by \fIUSERNAME\fR.
.TP
.B state \fIKEYWORD\fR
Some state change occurred.