The "meme" chat protocol
Elliott Hird, December 2007
= Message format ===============================================================
<message> = <tag>\t<command>[\t<args>]\n
<tag> is a base-10 number.
<command> is one of the valid commands (described below).
<args> = <key>: <value>[\t<args>]
<key> is one of the valid argument names for the command.
<value> is any UTF-8 string -- to escape tabs, use '\t' in the message, and to
escape backslashes, use '\.'.
= Example message ==============================================================
(Note: replace 8 spaces with a tab.)
1 hello client: netcat user: ehird
= Server responses =============================================================
<response> = <tag>\t<status>[\t<args>]\n
<tag> and <args> are the same as above, <status> is either "ok" or "fail".
The arguments given are command-specific.