Chapter 6. Channel Modes and Properties

Table of Contents

Modes
PUBLIC (RFC1459 default)
PRIVATE (RFC1459 +p)
HIDDEN (IRCX +h)
SECRET (RFC1459 +s)
MODERATED (RFC1459 +m)
NOEXTERN (RFC1459 +n)
TOPICOP (RFC1459 +t)
INVITE (RFC1459 +i)
KNOCK (IRCX +u)
NOFORMAT (IRCX +f)
NOWHISPER (IRCX +w)
AUDITORIUM (IRCX +x)
REGISTERED (IRCX +r)
SERVICE (IRCX +z)
AUTHONLY (IRCX +a)
CLONEABLE (IRCX +d)
CLONE (IRCX +e)
Properties
OID (Read Only)
NAME (Read Only)
CREATION (Read Only)
LANGUAGE
OWNERKEY (Write Only)
HOSTKEY (Write Only)
MEMBERKEY (Write Only)
PICS
TOPIC
SUBJECT
CLIENT
ONJOIN
ONPART
LAG
ACCOUNT
CLIENTGUID
SERVICEPATH

New modes and properties have been added to channels.

Channels support four mutually exclusive states of visibility: public, private, hidden, and secret. The visibility of a channel affects which modes and properties are available to a client.

Modes

Each channel object contains a number of binary mode settings that can be queried and optionally updated via the RFC1459 MODE command.

PUBLIC (RFC1459 default)

The channel is public and all information about the channel (except for text messages) can be queried by non-members. PUBLIC mode is mutually exclusive with the PRIVATE, HIDDEN and SECRET modes.

This mode may be set and queried by sysop managers, owners and hosts of the channel. It may be queried by sysops, members of the channel, and users.

[Note]Editor's Note

The "PUBLIC" mode is not actually a mode, but an absence of the modes +h, +p, and +s.

PRIVATE (RFC1459 +p)

The channel is private and only the name, number of members and PICS property can be queried by non-members. PRIVATE mode is mutually exclusive with the PUBLIC, HIDDEN and SECRET modes.

This mode may be set by sysop managers, owners and hosts of the channel. It may be not be queried by sysops or users.

HIDDEN (IRCX +h)

The channel is hidden and cannot be located by enumeration queries from non-members. HIDDEN mode is mutually exclusive with the PUBLIC, PRIVATE, and SECRET modes. The purpose of the new HIDDEN channel mode is to permit the existence of channels that cannot be found using the standard LIST command, but whose properties can be queried if the exact channel name is known. Thus a HIDDEN channel is the same as a PUBLIC channel except that it cannot be enumerated by using a LIST or LISTX command.

This mode may be set and queried like PUBLIC mode.

SECRET (RFC1459 +s)

The channel is secret and cannot by located by any query from non-members. SECRET mode is mutually exclusive with the PUBLIC, PRIVATE, and HIDDEN modes.

This mode may be set and queried like PRIVATE mode.

MODERATED (RFC1459 +m)

Normally, new channel members may speak. In MODERATED mode however, new channel members may not speak by default. This is achieved by giving all new members the '-v' mode (no voice) for that channel. Usually -v mode has no effect, but in a MODERATED channel it does.

This mode may be set and queried by sysop managers, owners and hosts of the channel. It may be queried by sysops and members of the channel. Users may query this mode if the channel is PUBLIC or HIDDEN.

NOEXTERN (RFC1459 +n)

NOEXTERN mode blocks messages from non-members to the channel. A sysop manager can still send a message to the channel.

This mode may be set and queried like MODERATED mode.

TOPICOP (RFC1459 +t)

TOPICOP mode permits only channel owners and hosts to change the channel topic property.

This mode may be set and queried like MODERATED mode.

INVITE (RFC1459 +i)

INVITE mode permits only invited users to enter the channel. Only owners and hosts can issue an invitation when this mode is on.

This mode may be set and queried like MODERATED mode.

KNOCK (IRCX +u)

The KNOCK extended mode causes a KNOCK message to be sent to owners and hosts of the channel if a user attempts to join a channel and the server denies entrance.

This mode may be set and queried like MODERATED mode.

NOFORMAT (IRCX +f)

The NOFORMAT channel mode is an indication to the client application not to format text received from the channel.

Normally clients will prefix text messages with "x said y" or "x whispers to y and x", if the NOFORMAT mode is set then just the raw text should be displayed moving to the next line at the end of the message. The client should not echo text sent by the client. This is to permit custom applications to control the formatting to clients. Clients may want to inform users that messages can be spoofed with this mode.

This mode can only be set by sysop managers. It can be read by sysop managers, sysops, owners, hosts and members of the channel. It can be read by users if the channel is PUBLIC or HIDDEN.

NOWHISPER (IRCX +w)

The NOWHISPER channel mode will prevent all messages sent to specific nicknames within the context of that channel.

This channel mode may be set and read by sysop managers and owners. It can be read by sysops, hosts and members of the channel. It can be read by other users if the channel is PUBLIC or HIDDEN.

AUDITORIUM (IRCX +x)

The AUDITORIUM channel mode restricts visibility and messaging within a channel. Members will only see themselves and the hosts/owners in the channel. Any message sent by a member will only be received by the hosts and owners. Hosts and owners will see all members in the channel and messages from a host or owner are seen by all channel members. Ordinary members will not receive JOIN/PART messages from other members. This mode is designed for channels with so many members that they do not want to see each other. Note that auditorium mode may only be set at channel creation time using the CREATE command.

This mode may be set and read by sysop managers, sysops, and owners. It may be read by hosts and members of the channel. It can be read by other users if the channel is PUBLIC or HIDDEN.

REGISTERED (IRCX +r)

The channel is registered by the administrator of the chat network. The registration procedure is not defined here. Only the server or server administrator can set this mode.

It can be read by sysop managers, sysops, owners, hosts, and members of the channel. It can be read by users if the channel is PUBLIC or HIDDEN.

SERVICE (IRCX +z)

A service is monitoring/controlling the channel. This is an indication to the client that message traffic sent to the channel is being monitored by a Chat Service which does not appear as a member in the channel.

This mode can only be set by the Chat Server. It can be read by sysop managers, sysops, owners, hosts and members of the channel. It can be read by users if the channel is PUBLIC or HIDDEN.

AUTHONLY (IRCX +a)

The AUTHONLY channel mode permits channel access only to users who have been authenticated by the server. Note that an authenticated user is any user that was successfully authenticated with the PASS command or the AUTH command.

This mode can be set and read by sysop managers or owners of the channel. It can be read by sysops, hosts and members of the channel. It can be read by users if the channel is PUBLIC or HIDDEN.

CLONEABLE (IRCX +d)

The CLONEABLE channel mode defines a channel that creates new clone channels if the parent channel is full. A clone channel is created with the same name as the parent cloneable channel with a numeric suffix starting at 1, ranging to 99. It is not valid to set the CLONEABLE channel mode of a parent channel that ends with a numeric character. The clone channel inherits modes and properties from the parent channel when it is set up. When a clone channel is created, any channel that has the same name is removed. This prevents channel takeover of a clone channel.

It is advised that only sysop be allowed to set cloneable mode on a channel. The mode may be read by sysops, owners, hosts and members of the channel. It may be read by users if the channel is PUBLIC or HIDDEN.

CLONE (IRCX +e)

The CLONE channel mode defines a channel that was created by the server when a parent CLONEABLE channel becomes full. Users should usually join the parent channel, although a user may join a clone channel that is not full. A sysop manager can set up a clone channel but only when the channel is being created.

This mode can be set by the sysop manager and read like the SERVICE mode.