Table of Contents

Message Protocols

FIXME These have been updated in drc-server.git.

Client-client messages

Components

type The type of the message - this can influence how the other components are used
body The actual content of the message - very dependent on message type
node_id The message's entry point into the network - exists only during relay, used for automatic route learning
sender The origin of the message, added by the node at which the message enters the network
recipient The user which should receive the message
uuid A Universally Unique Identifier added by the entry point of the message to stop messages cycles

Formats

Client-server

type:recipient:body

Server-client

type:sender:body

Server-server message relay

uuid:node_id:type:sender:recipient:body

Omitted fields

Any fields omitted from a message (for example if the type doesn't require them) should be collapsed, not removed.

Correct:

msgtype::this is some body text

Incorrect:

msgtype:this is some body text