Você está na página 1de 81

8.

User Guide
ChatBlazer 8.5 User Guide 2009 Pendulab Pte Ltd Version: 8.5.002 Last Update: 2009-08-10

content
content.................................................................................................... 2 foreword ........................................................................................ 4 operating requirements .................................................................... 5 Server-side Requirements ........................................................................ 5 software package ............................................................................ 6 Files in the Package................................................................................. 6 installation ..................................................................................... 8 By Installer............................................................................................ 8 Manual Installation.................................................................................. 8 Step 1 Unzipping of the Downloaded Package ............................................. 9 Step 2 Transferring Files to the Server ...................................................... 9 Step 3 Verification ................................................................................10 Deploying the Administrator on the Web ....................................................10 starting the ChatBlazer server ..........................................................12 Command-Line Startup...........................................................................12 Windows Service ...................................................................................14 Unix System-V Initialization Startup..........................................................14 Stopping the ChatBlazer server ................................................................14 Running with SQL Database Connectivity Module.........................................15 configuring the server.....................................................................16 Parameters in the Configuration File..........................................................16 Modules ...............................................................................................20 Allowed Domains ...................................................................................21 Chat Message Logging ............................................................................22 managing ChatBlazer .....................................................................24 Understanding Administrator Module Hierarchy ...........................................25 Using the Administrator module ...............................................................26 setting up the chat client .................................................................60 Setting up ChatBlazer in a Popup Window ..................................................60 Setting up ChatBlazer Embedded in an existing HTML ..................................60 Setting up client.html .............................................................................61 Setting up Custom Avatars ......................................................................62

Setting up PicShare................................................................................63 Understanding the Client Configuration......................................................63 advanced features ........................................................................64 Setting Up Media AV Plug-In ....................................................................64 Using the SQL Database Connectivity Module .............................................64 Using the ServerDev Module....................................................................71 Setting up ChatBlazer server and client on different machines/servers ............71 Integrating ChatBlazer with LDAP .............................................................72 troubleshooting..............................................................................78 Installation Issues..................................................................................78 Usage Problems.....................................................................................78 Support ...............................................................................................80 appendix.................................................................................................. 1 Log Message Types ................................................................................. 1

software architecture

foreword

ChatBlazer 8: Building on the success of ChatBlazer 7


Following the unprecedented success of ChatBlazer 7, Pendulab is proud to release its much anticipated successor ChatBlazer 8. Based on our experience in enhancing ChatBlazer 7, as well as garnering countless customers feedback, we can confidently claim that ChatBlazer 8 once again pushes the technological limit of current web-based chat software and maintain its position as one of the leaders in the field. One of the most notable improvements is the completely revamped lookand-feel of the ChatBlazer 8 client. Based on the ubiquitous Flash platform, the user interface (UI) is now up to date with the latest UI trends of modern software. But it not only looks good, its much easier to use now, lesser clicks, straightforward features and abundance of assistance will help to boost your end users chat experience, making your website, your community more sticky than ever before. The ChatBlazer 8 Server backend has also been diligently enhanced. ChatBlazer 8 is now interoperable with your existing user database without a need to modify your existing database schema, providing an integrate-as-itis approach. Weve always worked relentlessly to improve the performance and stability of the server and are proud to say that the server can run for months on end without a need to restart it. Besides these, the other improvements in ChatBlazer 8 are too many to list down here. We are confident they will ensure that your chat rooms are a highlight of your web site and business. Once again, we wish you all the best in your future endeavors. Yours truly,

Christopher Low
CEO Pendulab Pte Ltd

operating requirements

operating requirements

Server-side Requirements
Supported operating systems: Windows 2003/XP/2000/NT/98, Red Hat Linux, Fedora, CentOS and other Linux variants, Free BSD, Open BSD, and other UNIX variants. Minimum Java 1.5 (and above) installed Minimum 128MB RAM Approximately 10 MB of hard disk space for the installation of the ChatBlazer files Network connection with allowable port passage, if running ChatBlazer 8 behind a corporate firewall. For Linux-based and UNIX systems, user permission to run long-running processes. For Windows OS, user permission to create and run Windows Services.

software package

software package

The package name you downloaded indicates the modules that you have purchased. The package name pattern is as follows: cb8_ORDERID.zip

An example of a valid package : cb8_0123456789.zip

Files in the Package


Using a normal ZIP utility (such as Winzip), extract the files into your folder/directory using the Use folder name option (or something similar) that will preserve the hierarchical structure contained in the package. In your target folder/directory, you should find the following files/directories.
If you have used the Windows installer, these files and directories can be found where you have specified the installation directory to be.

File / Directory admin/ client/

Description Directory that contains the ChatBlazer Administrator client Directory contains all client-side files, including resources (banners, sound clips, emoticons) and online help files. This directory should be copied or moved to your public web directory directory (public_html, Inetpub, etc.) on your server. Contains the user guide and any additional addendums based on modules purchased Contains application scripts to be installed in your media streaming server, e.g. Adobe Flash Media Server, Wowza Media Server. This is applicable only for the Media AV plugin.

docs/

media/

software package

server/

Directory contains all the server-side files, essentially the ChatBlazer server files. It should not be in a public directory or your WWW directory as it contains sensitive information about your chat system Application used for registering ChatBlazer as a Windows service License information for ChatBlazer and third-party software components General information file This important file highlights the exact details of your purchase, including domain(s) licensed, modules, user limit, etc. Check this file to verify that the package corresponds to your purchase.

winsvc/

license.txt

readme.txt package.htm

installation

installation

By Installer
If you are using our installer (by InstallShield), you have to upload the installer to the server where the software will be installed. Please check that Java is already installed on your server before you run the installer, as it requires Java to run. If Java is already installed, check also that the Java executable is included in your PATH environment variable. The rest of this chapter covers a manual (do-it-yourself) installation of ChatBlazer 8.

Manual Installation
There are three categories of servers where ChatBlazer files are most likely to be installed. Server located at your premises Co-located dedicated server Virtual account server

Installation to each of the type of server is essentially the same, with some minor variations. Differences will be noted in the installation process. There are three steps to the entire installation process. 1. Unzipping of the downloaded package to a directory on your machine. 2. Transferring the files to the server that is going to run the ChatBlazer server. 3. Verifying that files are correctly transferred to the destination server.

installation The definition of installation here means that all the necessary files are transferred or moved to its appropriate destination, e.g. a directory on your server. It does not include starting of the ChatBlazer server, which is covered in the next chapter.

Step 1 Unzipping of the Downloaded Package


After you have downloaded the ChatBlazer package, you should unzip the software package into a directory on a machine. This machine can be either the destination server or another machine that is not going to run your live ChatBlazer server. Please follow the steps below: Step 1 Create an empty directory on your hard disk to store the files that will be unzipped from the software package. Windows users can use MS Explorer to create a new folder.

UNIX users should use the mkdir command in their home directory.

Step 2 Move the downloaded ChatBlazer software package into the newly created directory. Step 3 Launch a ZIP utility (such as Winzip, PKZip, etc.) and unzip the files into the current directory where the package is.
UNIX users should be able to run the utility unzip.

Step 4 Check the content or file listing of the new directory. It should contain the files as stated in the Software Package chapter.

Step 2 Transferring Files to the Server


There are 2 directories that must be transferred, namely, client and server. You need to copy or move the client directory to the directory where the client files will be hosted on the Internet. This directory is usually in the webserver directory, e.g. public_html, Inetpub, wwwroot, www etc. The server directory should be moved to a directory outside of the web-server directory. This will prevent people from accessing and tampering with your ChatBlazer server-side files.

installation Alternatively, you can copy all the files in the client directory to your webserver directory. You should do this if you do not want your users to access a sub-directory to get to the chat site, e.g. http://www.yourdomain.com/client.

If your server is not located within your area of work, you will need to use a file transfer utility to transfer the files remotely. A common way of doing so is to use FTP, i.e. using an FTP client. Other methods like doing a Network Drive Mapping are also possible.
If you use FTP, please be careful to transfer all files in Binary mode, with the exception of text files. Text files can be transferred in ASCII mode. Text files usually have the extension HTML, INI, TXT, XML, etc.

Step 3 Verification
After you have unzipped the files to your server, which could be the same machine that had downloaded the software package, you need to verify that the files retain the same naming and casing. You can get the correct filenames from the Software Package chapter. One common fault is that filenames are automatically truncated to an 8.3 (DOS) format.
For UNIX users, the unzip utility has been known to convert all filenames to lowercase by default. You have to ensure that the utility preserve the casing of filenames when unzipping.

Deploying the Administrator on the Web


In ChatBlazer 8, the Administrator client can be run as a normal program from your PC. However, it retains its capability of being run from a webpage using Java Web Start (JWS) technology. The computer running the Administrator must have Java Web Start installed. Java Web Start is usually installed by default when you install the Java Runtime Environment.

Setting Up Java Web Start for the Administrator


1. Copy the contents of the admin directory to your web server directory, e.g. /var/www/html/chat/admin. 2. Edit cb8admin.jnlp in the following location: <jnlp spec="1.0+" codebase="http://ww.mydomain.com/chat/admin/"
10

installation

href="cb8admin.jnlp"> The codebase attribute is what you need to fill in based on your server setup. It is the URL path to the cb8admin.jnlp file in the admin directory. 3. Browse to the Administrator page using your web browser, e.g. http://www.mydomain.com/chat/admin/index.html. You should be able to see a Launch button. If not, it probably means that JWS is not installed in your computer. 4. After you have clicked on Launch, JWS will install and run the Administrator. There may be a prompt requesting for certain permissions to be used by the Administrator. You have to grant this request or else the Administrator client may not run properly. 5. JWS gives you the option of creating a desktop shortcut for the Administrator application. You can do so to easily open the application next time. Otherwise, to open the Administrator, you can either go to the Administrator page as in Step 3 or launch it from the JWS control panel.
Figure 1. Java Web Start installing the Administrator application

