Program E
An AIML compliant chat bot written using PHP and MySQL.
Paul Rydell

Known bugs
Matching of multiple consecutive wildcards *'s and _'s can slow down performance significantly if there are more than 3-4 in a row. Try compressing consecutive wildcards into single wildcards.
Matching *'s in conditions might not work perfectly.
Use only the startup.xml that comes with Program E as a starting point for your startup.xml file.
If you are getting an error about "get_defined_functions" then comment out line 565 in util.php. After you do that custom tags cannot be defined.

Installation Instructions

-1. If you have a previous version of Program E delete all of its files and wipe its database.

0. Prerequisites: PHP (4.0.4+) compiled --with-mysql and --with-xml and a recent version of MySQL 3.23.xx and Apache. PHP version 4.2.2 recommended.

1. Unzip all the files into a web directory.

2. Create a database for the program to use in MySQL.

3. Create the tables in the new database using db.sql which is in the sql directory.

4. By default, AIML files and startup.xml are in the aiml directory. Use the startup.xml file included in the distribution -- do not use the startup.xml you get with AIML files from alicebot.org. AIML files that work well with Program E can be found at http://sourceforge.net/project/showfiles.php?group_id=43190

5. Edit dbprefs.php with your database information and aiml directory information. If you left your AIML files in the default directory you do not have to change this. See dbprefs.php for other options you can configure.

6. The src/admin directory must be writable by the web server because botloader.php will attempt to create a file subs.inc. Or you can also create an empty subs.inc file and make it writable.

7. From your web browser, access botloader.php (in src/admin directory) to load the AIML into the database. This might take a few minutes (On a dual PIII it takes approx. 1 minute for 10,000 categories). If your PHP is running in safe mode you might need to use botloaderinc.php to load the AIML files one at a time. IMPORTANT NOTE: Whenever botloader.php is loaded it deletes all the existing patterns/templates in the database and then loads them from the AIML files.

8. Access talk.html from your web browser and say something to the bot.

9. Or access jsrschat.html in the jsrs directory from your web browser and say something to the bot.

10. Password protect your admin directory with a .htaccess file so no one can mess around with reloading your bot.