Statistics
| Branch: | Revision:

janus-gateway @ master

Name Size Revision Age Author Comment
  .github f91e4e7e over 2 years Lorenzo Miniero Attempt to provide an issue template as a guide...
  certs ba642639 over 4 years meetecho Restored markdown file describing the certifica...
  conf b8940253 almost 2 years Piter Konstantinov Sample config file fixes
  docs b29f48df almost 2 years Lorenzo Miniero Bumped to version 0.2.6
  events 006e4837 almost 2 years Piter Konstantinov Fixes after review
  html 52604209 almost 2 years Ancor Gonzalez Sosa Don't use es6 specific code This change allows...
  npm 5c9c4d12 almost 2 years Johan Ouwerkerk Add support for building JavaScript modules fro...
  plugins 8a76e3a6 almost 2 years Bao Nguyen Streaming plugin UDP multicast socket bind opti...
  postprocessing b6ada29c almost 2 years Alex Fix compilation issue with libavcodec < 55.28
  transports 1fcd092d almost 2 years Lorenzo Miniero Fixed typo in RabbitMQ transport comment
.editorconfig 85 Bytes 126017e7 almost 4 years Saúl Ibarra Corretgé Add .editorconfig file See http://editorconfig...
.gitattributes 15 Bytes f4fb2029 almost 5 years Jack Leigh Autotoolize build system Set PLUGINDIR and CON...
.gitignore 738 Bytes 315a5107 over 2 years Lorenzo Miniero Added git commit + compile time information to ...
COPYING 34.8 KB ff428862 over 2 years Lorenzo Miniero Added license exception to explicitly allow lin...
Makefile.am 15.6 KB 7cc0387c almost 2 years Piter Konstantinov RabbitMQ event handler
README.md 18.1 KB c32907bf almost 2 years Jonathan Martin brew installation of libcurl is now called just...
apierror.c 1.82 KB c5e92af2 about 2 years Lorenzo Miniero Made several small fixes to address Coverify st...
apierror.h 3.28 KB 54582a6a almost 4 years Lorenzo Miniero Added possibility to limit scope of auth tokens...
auth.c 6.33 KB 54582a6a almost 4 years Lorenzo Miniero Added possibility to limit scope of auth tokens...
auth.h 3.37 KB 54582a6a almost 4 years Lorenzo Miniero Added possibility to limit scope of auth tokens...
autogen.sh 124 Bytes c5631d7c over 4 years meetecho Fix to autogen.sh after latest pull request #125
bower.json 1004 Bytes d0055dc5 almost 2 years Ancor Gonzalez Sosa Bower: update webrtc-adapter to 5.0.1
config.c 12.2 KB c5e92af2 about 2 years Lorenzo Miniero Made several small fixes to address Coverify st...
config.h 5.8 KB 2512456f almost 4 years Lorenzo Miniero Removed dependency from libini_config, changed ...
configure.ac 32.2 KB d739758f almost 2 years Adam Duskett Fix SSL library detection Currently, searching...
debug.h 2.87 KB 950786bd almost 4 years Jay Ridgeway remove timed wait, reduce locking, tabs
dtls-bio.c 5.54 KB 4f35a994 almost 2 years Adam Duskett Add openssl pre 1.1 api macro Instead of repea...
dtls-bio.h 1.47 KB 4f35a994 almost 2 years Adam Duskett Add openssl pre 1.1 api macro Instead of repea...
dtls.c 33.5 KB 4f35a994 almost 2 years Adam Duskett Add openssl pre 1.1 api macro Instead of repea...
dtls.h 7.36 KB 31ef3011 almost 2 years Lorenzo Miniero Move SRTP specific definitions from rtp.h to a ...
emacs.el 574 Bytes 392491a8 over 3 years Andreas Girgensohn emacs.el to set the Janus coding style in Emacs
events.c 8.65 KB 6b55b063 almost 2 years Lorenzo Miniero Added info on emitter (server name) to Janus ha...
events.h 1.56 KB 6b55b063 almost 2 years Lorenzo Miniero Added info on emitter (server name) to Janus ha...
ice.c 171 KB 0c4aa227 almost 2 years Lorenzo Miniero Made RTCP BYE management more tolerant, to acco...
ice.h 30.6 KB 0ada6b63 about 2 years Lorenzo Miniero Added text2pcap support for handles traffic
ip-utils.c 10.8 KB c5e92af2 about 2 years Lorenzo Miniero Made several small fixes to address Coverify st...
ip-utils.h 11.4 KB fcbbe760 over 2 years Lorenzo Miniero Further cleanup of ip-utils related code
janus-valgrind.supp 9.02 KB 5847345c about 2 years Alessandro Toppi Append latest glib.supp to janus-valgrind.supp
janus.1 5.57 KB d7bfb681 over 2 years Lorenzo Miniero Updates Janus manpage to addres recent cmdline ...
janus.c 190 KB 6b55b063 almost 2 years Lorenzo Miniero Added info on emitter (server name) to Janus ha...
janus.ggo 3.38 KB b29f48df almost 2 years Lorenzo Miniero Bumped to version 0.2.6
janus.h 11.3 KB 5ffcf9a8 about 2 years Lorenzo Miniero Better management of session timeouts and destr...
log.c 5.51 KB cda1586e almost 4 years Lorenzo Miniero Don't close standard file descriptors, let freo...
log.h 1.77 KB 13913e3f almost 3 years Lorenzo Miniero Fixed small typos in documentation
mach_gettime.h 2.06 KB 02d70f5d almost 3 years Akagi201 support for old macOS
mainpage.dox 155 KB 1e8512f5 almost 2 years Marshall Quander Add Rust plugin wrapper to resources page
mutex.h 2.44 KB 00ef8f73 about 2 years Tristan Matthews mutex: add alias for PTHREAD_MUTEX_INITIALIZER ...
package.json 620 Bytes 487c006b over 3 years Ferdinand Full Add janus.nojquery.js to files array at the pac...
record.c 9.5 KB 453252a7 almost 2 years Lorenzo Miniero Made a few recorder properties atomic
record.h 3.65 KB 453252a7 almost 2 years Lorenzo Miniero Made a few recorder properties atomic
rtcp.c 29.6 KB 7b3ddb26 about 2 years Pete Hicks fix rtcp delay calculation
rtcp.h 14.4 KB c5e92af2 about 2 years Lorenzo Miniero Made several small fixes to address Coverify st...
rtp.c 12.4 KB c408dd57 almost 2 years Lorenzo Miniero Improved RTP headers rewriting in case of conte...
rtp.h 6.92 KB c408dd57 almost 2 years Lorenzo Miniero Improved RTP headers rewriting in case of conte...
rtpsrtp.h 1.68 KB 31ef3011 almost 2 years Lorenzo Miniero Move SRTP specific definitions from rtp.h to a ...
sctp.c 44.7 KB 2677fe64 over 2 years Sean DuBois Fix leak in janus_sctp_incoming_data, callback ...
sctp.h 7.03 KB 5dc9a256 almost 4 years Lorenzo Miniero Use single GAsyncQueue for incoming/outgoing da...
sdp-utils.c 40.6 KB 531365e8 almost 2 years Lorenzo Miniero Made EchoTest and VideoCall recordings aware of...
sdp-utils.h 15.9 KB 531365e8 almost 2 years Lorenzo Miniero Made EchoTest and VideoCall recordings aware of...
sdp.c 44 KB 2af62019 about 2 years Lorenzo Miniero Make sure there's only one a=end-of-candidates ...
sdp.h 4.71 KB 3e01d6ef about 2 years Lorenzo Miniero First experiments with VP8 simulcasting (Chrome...
text2pcap.c 5.89 KB c3fbbdf8 about 2 years Lorenzo Miniero Added printf format to text2pcap dump method, a...
text2pcap.h 4.03 KB c3fbbdf8 about 2 years Lorenzo Miniero Added printf format to text2pcap dump method, a...
turnrest.c 8.99 KB c50705c7 about 2 years Tristan Matthews turnrest: use JANUS_MUTEX_INITIALIZER
turnrest.h 2.57 KB e3ec3404 over 3 years Lorenzo Miniero Allow configuration of HTTP method to use to co...
utils.c 23.8 KB 05b5a814 about 2 years Lorenzo Miniero Fixed some typos, leaks, and broken checks
utils.h 14 KB a25c21a0 about 2 years Lorenzo Miniero Moved VP9 SVC parsing to utils, so that they ca...
version.h 558 Bytes 315a5107 over 2 years Lorenzo Miniero Added git commit + compile time information to ...

Latest revisions

# Date Author Comment
96b86690 11/18/2017 02:37 PM Lorenzo Miniero

Merge pull request #1073 from aduskett/ssl

Add openssl pre 1.1 api macro

bcdfb2f6 11/18/2017 02:36 PM Lorenzo Miniero

Merge pull request #1071 from aduskett/master

Fix SSL library detection

13056e2b 11/18/2017 02:36 PM Lorenzo Miniero

Merge pull request #1078 from ancorgs/old_compat

Don't use es6 specific code

52604209 11/17/2017 04:53 PM Ancor Gonzalez Sosa

Don't use es6 specific code

This change allows janus.js to remain compatible with Chrome < 45
and with Node.js < 4.8.6

c5d54ccc 11/17/2017 03:10 PM Lorenzo Miniero

Merge pull request #1074 from ancorgs/bower_adapter_501

Bower: update webrtc-adapter to 5.0.1

434eef6c 11/16/2017 04:05 PM Adam Duskett

Add openssl pre 1.1 api macro

Instead of repeating the check for OPENSSL_VERSION_NUMBER < 0x10100000L or
defined(LIBRESSL_VERSION_NUMBER) over and over, it's cleaner to add the
checks for LIBRESSL_VERSION_NUMBER in dtls-bio.h and set a new define
JANUS_USE_OPENSSL_PRE_1_1_API if LibreSSL or OpenSSL < 1.1 are being...

4f35a994 11/16/2017 03:52 PM Adam Duskett

Add openssl pre 1.1 api macro

Instead of repeating the check for OPENSSL_VERSION_NUMBER < 0x10100000L or
defined(LIBRESSL_VERSION_NUMBER) over and over, it's cleaner to add the
checks for LIBRESSL_VERSION_NUMBER in dtls-bio.h and set a new define
JANUS_USE_OPENSSL_PRE_1_1_API if LibreSSL or OpenSSL < 1.1 are being...

d739758f 11/16/2017 03:34 PM Adam Duskett

Fix SSL library detection

Currently, searching for RAND_egd doesn't seem to work properly against
OpenSSL 1.1, as it always returns false.

Instead, searching for the function tls_config_set_ca_mem in libtls seems to
be the preferred way to determine if LibreSSL is being compiled against, as...

d0055dc5 11/16/2017 03:11 PM Ancor Gonzalez Sosa

Bower: update webrtc-adapter to 5.0.1

ff8e65e0 11/13/2017 12:54 AM Lorenzo Miniero

Merge pull request #1066 from sysbot/bao/SO_REUSEADDR

Streaming plugin UDP multicast socket bind option to `SO_REUSEADDR`

View all revisions | View revisions

README


Janus WebRTC Gateway

Janus is an open source, general purpose, WebRTC gateway designed and developed by Meetecho. This version of the gateway can only be installed on Linux systems: next versions will take into account cross compilation on different environments.

For some online demos and documentations, make sure you pay the project website a visit!

To discuss Janus with us and other users, there's a Google Group called meetecho-janus that you can use. If you encounter issues, though, please submit an issue on github instead.

Dependencies

To install it, you'll need to satisfy the following dependencies:

  • Jansson
  • libnice
  • OpenSSL (at least v1.0.1e)
  • libsrtp (at least v1.5 suggested)
  • usrsctp (only needed if you are interested in Data Channels)
  • libmicrohttpd (only needed if you are interested in REST support for the Janus API)
  • libwebsockets (only needed if you are interested in WebSockets support for the Janus API)
  • cmake (only needed if you are interested in WebSockets and/or BoringSSL support, as they make use of it)
  • rabbitmq-c (only needed if you are interested in RabbitMQ support for the Janus API)
  • paho.mqtt.c (only needed if you are interested in MQTT support for the Janus API)
  • libcurl (only needed if you are interested in the TURN REST API support)

A couple of plugins depend on a few more libraries:

  • Sofia-SIP (only needed for the SIP plugin)
  • libopus (only needed for the bridge plugin)
  • libogg (only needed for the voicemail plugin)
  • libcurl (only needed if you are interested in RTSP support in the Streaming plugin or in the sample Event Handler plugin)

Additionally, you'll need the following libraries and tools:

All of those libraries are usually available on most of the most common distributions. Installing these libraries on a recent Fedora, for instance, is very simple:

yum install libmicrohttpd-devel jansson-devel libnice-devel \
   openssl-devel libsrtp-devel sofia-sip-devel glib-devel \
   opus-devel libogg-devel libcurl-devel pkgconfig gengetopt \
   libtool autoconf automake

Notice that you may have to yum install epel-release as well if you're attempting an installation on a CentOS machine instead.

On Ubuntu or Debian, it would require something like this:

aptitude install libmicrohttpd-dev libjansson-dev libnice-dev \
    libssl-dev libsrtp-dev libsofia-sip-ua-dev libglib2.0-dev \
    libopus-dev libogg-dev libcurl4-openssl-dev pkg-config gengetopt \
    libtool automake
  • Note: please notice that libopus may not be available out of the box on Ubuntu or Debian, unless you're using a recent version (e.g., Ubuntu 14.04 LTS). In that case, you'll have to install it manually.

  • Note: For custom installations of libnice, you can run pkg-config --cflags --libs nice to make sure Janus can find the installation. If not, you may need to set the PKG_CONFIG_PATH environment variable prior to compiling Janus, eg. export PKG_CONFIG_PATH=/path/to/libnice/lib/pkgconfig

In case you're interested in compiling the sample Event Handler plugin, you'll need to install the development version of libcurl as well (usually libcurl-devel on Fedora/CentOS, libcurl4-openssl-dev on Ubuntu/Debian).

If your distro ships a pre-1.5 version of libsrtp, you'll have to uninstall that version and install 1.5 or 2.0.0 manually. In fact, 1.4.x is known to cause several issues with WebRTC. Installation of version 1.5.4 is quite straightforward:

wget https://github.com/cisco/libsrtp/archive/v1.5.4.tar.gz
tar xfv v1.5.4.tar.gz
cd libsrtp-1.5.4
./configure --prefix=/usr --enable-openssl
make shared_library && sudo make install

The instructions for version 2.0.0 is practically the same:

wget https://github.com/cisco/libsrtp/archive/v2.0.0.tar.gz
tar xfv v2.0.0.tar.gz
cd libsrtp-2.0.0
./configure --prefix=/usr --enable-openssl
make shared_library && sudo make install

The Janus configure script autodetects which one you have installed and links to the correct library automatically, choosing v2.0.0 if both are installed. If you want v1.5.4 to be picked, pass --disable-libsrtp2 when configuring Janus to force it to use the older version instead.

  • Note: when installing libsrtp, no matter which version, you may need to pass --libdir=/usr/lib64 to the configure script if you're installing on a x86_64 distribution.

If you want to make use of BoringSSL instead of OpenSSL (e.g., because you want to take advantage of --enable-dtls-settimeout), you'll have to manually install it to a specific location. Use the following steps:

git clone https://boringssl.googlesource.com/boringssl
cd boringssl
# Don't barf on errors
sed -i s/" -Werror"//g CMakeLists.txt
# Build
mkdir -p build
cd build
cmake -DCMAKE_CXX_FLAGS="-lrt" ..
make
cd ..
# Install
sudo mkdir -p /opt/boringssl
sudo cp -R include /opt/boringssl/
sudo mkdir -p /opt/boringssl/lib
sudo cp build/ssl/libssl.a /opt/boringssl/lib/
sudo cp build/crypto/libcrypto.a /opt/boringssl/lib/

Once the library is installed, you'll have to pass an additional --enable-boringssl flag to the configure script, as by default Janus will be built assuming OpenSSL will be used. By default, Janus expects BoringSSL to be installed in /opt/boringssl -- if it's installed in another location, pass the path to the configure script as such: --enable-boringssl=/path/to/boringssl If you were using OpenSSL and want to switch to BoringSSL, make sure you also do a make clean in the Janus folder before compiling with the new BoringSSL support. If you enabled BoringSSL support and also want Janus to detect and react to DTLS timeouts with faster retransmissions, then pass --enable-dtls-settimeout to the configure script too.

For what concerns usrsctp, which is needed for Data Channels support, it is usually not available in repositories, so if you're interested in them (support is optional) you'll have to install it manually. It is a pretty easy and standard process:

git clone https://github.com/sctplab/usrsctp
cd usrsctp
./bootstrap
./configure --prefix=/usr && make && sudo make install
  • Note: you may need to pass --libdir=/usr/lib64 to the configure script if you're installing on a x86_64 distribution.

The same applies for libwebsockets, which is needed for the optional WebSockets support. If you're interested in supporting WebSockets to control Janus, as an alternative (or replacement) to the default plain HTTP REST API, you'll have to install it manually:

git clone git://git.libwebsockets.org/libwebsockets
cd libwebsockets
# If you want the stable version of libwebsockets, uncomment the next line
# git checkout v2.4-stable
mkdir build
cd build
# See https://github.com/meetecho/janus-gateway/issues/732 re: LWS_MAX_SMP
cmake -DLWS_MAX_SMP=1 -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_C_FLAGS="-fpic" ..
make && sudo make install
  • Note: if libwebsockets.org is unreachable for any reason, replace the first line with this:

    git clone https://github.com/warmcat/libwebsockets.git

The same applies for Eclipse Paho MQTT C client library, which is needed for the optional MQTT support. If you're interested in integrating MQTT queues as an alternative (or replacement) to HTTP and/or WebSockets to control Janus, you can install the latest version with the following steps:

git clone https://github.com/eclipse/paho.mqtt.c.git
cd paho.mqtt.c
make && sudo make install
  • Note: you may want to set up a different install path for the library, to achieve that, replace the last command by 'sudo prefix=/usr make install'.

Finally, the same can be said for rabbitmq-c as well, which is needed for the optional RabbitMQ support. In fact, several different versions of the library can be found, and the versions usually available in most distribution repositories are not up-do-date with respect to the current state of the development. As such, if you're interested in integrating RabbitMQ queues as an alternative (or replacement) to HTTP and/or WebSockets to control Janus, you can install the latest version with the following steps:

git clone https://github.com/alanxz/rabbitmq-c
cd rabbitmq-c
git submodule init
git submodule update
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr ..
make && sudo make install
  • Note: you may need to pass --libdir=/usr/lib64 to the configure script if you're installing on a x86_64 distribution.

To conclude, should you be interested in building the gateway documentation as well, you'll need some additional tools too:

On Fedora:

yum install doxygen graphviz

On Ubuntu/Debian:

aptitude install doxygen graphviz

Compile

Once you have installed all the dependencies, get the code:

git clone https://github.com/meetecho/janus-gateway.git
cd janus-gateway

Then just use:

sh autogen.sh

to generate the configure file. After that, configure and compile as usual to start the whole compilation process:

./configure --prefix=/opt/janus
make
make install

Since Janus requires configuration files for both the core and its modules in order to work, you'll probably also want to install the default configuration files to use, which you can do this way:

make configs

Remember to only do this once, or otherwise a subsequent make configs will overwrite any configuration file you may have modified in the meanwhile.

If you're installed the above libraries but are not interested in Data Channels, WebSockets, MQTT and/or RabbitMQ (or you don't care about any of them), you can disable them when configuring:

