RealChat Software

3.1. Server Configuration



Configuration Files

RealChat Server is configured by editing plain text configuration files. The configuration files reside in the /conf sub-directory of the installation path. Changes to the configuration files are only recognized by RealChat Server when it is started; you must restart RealChat Server in order the latest changes to take effect.

There is one main configuration file called RealChatServer.conf and additional configuration files for each virtual server specified in the main file. The main file contains global configuration parameters, such as port number, while the additional files contain server-specific parameters, such as room list, welcome message, and so forth.

If you are using any version of RealChat, other than RealChat ISP Edition, which supports true virtual hosting, you will need only the DefaultServer.conf file, provided with the distribution.

Syntax of the Configuration Files

The configuration files contain one directive per line. Directives in the configuration files are case sensitive. Lines that begin with the hash character # are comments and are ignored. You can check your configuration files for syntax errors without starting the server by using ./realchat configtest on UNIX/Linux® systems or by clicking Start menu -> Programs -> RealChat Server -> Configure -> Config Test on Windows® systems.




RealChatServer.conf Directives


DefaultServer.conf Directives


ServerPort Directive

Syntax: ServerPort number
Default: ServerPort 8080

The port the server listens on. 8080 is the standard web-cache port. Use this port if there's no web-cache or other service running on same computer, because most proxy or firewall software blocks all traffic, other than standard services. You may choose any other port i.e. 6667 is the standard IRC port. If you modify it, you *must* also change the PORT parameter of the chat client.

[ top ]

BindAddress Directive

Syntax: BindAddress address
Default: not set

Binds RealChat Server to the specified local IP address. The BindAddress argument can be used on a multi-homed host for a RealChat Server that only accepts connect requests to one of its addresses. If the BindAddress is not set, it will default to accepting connections on any or all local addresses.

[ Top ]

HttpControlPort Directive

Syntax: HttpControlPort number
Default: HttpControlPort 10010

The port the built-in http control server listens on.

[ Top ]

HttpCharset Directive

Syntax: HttpCharset charset
Default: HttpCharset iso-8859-1

The charset, or character set, used for http control server output.

[ Top ]

TrustedIP Directive

Syntax: TrustedIP IP address
Default: not set

Specifies that the Http control server will only allow requests that come from the local host or a TrustedIP.

[ Top ]

AllowExternal Directive

Syntax: AllowExternal on/off
Default: AllowExternal off

Specifies that the Http control server will allow connections from anywhere.

[ Top ]

ExternalClientHost Directive

Syntax: ExternalClientHost hostname or IP
Default: not set

Used in conjunction with HOST client parameter. If set, the server will only allow connections from users loading the applet from the specified hosts. You can set a list of hosts allowed to load the client from the main web server, as in the following examples:

ExternalClientHost mysite.com
ExternalClientHost www.mysite.com
ExternalClientHost chat.mysite.com

[ top ]

RootPassword Directive

Syntax: RootPassword password
Default: RootPassword root

Sets the RealChat Server password for a super user. The super user has complete control over the server, so you must change the default value to something no one else knows.

[ Top ]

ConsoleLog Directive

Syntax: ConsoleLog on/off
Default: ConsoleLog on

Specifies the action for the console log. When set to on, all activity, such as messages, people entering and leaving, and so forth, is printed out on the console. On UNIX® computers, it's useful to redirect the server's output to a separate TTY so that you can monitor it. To enable this, edit the 'realchat' start/stop script: look for a line TTY=null, change it to something like TTY=tty9, and restart the server. Now you can monitor the chat session by pressing ALT + F9 on the shell console.

[ Top ]

ErrorLog Directive

Syntax: ErrorLog on/off
Default: ErrorLog on

Logs errors and suspicious actions, such as Telnet connections, and so forth, as well as Java™ exceptions and errors.

[ Top ]

AccessLog Directive

Syntax: AccessLog on/off
Default: AccessLog on

Logs common information, such as transactions, user information, and so forth.

[ Top ]

DropTimeout Directive

Syntax: DropTimeout timeout
Default: DropTimeout 30

