JLive! Chat is a high performance livechat software developed on the popular content management system known as Joomla!. It has a very light footprint on using memory and hardware resources. The entire software suite consists of a Joomla! component, plugin, module and desktop application. This feature filled software suite allows you (the website operator) to be able to communicate with your visitors directly from your computer. With JLive! Chat, you can await livechat requests from your visitors, and also initiate proactive chat sessions with your visitors or other operators. There are many powerful features that JLive! Chat offers which include but are not limited to: Proactive Chatting, Website Activity Monitoring (with visitor/operator geo-location), User and Global Canned Responses, Operator to Operator Chats, Transferring Chat Sessions, Emailing Session Transcripts, IP Blocker (to block IP Addresses), and more... With JLive! Chat, you can conveniently provide live support for all your websites using one application.
JLive! Chat works on all operating systems and platforms including but not limited to Windows, Mac, and Linux. It also works on non-Joomla websites when running in hosted mode. The JLive! Chat Joomla! component, plugin, and module are all open-source and fully customizable using PHP, CSS, and/or HTML.
Webserver System Requirements
- Joomla! 1.5.x or greater
- PHP 4 or greater with cURL, and GD support enabled. PHP Zlib is optionally required if you want to have GZip compressed synchronizations enabled, which will increase performance and save you bandwidth.
Operator Workstation System Requirements
- Compatible with: Windows XP, Windows Vista, Windows 7, Mac OS X 10.4+ (Intel or PowerPC), Ubuntu, Fedora, CentOS, Debian, Linux
- At least 100MB of free space on hard disk
- An Internet Connection (High speed preferably)
Installing JLive! Chat on Joomla!
- First download the JLive! Chat Joomla! component, plugin and module from our download section.
- Then install the JLive! Chat component (com_jlivechat), plugin (plugin_jlivechat), and module (mod_jlivechat) by going to Extensions -> Install/Uninstall from within your Joomla! administrator.
- Once you have successfully installed the component, plugin, and module, then you should install the JLive! Chat desktop application. If you intend on using JLive! Chat in hosted mode, this is a good time to copy and paste your hosted mode API key into your JLive! Chat -> Settings page.
Installing JLive! Chat on Windows
- Download and install the JLive! Chat desktop application from our download section. In particular you should download JLive_Chat_Setup.exe.
- After installing the JLive! Chat desktop application successfully, launch the program, and proceed to add your operator access key file to the desktop application by going to File -> My Websites from within the JLive! Chat desktop application. You can download your operator access key file by going to Components -> JLive! Chat -> Operators from within your Joomla! administrator.
- After successfully adding your operator access key file to the JLive! Chat desktop application, you should be all set! You are now awaiting livechat requests from your website.
Installing JLive! Chat on Mac OS X
- Download and install the JLive! Chat desktop application (For Mac OS X) from our download section.
- After installing the JLive! Chat desktop application successfully, launch the program, and proceed to add your operator access key file to the desktop application by going to File -> My Websites from within the JLive! Chat desktop application. You can download your operator access key file by going to Components -> JLive! Chat -> Operators from within your Joomla! administrator.
- After successfully adding your operator access key file to the JLive! Chat desktop application, you should be all set! You are now awaiting livechat requests from your website.
Installing JLive! Chat on Linux
You can install the JLive! Chat desktop application on linux by following these steps:
- Download the jlivechat_linux_installer.sh linux desktop application installer from our download section.
- Next, you should install the JLive! Chat desktop application by executing the following two commands in a terminal window or shell prompt:
chmod +x jlivechat_linux_installer.sh
sh jlivechat_linux_installer.sh - Once the installer completes. That's it! You're all done installing the JLive! Chat desktop application.
Next you should add your operator access key file to the desktop application by going to File -> My Websites from within the JLive! Chat desktop application. You can download your operator access key file by going to Components -> JLive! Chat -> Operators from within your Joomla! administrator.
Upgrading JLive! Chat from an older version
To upgrade JLive! Chat to a newer version; you can simply uninstall the old JLive! Chat component, plugin, module, and desktop application by going to Extensions -> Install/Uninstall from within your Joomla administrator. After uninstalling the old component, plugin, module, and desktop application; you can then go ahead and install the latest version.
Please note that by uninstalling the JLive! Chat component, plugin, module and desktop application you will NOT suffer any loss of data or preferences. That data will remain untouched on your server even after you uninstall the JLive! Chat suite. Setting Up Data Pusher Cronjob
The data pusher cronjob is a worker process that sends out synchronization data out to the operators desktop applications instead of the desktop applications polling data from the webserver. This method is recommended for maximum performance and maximum scalability for the number of operators you have. Users that plan to have a large amount of operators or even more than 10 operators are highly urged to use this data pusher ccronjob method as opposed to the polling method which is also available as an option in JLive! Chat. If you decide to use the polling syncer method instead of the data pusher cronjob, then it is also highly urged you exclude JLive! Chat requests from your web log.
Add the following cronjob to your /etc/crontab file located on your webserver. The crontab file located may vary depending on the type of operating system you are running on your webserver.
*/5 * * * * www-data php /var/www/vhosts/yourdomain.com/httpdocs/components/com_jlivechat/jlivechat.cron.php >/dev/null 2>&1
You will need to replace the path above with your path to the jlivechat.cron.php file.
You will also need to replace the www-data user with your webserver user, for example apache.
After setting up the data pusher cronjob, it will execute every 5 minutes, however there is a built in mechanism that disallows the data pusher cronjob from running multiple instances at the same time. Technically we don't need to have the cronjob above run every 5 minutes because it is a worker process that continuously runs once launched until it is shutdown, however in this case we recommend running the data pusher cronjob every 5 minutes to simply ensure that it is always running even after a webserver restart and also because it has a built in mechanism that prevents multiple instances from running at the same time, so in this case it would be safe to execute this cronjob every 5 minutes.
Once the data pusher cronjob above is executed and running on your webserver, you can then switch your JLive! Chat desktop application in data pusher mode, which automatically disables the JLive! Chat desktop application polling mechnism. You can switch your JLive! Chat desktop application into data pusher mode by going to File -> My Preferences from within your JLive! Chat desktop application and changing the Listen Post preference to 0. Defining 0 (zero) as the listen port will cause the JLive! Chat desktop application to listen on 2 random consecutive TCP ports on your computer. This is where the JLive! Chat desktop application will receive synchronization data from your webserver (from the data pusher cronjob) for JLive! Chat.
Alternatively, for maximum compatiblity, the JLive! Chat desktop application runs in poll data mode by default which basically connects to your webserver every few seconds and fetches synchronization data. If you use this method then it is highly recommended to exclude JLive! Chat requests from your web log as it may cause webserver performance/hardware degradation.
Excluding JLive! Chat Requests from Web Log
Exlcuding web logging for JLive! Chat requests to your webserver will prevent performance degradation and/or your hard disk filling up. This step is not required but is recommended. If you do not have access to change your server configuration files, or if you are in a shared hosting environment, we highly recommend using JLive! Chat in data pusher mode or use hosted mode at the Ultimate Live Chat.com
Edit your Joomla! website's .htaccess file, and insert the following 2 lines under "RewriteEngine On", so the end result will look like this:
RewriteEngine On
RewriteCond %{QUERY_STRING} do_not_log[=,]true [NC]
RewriteRule ^.*$ - [E=dontlog:1]
RewriteCond %{REQUEST_URI} do_not_log[=,]true [NC]
RewriteRule ^.*$ - [E=dontlog:1]
Then edit your virtual host configuration file, and follow the steps for your platform below.
Apache Webserver Instructions
- Edit your virtual host configuration file, which is usually named httpd.conf, or apache2.conf, or <your-site-name>.conf and add "env=!dontlog" to the end of the "CustomLog" attribute, and add "AllowOverride All" or "AllowOverride FileInfo" so that it looks like this: <VirtualHost www.yourdomain.com:80>
- DocumentRoot "/var/www/vhosts/www.yourdomain.com/httpdocs"
ServerName www.yourdomain.com
...... <-- Some other lines here
<Directory "/var/www/vhosts/www.yourdomain.com/httpdocs">
...... <-- Some other lines here
# Either AllowOverride FileInfo, or AllowOverride All
AllowOverride All
</Directory>
# Add env=!dontlog to the end of the CustomLog Attribute
CustomLog /var/www/vhosts/www.yourdomain.com/logs/access.log common env=!dontlog
...... <-- Some other lines here
<VirtualHost> - Save those changes and restart apache.
Plesk Webserver Instructions
- Edit /var/www/vhosts/<your-website.com>/conf/httpd.include and add "env=!dontlog" to the end of the "CustomLog" attribute. The end result should look something like this: <VirtualHost 100.22.22.22:80>
- CustomLog /var/www/vhosts/<your-website.com>/statistics/logs/access_log plesklog env=!dontlog
- Save those changes and restart apache. You can restart apache by issuing the following command on linux:
/etc/init.d/httpd restart
or
/etc/init.d/apache2 restart
- The only drawback on Plesk is that if you change your virtual host's settings through the Plesk Administration site, your changes to the httpd.include file will be overwritten by plesk. One way to work around this is to keep a backup copy of your httpd.include and perhaps name it httpd.good.include. That way if Plesk overwrites your httpd.include file, then you can just copy the correct httpd.good.include over the incorrect httpd.include file.
cPanel Instructions
- SSH to your webserver so that you can access your webserver's shell prompt.
- Copy your cPanel vhost template file from /var/cpanel/templates/apache2/vhost.default to /var/cpanel/templates/apache2/vhost.local. You can copy this file by executing the following command at the shell prompt: sudo cp /var/cpanel/templates/apache2/vhost.default /var/cpanel/templates/apache2/vhost.local
- Edit the new /var/cpanel/templates/apache2/vhost.local file you created above and add env=!dontlog to the end of the "CustomLog" attribute. The final resulting file should look something like this: <VirtualHost 100.22.22.22:80>
- CustomLog /usr/local/apache/domlogs/mydomain.me combined env=!dontlog
- If you also want to exclude JLive! Chat requests from HTTPS requests, then repeat the step above, but this time by copying the file /var/cpanel/templates/apache2/ssl_vhost.default to /var/cpanel/templates/apache2/ssl_vhost.local. Otherwise you can skip this step.
- Now rebuild your vhost conf files by running the following command: sudo /scripts/rebuildhttpdconf
- Now reload your apache webserver for the changes to take effect by running the following command: sudo /etc/init.d/httpd restart or sudo /etc/init.d/apache2 restart
For further information on customizing your cPanel configuration files, please visit:
http://docs.cpanel.net/twiki/bin/view/EasyApache3/InsideVHost#Custom%20templates%20that%20will%20apply Uninstalling JLive! Chat
To uninstall JLive! Chat; you can simply uninstall the JLive! Chat component, plugin, and module by going to Extensions -> Install/Uninstall from within your Joomla administrator. You may also choose to uninstall the JLive! Chat desktop application from your computer.
Please note that by uninstalling the JLive! Chat component, plugin, module and desktop application you will NOT cause loss of any saved data or preferences. That data will remain untouched on your server even after you uninstall JLive! Chat.
Force removing the JLive! Chat Joomla! component
If for some reason you need to forcefully remove the JLive! Chat compoment; you can do so by deleting the following files located within your website's root directory:
components/com_jlivechat/
components/administrator/com_jlivechat/
Then issue the following SQL command on your MySQL database:
DELETE FROM jos_components WHERE option = 'com_jlivechat';
Force removing the JLive! Chat Joomla! plugin
If for some reason you need to forcefully remove the JLive! Chat plugin; you can do so by deleting the following files located within your website's root directory:
plugins/system/jlivechat.php
plugins/system/jlivechat.xml
Then issue the following SQL command on your MySQL database:
DELETE FROM jos_plugins WHERE element = 'jlivechat';
Force removing is not recommended because it can leave behind some language translation files located in your /language and /administrator/language directories. In which case you will also need to find all the JLive! Chat translation files and delete them as well.
Hiding CMS Fruit Menu Items and Disabling Splash Image
The CMS Fruit related menu items and splash image on the JLive! Chat desktop application can be hidden for cases where users want to custom brand the JLive! Chat desktop application, simply by creating a file named custom.lock and placing it in the JLive! Chat installation directory (where the jlivechat.exe file is located)
For example, one might create an empty custom.lock file in the following path on their system:
c:\Program Files\CMS Fruit\JLive Chat\custom.lock
You can also bundle your new custom.lock file with a new JLive! Chat installer by adding your custom.lock file to the installer.nsi file located in your JLive! Chat installation directory, and then recompiling the installer.nsi file using Nullsoft Scriptable Install System (NSIS).
Creating a Custom JLive! Chat Installer Package (JLive_Chat_Setup.exe)
You can create your own custom JLive_Chat_Setup.exe installer package for windows by recompiling the installer.nsi file that was bundled with JLive! Chat, usually located in your JLive! Chat installation directory:
c:\Program Files\CMS Fruit\JLive Chat\installer.nsi
Troubleshooting
In order for JLive! Chat to be able to function properly, it must have access to insert its required Javascript files into your template's <head></head> section. Please ensure that your template contains the following line within the opening and closing <head></head> tag:
<jdoc:include type="head">
Your Joomla! template's <head></head> section should look something like this: <head>
<jdoc:include type="head">
...... <-- Some other lines here
</head>
You can perform a system check by going to Components -> JLive! Chat -> Information from within your Joomla administrator to check for any problems with your installation.
Your Joomla! Administrator is usually located @ http://<your-site>/administrator
If you have any further questions or support issues, please submit a debug report by going to Help -> Debug Repot -> Send to Technical Support from within the JLive! Chat desktop application and then contact us by submitting a support ticket.