11

starting the ChatBlazer server

starting the ChatBlazer server

After you have correctly installed the ChatBlazer files, the next step is to start the ChatBlazer server. As explained in our Software Architecture chapter, ChatBlazer is a client-server software. You need to start the server in order to allow chat users to communicate with one another. The ChatBlazer client runs on your users web browsers as a normal Flash application while the ChatBlazer server runs on your server machine as a Java process.

Command-Line Startup
The command-line startup option can be used on a remote machine, be it virtual or dedicated. Open a shell session as described in the previous section, whether using Telnet, SSH, PCAnywhere, etc. Navigate to the server directory where you had transferred unzipped all the class files.

Startup/Restart Script
There are separate scripts available for Unix-based systems and Windows servers. For UNIX-based systems, there is only a single file, cb8svr.sh. For Windows, it is startsvr.bat. You should always use either of these files to start or restart the ChatBlazer server, as they will setup the right runtime environment for running the ChatBlazer server, e.g. including runtime Java libraries.
Windows > startsvr.bat Unix > ./cb8svr.sh start

Note the difference between the Unix script and the Windows one. For the Unix script you have to include the start argument. You dont have to do so for the Windows script.

12

starting the ChatBlazer server

The scripts accept one optional argument, the TCP port that the ChatBlazer server ought to use. Specifying the port in the command-line will override the port value set in the server configuration file. Example:
Windows > startsvr.bat 19001 Unix > ./cb8svr.sh start 19001

Windows Executable For the Windows operating system, there is a Windows executable for those who are more familiar with this. Open up Windows Explorer, go to the server directory and double-click on cb8svr.exe. It should open up a command prompt window and the window should remain open. If the window closes, it means there was an error starting the ChatBlazer server.

Environment
To ensure that the scripts run correctly, you should set the JAVA_HOME variable in the shell. To see if this variable has been set, you can run the following commands.
Windows > echo %JAVA_HOME% Unix > echo $JAVA_HOME

If you do not see any output, then the variable is most probably not set. To set this variable, you need to know the installation directory of Java on your server. Then run the following commands.
Windows > set JAVA_HOME=c:\jdk1.5.0

For Windows, this environment variable can also be set in the Control Panel, under the System item.
Unix > JAVA_HOME=/usr/java/jdk1.5.0 > export JAVA_HOME

You can insert these commands into the above script files, before the lines where the scripts check for the existence of the JAVA_HOME variable.

13

starting the ChatBlazer server

Windows Service
The ChatBlazer 8 Server can be setup to run as a Windows Service. This provides the benefits of having the server start automatically whenever there is a reboot and not having the need to have a console window opened while the server is running. For more instructions on how to setup the service, refer to the instructions given in the winsvc directory.

Unix System-V Initialization Startup


For Unix systems, you can use the cb8svr.sh script to automatically start the ChatBlazer server when the server is rebooted. The script supports the standard start, stop, restart commands. Details on how to do this will not be provided here. The only thing to note is that the variable CB8_HOME in the script must be specified, i.e. the location of the ChatBlazer server directory. For example:
CB8_HOME=/usr/local/chatblazer8/server

Stopping the ChatBlazer server


Similar to the startup scripts, there are two scripts available for UNIX and Windows users, stopsvr.sh and stopsvr.bat, respectively, that you can use to stop an existing ChatBlazer server. Likewise, you need to setup the right runtime environment, e.g. specifying the variable JAVA_HOME. To run the script, you do not need specify any argument, although there are optional ones. For Windows, you do not need to specify any argument.
Windows > stopsvr.bat

For Unix, you must state the stop command.


Unix > ./cb8svr.sh stop

The script will read your configuration file for your ChatBlazer port and prompt you for your administrators username and password.

14

starting the ChatBlazer server

Specifying port, username and password:


Windows > stopsvr.bat 19001 u admin p mypassword Unix > ./cb8svr.sh stop 19001 u admin p mypassword

Running with SQL Database Connectivity Module


The startup commands here assume that you are not running the SQL Database Connectivity (DC) module. When using the SQL DC module, the command to start the ChatBlazer server has to import external Java libraries, i.e. the XML parsing library and the JDBC driver. For the correct commands to run the ChatBlazer server with the SQL DC module, please refer to the section Using the SQL Database Connectivity Module in the Advanced Usage chapter.

15

configuring the server

configuring the server

You configure the operational parameters of the ChatBlazer server by changing values in its configuration file, conf.xml found in the ChatBlazer server directory.

Parameters in the Configuration File


The initialization file for the ChatBlazer server is the file conf.xml. Here, you can change all of the ChatBlazer servers settings which cannot be done on the command-line when you start the ChatBlazer server, simply because there are too many settings. This file is read only once when the ChatBlazer server starts up. If you are to change any of the values in this file, it will not affect the current runtime behavior of the ChatBlazer server. You will need to shut down the ChatBlazer server and start it again to effect the new changes. This file is static, the ChatBlazer server will never overwrite this file. Dynamic settings are saved elsewhere, depending on whether you have the SQL Database Connectivity module.
Filenames without any absolute path should be taken as relative to the directory where the command to start the ChatBlazer server was executed.

The table below enumerates the parameters found in conf.xml. Not all the parameters may be relevant to you as some of them depend on whether you have purchased certain modules.
You may find that some of the parameters are similar to those in previous versions, with the exception that underscores in parameter names have been replaced with dots.

16

configuring the server

Parameter Startup

Value

Description

true or false Determines if a client accessing from localhost is permitted to connect. This setting should only be enabled for testing purposes, otherwise it could pose a serious security risk for your chat system. Set to no when going live. Determines if you want to allow users into your chat system when their IP address cannot be identified. Some users might make use of firewalls to prevent their IP address from being revealed. Bans a user when server detects that the user is sending illegal or out-of-order messages by adding the users IP address to the exclusion list. This setting is usually left blank for the ChatBlazer server to use the default IP address. For multihomed servers, this can cause the ChatBlazer server to bind itself to any or all of the available IP addresses. To avoid this, specify a single IP address to bind the ChatBlazer server to. Ignore the IP exlusion list. Setting this to no can be useful if you have accidentally banned yourself. This parameter specifies the domain whereby all your chat sites can access. This is useful when you have a domain that is used to setup a chat site temporarily or for testing purposes. This domain must be one of the site domains licensed to you. Matches clients site ID with the sites specified domain value. For example, if site CBS1 has domain value mydomain.com, and if this value is true, clients can only connect from mydomain.com.

allow.localhost

allow.unknown.client

true or false

banOnHacking

true or false

bind.ip

single IP address

bypassIPBan

true or false

master.domain

single domain name

match.site.domain

true or false

17

configuring the server

moderator

true or false

Determines whether to activate the moderator plug-in. Applicable only if you have the moderator plug-in. Primary port used by the ChatBlazer server to receive incoming TCP connections. This is the number of seconds between intervals when the ChatBlazer server purges idle connections. A connection is considered idle if no data has been received since the last scanning. The number of rooms a user can create. 0 means that a user cannot create any room, while a negative number implies no limit. Allow a user of the same name to login immediately again if the new login has an identical IP to the existing user in the system. This allows abruptly disconnected users to log back in again without the usual timeout delay. Assigns the next site created with the lowest possible Site ID value Loads room history from the database, this only works if you have the SQL DC module. Default room settings to apply for a newly created system room Currently, the only parameter understood is : history Same as above, but for user-created rooms. If false, presence is not sent whenever someone joins or leaves a room. This is used for large scale moderated events where it is not important to know all the users in the room.

port

any number between 0 and 65535 any number greater than or equals to 30

scan.interval

user.createRoomLimit

number

user.sameIPLogin

true or false

reuseSiteID

true or false

room.loadHistory

true or false

room.systemDefaults

parameters

room.userDefaults sendPresenceOnJoinRoom

parameters true or false

Logging

18

configuring the server system.log.level all, debug, info, warn, error or fatal Determines the system logging level of the ChatBlazer server (not chat message logging). The logging levels are : all debug info warn error fatal

system.log.out system.log.format

stdout, stderr, Specifies where system log messages or filename should be written. format of logs Specify the format of the logs. eg. [%-5p %d{yyyy-MM-dd HH:mm:ss}] %m%n -5 pad with spaces %p error type %d date where the format of the date is specified within {}. %m message %n new line

system.log.rolling

true or false

Determines if new logs are written every midnight and old logs are time stamped. Toggles chat message logging. Toggles user access logging. Output chat transcript and user access logs to the database instead of text files. Valid only for SQL module. Log your users' private chat conversation. Rotate log files on a specified rotation basis. If this is disabled, log filenames are based on the date the ChatBlazer server is started. Log rotation frequency : 1 daily 2 weekly (week starts Sunday) 3 weekly (week starts Monday) 4 monthly

log.chat log.user log.db

true or false true or false true or false

log.private

true or false

log.rotate

true or false

log.rotate.period

1, 2, 3 or 4

Server Scheduling

19

configuring the server schedule list of <unit> elements Format of <unit> element: <unit value=D:SSSSEEEE /> D Day unit, value of 0 to 7, where 0 is everyday, 1 is Sunday, 2 Monday, and so on to 7 for Saturday. SSSSEEEE Start and end time in 24hour representation. This setting allows you to program the time availability of your chat service on a weekly basis. Your chat service is available (meaning clients can connect to the ChatBlazer server) if it satisfies at least one time entry. Please note that this setting does not start your ChatBlazer server process nor shuts it down, it merely dictates when to accept connections. Do not specify any <unit> elements for the chat service to be available all the time. Example : <schedule> <unit value=0:18002200 /> <unit value=6:00002359 /> </schedule> This makes the chat service available everyday from 6pm to 10pm and all the time on Friday. Usage report interval

