LiveChat

Web Chat App

Drive more sales.  Turn more visitors into customers by giving them instant answers to their questions.
• Easy installation
• Multi-chat admin console
• On/off switch: chat when you want
• Audio alert for new chats

LiveChat

FAQ

See also: Shared FAQ

How do I configure/customize LiveChat?
How do I change LiveChat's styling?
How do I use the /livechat shortcut URL?
How do I embed LiveChat in another page, or within my site's existing layout?

I get an Internal Server Error!
I get an error saying "undefined function virtual" or "request execution failed."

Can you add feature XYZ to LiveChat?
How do I enable email notifications, or fix email-sending errors?
How do I set or reset my password?
How do I integrate LiveChat with UserBase?

Can I make LiveChat work with my existing login system?
Does LiveChat work with iWeb, or other 3rd-party website editors?
Does LiveChat work with Drupal?

  

How do I configure/customize LiveChat?

Just use WebConfig: log into LiveChat with your admin account, then go to the Settings page, and do all your configuration there, via web browser.  Alternatively, you can configure the app by editing its prefs files.  Here's how:

Edit your livechat_prefs.cgi file in a text editor.  This file is normally in your server's cgi-bin directory, or it may be in your livechat directory on Windows servers.  The prefs file contains many adjustable settings along with documentation for them.  For example, you may want to adjust $PREF{title}.

You'll notice that many lines in the prefs file begin with a "#" character.  These lines are inactive "comment" lines containing instructions and examples, so don't change anything on them, because it won't have any effect on LiveChat.  If you see a pref that you want to adjust, but it's on an inactive line, that usually means it's just an example included as part of the documentation, so you should look for another instance of that same pref on a line that doesn't begin with a "#" character – that will be the active version of the pref, so that's the one you should adjust.

[ TopLC HomepageInstructionsBuy ]

 

How do I change LiveChat's styling?

To customize the styling (look and feel), just add your own CSS to the $PREF{css} setting.  To include an external CSS file, use a CSS @import statement:

$PREF{css} = qq`

\@import url("/mystylesheet.css");

[rest of LiveChat's CSS here]

`;

Notice that the @-symbol on the @import statement must be escaped with a backslash, otherwise Perl will treat it as a variable, which will result in an error.

[ TopLC HomepageInstructionsBuy ]

 

How do I use the /livechat shortcut URL?

On most servers, you can use www.yoursite.com/livechat instead of www.yoursite.com/cgi-bin/livechat.cgi to access LiveChat.  But first, you must get the full livechat.cgi URL working.  Once that's working, you can try these shortcut URLs:

www.yoursite.com/livechat/index.php
www.yoursite.com/livechat/index.shtml

If one or both of those works, then delete the index file that doesn't work (if any), and then you should be able to use this shorter URL:

www.yoursite.com/livechat

If neither index page works, then try www.yoursite.com/livechat/call_lc.php instead.  If that works, then edit the index.php file, remove the "#" from the front of the call_lc line, and add a "#" to the front of the virtual line.  Now www.yoursite.com/livechat/index.php should work, and if you delete the index.shtml file, then www.yoursite.com/livechat should work too.

If your server runs IIS rather than Apache, you can also use the Default Content Page feature to enable the shortcut URL.  Open your IIS manager, find the /livechat/ directory, right-click on it and choose Properties.  Go to the Documents tab, check the "Enable default content page" box, and add "livechat.cgi" to the top of the list.

If the short /livechat URL works on your server using one of the above methods, then set $PREF{here} to '/livechat/' in your prefs file.

If your server doesn't support any of the above methods, and you don't want to upgrade to a better hosting company, then you can use the not-quite-as-nice META Refresh method.  Copy the /livechat/index-redirect.html file to /livechat/index.html and then edit the index.html file.  In it, replace "mysite.com" with your domain name.  Now yoursite.com/livechat will auto-redirect your visitors to yoursite.com/cgi-bin/livechat.cgi.

[ TopLC HomepageInstructionsBuy ]

 

How do I embed LiveChat in another page, or within my site's existing layout?

