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 calledRealChatServer.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 theDefaultServer.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.
- ServerPort
- BindAddress
- HttpControlPort
- HttpCharset
- TrustedIP
- AllowExternal
- ExternalClientHost
- RootPassword
- ConsoleLog
- ErrorLog
- AccessLog
- DropTimeout
- BanTimeout
- FloodCheck
- InactivityTimeout
- ExposeRegInfo
- Virtual Server Definitions
DefaultServer.conf Directives
Sample 'DefaultServer.conf' file here.
- ServerName
- HelloMessage
- AdministratorPassword, OperatorPassword
- ChatLog
- PrivateMsgLog
- UserRoomLog
- UserLimit
- MaxUsersPerRoom
- Rooms Definitions
- Emotions Definitions
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
[ top ]PORT
parameter of the chat client.
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 '
[ top ]realchat
' start/stop script: look for a lineTTY=null
, change it to something likeTTY=tty9
and restart the server. Now you can monitor the chat session by pressing ALT-F9 on the shell console.
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.
[ top ]
See also the vServer parameter of the chat client.
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:
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 ][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]
[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 ]