Client to client

Clients can communicate with each others over "channels". A channel is created by a client subscribing to it. More than one client can be subscribed to a channel at a time; all of them will receive the messages which get sent to it.

Each time a client subscribes or unsubscribes, the global idle event subscription is generated. In conjunction with the channels command, this may be used to auto-detect clients providing additional services.

New messages are indicated by the message idle event.

subscribe {NAME}

Subscribe to a channel. The channel is created if it does not exist already. The name may consist of alphanumeric ASCII characters plus underscore, dash, dot and colon.

unsubscribe {NAME}

Unsubscribe from a channel.

channels

Obtain a list of all channels. The response is a list of "channel:" lines.

readmessages

Reads messages for this client. The response is a list of "channel:" and "message:" lines.

sendmessage {CHANNEL} {TEXT}

Send a message to the specified channel.