The FlashChat Installer

You should upload FlashChat to the folder of your choice, using any good FTP client. I personally recommend AbsoluteFTP from VanDyke Technologies. Be sure to use a "binary" transfer mode. For example, you may upload FlashChat to the "chat" folder on your server.

If you plan to integrate FlashChat with a Bulletin Board or Content Management System, like phpBB, vBulletin, Mambo, PHP-Nuke, etc... or, with a dating system like aeDating or AZDG Dating or TUFaT.com's very own osDate (coming in summer, 2005!), then you must ensure that FlashChat is uploaded to the root folder of your system.

In other words, if you are using phpBB, then you would create a subfolder within the phpBB folder called "chat", and FTP the FlashChat system to that folder. (a) below shows a default installation of FlashChat, and (b) below shows where you would upload FlashChat if integrating with a specific system, like phpBB. Please see the FlashChat information page for a complete list of systems that FlashChat currently integrates with.

Whether you are integrating FlashChat with a special system, or using FlashChat in a default manner, you must now specify the database login information. Here's a very important point: if you are integrating FlashChat with a Bulletin Board or Content Management System, you MUST use the default values. Hint: these values will probably look very familiar to you, because it will probably actually be your real MySQL login. If you are not using such a system, then you should manuall fill in these fields.

New users should be aware that the MySQL login information is typically not the same as your FTP login. If you do not know what your MySQL login is, but you do know that your web server is MySQL-capable, then you should contact your host about setting this up. It only takes about 2 minutes, and once it's set up, your website will be infinitely more powerful than it ever was before.

When you click "Continue", these values are saved to the /inc/config.srv.php file of FlashChat. You don't really need to be concerned with this, unless you plan to perform a manual installation at some later date.

Click "Continue" to proceed with the installer. If you receive this message:

Could not create DB table 'flashchat_bans'
Table 'flashchat_bans' already exists

This means that the FlashChat system was previously installed. You will need to remove the existing database tables before you can continue the installation. To do that, ask your web host if "phpMyAdmin" is available on your server. If it is, then locate the FlashChat tables, and remove them. If phpMyAdmin (or phpFlashMyAdmin, the Flash equivalent of phpMyAdmin) are not available, you can get it at phpMyAdmin.net

Below is a screenshot of phpMyAdmin, showing 16 FlashChat tables. I checked the appropriate tables, then used the "drop" option to remove them. Please be careful that you do not inadvertently drop non-FlashChat tables. It's always a good idea to backup your entire database before making any changes to it. You only need to do this if you get the red "...already exists" message noted above.

If you are NOT integrating FlashChat with a Bulletin Board or Content Management System, then you have another alternative to dropping existing tables: just use a different "table prefix". For example, "flashchat2_" instead of "flashchat_", the default prefix. If you are integrating FlashChat with a Bulletin Board or Content Management System, then you cannot do this - you MUST use the prefix shown by default in Step 2 of the installer.

Once Step 2 is complete, and the FlashChat tables have been successfully added to MySQL, you have a very important choice to make in Step 3.

You may choose to use FlashChat as a "free-for-all" chatroom, or as a "registered users-only" chat room. What's the difference?

Free For All (a.k.a. "Stateless")
Registered Users Only (a.k.a. "Default")
User Login
Any guest can login with any name, no password required. Users must register their username and password before logging in. No guest access.
Admin Login
Any user can login as an admin if they provide the correct admin password, which is set in the /inc/config.php file (default is "adminpass") The first user who registers is automatically the admin, using the login username and password provided during registration.
Profiles
No profiles for any users. All users have a profile, which is accessible by clicking on any user's login name in the room list.

In Step 3 of the installer you can also specify a few common configuration options, like the list of rooms, the default language, and whether or not to use the chat in so-called "live support" mode. Live support mode means that users will be logged in as "customers", whereas moderators will be logged in as "support persons". Support persons can see and chat with all customers, but customers can only chat with the moderator.

When you click Continue, a few things happen. FlashChat's "rooms" table is updated with the room list that you specify. Rooms are therefore saved in the database. You can check this using phpMyAdmin:

What about thos other options, like "Live Support" mode and "Default Language". The FlashChat installer updated the "/inc/config.php" file. Most of FlashChat's configuration settings are stored in this single file. This means that if you wish to later enable Live Support mode, or make other configuration changes to FlashChat, you should edit the /inc/config.php file - for example, by setting "liveSupportMode" to true.

You should be very careful when editing this file, however. It's a very easy place to introduce PHP syntax errors. Also, you should use an advanced text editor, like TextPad, not any text editors which come with Windows.

If you chose the "free-for-all" option, then you can skip the section below and proceed immediately to the bot installation. In Step 3 of the FlashChat installer, there was an important choice: "free-for-all" or "registered users-only". If you chose the second option, then you will be presented with additional choices: to use FlashChat's default users table, or to use your own user's table.

By default, FlashChat comes with a registration system, a profile page (profile.php), and a "[prefix]_users" table, where [prefix] was specified in Step 2 of the installer. But what if you have your own user database already? In this case, you may wish to choose the second radio button shown above. You can think of this as integrating FlashChat with your own custom Content Management System. FlashChat assumes that you have some method of

If you have these three components in place, then choose the 2nd option and click Continue.

Suppose that I have a staff members database, and I'd like to chat with all of my staff member each month, to discuss company issues. For the sake of simplicity, suppose that my staff table looks like this:

I have a "staff_id" field, which is an auto-incrementing integer, and two character fields for login id and password, and a boolean "is_admin" field. We'll assume that my company VPs, which are also staff members, have the special property that they are also admins. So for them, is_admin = 1. This is what Step 5 of the installer might look like. Please note the following....

Now, you should be able to login to FlashChat using a valid login from the staff member table, as shown below. As you can see, the user named "darren gates" is an admin, and when he enters the chat, he automatically becomes a moderator.

The final step of the installer allows you to add a "bot" to FlashChat. This is an artificial intelligence system based on markup system called "AIML", which is popularized by AliceBot.org. This is purely for enjoyment, and is not a required part of the FlashChat installation. If you wish to add a bot, you should be aware of the following:

If you are unsure whether or not you want to have bots running around your chat, you're suggested to "Skip this step" and finish the installer.