Number

Specifies the time in seconds. Use 0 to disable usage reporting.

When deciding on a port for ChatBlazer to use, you should avoid using a port number in the same range as the commonly known privileged ports, e.g. 0 to 1024. A number above 1024 should be safe. Consult your server administrator on this matter if necessary.

Modules
The availability of the modules depends on whether they were purchased. All modules have the following format: <module name="nameOfModule" active="1"> ... modules parameters ...
20

configuring the server

</module> The active attribute indicates that the module is activated if its value is true and deactivated if its value is false, in fact, any other value.
Module sql Description SQL Database Connectivity module allows your server to connect to existing database. Instant Messaging module allows your users to keep a list of buddies. Users are able to chat with their buddies without entering a room. Only members are entitled to the functions of this module. Audio/Video Streaming module allows your users to share and view live audio/video streams. Encryption module encrypts all messages sent to and received from the ChatBlazer server for greater security. LDAP module provides another user authentication mechanism for organizations that use LDAP directories for managing user information. ServerDev module that allows you to issue commands to ChatBlazer server and retrieve information on your current chat status without using the administrator module. Flood Control module protects your chat system from flooding attacks by malicious users. The module is highly configurable and its parameters are described in the configuration file itself.

im

streamav

encryption

ldap

serverdev

flood-control

Each module may have its set of parameters. The parameters should come with descriptive comments on what it does and how it can be modified.
The modules available depend on the type of server package you have purchased, Server, Pro or Enterprise.

Allowed Domains
Each purchase of a ChatBlazer server license comes with a number of website-licenses that you can operate your chat network on. This number is equivalent to the number of chat sites that is allowed on your chat network.

21

configuring the server

This allows you to host your chat clients on a number of different domains as specified by the license you've purchased. The list of domains licensed to you is found in the file domains.ini. These entries are prepared beforehand and are specific to the ChatBlazer package you downloaded. Entries within this file are encrypted and should not be tampered with. You should not make any changes to this file unless told specifically to do so. We understand that you may not have all the domains in mind when you bought ChatBlazer. Hence, whenever you want to add a chat site and its domain to your network that is not already included in the file, email us the domain or use our support forum to contact us. We will provide you the encrypted text value to append to this file. You do not have to restart the ChatBlazer server. It will detect the change in the file and react accordingly.

Chat Message Logging


To enable chat message logging, please refer to the server configuration parameters log.chat and log.user.

Log Files

Each site of your chat network will have its own log files. Log files are written in ASCII text format in the sites sub-directory of the ChatBlazer server directory, e.g. /home/myname/chatblazer8/server/CBS1. For purchases of the SQL database connectivity module, you have the option of writing the logs to ASCII text file, as per normal, or to the database itself. The filename format of a chat transcript log file is : chat_lYYYYMMDD.log The filename format of a chat transcript log file is : user_YYYYMMDD.log If the ChatBlazer server is restarted on a date when a log file already exists, new entries to the log file are appended. If you did not enable log rotation, log files are written once when the ChatBlazer server starts. This means that the ChatBlazer server will not write another log file for every day that transpires. Suppose you start the ChatBlazer server on 5 September, and again on 21 September. The chat transcript logs for the period between 5 and 21 September are only found in one file, chat_020905.log. This is the same for user access logs.

22

configuring the server

Log files are written in CSV format, each column is double quoted. A double quote in a value is escaped by a preceding double quote. The explanation of logging fields is given in the Appendix of this document.

23

managing ChatBlazer

managing ChatBlazer

After you have installed the ChatBlazer files and successfully started the ChatBlazer server, your next task will be to manage your ChatBlazer network. This includes the process of creating chat sites, modifying each site to tailor to its specific user group and so forth. Each ChatBlazer server license allows you to operate a chat network. This chat network consists of a number of chat sites as stipulated by the number of website licenses you have purchased. Each chat site can have its own settings, rooms, banners, emoticons, etc. and be completely independent of other chat sites on the same network.
Figure 2. A typical multi-site ChatBlazer network

The next section will describe the ChatBlazer administrator module hierarchy to allow you to gain a better understanding of the different administrator functions in Chat Blazer.

24

managing ChatBlazer

Understanding Administrator Module Hierarchy


The Chat Administrator (CA) module has the highest level of administrative functions that you can perform. It is used to manage your entire chat network. With this module, you can modify all your chat sites individually. It is also used to configure your global chat network settings. The Site Administrator (SA) module is the next highest level of client administration. While a chat network administrator manages the whole chat network consisting of many chat sites, the site administrator manages only the site it is assigned to. Changes effected with this module are only apparent to users of the chat site this module is administering and not any other chat site.
The site administrator module is only available in our Chat Hosting module.

The Group Administrator (GA) is the lowest level administrator. The group administrator has slightly less administrative power than the site administrator. Its main functions are to create rooms and users and to manage them. Now that you have understood the ChatBlazers administrator module hierarchy, the following sections will cover in detail all the functions you can perform with the administrative modules to build your desired chat network.

25

managing ChatBlazer

Using the Administrator module


The main function of the chat network administrator (CA) is to create and modify chat sites in your chat network. The functions of a site administrator (SA) are almost the same as the CA with the exception that the SA does not have the Site Manager as the SA manages only the chat site assigned to him. The main function of the Group Administrator (GA), on the other hand, is limited to creating rooms and users and managing them. To start using the Administrator client, click Connect in the Program menu. You will be presented with a login screen.
Figure 3. Connecting to the server

Enter your ChatBlazer Server details: hostname or IP address at which the server is located and the port number at which the server is running. To login as a CA, you can use the default login username admin with password admin. You can use the Administrator client to change this after logging in. CA accounts can also be defined in the server configuration file. Please refer to the chapter on Configuring the Server. To login as a SA or a GA, you will have to enter your login name and password assigned to you by your CA. As a SA or a GA, you will have to choose the site that you are entering. After logging in, you are presented with the main control interface.

26

managing ChatBlazer

Figure 4.

Connect window, CA does not need to specify a site to login

Main Control Interface

In the main control interface, which is the left panel of your administrator module, you will be able to navigate to the general areas where you can administer your chat network. 1. Global Settings 2. Site Manager

27

managing ChatBlazer Figure 5. Main navigation panel

Sites (Site Manager)

In this node, you can see the list of sites that are in your chat network, and the number of users currently in each chat site. To create a site, click on the Create Site button near the bottom of the window. In the dialog that follows, enter the sites name, add its domain from the list of domains and then click Create. When the ChatBlazer server acknowledges the creation of the site, it will appear in the list of sites. You do not have to assign the site a Site ID. It will be given automatically by the server.

28

managing ChatBlazer

Figure 6.

Sites Panel

For a site, you can use any name as its identifier. However, for the site domain, it must be the one of the domain values provided to you upon purchase (or on subsequent addition). The site domain identifies the website that the chat site is on and will not permit entry to users accessing the chat site from other domains. This domain can be different from the domain that you are using the CA, thus in a sense, you are building multiple chat sites across many websites.
Upon initial installation and first usage of the Site Manager, you will not see any sites on the list because none has been created yet.

For example, suppose your chat site is on http://www.mychatsite.com. You can use My Chat Site as the sites name but the domain value must be www.mychatsite.com. The www. prefix is optional for the domain value, this means you can use mychatsite.com for the domain value also. Other sub-domains like www2. or chat. must be specified. Each chat site can have multiple domains. Suppose a chat site has the domains domain1.com and domain2.com, users on both websites can access the same chat site.

29

managing ChatBlazer

When a site is first created, it does not have any room. It is important that you create at least one room for a newly created site for the flash client to login. If you do not create any room for a site, users accessing the site will not see any room appearing in the room list when they connect to the chat site and hence cannot login. See the next sub-section on the Room Manager for details on how to create a room. To delete a chat site, select one from the list and click on Delete. Be careful when you want to delete any chat site, all its corresponding data will also be deleted as well. Some of this data includes the sites rooms, users and their profiles. To modify the name or domain of a site, select an existing site from the list first. Change its name or add / remove domains from it. Click Save when you are done making the change. The change will then be saved and effected immediately.
All data associated with a site will be deleted when you delete the site. The ChatBlazer server will not perform any backup for you. Please do your own backup should you want to. For a text database, you can easily copy the data directory found in the ChatBlazer server directory. For an SQL database, you have to migrate entries associated with the sites ID to a backup database or other secondary tables.

To manage a site itself, expand the sites node on the main control panel. For each site, you can perform up to 5 site-specific functions, as indicated by the available sub-nodes under this node. An SA will only see the first 4 functions and a GA will only see the first 3 functions.
Functions Rooms Users User Groups Broadcast Statistics Widgets Site Settings (only applicable for Chat Hosting module) Description To create rooms and room groups and modify room settings. To manage the population of registered members with a chat site and assign members to user groups. Create and manager user groups. Create and edit broadcast messages for a site. Provides runtime statistics of the chat system Manages widgets To modify site-specific settings and permissions.

The functions described above are given in details in the following subsections.

30

managing ChatBlazer

Rooms (Room Manager)


The Rooms panel (or the Room Manager) is used to manage all the chat groups and rooms found in a chat site. You can use this to create groups, rooms, and to delete and modify them. The panel offers a tree view for you to see the groups and rooms in your site. Groups and rooms are arranged in a hierarchical order and you can order the rooms.
Figure 7. When a site is first created, it does not have any rooms. Click on Create Room to create your first room.

To create a room for a site, follow the steps below: 1. Select the Rooms node under the site node in the main control panel. 2. In the Rooms panel on the right panel, select the site ID and rightclick. 3. Select Create from the popup menu and a Create Room/Group dialog will appear. 4. Enter the room/group name, select the appropriate type and click the Create button.

31

managing ChatBlazer

