BlaB! WS - Frequently Asked Questions

System requirements

Self-hosted client, server hosted on our servers

Self-hosted client and self-hosted server

top

BlaB! WS LICENSE AGREEMENT

By downloading and using BlaB! WS (server & client), you indicate your acceptance of the following terms and conditions:

DISCLAIMER OF WARRANTY

THIS SOFTWARE AND THE ACCOMPANYING FILES ARE PROVIDED 'AS IS' AND WITHOUT WARRANTIES OF ANY KIND!

top

How to install BlaB! WS

Installing BlaB! WS is as easy as possible and our how-to-install guides describe the whole process in detail.

top

How to upgrade BlaB! WS

To upgrade blabws-server simply replace the files under /opt/blabws-server with the new ones and restart the server.

To upgrade BlaB! WS client:

  1. Download and unzip the files in a new empty directory e.g. /blabws_new and remove the subdirectory /install
  2. Upload /blabws_new (and all files/subdirectories in it) to your server by an FTP program.
  3. Overwrite config.php with your old config.php file.
  4. Navigate with your browser to /blabws_new/admin - the database will be updated automatically.
  5. Make sure that your new chat is working properly, remove the old chat directory and rename /blabws_new to whatever you wish.

top

Does BlaB! WS support SSL?

The client is a PHP/MySQL app - you only need your Apache/Nginx to be configured with SSL. You cannot link directly an SSL certificate to blabws-server. However, if your Apache/Nginx server is configured with SSL you can easily make it act as a websocket proxy - in that way all communications go through standard 80/443 ports without a dedicated websocket port left open. The procedure is very easy and described in detail in our how-to-install guide.

top

Can I run BlaB! WS on my shared hosting account?

Only BlaB! WS client. To run the server you need a dedicated Linux server or VPS with SSH access as a root user or with sudo privileges. Virtual Private Servers (VPS) can cost as cheap as 1-2 USD/month. A good starting point to find an inexpensive VPS is lowendbox.com. DigitalOcean.com offers preinstalled VPS called droplets with prices starting from $5/month and they have great tutorials on how to deploy, maintain and secure Linux servers.

top

Can I install BlaB! WS client on one host and run the server on another?

Yes, as long as blabws-server is not behind an Apache websocket proxy. Use Nginx instead.

top

I have a Windows / BSD / Linux based VPS, can I install BlaB! WS?

blabws-server supports Debian 8 Jessie+ / Ubuntu 16.04+ / CentOS 7+. In fact blabws-server should run on any Linux OS, however, older versions of Apache/Nginx do not have a proper websocket proxy. BlaB! WS client can be installed on any Apache(Nginx) / PHP / MySQL(MariaDB) host - no matter the OS.

top

Can I install BlaB! WS on Raspberry Pi?

Yes. We provide blabws-server for ARM7 processors.

top

Is it safe to turn PHP shell_exec on?

By default PHP shell_exec is enabled when you install PHP on Ubuntu, Debian and CentOS. PHP shell_exec allows shell commands to be executed via PHP. With a self-hosted blabws-server BlaB! WS client needs shell_exec to start/stop blabws-server from the Admin CP. Those commands are hardcoded and do not depend on user input so you are safe as far as BlaB! WS is concerned.

top

Can anyone connect to my websocket server? What does ACCESSKEY do?

No. blabws-server accepts connections from BlaB! WS client only. The browser of the user should provide a valid token - UserID / UserName / TimeStamp / CheckSum where CheckSum is a sha256 hash of UserID / UserName / TimeStamp / ACCESSKEY. The token is valid for 10 seconds only. It's impossible to reverse sha256 and extract your ACCESSKEY in order to fake a valid token.

top

What is QUARANTINE?

You have an option in ACP to prevent new users from logging in immediately after registering. New users will be able to to login to chat after the period of time specified in ACP or if the quarantine is lifted manually. Quarantine does not affect guests and is useless if you have guest access enabled.

top

How does resetting a forgotten password work?

BlaB! WS never sends out email messages. Automated email messages to reset a password or activate an account are unreliable and very often undelivered due to spam filters. BlaB! WS deals with this in a different way. There are two couples of combinations associated with user accounts - Username-Password and Email-RecoveryQuestion-RecoveryAnswer. Users knowing the current password are allowed to set a new one. However, the Email can only be changed with a correct RecoveryAnswer. A forgotten password can be reset in this way:

It's unlikely someone to know or guess both - Password and RecoveryAnswer in order to take full control on another account. Brute-force attacks are not possible - BlaB! WS would accept up to 5 attempts per hour. Both Password and RecoveryAnswer are hashed in the database with salted sha256.

top

On mobile I have to re-enable sounds every time I enter the chat, why?

