Comm v2.0
<TYPE><DATA>\n
See poorman's\ tcomm.sh for a netcat example
Seperators in messages are the character 0x1d "group seperator" aka ^]
Standard hailing frequency: Port 2848
- client name - login request with name %s
NAME %s
- client sends a message to all
MESSAGE %s
- client sets its message colour (this message is not sent back to a client)
COLOUR %s
- Client List
CLIENT_LIST
Server Reply:
CLIENT_LIST_START CLIENT_LIST %s^]%s % name, sep, col
or:
CLIENT_LIST %s % name CLIENT_LIST_END
for each client except the queryer
- request to change name server replies with ERR if unsuccessful (otherwise RENAME %s %s is sent)
RENAME %s
- request root-control of server with password %s if unsuccessful, an ERR message is returned otherwise, the server may optionally send an informational message (INFO)
SU %s
- root request to kick user
KICK %s
- Send %s[1] to %s[0] ONLY
PRIVMSG %s^]%s
- Draw Message
D%s
- Draw Data
DD%d_%d_%d_%d_%d % (x1, y1, x2, y2, colour)
- Draw Clear
DC
- a new client has connected, [b]with name[/b]
CLIENT_CONN %s
- authenticated (named) client disconnected
CLIENT_DISCO %s
- client message error
ERR %s
- see (client->server)::CLIENT_LIST
CLIENT_LIST*
- message from server to all
MESSAGE %s
- client %s[0] sets its message colour to %s[1]
COLOUR %s^]%s
- server informational message
INFO %s
- client %s[0] renamed to %s[1]
RENAME %s^]%s
- Server is restarting, reconnect in %d seconds (default to 10)
RESTART %d
- Private message
PRIVMSG %s
Server sends
Comm v$VERSION Optional-Server-Desc
where version is something like 1.2 (always in the form %d.%d)
client either disconnects, or continues with the following
NAME Timmy
the server then responds with
ERR %s
or
OK
if ERR, server then closes the connection otherwise the handshake is successful