If the room is successfully created, it will show up in the room list. The Rooms panel only shows the rooms for the site that was selected. It does not show all the rooms in all your chat sites.
Figure 8. Create Room/ Group popup menu

Figure 9.

Create Room/ Group dialog

32

managing ChatBlazer

Figure 10.

Room shows up after being created

In Figure 10, the number in square brackets, [1010], is the rooms ID. The number in round brackets (0) indicates how many users there are in the room. The room tree view shows all the rooms found in the chat site, even private rooms. The other functions found in the right-click popup menu are described below.
Function Rename Description Type in the new name and press Enter to rename the room or group. Removes a room /group from the chat site. The room must first be empty of users. This change is permanent and will be saved by the ChatBlazer server. All rooms under the group will also be deleted. Kicks all users from the room. All users in the room will be logged out. However, any administrator in the room will not be removed. Moves a room/group up the hierarchy under its parent group. Moves a room/group down the hierarchy under its parent group. Closes a room to prevent any user from entering the room. Current users in the room are unaffected. But if they change room, they cannot return to the room if it remains closed. Opens a room that has been closed.

Delete

Purge

Move Up Move Down Close

Open

33

managing ChatBlazer

Monitor Room

Send Message

Clear Uploaded Files Clear Media Library Files

Joins the room silently so that you can see all messages being sent. Normal users in the room are unaware of your presence in the room. Sends a message to the room. If you have selected a room group, the message will be sent to all rooms and groups under it. Removes all files uploaded by users into this room Removes all media items in the rooms Media Library

Group Settings
The Group Access Permission panel is used to modify access settings specific to a room group. Remember to click Apply to save your changes. The list of changes you can make is given below.
Function Allow Access to Guests Allow Access to All Members Description Check this if you want the rooms in this group to be accessible to all guests and members. Check this if you want the rooms in this group to be accessible to all members but not guests. This will include members who do not have permission to access this room, as specified by the User Manager. Determines if spectators can login to the rooms in this group. Check this if you want the rooms in this group to be accessible to all members in its parent user groups.

Allow Access to Spectators Allow Access to Parent User Groups Figure 11.

Group Access Permission Panel

34

managing ChatBlazer

Room General Settings


The Room General Settings panel is used to modify settings specific to a room. Remember to click Apply to save your changes. The list of changes you can make is given below.
Function Override Groups Access settings Allow Access to Guests Allow Access to All Members Description Check this if you want this room to override its parent group access settings. Check this if you want this room to be accessible to all guests and members. Check this if you want this room to be accessible to all members but not guests. This will include members who do not have permission to access this room, as specified by the User Manager. Determines if spectators can login to this room. Determines the room type. If the room is a private room, it will not appear in the room list of a client. This setting gives you finer control over profanity filtering in your chat site. You can take this setting to mean the opposite of the setting Enable profanity detection in the Profanity Manager. If you have enabled profanity detection, checking this will turn off profanity detection for this room. Conversely, checking this when profanity detection is not enabled will activate it for this room. Allows your users to initiate private chat conversations between each other If enabled, normal users will not be notified when monitors joining this room. This allows your monitors to monitor the room in stealth mode. Turns on or off the Whiteboarding feature for this room Maximum number of users that can be in the room at any one time. A blank or 0 indicates that no limit is imposed. Determines the number of lines of history messages to display when a user logs into the room. Password that guests have to use to enter this room. Members do not need this password as they are assigned rooms which they can access.

Allow Access to Spectators Public/Private

Toggle Profanity Check

Allow private chat Monitors join room silently Enable whiteboard User Limit

Message History

Password

35

managing ChatBlazer

Logout URL

URL that a user will be redirected to upon logging out of this room. This is useful when you want different logout pages for different interest groups in your chat site. Message that will be displayed whenever a user logs into a room.

Welcome Message

Figure 12.

Room general settings

Media Settings
This panel determines the multimedia settings for the room.
Function Enable File Library Enable AV Library Description Turns on / off the File Library feature for this room Turns on / off the AV Library feature for this room (available only for Media AV plug-in)

36

managing ChatBlazer

Besides turning either library on or off, you can configure the permissions required for a user to be able to upload a file or add a media clip to the library. If the library is turned on but all the permissions are unchecked, it means only the Chat Administrator or Site Administrator can upload files.
Figure 13. Media settings. In this example, both libraries are turned on. For the File Library, guests are not allowed to upload files. For the AV Library, monitors, moderators and speakers cannot upload or add AV clips.

Room Slideshow Settings


The Room Slideshow Settings panel is used to create and modify banner slideshows specific to a room. You can add multiple banner slides to a room. Remember to click Apply to save your changes. The list of changes you can make is given below.
Function Enable banner slideshow Delay to showing First Slide Duration Description Check this to enable a banner slideshow to be shown within this room. Delay in seconds to show the first slide after logging into the room. Duration in seconds that the slide will remain before changing to the next slide.

37

managing ChatBlazer

Image URL Target Open in this window

The image filename of the banner. The URL to open when the person clicks on the banner. The window at which the target URL will be opened. URL will be opened with a _blank target window if not specified.

Figure 14.

Room Slideshow Settings Panel

Room Open Schedule Settings


The Room Open Schedule Settings panel is used to create and modify schedules to open a room. You can add multiple schedules to a room. Remember to click Apply to save your changes. The list of changes you can make is given below.
Function Activate Schedule Purge users when closing the room Description Activates room scheduling based on the time entry list given. If checked, users will automatically be logged out when the room is scheduled to close. Otherwise, users in the room can continue until they logout on their own accord. Select the day of the week to open the room.

Day of Week

38

managing ChatBlazer Start Time Time to open the room based on 24hr representation. E.g. To open a room at 10.00 P.M, you should put 2200. Time to close the room based on 24hr representation.

End Time

Figure 15.

Room Open Schedule Panel

Moderator Settings A room can be configured as a moderated room. In a moderated room, messages from users do not go straight back to the room. It goes to a moderator that is hosting the room and optionally to a speaker. Messages are then replied to and sent back to the room from the moderator or the speaker.
Function Set as Moderated Room Pass remaining messages when leaving Allow whispering among Users Description Check this if you want the room to be a moderated room. Determines if moderators pass any remaining messages when they stop moderating or logout.

This setting permits or disallows normal users from whispering to each other when there is a moderator in the room. This is useful when you want to forbid private communication between your users during a moderated session.

39

managing ChatBlazer

Allow users to send Audio/Emoticon

Permits audio or emoticon messages to be sent in a moderated room. Such messages are not moderated and are sent straight to the chat room. Determines if users entering a room can talk. If not, their text input boxes are disabled. This setting affects where messages are directed when there are no moderators in the session. If checked, messages are buffered on the server and will be sent to the next incoming moderator. Messages are not sent to the room or to speakers directly, as is the behavior when this is not checked. If enabled, every speakers reply is sent only to the originator of the message / question. Used to determine the number of passes a message requires before being shown in the room or sent to the speaker. For example, if the pass ratio is 1, and the room has 3 moderators, only one moderator needs to pass the message for it to be shown. You can use percentage as well. For a pass ratio of 66%, again with 3 moderators, two are now required to pass the message for it to be shown. Use 0 to indicate that all moderators have to pass a message.

Users cannot talk unless allowed Queue Messages

Send reply to source only Message Pass Ratio

Limit Messages to Retrieve

In a moderated event with many users, thus many messages, it is useful to limit the number of messages that a moderator may see at any one time, so that the moderator is not overwhelmed by the number of messages.

40

managing ChatBlazer

Figure 16.

Room Moderator settings

If you have purchased the Media AV plug-in, the following set of options is available to you. Remember to click Apply to save your changes.
Figure 17. Room Audio/Video settings

41

managing ChatBlazer

Function Enable Audio/Video

Description Check this if you want the room to be an Audio/Video room. In an A/V room, users can initiate A/V sessions with each other. Determines the type of AV room. For One-to-One, only private AV sessions are allowed. For multi-party A/V conferencing, choose Many-to-Many. The Speaker Broadcast mode is active only if the room is moderated. When this is chosen, only users who are of Speaker type can stream out, i.e. broadcast. Other users can only receive the broadcasted AV stream. Check this if you do not wish to enable video streaming in this room. Check this if you wish to allow only users with A/V capabilities (usually an installed webcam) to enter the room. Check this if you do not wish to allow users without webcam to view others broadcast streams. Such users can still enter the room. Automatically start receiving audio-video streams when joining the room. This setting is used only in a Many-to-Many AV room. This determines the number of AV views (video clips) that a single user can view at any time.

AV Type

Audio Only

Only users with webcam can enter Users without webcam cannot join broadcast Auto-Start Max. Views Per User

Users (User Manager)


The User Manager allows you to manage the pool of registered members of a chat site. Similar to the Room Manager, the User Manager shows the users for only the chat site that was selected in the Site Manager. You can assign users to specified user groups in this panel.

42

managing ChatBlazer

Figure 18.

User Manager window shows members and their assigned groups and roles for a chat site

Creating Users To create a new user, click on the Create User button at the bottom of the window. Follow the dialog that opens: 1. Profile Enter the user name and password. If you want the user to be able to access all your rooms, check the Can access all rooms box. If you have enabled the Chat Usage Timer feature, you can specify a different value for the usage time this user has. Leaving this blank means the user has an unlimited time. If you specify 0 (zero), it means the user has run out of usage time and will not be able to login to the chat system. 2. User Groups Assign this user to any user groups that you have. You will learn more about User Groups in the following Users Group section. 3. Roles Assign roles to this user based on the rooms that you have. If you check Monitor on the sites row (e.g. CBS2), this means the

43

managing ChatBlazer

user is a monitor for all the room in the site. If you select a room group, e.g. Staff Rooms, the user will be a monitor for all rooms under that group. Please note that the Moderator and Speaker roles are mutually exclusive, a user can only be either or none, but not both.
Figure 19. Dialog for creating a user