Specifies the seconds to keep a client alive. When there's no activity on the client's socket, meaning that the client has been dropped, for a period longer than timeout, the client connection is killed. You might need to set a higher value if most of your chatters are on a slow connection, but make sure it is less than 50.

[ Top ]

BanTimeout Directive

Syntax: BanTimeout timeout
Default: BanTimeout 15

Specifies the minutes to keep a banned address disabled.

[ Top ]

InactivityTimeout Directive

Syntax: InactivityTimeout timeout
Default: InactivityTimeout 15

Indicates that the server will first warn and then automatically kick out a person who has not typed anything for the specified number of timeout minutes.

[ Top ]

FloodCheck Directive

Syntax: FloodCheck on/off
Default: FloodCheck on

Detects and kicks out users flooding the chat session.

[ Top ]

VirtualServerDefinition Directive

Syntax: VirtualServerDefinition name.conf
Default: VirtualServerDefinition DefaultServer.conf

Specifies the configuration file to load for each virtual server. The first virtual server becomes the main, or default, server. There must be at least one VirtualServerDefinition. With a multiple virtual server license, you can add several configurations here, according to the license you paid for.

See also the vServer parameter of the chat client.

[ Top ]

ServerName Directive

Syntax: ServerName name
Default: ServerName Default

Indicates the name of this virtual server.

[ Top ]

HelloMessage Directive

Syntax: HelloMessage message
Default: HelloMessage Welcome to my RealChat Server!

Specifies the message sent to clients when they log in.

[ top ]

AdministratorPassword, OperatorPassword

Syntax: AdministratorPassword password
Syntax: OperatorPassword password
Default: #AdministratorPassword 1029
Default: #OperatorPassword 3847

Indicates passwords for administrative manager functions. Uncomment these lines and set the passwords to enable the administrative manager functions.

[ Top ]

ChatLog Directive

Syntax: ChatLog on/off
Default: ChatLog off

Sets chat session logging. Log files can grow large, so the default is off.

[ Top ]

PrivateMsgLog Directive

Syntax: PrivateMsgLog on/off
Default: PrivateMsgLog off

Indicates whether to log private messages.

[ Top ]

UserRoomLog Directive

Syntax: UserRoomLog on/off
Default: UserRoomLog off

Specifies whether to log room conversations created by users.

[ Top ]

UserLimit Directive

Syntax: UserLimit limit
Default: UserLimit 200

Limits the total number of simultaneous users on this server.

[ Top ]

MaxUsersPerRoom Directive

Syntax: MaxUsersPerRoom limit
Default: MaxUsersPerRoom 20

Limits the total number of users in a room. When this number is reached, a new 'spare' room is automatically created.

[ Top ]

[rooms_definitions]

Syntax: RoomName name
Syntax: RoomTopic topic
Syntax: RoomPassword password ( optional )
Syntax: Hidden on/off ( optional, default is off )

Sets the initial room list that the server starts with. RoomPassword is optional. You should set it only if you want to set a password protected room. Hidden is optional. Use it to regulate which rooms appear in the room list. Note the new lines after each room's description. You can set as many rooms as you wish. Refer to the following example:

[rooms_definitions]
RoomName The Lobby
RoomTopic This is the main room

RoomName Fun
RoomTopic Let's have some fun!

RoomName Staff only!
RoomTopic This is a restricted channel.
RoomPassword top-secret

RoomName No topic
RoomTopic

RoomName Private party
RoomTopic Only if you know...
Hidden on

BadRoom The Lobby
[/rooms_definitions]
BadRoom: The room where misbehaving users are sent by a kick from the private room owner. Name must be a valid room name for the server.

Note: In the evaluation version, the server is limited to one room only.

[ Top ]

[emotions_definitions]

Specifies the available emotions. Each emotion and action is described in three subsequent rows in the following format:

First row: The label users see on the emotion list.
Second row: The action performed on double-click.
Third row: The action performed when emoting the other user.

[emotions_definitions]
laugh
laughs
laughs at NICK

smile
smiles
smiles at NICK
[/emotions_definitions]

NICK is replaced with the other user's name.

[ top ]



Contents | Parent Topic | Previous Topic | Next Topic