testmycode / tmc-comet

HTTP push component of TMC server.
https://github.com/testmycode/tmc-server
0 stars 2 forks source link

TMC Comet support

A submodule of TMC server providing HTTP push support using cometd.

Protocol

Cometd's implementation of Bayeux is used as the transport. The following channels are defined.

Clients authenticate by sending an ext parameter authentication containing the fields username, password and serverBaseUrl during handshake. Backends authorize by sending backendKey and serverBaseUrl. In both cases, serverBaseUrl should point to a TMC server instance. A fixed list of allowed server base URLs must be configured.

Configuration and running

First, compile everything by doing mvn install.

Install an init script (for debian-based systems) using initscripts/install.sh.

To run the server manually, do ./tmc-comet-server.sh /path/to/file.properties. The configuration file should not be world-readable and must have at least the following definitions.

See tmc-comet-server/src/main/java/.../ServerMain.java for additional settings.

Integration tests can be run by doing mvn verify.