Embedding Method A: call livechat.cgi from your PHP or SSI/shtml page:

  1. First make sure LiveChat is installed and working: visit yoursite.com/cgi-bin/livechat.cgi and you should see the admin menu.  If not, you need to fix that before trying to embed it.  Important note: if you install LiveChat in a non-standard location (somewhere other than yoursite.com/cgi-bin/livechat.cgi), then you'll need to adjust the "/cgi-bin/livechat.cgi" throughout these instructions, to match wherever you've actually installed it.
  2. Within the <head> section of the PHP or SSI/shtml page where you want to embed LiveChat, add the following two lines:

    <script type="text/javascript" src="/livechat/appdata/lc.js"></script>

    <link rel="stylesheet" type="text/css" media="all" href="/livechat/appdata/lc.css" />
  3. If your page is a PHP page, then add the following line to it wherever you want LiveChat's output to appear:

    <?PHP virtual("/cgi-bin/livechat.cgi?encembed=yes&" . $_SERVER['QUERY_STRING']); ?>


    If your server doesn't support the PHP virtual() function, use this line instead:

    <?PHP require($_SERVER['DOCUMENT_ROOT'] . "/livechat/call_lc_embed.php"); ?>


    Or, if your page is a plain HTML page with an extension of .htm or .html, rename its extension to .shtml and then add the following line to it wherever you want LiveChat's output to appear:

    <!--#include virtual="/cgi-bin/livechat.cgi?encembed=yes&$QUERY_STRING" -->
  4. In your livechat_prefs.cgi file, set $PREF{here} = '/mypage.php' or '/mypage.shtml', where the value is the URL (starting with a slash) to the page within your website where you've embedded LiveChat.

    Now visit www.yoursite.com/mypage.php (or shtml) and you'll see LiveChat in the page.

Embedding Method B: call livechat.cgi directly, and let it display your HTML template file:

If your server doesn't support the PHP/SSI/shtml that's necessary for Embedding Method A (above), then you can use an HTML template file instead.  Your page will look exactly the same as with Method A; the difference is that Method B requires you to use the full URL to the CGI script itself, and not use the /livechat shortcut URL, since your server doesn't support any way to use that.

First you create an HTML file in whatever way you normally create web pages.  Name this file encodable_app_template.html.  In the <body> section of the file, wherever you want LiveChat's output to go, put the string %%encodable_app_output%%.  Now upload this HTML file onto your website in its top level (i.e. not in a subfolder).

Now open your livechat_prefs.cgi file and find the $PREF{encodable_app_template_file} setting; set that to "%PREF{DOCROOT}/encodable_app_template.html";

Now visit www.yoursite.com/cgi-bin/livechat.cgi and it'll use your template file.

 

I get an Internal Server Error!

If this happens after you edit your livechat.cgi file, then the simple solution is: don't change livechat.cgi at all.  Instead, only edit livechat_prefs.cgi, as explained above.

But if you haven't edited your livechat.cgi file and you still get an Internal Server Error, or if you absolutely need to edit livechat.cgi, then see the Internal Server Error page for solutions to this problem, which is most likely caused by an installation issue and not a problem with LiveChat itself.

[ TopLC HomepageInstructionsBuy ]

 

I get an error saying "undefined function virtual" or "request execution failed."

The "undefined function virtual" error means your server doesn't support PHP's virtual() function.  This is only a minor issue, and it is not a problem with LiveChat itself.  It just means you need to use a different method for calling LiveChat from a shortcut URL.  (See the shortcut FAQ item for more details and alternatives to the virtual() function, but read the rest of this FAQ item first.)

The "request execution failed" error most likely means that your livechat.cgi isn't installed quite right.

Either way, the first thing to do is get LiveChat itself installed and working: visit www.yoursite.com/cgi-bin/livechat.cgi and make sure that works.  Only after that works properly should you try to get the shortcut URLs working (www.yoursite.com/livechat/ or www.yoursite.com/livechat/index.php or www.yoursite.com/livechat/index.shtml).  If your livechat.cgi gives you an Internal Server Error, it's most likely a chmod/permissions problem, but see this page for full details on how to fix it.

[ TopLC HomepageInstructionsBuy ]

 

Can you add feature XYZ to LiveChat?

Yes, we can usually add custom features to LiveChat; just contact us and ask.

[ TopLC HomepageInstructionsBuy ]

 

How do I enable email notifications, or fix email-sending errors?

The short answer: once you specify a recipient address via the $PREF{webmaster_email_address} setting, mail-sending just works, on the vast majority of servers.

The long answer: for multiple Encodable web applications including LiveChat, the app will automatically try both SMTP and sendmail in order to send email.  On most servers, one or both of those will work by default, so no further configuration is needed.