44

managing ChatBlazer

If you have the Chat Hosting module, you can assign your members as site administrators.

45

managing ChatBlazer

Once a user has been created, you can assign the user to other user groups available. To do that, follow the steps below. 1. Click on the users name and right-click. A popup menu will appear. If you have not retrieved any user from the database, you will have to click on the Retrieve button. 2. Select Assign Groups. A separate popup menu showing the list of user groups will appear. 3. Select the group that you wish to assign this user to and click Add. Click on Save to save the newly assigned users.
Figure 20. Dialog shows list of user groups that you can assign a user to.

Remember to always click on Save after you have finished making changes in order to update the ChatBlazer server. Using the Filter The filter allows you to retrieve user records based on names, roles and the user groups they belong to. Name searches are case-sensitive. Names can contain two basic wildcards, * and ?, e.g. sam* will retrieve names like sam and samuel. You can send more than one name pattern, each separated by a space or a comma. For the role-based filter, checking on multiple boxes means that a user only needs to fulfill one of the roles being filtered.

46

managing ChatBlazer

If you specify both a name pattern and a role, a qualified user will need to satisfy both criteria. For example, sam* and checking Monitor means only user names of the pattern sam and assigned a Monitor role will be retrieved.
Figure 21. User Manager in View by Rooms mode window shows members who have access to the selected room. Notice that you cannot add or edit a member info in this mode.

Managing User Groups


The User Groups Manager allows you to create and manage user groups for the pool of registered members of a chat site. The User Groups Manager shows the user groups for only the chat site that was selected in the Site Manager. You can assign user groups to specified room groups in this panel. Creating User Groups To create a new user group, follow the steps below. 1. Click on Create. A dialog window will appear. 2. Enter the name of your group. Group names must be unique for the chat site. 3. Click OK. When youve done that, you should see the new group name appear in the list of groups. To delete a group, select a user group from the list and click on Delete. Be careful when doing this, as all users belonging to the group will be disassociated. The affected users are not deleted from the database.

47

managing ChatBlazer

To rename a group, click on the Rename button and use the dialog window that appears.
Figure 22. User Groups Manager

Figure 23.

Dialog for creating a user group

48

managing ChatBlazer

When you have created a user group, you can assign it access to certain rooms or room groups that you want. For example, you only want members in the Premium Members group to access the Premium Members Only room. 1. Select the user group you want to assign access to. 2. In the Grant Access to Room / Group panel, click on any of the room group that you want to be assigned. 3. Click on Apply when you are done. Access permissions granted to a room group is automatically given to all child room groups. Look at the figure below for an example.
Figure 24. Use the lower right panel to assign rooms or room groups to the selected user group in the list. Here, the selected user group Staff has access to the room group Staff Rooms as well as the room Customer Support. Selecting a room group (e.g. Staff Rooms) implies that all child rooms and room groups are also given access.

Managing Broadcasts
The Broadcast Manager provides a convenient way to send messages to your users at specific times. You can specify the year, month up to the exact minute of when the message is to be broadcasted. This differs from the banner slideshow that you can configure in the Room Settings window.

49

managing ChatBlazer

To formulate a broadcast message, perform the following steps. 1. Give the message a unique identifier by keying it in the Message ID text field. This identifier must not already exist in the list of message IDs on the left side of the window. 2. Select the groups and/or rooms that the message should be broadcasted to. If you select a group, all sub-groups and rooms under the group will automatically receive the broadcast. Hold down the Control key to deselect an item. 3. Input the time interval. The format of a time interval is given below.
Time Interval ::= < minute list | * > < hour list | * > < day list | * > < date list | * > < month list | * > < year list | * > minute list ::= < minute > | < minute > , <minute list > hour list ::= < hour > | < hour > , < hour list > day list ::= < day > | < day > , < day list > date list ::= < date > | < date > , < date list > month list ::= < month > | < month > , < month list > year list ::= < year > | < year > , < year list > For day, 0 means Sunday, 1 Monday, and so on to 6 for Saturday. A time interval has 6 time units as stated above, each unit can either be a list of valid numbers or an asterisk, to indicate all. For example, a time interval * * * * * *, means that the message is broadcasted every minute. 0 16 * 1 8 2002 will broadcast a message at 4pm on August 1, 2002. 15,45 * 1,5 * * * will broadcast a message at the 15th and 45th minute of every hour on Monday and Friday.