./configure --disable-websockets --disable-data-channels --disable-rabbitmq --disable-mqtt

If the libraries are not installed, instead, no need to manually disable them, as the configure script will skip them automatically and disable the related features by itself. A summary of what's going to be built will always appear after you do a configure, allowing you to double check if what you need and don't need is there.

If Doxygen and graphviz are available, the process can also build the documentation for you. By default the compilation process will not try to build the documentation, so if you instead prefer to build it, use the --enable-docs configuration option:

./configure --enable-docs

You can also selectively enable/disable other features (e.g., specific plugins you don't care about, or whether or not you want to build the recordings post-processor). Use the --help option when configuring for more info.

Building on MacOS

While most of the above instructions will work when compiling Janus on MacOS as well, there are a few aspects to highlight when doing that.

First of all, you can use brew to install most of the dependencies:

brew tap homebrew/boneyard
brew install jansson libnice openssl libusrsctp libmicrohttpd libwebsockets cmake rabbitmq-c sofia-sip opus libogg curl glib pkg-config gengetopt autoconf automake libtool

For what concerns libsrtp, which needs to be installed manually, just pass /usr/local as a prefix when configuring, and proceed as normal:

[..]
./configure --prefix=/usr/local
[..]

Finally, you may need to provide a custom prefix and PKG_CONFIG_PATH when configuring Janus as well:

./configure --prefix=/usr/local/janus PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig

Everything else works exactly the same way as on Linux.

Configure and start

To start the gateway, you can use the janus executable. There are several things you can configure, either in a configuration file:

<installdir>/etc/janus/janus.cfg

or on the command line:

<installdir>/bin/janus --help

janus 0.2.6

Usage: janus [OPTIONS]...

-h, --help                    Print help and exit
-V, --version                 Print version and exit
-b, --daemon                  Launch Janus in background as a daemon
                              (default=off)
-N, --disable-stdout          Disable stdout based logging  (default=off)
-L, --log-file=path           Log to the specified file (default=stdout only)
-i, --interface=ipaddress     Interface to use (will be the public IP)
-P, --plugins-folder=path     Plugins folder (default=./plugins)
-C, --config=filename         Configuration file to use
-F, --configs-folder=path     Configuration files folder (default=./conf)
-c, --cert-pem=filename       DTLS certificate
-k, --cert-key=filename       DTLS certificate key
-S, --stun-server=filename    STUN server(:port) to use, if needed (e.g.,
                              gateway behind NAT, default=none)
-1, --nat-1-1=ip              Public IP to put in all host candidates,
                              assuming a 1:1 NAT is in place (e.g., Amazon
                              EC2 instances, default=none)
-E, --ice-enforce-list=list   Comma-separated list of the only interfaces to
                              use for ICE gathering; partial strings are
                              supported (e.g., eth0 or eno1,wlan0,
                              default=none)
-X, --ice-ignore-list=list    Comma-separated list of interfaces or IP
                              addresses to ignore for ICE gathering;
                              partial strings are supported (e.g.,
                              vmnet8,192.168.0.1,10.0.0.1 or
                              vmnet,192.168., default=vmnet)
-6, --ipv6-candidates         Whether to enable IPv6 candidates or not
                              (experimental)  (default=off)
-l, --libnice-debug           Whether to enable libnice debugging or not
                              (default=off)
-I, --ice-lite                Whether to enable the ICE Lite mode or not
                              (default=off)
-T, --ice-tcp                 Whether to enable ICE-TCP or not (warning: only
                              works with ICE Lite)
                              (default=off)
-U, --bundle                  Whether to force BUNDLE or not (whether audio,
                              video and data will always be bundled)
                              (default=off)
-u, --rtcp-mux                Whether to force rtcp-mux or not (whether RTP
                              and RTCP will always be muxed)  (default=off)
-q, --max-nack-queue=number   Maximum size of the NACK queue (in ms) per user
                              for retransmissions
-t, --no-media-timer=number   Time (in s) that should pass with no media
                              (audio or video) being received before Janus
                              notifies you about this
-r, --rtp-port-range=min-max  Port range to use for RTP/RTCP (only available
                              if the installed libnice supports it)
-d, --debug-level=1-7         Debug/logging level (0=disable debugging,
                              7=maximum debug level; default=4)
-D, --debug-timestamps        Enable debug/logging timestamps  (default=off)
-o, --disable-colors          Disable color in the logging  (default=off)
-a, --apisecret=randomstring  API secret all requests need to pass in order
                              to be accepted by Janus (useful when wrapping
                              Janus API requests in a server, none by
                              default)
-A, --token-auth              Enable token-based authentication for all
                              requests  (default=off)
-e, --event-handlers          Enable event handlers  (default=off)

Options passed through the command line have the precedence on those specified in the configuration file. To start the gateway, simply run:

<installdir>/bin/janus

This will start the gateway, and have it look at the configuration file.

As far as transports are concerned (that is, with respect to how you can interact with your Janus instance), using the default configuration files provided after issuing a make configs will result in Janus only enabling an HTTP webserver (port 8088) and a plain WebSocket server (8188), assuming the related transport modules have been compiled, of course. To enable HTTPS or Secure WebSockets support, edit the related transport configuration file accordingly. You can also change the base path that the webserver uses: by default this is /janus, but you can change it to anything you want and with any nesting you want (e.g., /mypath, /my/path, or /my/really/nested/path). This is done to allow you to more easily customize rules in any frontend you may have (e.g., Apache in front of your services). Please notice that the path configuration is not provided for WebSockets, instead, as it is not needed there. The RabbitMQ module, if compiled, is disabled by default, so you'll have to enable it manually if interested in it.

To test whether it's working correctly, you can use the demos provided with this package in the html folder: these are exactly the same demos available online on the project website. Just copy the file it contains in a webserver, or use a userspace webserver to serve the files in the html folder (e.g., with php or python), and open the index.html page in either Chrome or Firefox. A list of demo pages exploiting the different plugins will be available. Remember to edit the transport/port details in the demo JavaScript files if you changed any transport-related configuration from its defaults.

Help us!

Any thought, feedback or (hopefully not!) insult is welcome!

Developed by @meetecho

Also available in: Atom