The default configuration is to use SMTP with the server set to "localhost" because that works on most servers.  However, you may need to change that to the address of the SMTP server provided by your hosting company, or the address of the SMTP server provided by your ISP.  As mentioned, if SMTP doesn't work, the local sendmail process will be tried.  If you're having email problems, you may want to try setting the SMTP server to null (i.e. "") to force the use of sendmail, or setting the sendmail path to null to force the use of SMTP.

If you get an error like "Can't locate MIME/Lite.pm", this means your server is missing the MIME::Lite Perl module.  Fortunately you can usually install this yourself on your website.  Download the module (the latest version is probably fine, or v3.01_05 is known to work) and unzip it, then go into the directory lib/MIME/ and you'll see a file called Lite.pm.  On your server, create the directory cgi-bin/perlmodules/MIME/ and upload the Lite.pm file into it.  That's it!

If your SMTP server requires authentication, which it might if you get "relay" errors, then you'll also need to set the SMTP auth preferences.  You'll need to specify the username and password for an email account on the server in question.  On some servers, this requires installing an updated version of the MIME::Lite Perl module.  MIME::Lite version 3.01_05 is known to handle SMTP auth correctly; see the previous paragraph for instrutions on how to install it.

To test whether email-sending is working properly, add the following lines to your prefs file:

$PREF{enable_email_test}	= 'yes';
$PREF{email_test_recipient}	= 'you@wherever.com';
$PREF{email_test_sender}	= 'you@wherever.com';

Then open your browser and visit your installation of the application, and add "?do_email_test" on the end of the URL -- for example www.yoursite.com/cgi-bin/livechat.cgi?do_email_test.  This will cause the script to send an email using your current email settings, and it'll include those settings in the email, so if and when you manage to get an email to go through, you'll be able to see which settings worked.  For the email_test_recipient and sender addresses, you should use a known-good email account, like your personal email address.

Finally, in some cases you may need to check your spam folder, in case your email system uses overly-aggressive spam filtering which causes good emails to be flagged.

[ TopLC HomepageInstructionsBuy ]

 

How do I set or reset my password?

You'll create your admin password during the initial installation.  If you forget this password, then to create a password, you must generate a new hash for it, by going to http://yoursite.com/cgi-bin/livechat.cgi?newpw and entering your new password.  Then take the resulting hash and enter it into one of the $PREF{admin_password_hash} or $PREF{member_password_hash} settings in your prefs file.

[ TopLC HomepageInstructionsBuy ]

 

How do I integrate LiveChat with UserBase?

First install UserBase, then on your LiveChat Settings page, enable $PREF{integrate_with_userbase}.

[ TopLC HomepageInstructionsBuy ]

 

Can I make LiveChat work with my existing login system?

UserBase is generally the best login system to use with LiveChat.  However, as long as your server's PHP configuration is not too crippled, you can usually make LiveChat work with an existing PHP login system.

First you need to figure out how to make your PHP login system tell you the username of the logged-in user.  This will be different for each different login system, but for the purposes of this guide let's assume that the following PHP code will get the username from your login system:

<?php
$username = get_the_username();
?>

Joomla users: according to the Joomla documentation, the following should work for you:

<?php
$username = '';
$user =& JFactory::getUser();
if(!$user->guest)
{
	$username = $user->username;
}
?>

Once you've got the username, the next requirement is that you call the livechat.cgi script from your PHP page using the call_lc.php method as explained in the shortcut FAQ item.  That will work on most servers, but unfortunately some hosting companies cripple their servers by disabling PHP's exec() function.  If you're stuck on a server like that, you'll need to either use UserBase, or switch to a better hosting company.

The next step is to set some environment variables from your PHP $username variable; LiveChat will then be able to read those env vars.  So your full PHP code should now look like this:

<?php
$username = get_the_username();
putenv("PHP_ENC_USERNAME=$username");
require($_SERVER['DOCUMENT_ROOT'] . "/call_lc.php");
?>

The last step is to configure LiveChat to use those environment variables.  To do that, edit your livechat_prefs.cgi file and enable the following settings:

$PREF{integrate_with_existing_login_system} = 'yes';
$PREF{enable_username_from_php_session} = 'yes';

[ TopLC HomepageInstructionsBuy ]

 

Does LiveChat work with iWeb, or other 3rd-party website editors?