4. Indicate the title of the broadcast message in the Title text field. 5. Include an image to be displayed with the message. This image should not be an absolute URL (e.g. http://mydomain.com/image.gif) but it is relative to the sites directory on your web site, e.g. http://mydomain.com/chat/CBS1/. You should only need to specify the filename itself. This entry is optional. 6. Enter your message to be broadcasted. This message can be omitted provided you have specified an image in step 5. 7. Click on Add to effect the change. 8. Click on Save to send the list of messages you have created to the server to be stored permanently. If you only click Add without clicking Save, the messages are not actually stored on the server.

50

managing ChatBlazer

When you make any changes to an existing message, remember to click Apply to effect the update before you select another message from the message list.
Figure 25. Broadcasts panel lets you create site-wide or room-based broadcast messages.

Site Hosting Configuration


If you have purchased the Chat Hosting module for ChatBlazer, you get increased customizability for each of your chat site. You can assign each chat site certain administrative functions or even disable them. These administrative settings affect the Site Administrator client module.

51

managing ChatBlazer

Configure Chat System Settings


The Global Settings node in the main control interface controls the profanity and general settings for your chat network. These settings are not in the Site Manager as they affect the chat network as a whole.

General Settings
The General window allows you to configure settings that will affect your whole chat network. All the chat sites will adopt the settings you define here. To effect the changes you have made, click on Save. The list of settings that you can define here is listed below.
Setting Administrator Accounts External Data Source Reserved Names Description Create username and password for administrators to login.

Specify a URL that the server will call to pull your user data. See below for more details. Specify a list of names that users cannot use to as their login name. If enabled, rooms created by member users will not be deleted when their creators log off. The rooms are saved in the system. If enabled, files that are uploaded by guests during their sessions will be automatically removed when they logout. Files uploaded by members will always have to be removed manually. Even though the Audio Effects feature can be disabled using the client configuration, the feature can still be used by other means. This effectively disables the feature regardless of whatever the user tries.

User-created rooms are permanent Delete files uploaded by guests upon logout

Enable audio effects in room

Enabled audio effects Same as above but applicable for private chat sessions in private chat Max. Rooms Created Maximum number of rooms that a normal user can create from Per User within the chat client Max. Length of Guest Maximum characters allowed for a guests login name Name Min. Vote(s) to Kick This sets the number of votes a user must receive in order to be User kicked out of the room as part of the Vote-to-Kick feature. Chat Usage Timer Feature

52

managing ChatBlazer

Enable Chat Usage Timer Time Limit For Guests Time Limit For Members

This turns on or off the Chat Usage Timer feature. This feature effectively makes your chat system a time-based, pay-per-use chat system. Time limit guests are given when in seconds. In Figure 25, you can see that guests are given 15 minutes of chat usage time. Time limit members are given in seconds. Leaving this blank means members are given unlimited time. For members, their remaining time usage is tracked in the database.

The Chat Usage Timer feature is usually used in conjunction with the EAI plugin when integrated with a portals payment and processing system. Refer to the UPDATE_USER command in ServerDev to see how you can update a users remaining time in real-time.

53

managing ChatBlazer

Figure 26.

General Settings panel in Configuration window

54

managing ChatBlazer

External User Data Source


This feature of ChatBlazer 8 allows you to integrate your existing user database (source) with ChatBlazer without the need to import your existing users. This is different from the SQL Database Connectivity approach (refer Advanced Usage section), especially if your database is on another remote host or you would prefer not to modify your existing user data schema. The URL is the script that the server will call when it needs to authenticate a user login. By making a HTTP POST, the server expects the script to return a valid user record. If no data is received, it is assumed that the user login cannot be authenticated. By making no assumption on the script that is to be called, this gives you the flexibility of creating the required script based on whatever existing technologies that your portal or website is using, e.g. PHP, JSP, ASP.NET. Data fields submitted by server in the HTTP POST: username password other fields as given by client Data fields expected by server in the result: username password profile fields of the user (e.g. email, date of birth, country, etc.) __status If the value of this parameter is 1, it means that the ChatBlazer server should not query its own database for authenticating the user, especially if the result does not give a user record. If the result is empty or invalid, the user authentication is assumed to have failed.

55

managing ChatBlazer

IP Exclusion
Figure 27. IP Exclusion panel

Users with their IP addresses found in this list will not be allowed to connect to your chat sites. Each entry can be either a single IP address or a range of IP addresses. For example, a single IP address can be 169.192.1.1, while a range of IP addresses can be 169.30-40.*.*.

Profanity Manager
The Profanity Manager sets the profanity detection environment for your chat network. Profanity detection uses powerful word-matching achieved by utilizing Unix-style regular expressions.

56

managing ChatBlazer

Figure 28.

Control profanity settings with the Profanity Manager

For chat hosting, if a sites profanity permission is disabled, it will adopt the settings set here by the CA. The functions you can perform here are listed below.
Function Add Description Add a profanity expression to the list. You can only add a single expression at any one time. Entries can be a single word or a Unix-style regular expression.

57

managing ChatBlazer

Delete

Delete one or more entries in the list.

Profanity Expression A profanity expression can be a simple word, a phrase or a regular expression. To specify a regular expression, the value must be prefixed with a /, e.g. /foobar Some common expressions that you can use are listed below. foo Look for foo anywhere in a message. /^foo Look for foo at the beginning of a line. /foo$ Look for foo at the end of a line. /\bfoo\b Look for foo with space or nothing on both sides. /foo\b foo at end of a word. /\bfoo foo at start of a word. The topic of regular expression is too lengthy to cover in this documentation. A search on the Internet will bring up several useful tutorials covering basic usage of regular expressions.

The list of settings you can make is shown below.


Setting Enable Profanity Detection Check login name for profanity Description Toggles profanity detection for all rooms. Apply profanity detection to users trying to login. Users attempting to login with names that violate your profanity list will not be allowed entry. Toggles profanity filtering. If this is activated, messages with profanity in them will not be displayed to other users in the room. The offence is still counted against the culprit. Toggles automatic kicking of abusive users who persist on using profanities. Indicate the number of times the user can commit the offence before being kicked out in the Profanity Limit box. This value is used to substitute every character of an offending word. E.g. the offending word is foo. A substitute string of ^^ will mean foo is replaced by ^^^^^^.

Filter messages with profanity

Kick user when profanity limit is exceeded Substitute Profanity with

To effect the changes you have made, click on Save.

58

managing ChatBlazer

Widgets
The Widgets feature is a major enhancement of ChatBlazer 8.5. With Widgets, you can now add your own functionality and interactive userinterfaces into the ChatBlazer client itself. The possibilities of widgets are only limited by your imagination!
Figure 29. Manage your sites widgets

In the Administrator client, the Widgets manager is only meant for you to specify widgets that require data to be saved. Otherwise, a widget that only has short-lived (session) based data and does not require any data to be saved does not have to be specified here. The button Create Widget does not actually mean that a widget is created, rather a widget record will be created in the database which allows the widget to be able to save data. Detailed information from instructions on how to create a widget to installing your widget and presenting it to your users are out of the scope of this user guide. The information will be available in a separate manual.

59

configuring the chat client

setting up the chat client

The chat client is fully configurable via a configuration XML and some parameters via its container HTML. Both may be static or dynamically generated as desired. This chapter describes the configurable options used in these two files.

Setting up ChatBlazer in a Popup Window


A sample HTML (index.html) is provided to create a popup window for the client. The sample contains index.swf, in which a button calls the Javascript function openFlashWindow(). To open the window in full screen mode, call openFlashFull() instead. Upon calling this function, a new browser window will popup and load client.html. Other examples of calling the popup: From a hyperlink: <a href=javascript:openFlashWindow()>Click here to start chat</a> From a button: <input type=button value=Start Chat onclick=openFlashWindow()>

Setting up ChatBlazer Embedded in an existing HTML


To embed the ChatBlazer client into an existing HTML page, two sections of code need to be inserted from client.html to your HTML page. 1. Insert between the <head> </head> tag Copy the lines starting from <!-- START COPYING INTO <HEAD> TAG --> to <!-- STOP COPYING INTO <HEAD> TAG --> and paste into your HTMLs <head></head> tags.
60

setting up the chat client

2. Insert within the <body> </body> tag Copy the lines starting from <!-- START COPYING INTO <BODY> TAG --> to <!-- STOP COPYING INTO <BODY> TAG --> and paste into your HTMLs <body></body> tags, at the location where the application is desired to be located.

Setting up client.html
client.html is the container for the ChatBlazer Flash client. It contains several parameters in the form of Javascript variables as listed below. All paths stated below are relative to the host HTML. Full URLs are expected if the files are hosted on different domains.
Variable Name sourceBase Description Base URL of ChatBlazers SWF files. This is required only when client.html and ChatBlazer8.swf reside in different locations. This URL must end with a /. Note that this variable is defined at the top of client.html, separate from the other variables. e.g. http://demo.chatblazer.net/chat/ Main configuration XML file which defines the clients behavior. Dynamic URLs are accepted to generated customized configurations. e.g. config.xml e.g. config.php?user=myname&password=mypass Path to language file. Defaults to English if not specified.

mainConfig

mainLang

e.g. lang/client-en.xml Name of skin file to use. This is available only in hosting accounts. Valid values include: classic, alien, bluesky. This is left blank when the default skin is to be chosen. Direct Login to Chat directUsername Username used for direct login (where applicable). directPassword Password used for direct login (where applicable). Direct Entry to Room Upon Login roomPassword Password of room for use in direct entry (where applicable) roomID Direct entry to room with room ID, overrides value in config.xml roomName Direct entry to room with room name, overrides value in config.xml Direct Entry to Private Chat mainSkin

61

configuring the chat client

Channel ID of private chat to enter directly. This is used only when the server script pre-creates a private chat session. Preloader Look and Feel logoPath Path of logo which will be displayed in the foreground of the preloader. Only SWF, GIF, PNG, JPG accepted. bgPath Path of background which will be displayed behind in the preloader. Only SWF, GIF, PNG, JPG accepted. bgColor Color of background to show before any background image is loaded. E.g. #FFFFFF for white barColor Color of the progress bar. E.g. #0000FF for blue textColor Color of the text in the preloader. e.g. #000000 for black User Profile Import profileAvatar Import users avatar. Full path to the image is recommended. profileReal Import users real name to profile. profileGender Import users gender to profile. profileAge Import users age to profile. profileEmail Import users email address to profile. profileDOB Import users date of birth to profile. profileCountry Import users country to profile. profileScript Defines a specific path for each users profile page. e.g. /phpBB3/cbuserinfo.php?username={username} where {username} is the username Flash Setting chatWidth Width of the Flash application, in percentage or pixels. chatHeight Height of the Flash application, in percentage or pixels. flashPath Path of the Flash application. Recommended NOT to change this, but can be altered to cater for different skin files. flashVars DO NOT CHANGE THIS VARIABLE

privateChatCID

Setting up Custom Avatars


Custom Avatars allows a user to upload pictures as their own avatar, rather than choosing from the system default list. The images will be stored in a directory uploads/avatar, relative to the ChatBlazer8.swf file. Ensure this directory is created and make sure write-permissions are granted to it. In a UNIX environment, set the directorys permissions to 777. e.g. chmod 777 uploads chmod 777 uploads/avatar

62

setting up the chat client

Setting up PicShare
PicShare allows users to upload images to be displayed in the chat room. These images will be stored in a directory called uploads/picshare, relative to the ChatBlazer8.swf file. Ensure this directory is created and make sure write-permissions are granted to it. In a UNIX environment, set the directorys permissions to 777. e.g. chmod 777 uploads chmod 777 uploads/picshare

Understanding the Client Configuration


The ChatBlazer client is extremely configurable and its plethora of settings has been spun off into its own appendix. Please refer to the Client Configuration guide which should be in the same directory as this user guide.

63

advanced features

advanced features

Setting Up Media AV Plug-In


Setting up of the Media AV plug-in only involves installing ChatBlazers application script into your installed instance of Macromedia Flash Communication Server (FCS). The AV plug-in requires a Flash Communication Server. It may be located on a different machine from the ChatBlazer server. To install the Flash Communication Server script, the fcs/applications/ChatBlazer8 directory has to be copied to the FCS applications directory. Usually, the script will eventually reside in: {FCS_ROOT_DIRECTORY}/applications/ChatBlazer8/ChatBlazer8.asc The application script will be loaded when the first AV request arrives from the Flash client. However, to test you can go to your FCS Administrator console, navigate to Server Tools | Communication App Inspector. Enter ChatBlazer8 as the application and click on Load. The application should appear in the list of active application instances. Click on Unload after testing.

Using the SQL Database Connectivity Module


If you have purchased the Enterprise Application Integration plug-in, it includes the SQL Database Connectivity module (SQL module). You can configure the ChatBlazer server to use your existing database software. If the configuration is not correct, the SQL Database Manager will not start.

Preparation
Follow these preparatory steps to use the SQL module.

64

advanced features

1. Create a database for ChatBlazer. In a normal Database Management System (DBMS, e.g. Oracle 8, Sybase, MS SQL Server, IBM DB2), you can simply issue a SQL statement to create the database, e.g. CREATE DATABASE cbdb. For MS SQL Server, you can easily do this using the Enterprise Manager. You do not have to create any tables in the database. ChatBlazer will create them for you on your first run. 2. Assuming you have created the database cbdb, you have to configure the SQL modules initialization file, i.e. confdb.xml. The following table indicates what parameters you need to change. 3. Configure ChatBlazer server initialization file (conf.xml) to use the SQL module, e.g. <module name="sql" active="1"> <param name="cache.user.expiry" value="30" /> <param name="passwordEncrypted" value="yes" /> </module> 4. To write logs to the database, you need to put the value yes for the parameter log.db, also found in the ChatBlazer server initialization file.

Configuring confdb.xml
In this XML configuration file, look for the <server> element. You have to edit its attributes and child elements.
Attribute Name type Description Specify your database type. Currently supported types include mysql, sqlserver, oracle, access. Description Main class file of the JDBC driver you are using. JDBC connection URL string that the module will use to connect to your database. Optional. Specifies a database user account name. If you do not specify this parameter, you most probably will have to include your login parameters in the connect_url value. password Optional. Specfies the password for the user account above.

<param> List driver connectUrl

user

65

advanced features log.file Optional. Specifies file name of this modules output. The ChatBlazer servers output does not go into this file. This option allows you to separate ChatBlazers specific logs from general JDBC logs. Optional, defaults to WARN and ERROR. Affects verbosity of logs generated. INFO 1 NORMAL 2 WARN 4 ERROR 8 Add the above flags to get the desired logging level. E.g. 14 to get all log messages except INFO. pool.size Indicates initial connection pool size. This is the number of connections that the module will maintain to the database. Specifies the amount of time to wait for an existing database connection to be free for use. If a non-positive value if specified, the ChatBlazer server will always create a new database connection when there is not one available for use. yes to create tables that are missing when the ChatBlazer server starts. Amount of time in seconds to wait before making the first database connection. This can be useful in server reboots to allow your DBMS processes to start first before the ChatBlazer server attempts to connect to your database.

log.jdbcOutput

log.level

pool.waitTimeout

createMissingTable

startDelay

If you have configured the settings properly, you should see the line Loading SQL Database Manager when you start the ChatBlazer server. The list of tables created by the ChatBlazer server is listed below.
Table cb_sites cb_rooms cb_users cb_userprofile cb_useropt Description Stores all chat sites names and domains. Stores all rooms data in all chat sites. Stores all users data in all chat sites. Stores users profile data in all chat sites. Stores users options in all chat sites.

66

advanced features cb_usergroup cb_uguser cb_ugaccess cb_siteuser cb_siteroom cb_chatlog Stores a sites list of user groups. Stores users to user group associations. Stores user groups to room groups access permissions. Stores a sites user pool. Stores a sites room pool. Stores chat transcript log. This table may be empty if you do not activate logging to database. Stores user access log. May be empty for reason given above. Stores banner clicking information by advertiser ID. Stores buddy list mappings. Stores broadcast messages. Stores rooms which broadcast messages are sent. Stores a sites settings which overrides global settings. Dynamic listing of users currently online in the chat system. Dynamic usage reporting. Stores speakers canned messages. Stores future add contact requests Stores ignored users Stores files uploaded by users into rooms Stores AV clips uploaded by users into rooms

cb_userlog

cb_banners cb_contactlist cb_broadcast cb_broadcastroom cb_siteset cb_onlineuser

cb_usage cb_cannedmsg cb_addcontactqueue cb_ignorelist cb_roomfiles cb_roomav

Additional tables are created for Chat Hosting module.


Table cb_siteprofile Description Stores a sites permission settings, user and room limits.

We will not be listing every field and its data type in the table here as you can easily do this with your DBMS.
67

advanced features

With the SQL module, you can create your own scripts to perform several useful tasks as listed below. Automate member registration. Your guests can easily register using a HTML form and your script will update the database. The guest now becomes a registered member instantly, without requiring you to add a member using the User Manager. Allow members to change their profiles using a HTML form. Create rooms dynamically for your chat site. Retrieve and format logs into printable pages. Using the SQL module, the capability of ChatBlazer is greatly enhanced and can be augmented with add-on scripts. If you would like to perform a certain task using a script and require assistance, please contact us. To deploy ChatBlazer with a DBMS, you will need the supporting JDBC driver for that particular DBMS.

Starting the ChatBlazer Server


You will also need to edit the ChatBlazer server startup script (either startsvr.bat or cb8svr.sh) to include any necessary JDBC driver files that is required for the ChatBlazer server to communicate with your database software.

Deployment on MySQL
MySQL provides its official JDBC driver Connector/J, previously known as MMMySQL. You can easily download it from MySQLs home page (http://www.mysql.com) under the Downloads section. The required JAR archive for the driver is: (exact filenames may vary according to the JDBC driver version)
Connector/J MMMySQL mysql-connector-java-2.0.14-bin.jar mmmysql-2.0.14-bin.jar

Edit the startup scripts as follows.


startcbe.bat Remove the rem prefix after this line. rem MySQL set CBE_CP=%CBE_CP%;lib\mysql-connector-java-2.0.14-bin.jar cb8svr.sh Remove the # prefix after this line. # MySQL

68

advanced features CLASSPATH_JDBC=lib/mysql-connector-java-2.0.14-bin.jar

Example configuration of confdb.xml:


<server type="mysql"> <param name="driver" value="com.mysql.jdbc.Driver" /> <param name="connectUrl" value="jdbc:mysql://localhost/cb8db" /> <param name="user" value="myuser" /> <param name="passwd" value="mypasswd" /> ... You should avoid using the root account in the database connection setting. Usually the database server will not allow you access through this account, even though you can connect with the MySQL client.

Deployment on Microsoft SQL Server 2000


When deploying on Microsoft SQL Server 2000, do not utilize an ODBC connection. You have to download and install Microsoft SQL Server 2000 JDBC drivers. The current URL for the download is :
http://msdn.microsoft.com/downloads/default.asp?URL=/downloads/sampl e.asp?url=/MSDN-FILES/027/001/779/msdncompositedoc.xml

The driver comes with an installation program that by default installs to the directory : C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC The library files are 3 JAR archives contained in the lib directory of the installation directory. They are as listed. msbase.jar msutil.jar mssqlserver.jar

Copy these files to the CBE_HOME/server/lib directory and edit the startup files as follows.
startcbe.bat Remove the rem prefix after this line. rem MS SQL Server 2000 set CBE_CP=%CBE_CP%;lib\msbase.jar;lib\msutil.jar;lib\mssqlserver.jar

Example configuration of confdb.xml :


<server type="sqlserver"> 69

advanced features <param name="driver" value="com.microsoft.jdbc.sqlserver.SQLServerDriver" /> <param name="connect_url" value="jdbc:microsoft:sqlserver://HOST;databasename=cbdb" /> <param name="user" value="myuser" /> <param name="passwd" value="mypasswd" /> ...

Deployment on Oracle 8i and 9i


Oracle supplies its own set of native JDBC drivers, of which you require the following two files. classes12.jar nls_charset12.jar

They are located in ORA_HOME/jdbc/lib. (ORA_HOME is the base installation directory of your Oracle database software.) Copy these two files to the CBE_HOME/server/lib. Edit the startup script to include these libraries.
startcbe.bat Remove the rem prefix after this line. rem Oracle set CBE_CP=%CBE_CP%;lib\classes12.jar;lib\nls_charset12.jar startcbe.sh Remove the # prefix after this line. # Oracle CLASSPATH_JDBC=lib/classes12.jar:lib/nls_charset12.jar

Example configuration of confdb.xml :


<server type="oracle"> <param name="driver" value="oracle.jdbc.driver.OracleDriver" /> <param name="connect_url" value="jdbc:oracle:thin:USERNAME/PASSWORD@HOST_ADDRESS: PORT:DATABASE_NAME" /> <param name="user" value="" /> <param name="passwd" value="" /> ...

For the JDBC driver to connect to the Oracle server, you may have to start the servers Listener process, usually with this command
>ORA_HOME/bin/lsnrctl start

70

advanced features

Using the ServerDev Module


The ServerDev module is a powerful add-on component to the ChatBlazer server and allows you to issue commands to the ChatBlazer server and retrieve information on your current chat status without having to go through any of Chat Blazers administrative client applets. The ServerDev module is essentially another server that runs on your machine and listens for ServerDev commands. Once a ServerDev command has been received, the ServerDev process communicates with the ChatBlazer server, retrieves whatever information is sent from the ChatBlazer server and sends back the information to the command issuer. Detailed information on the ServerDev module can be found in a separate add-on to this manual, Addendum I: Using the ServerDev Module.

Setting up ChatBlazer server and client on different machines/servers


To setup the ChatBlazer client on a different machine from the one that is running the ChatBlazer server, you do not have to copy the whole client directory to the client machine. You just have to create a html page on the client machine to load the flash client swf file. 1) On the server machine, place the client directory of your package in a directory that is accessible from the web. 2) On the client machine, create a html page. In this html page, two sections of code need to be inserted into the <HEAD> tag and <BODY> tag from the client.html. Copy the lines starting from <!-- START COPYING INTO <HEAD> TAG --> to <!-- STOP COPYING INTO <HEAD> TAG --> and paste into your HTMLs <head></head> tags. Next, Copy the lines starting from <!-- START COPYING INTO <BODY> TAG -->

71

advanced features

to

<!-- STOP COPYING INTO <BODY> TAG -->

and paste into your HTMLs <body></body> tags, at the location where the application is desired to be located. 3) In the first section of codes, edit the sourceBase parameter to point to the base URL of where the swf file is located. For example, if the client swf file is located at http://www.domain1.com/chat/client/ and the html page is located at http://www.domain2.com/client/, the sourceBase parameter should be http://www.domain1.com/chat/client/ .

Integrating ChatBlazer with LDAP


The LDAP module is only available with the Enterprise Application Integration plug-in. This module enables ChatBlazer to be integrated with your existing LDAP directory, and supports popular LDAP implementations like OpenLDAP, Sun ONE Directory, Netscape Directory Server, Novell eDirectory and Microsoft Active Directory. To activate this module, check that you have the modules configuration snippet in your server configuration file, conf.xml.
<module name="ldap" active="0"> <ldap-config> <!-Types: Novell eDirectory: "novell" MS Active Directory: "msad" OpenLDAP, Sun ONE: leave blank --> <server type="" host="ldap://localhost" base-dn="o=yourcompany.com" user="cn=Directory Manager" passwd="password" encoding="utf-8" authMethod="Simple" /> <!-- Default assumes password is stored in SHA with {SHA} prefixed in front of password. --> <password-comparator class="com.chatblazer.ldap.LdapPasswordComparator" base64="1" hash="sha" prefix="{SHA}" /> <attr-map-set name="default" objectclass="top,person,organizationalPerson,inetOrgPerson"> <attr-map name="passwd" mapped-name="userpassword" /> </attr-map-set> <! NDS can sometimes store "inetOrgPerson" in all lowercase, so add another attr-map-set to cater to that case difference. --> <attr-map-set name="lowercase" objectclass="top,person,organizationalPerson,inetorgperson">

72

advanced features <attr-map name="passwd" mapped-name="userpassword" /> </attr-map-set> </ldap-config> </module>

Setup Steps
1. Turn on the module by changing the active attribute to 1. 2. Configure the LDAP module according to the properties that are defined in the next section. 3. Include the LDAP login/bind information into your client configuration. 4. Attempt a member login for a user that exists in the directory.

