CC Programmer's Corner - intro

Standard Chat     HowToUse    Glossary   Rules    Transcripts   
   Other Chat Clients    CC Programmers

















CC Home
MayonnaiseJar
MystHints

CyanWorlds



















The CyanChat system is made up of the server, which runs on cho.cyan.com, and the client which runs on your computer.

The client connects to the server. It sends and receives commands and messages to and from the server. A client never connects or sends a message directly to another client. This is because only the server knows who everyone is and who is special.

The server acts like a telephone switchboard, getting messages from the clients and routing them to other clients that are connected. It also informs clients of when new people join, when they leave and updates the who list when ever it changes. It also attaches the class of the client who sent the message (such as whether it is from a Cyan employee) on the message. 

The communication between the client and the server is done through a protocol. Sorta like a language that the two understand. This protocol is the first key to writing your own client that talks to the CyanChat server. These messages are entirely in text (i.e. no binary). This makes it easy to debug and easy for different programming languages to work with. Almost all the conversation start from a client.

There are several different version of the protocol. Each client only needs to know one protocol, but the server knows all of them. This way I can add new commands or change the way commands work without breaking old clients.

Here is a list of the current protocols: