This is an archived page. It's not actively maintained.

Chat Core

Chat Core is the shared code for instant messaging that is shared by Instantbird and Thunderbird. It provides a number of functions and capabilities, including:

The Chat Core code lives in the chat/ directory of comm-central.

Chat Core Protocols
The Chat Core code used by Instantbird and Thunderbird has some abstractions to deal with the differences between protocols (e.g. IRC vs. XMPP).
Contacts are at the heart of instant messaging, and thus the Chat Core has a way to abstract to a "person" (represented by an imIContact instance), which might connect to multiple networks, etc.
Keyboard shortcuts
This is a list of keyboard shortcuts that are available in Instantbird/Thunderbird with brief descriptions of what they do.
Message Styles
Chat Core uses a message style system based on HTML, JS and CSS that is very similar to the one created for Adium.  If you plan to create a message style for Instantbird or Thunderbird, reading the Adium documentation on the topic may be helpful -- see this tutorial and this reference sheet.
This is a page for documenting the notifications in Instantbird and Thunderbird. This is likely out of date. Notifications are grouped by interface you need to attach the observer to.
Smiley Themes
A smiley theme for Chat Core (used by Instantbird and Thunderbird) is very easy to create, it contains a bunch of image files, a theme.js file and the necessary packaging around it to make it an extension.

See pages tagged Chat Core for additional chat core-specific information.