Module Configuration
Attribute <server> Host Description URL of your LDAP server, usually of the form ldap://address:port. The ":port" portion is optional, you only need to specify it if your LDAP server is not using the default port 389. Base DN in your directory where searches will be rooted. User account to be used to access the directory. This user account should be able to retrieve sensitive directory attributes like user passwords. You can omit this for anonymous login, but it is unlikely that an anonymous login can retrieve sensitive information. Password for the user account described above. Optional. Encoding used by your LDAP server. Optional. Use these values when connecting to your LDAP directory : Novell eDirectory "novell" Microsoft Active Directory "msad" Leave blank for other types.

base-dn user

passwd encoding type

<password-comparator> class The fully-qualified name of the Java class that is used to match user passwords against those retrieved from the LDAP directory. This facility is provided as different implementations of directory servers may store user passwords differently, usually in a one-way encryption method. We provide a default password comparator that supports the two most common storage method, MD5 and SHA hashes. Unix crypt hashing is not supported. If the default password comparator cannot understand your password storage method, the following section will explain how you can build your own password comparator.

73

advanced features any attribute You can include any attribute that is required for your own implementation of the password comparator. These attributes will be read and transferred to your password comparator. Name given to this mapping set. Every mapping set differs in their objectclass attributes. Most of the time, user objects read from your directory share the same objectclass. Nonetheless, you can add as many different mapping sets as you need according to the number of different object classes that your user objects have distinctly. The value for this attribute should be case-sensitive. The property that the LDAP module is searching for. This should not be changed. Change this property to reflect the actual attribute name of the directory object specified in the 'objectclass' attribute above. The value for this attribute should be case-sensitive.

<attr-map-set> name objectclass

<attr-map> name mapped-name

Client Configuration
On the client side, you need to include specify a parameter that the module will use when searching your LDAP directory. In config.xml:
<login directlogin="false" allowmember="true" allowguest="true" defaultmember="false" defaultguest="true" roomname="" roomid="" roompassword="" username="" userpassword="" allowrelogin="true" allowremember="true" info=xxxx/>

The parameter is the info attribute. For example, a possible value is dn.search=cn=$cb_name,ou=development. The value of this parameter must include a dn.search property, the value being the DN prefix that is added to your base DN when searching the

74

advanced features

directory. You can use the placeholder $cb_name to substitute the user's login name into the property. For example, according to the base-dn value given above and the dn.search value here, the exact DN that is used to find the user's object is "cn=danny,ou=development,dc=pendulab,dc=com", if the user logs in with the name "danny". After that, the object's class must be verified against the objectclass attribute of the attribute mapping set defined. Then the module retrieves the password from the attribute with the name specified by the password mapping. The use of $cb_name is optional. If you omit it, you would probably include the user's unique UID into the parameter.

Working Example
Explanation of the configuring required for the LDAP module will be much simpler if we work backwards based on a sample user LDIF. Sample LDIF:
dn: uid=test, ou=People, o=pendulab.com userpassword:: e1NIQX1BUnlVWHpET0xMcjhSUzg1aEE4Q1ZwTXpuRUk9 uid: test givenname: test objectclass: top objectclass: person objectclass: organizationalPerson objectclass: inetOrgPerson sn: user cn: test user

User Login DN From the above, the DN of the user is uid=test, ou=People, o=pendulab.com. From this DN, your base DN could either be ou=People, o=pendulab.com, or o=pendulab.com. The former means that only users found in the group DN ou=People, o=pendulab.com will be logging in, whereas the latter allows you to log in users from other groups, e.g. ou=Sales, o=pendulab.com, ou=Development, o=pendulab.com, etc. Suppose the base DN is ou=People, o=pendulab.com. In the client-side parameter, you will need to include the DN prefix of uid=$cb_name.
<login ... info=uid=$cb_name/>

75

advanced features

So the combination of the client-side parameter and your base DN gives you a user login DN of "uid=USERNAME, ou=People, o=pendulab.com". The USERNAME is the name your users enter at the chat client login window to login. Password Comparison For NDS, user passwords are usually stored as SHA hashes with a "{SHA}" prefix. This LDIF export above does not show this. You have to use your NDS administrator console to view the value of the userpassword attribute. It looks something like this. {SHA}ARyUXzDOLLr8RS85hA8CVpMznEI= The default password comparator provided in the LDAP module supports SHA and MD5 hashes. A possible configuration for NDS is shown below.
<password-comparator class="com.chatblazer.ldap.LdapPasswordComparator" base64="1" hash="sha" prefix="{SHA}" />

Defining User Object Classes Based on the LDIF export, we see that the user entry has 4 objectclass, attributes, top, person, organizationalPerson and inetOrgPerson. You need to define an attr-map-set element for this. This is required as every entry read from the directory has its object classes examined to ensure that the entry is what we are looking for.
<attr-map-set name="default" objectclass="top,person,organizationalPerson,inetOrgPerson">

You also need to define the actual attribute name of the password field in the user's entry. This is done with the mapping of the attribute passwd. For NDS, the password is stored in an attribute called userpassword.
<attr-map name="passwd" mapped-name="userpassword" />

Don't change the "name" attribute, only the "mapped-name" attribute.


<password-comparator class="com.chatblazer.ldap.LdapPasswordComparator" base64="1" hash="sha" prefix="{SHA}" />

Specific Instructions for Novell eDirectory To use the LDAP module with Novell eDirectory, please follow the additional steps outlined below.

76

advanced features

1. Download an additional Java library required for eDirectory. The location is at http://developer.novell.com/wiki/index.php/LDAP_Classes_for_ Java. 2. After unzipping the downloaded library, there are two files in the lib directory, ldap.jar and utilities.jar. Copy or upload these two files into the CBE_HOME/server/lib directory. Edit cb8svr.sh to include the two files into the Java classpath. 3. Edit the module configuration with the changes below. a. Use novell for the type attribute. b. Comment out the <password-comparator> element. Or you can delete it if you prefer.

77

troubleshooting

troubleshooting

Some of the common problems experienced by ChatBlazer customers are listed below. If you have a problem not found in the list below, please do not hesitate to contact us for assistance.

Installation Issues
Why are my imported images (emoticons, avatars, background logo, start button) and banners not displayed? Assuming your files are not corrupted, you have to check the location of your files and make sure it corresponds with the site parameter in your HTML page. The resources should be in the sites subdirectory of the code base. E.g. if the codebase value is http://www.mydomain.com/chat and the site value is CBS1, then the resources should be in http://www.mydomain.com/chat/CBS1. What databases are supported by ChatBlazer? Currently supported SQL databases include Oracle, Microsoft SQL server 2000, MySQL, FrontBase and ODBC data sources. When you start the ChatBlazer server for the first time and are using the SQL module, ChatBlazer will attempt to create the table structures required to store your chat systems data. If your database is not supported, the SQL module will not load. Look for errors in the SQL modules log file, as specified in the modules configuration file, confdb.xml.

Usage Problems
Why do my users and I get a Your domain is not allowed to host the application message in the login window?

78

troubleshooting

This message is displayed when users attempt to connect to the ChatBlazer server from a domain that is not found in the list of domain values licensed to you. This problem can also arise if the user is accessing a chat site from a domain that is not the chat sites assigned domain. You should check the site parameter in the clients configuration file (config.xml) and make sure the domain corresponds to the one you have defined in the Site Manager. You will also experience this problem if you have created a site that you do not have the domain value for. Contact us for the value to be appended to your domain list. Users accessing your web site through frames (especially when navigating from some search engines which opens a top frame) may also experience this problem. How do I use my JDBC driver with ChatBlazer? You need to ensure that the Java Runtime includes your JDBC driver files in its CLASSPATH when it starts. There are several ways to do this. One is to declare a CLASSPATH environment variable (of your particular OS) that points to the location where your JDBC driver is, which could be either a directory or a JAR file. You can also specify the location in the command to start the ChatBlazer server itself. If you do the latter, you cannot use the jar option. For example,
> java cp myjdbcdriver.jar:lib/chat.jar:lib/crimson.jar:lib/jakartaregexp-1.2.jar com.chatblazer.Server

The preferred way to do this is to edit the startup script that you are using to start the ChatBlazer server. If the ChatBlazer server manages to find and execute your JDBC driver, you should see that the SQL Database Manager has been loaded. Otherwise, the ChatBlazer server will abort the startup process. Where is the database log? All database messages are written to the file specified in the database configuration file, confdb.xml. The default is cbdb.log, in the logs subdirectory. This file is overwritten every time the ChatBlazer server starts, so you may want to make your own backup first prior to restarting the ChatBlazer server.

For a more up to date list of issues and problems, refer to the customer support forum. It is also a good place where you can ask questions.
79

troubleshooting

Support
As you have read in our foreword, purchasing Chat Blazer is just the first step to having a real time chat solution for your business or organization. Quality support plays the other half of the equation. Pendulab is committed to providing you with fast and helpful personal support in the event that you require so. If you have any suggestion to improve this user manual, we will appreciate your feedback. You can reach us in the following ways. Email Customer Portal support@pendulab.com http://customer.chatblazer.com (Please contact us if you have not received your login information for the support portal.) http://customer.chatblazer.com/forum/ (The forum contains a wealth of information with regards to issues and problems commonly encountered when using ChatBlazer. Please refer to it or do a search in it when you have any problems.)

Forum

80

appendix

appendix
Log Message Types
Below is the list of message types that can be found in the chat transcript logs.
Message Code NC PC WC UR AM MCU MCP MC IM IC SP Description Normal chat message Private chat message Whisper message URL message Administrator message sent from the Room Manager Unpassed message in moderated session Passed message in moderated session Message from a moderator Messenger quick message Messenger chat message Speakers reply to a passed message. A speakers normal message has the same code as a moderator, i.e. MC.

Below is the list of event types that can be found in the user access logs.
Event Type LI LO ER AK PK MK RC RD Description Login Logout Entered a room Kicked by administrator Kicked by profanity detection Kicked by moderator Room created by user (not system room) Room deleted by user (not system room)

A-1

Você também pode gostar