Mobile browsers do not play audio and video automatically without user's interaction. That's why on mobile sound notifications are always disabled and you have to re-enable them every session. We provide a PhoneGap mobile app template which allows you to build your own mobile app and enable proper sound notifications using the PhoneGap media plugin (see below - mobile app for Android/IOS).

top

Guests cannot login with their chosen username, why?

For security reasons guests can login to chat with a previously chosen username as long as their IP is the same - in their case the IP is their password. A guest can always become a properly registered user by providing a password / email / recovery question & answer. You can disable guest access from ACP ยป Settings.

top

BlaB! WS seems to be slower with my mobile over 3G/4G?

Some carriers use transparent proxies "to ensure reliable and fair access to resources in cellular networks". These proxies are in some cases slow.

top

Can I add or replace emoticons?

Yes but it's not easy. The list of emoticons can be found in emocodes.php. There are no image files, all emoticons in SVG format are base64 encoded entries in emoticons.css. You'd better stick to the excellent EmojiOne emoticons.

top

Can I replace sound notifications?

Easily! Go to the bottom of the product page and click on the link BlaB! WS - select sounds & create your notification file. Generate sounds.js and replace your current sounds.js file in the main BlaB! WS (client) folder.

top

Can I add or replace stickers?

Yes, easily. Put your stickers in JPG/PNG/GIF/SVG format in subdirectories under /stickers. Use only letters & numbers without spaces in the names of the subfolders! The image files will be scaled automatically to 64x32px in the sticker list and to 100x50px when posted. It is recommended to use SVG images with 2:1 aspect ratio.

My theme doesn't match the white icons, how to change their color?

The icons are base64 encoded entries in blabws.css. You can change their color with the built-in search and replace function of your favorite text editor.

base64 RkZGRkZG = FFFFFF (white)
base64 MDAwMDAw = 000000 (black)
base64 NjY2NjY2 = 666666 (grey)

top

What is WebKitCSS in the style section of the Admin CP?

We do not use browser specific hacks - such hacks usually break in the long run. This is a place to provide custom CSS code for WebKit based browsers and by default you have a CSS line that shows smaller and better scrollbars (WebKit desktop only).

@media(hover:hover){ 
::-webkit-scrollbar{width:7px;background-color:transparent}
::-webkit-scrollbar-thumb{background-color:#999}}

top

How can I show who is online on my front page?

This is an experimental feature and not enabled by default. To make blabws-server keep a list of the online users in a file, open config.php with a text editor and set a filename of a writeable file e.g. $blabws_server_onli='/tmp/blabws.online'; then restart your blabws-server. In the file online.php enter path/name of the same file: $online_list='/tmp/blabws.online';. Now you can call online.php as an external JS file from any HTML page.

<script src="/chat/online.php"></script>

outputs document.write(3)


<script src="/chat/online.php?mode=1"></script> 

outputs document.write('Jo, Adam, Maria')


<script src="/chat/online.php?mode=2"></script>

adds a fixed DIV to the BODY element of your page that can be updated periodically with Ajax requests, can be seen at our demo page (also see the comments in online.php to adjust the look etc)

top

Can I have a mobile app for Android/IOS?

Yes, you can. See here.

top

Can I have a Chrome web extension?

Web extension GIF

Although easy and possible, loading the chat as a web extension is useless - the extension box will be closed as soon as it loses its focus.

Download here a ZIP file with all the necessary files to create a web extension that shows who is online. A click anywhere within the box opens BlaB! WS in a new tab. First, you need to have who is online working and then set the proper URL to your BlaB!WS client: yoursite.com/blabws/web_extension.html in popup.html.

Creating a web extension is one thing, submitting it to Chrome Web Store quite another - please refer to the appropriate documentation.

top

Why SVG and not PNG/GIF/JPG images like everybody else?

Almost all smartphones and tablets and a large part of the computer displays these days have pixel ratio x2, x3 or even x4. A raster image: GIF, JPG or PNG should be 2, 3 or 4 times larger to look as expected on such a screen. A solution is to use srcset {Webkit Demo} and then you must have 4 files for each actual image. On the other hand SVG images are relatively small, look well and are supported in all major browsers.

top

Stealth users

Stealth users can be defined in config.php as an array: $stealth_users=array(1,25,665); Any user whose ID is in the array do not appear in chat and in logs.

top

What does version XX.XX mean?

It's similar to Ubuntu versioning. 17.08 means released in August 2017 and 17.08.2 means August 2017 revision 2. You should always run the latest server & client version (latest client and server version might be different e.g. 17.06 and 17.12). The version of blabws-server can be found in its log, client version can be seen in ACP [press ESC].

top

Page updated: 2018-05-23

Facebook Twitter Google LinkedIn Reddit Digg StumbleUpon