A web client for Quassel (requires a running quasselcore)
❗ Your node (NOT quasselcore) version should be at least v0.12 (v4 and v5 are supported). To install node last version, you can run :
npm -g install n
n latest
Install the server with:
git clone https://github.com/magne4000/quassel-webserver.git
cd quassel-webserver
npm install --production
or to update git pull && npm prune && npm update
and run the following command: node app.js
The server is now running.
It is recommended to copy settings.js file to a new settings-user.js file
cp settings.js settings-user.js
File settings-user.js
can then be modified to specify default quasselcore host
and port
.
If forcedefault
is set to true
, host
and port
will not be editable on client side.
If prefixpath
is not empty, the webserver will not be accessible at https://server:64443/ but at https://server:64443`prefixpath`/;
initialBacklogLimit
defines the number of messages that will de retrieved for each buffer on connection.
backlogLimit
defines the number of messages that will be retrieved for a buffer on each request to fetch additional backlogs.
You can use your own certificate for HTTPS mode. The key file is located at ssl/key.pem, and the certificate ssl/cert.pem.
You can generate a new self signed certificate with the following command:
openssl req -x509 -newkey rsa:2048 -keyout ssl/key.pem -out ssl/cert.pem -nodes
See the output of the command node app.js --help
You can use a startup script to the app at system startup.
cp scripts/startup /etc/init.d/quasselweb
and then edit the file /etc/init.d/quasselweb and change BASEDIR
, RUNASUSER
and RUNASGROUP
vars.
Just go to https://yourserver:64443 and enter your quasselcore information and credentials
In you run behind /quassel
location on your webserver, do not forget to edit settings-user.js
file
...
prefixpath: '/quassel',
...
# rewrite ^[/]quassel$ /quassel/ permanent;
location /quassel {
proxy_pass http://127.0.0.1:64080/quassel;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_http_version 1.1;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_redirect off;
}
Needs activated mod_proxy_wstunnel and mod_rewrite
<VirtualHost ...>
...
RewriteEngine on
RewriteRule /quassel/p/socket(.*) ws://127.0.0.1:64080/quassel/p/socket$1 [P,L]
ProxyPass /quassel http://127.0.0.1:64080/quassel
...
</VirtualHost>
This is a known issue but there is a workaround:
- go to the
General Configuration
and checkTrim buffer when switching to another buffer
Copyright (c) 2014-2016 Joël Charles
Licensed under the MIT license.