LiveChat works fine on websites created with 3rd-party tools like iWeb, as long as the server itself is a standard kind of server supporting standard features (namely Perl CGI scripts and MySQL databases).  Because LiveChat is a web application, not simply a web page, it's not created nor edited via iWeb, but it can be embedded into any of your iWeb pages, so that it appears within your own layout, and thus matches the style of the rest of your site.  Similarly, you would not need to use iWeb to configure LiveChat, because all configuration is handled by simply editing the livechat_prefs.cgi file, which is a plain text file that can be edited in any text editor.

[ TopLC HomepageInstructionsBuy ]

 

Does LiveChat work with Drupal?

Yes, LiveChat works fine on sites running Drupal.  Just install LiveChat according to the normal installation instructions.  You can then either use LiveChat directly, without going through your Drupal theme/layout, by using its /cgi-bin/livechat.cgi and/or /livechat/ URLs; or, you can embed LiveChat within one of your Drupal pages, by using the "PHP code" option in the "Text format" drop-down in Drupal's page editor, and inserting the PHP embed code into your page.  (For the ?js and ?css lines, ideally you'd insert those into the <head> section of your page, but the Drupal editor doesn't appear to support that currently, so you can just include those lines within the page body/content area, just before the PHP code.)

[ TopLC HomepageInstructionsBuy ]

Shopping Cart

Client Quotes

Do you know how rare it is to have a "canned" shopping cart that can easily do complex pricing options on a single item?  Basically, they don't exist!  I have looked.  Everywhere!  And the few that might even come close to CornerStore's functionality cost a fortune!
– Tashina P.
I just wanted to say that yours is the first product that I've tested so far that hasn't failed on handling uploads.  This is going to work for a print company, so they are handling nothing but large files and all the other solutions I've tried so far have not been reliable.  So far yours has been 100% successful in my tests.
– Kevin H.
Nice script, it's saving the day on our project.
– Aaron W.
FileChucker is a great drop-in solution for file uploads, and worth every penny of its very reasonable cost.  Encodable's support is excellent to boot.
– Loren A.
Our members think your software is fantastic...  I would recommend your software and your company to anyone.  Thanks for all your help.  It has been a pleasure dealing with you.
– Tommy A.
I just installed the demo of your product and got it up and running in no time.  I searched high and low for a decent login script and thank God I found yours.
– Adrian F.
I want to thank you for your efforts on Userbase. It has become an integral part of our business and has allowed us to branch out and begin using automation on a lot of our processes. Userbase has become the gateway to advancement for our company's processes for our clients and employees.
FileChucker is working great...  Clients love it.  Vendors love it.  We love it.
– Gerry W.
Thanks again for a great product and great support - beyond expectations.
– Greg S.
I just want to say you guys really stand alone in that you have a quality product and you provide genuine customer service.  It's sad but those qualities are seldom found separately, much less together.  Thanks again for your time and help.
– Alex S.
Why didn't I just do this from the get-go?  So much easier.  Thanks for your work.  FileChucker makes my work easier.
– Dominic M.
Just one word: Fantastic.  10-minute job to plug FileChucker into my app, and it now works a treat.  It's through the hard work by people like yourselves that make my job so much easier.  Congratulations on an outstanding product... Many many thanks.
– Sean F.
Thank you VERY much for all of your help.  You've really impressed me.  We have support agreements for other software that costs thousands of dollars / year (just for the support), and most of them aren't as helpful as you have been.
– Keith Y.
I looked all over trying to find a simple cgi script.  I found that FileChucker was by far the best.  If you have issues with your hosting service's php.ini max upload size then this is the way to go.  Looking forward to future enhancements.
– Bob C.
The amount of customization in the program is incredible.  I was able to integrate it into my existing page layout relatively simply.  I was also able to easily customize the look/feel to match the current site.
– Jason M.
FileChucker is helping drive the backend of several high profile entertainment sites for people like Shania Twain and Dolly Parton.  We're also using it to drive backend file uploads for a multi-billion dollar banking institution.  It's a great product.  We've tried other "chucking" upload solutions with progress bars using flash and php, but nothing works as reliably as FileChucker.
– Michael W.
You've done a wonderful job with FileChucker and UserBase, and they have made a big difference to how our website runs.
– Nicholas H.
The work, the thought and the organization you put into this app is incredible.
– Bruce C.