RealChat Software 2.0

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 ( i.e. 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 etc.

Unless you are not using RealChat ISP Edition which supports true virtual hosting, you will need only the DefaultServer.conf, 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 which begin with the hash character # are considered 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, and by 'Start menu->Programs->RealChat Server->Configure->Config Test' on Windows systems.




RealChatServer.conf Directives

Sample 'RealChatServer.conf' file here.


DefaultServer.conf Directives

Sample 'DefaultServer.conf' file here.


ServerPort Directive

Syntax: ServerPort number
Default: ServerPort 8080

The port the server listens on. 8080 is the standard web-cache port. It's good to use it if there's no web-cache or other service running on same machine, because many proxy/firewalling 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 the PORT parameter of the chat client.

[ top ]

BindAddress Directive

Syntax: BindAddress address
Default: not set

Bind RealChat Server to the specified local IP address. The BindAddress argument can be used on a multi-homed host for a RealChat Server that will only accept connect requests to one of its addresses. If BindAddress is not set, it will default accepting connections on any/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 used for http control server output.

[ top ]

TrustedIP Directive

Syntax: TrustedIP IP address
Default: not set

http control server will only allow requests which come from localhost or TrustedIP.

[ top ]

AllowExternal Directive

Syntax: AllowExternal on/off
Default: AllowExternal off

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 form users loading the applet from the specified host(s). You can set here a list of hosts allowed to load the client from the main web server, example

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

[ top ]

RootPassword Directive

Syntax: RootPassword password
Default: RootPassword root

RealChat Server superuser password. The superuser 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

When set to on all activity ( messages, people enterning and leaving, etc. ) is printed out on the console. On UNIX machines it's useful to redirect the server's output to a separate tty so 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 ( telnet connections etc. ), as well as Java exceptions and errors.

[ top ]

AccessLog Directive

Syntax: AccessLog on/off
Default: AccessLog on

Logs common info ( transactions, user information etc. )

[ top ]

DropTimeout Directive

Syntax: DropTimeout timeout
Default: DropTimeout 30

Seconds to keep a client alive. When there's no activity on the client's socket ( client was dropped ) for period longer than timeout the client is killed. You might need to set a higher value here if most of your chatters are on a slow connection.

[ top ]

BanTimeout Directive

Syntax: BanTimeout timeout
Default: BanTimeout 15

Minutes to keep a banned address disabled.

[ top ]

InactivityTimeout Directive

Syntax: InactivityTimeout timeout
Default: InactivityTimeout 15

The server will first warn and then automatically kick out a person who has not typed anything for timeout minutes.

[ top ]

FloodCheck Directive

Syntax: FloodCheck on/off
Default: FloodCheck on

Detects and kicks out users flooding the chat.

[ top ]

ExposeRegInfo Directive

Syntax: ExposeRegInfo on/off
Default: ExposeRegInfo off

Your RealChat license registration key and information appears on the 'About' tab of the RealChat Client applet, by default. Setting this directive to off will take off your registration details and leave the key only.

[ top ]

VirtualServerDefinition Directive

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

The configuration file to load for each virtual server. The first virtual server becomes the 'main' ( default ) server. There must be at least one VirtualServerDefinition. If you bought 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

The name of this virtual server.

[ top ]

HelloMessage Directive

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

This is sent to clients when they log in.

[ top ]

AdministratorPassword, OperatorPassword

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

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

[ top ]

ChatLog Directive

Syntax: ChatLog on/off
Default: ChatLog off

Chat session logging ( log files grow big, so default is off ).

[ top ]

PrivateMsgLog Directive

Syntax: PrivateMsgLog on/off
Default: PrivateMsgLog off

Whether to log private messages.

[ top ]

UserRoomLog Directive

Syntax: UserRoomLog on/off
Default: UserRoomLog off

Whether to log user-created rooms conversations.

[ top ]

UserLimit Directive

Syntax: UserLimit limit
Default: UserLimit 200

Limits the total number of simultaneous users in 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 )

Initial room list 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 newlines after each room's description. You can set as many rooms as you wish. 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 misbehaved users are sent by private room owner's kick. 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]

Each emotion/action is described in 3 subsequent rows this way:
First row: the label users will see on the emotion list
Second row: the action performed on doubleclick
Third row: the action performed when emoting 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