Microsoft Chat Server Development Guide

Extension Types

Before there were chat server extensions, there were bots and channel services.

A bot is a program that can do anything that users can do through the IRC or IRCX protocol. Bots can be present in any channel (including auditorium channels), and can have managerial or operator privileges. For example, a game server could be coded as a bot and installed as a host of a channel with "auditorium" and "noformat" modes. In "auditorium" mode, all messages would be addressed to the bot, which would then keep track of user sessions. (The "noformat" mode indicates that client applications should not apply special formatting, which might confuse the bot, to messages sent within the channel.)

A channel service communicates with the server through an API, rather than through a protocol. As such, it performs its work synchronously. The functional difference between a bot and a channel service is that if a channel owner wants to prevent certain people from entering a channel, a bot can only remove the users after they enter, whereas a channel service can prevent the users from entering in the first place. Support for channel services is being phased out in favor of chat server extensions.

Chat server extensions can perform the services of both bots and channel services. Moreover, extensions can control multiple channels at a time, and monitor commands sent to the server, such as /connect, /join, /nick, and /list. They can also react to events from other computers on the chat network. In this way, chat server extensions modify the way the server behaves.


© 1998 Microsoft Corporation. All rights reserved.