DOKK / manpages / debian 12 / janus / janus.1.en
JANUS(1) General Commands Manual JANUS(1)

janus - WebRTC server/gateway

janus [options]

janus is a WebRTC server/gateway developed by Meetecho conceived to be a general purpose one. As such, it doesn't provide any functionality per se other than implementing the means to set up a WebRTC media communication with a browser or application, exchanging JSON messages with it over different transports, and relaying RTP/RTCP and messages between clients and the server-side application logic they're attached to. Any specific feature/application is provided by server side plugins, that browsers can then contact via the server to take advantage of the functionality they provide. Example of such plugins can be implementations of applications like echo tests, conference bridges, media recorders, SIP gateways and the like.

Print help and exit
Print version and exit
Launch Janus in background as a daemon (default=off)
Open the specified PID file when starting Janus (default=none)
Disable stdout based logging (default=off)
Log to stdout, even when the process is daemonized (default=off)
Log to the specified file (default=stdout only)
Working directory for Janus daemon process (default=/)
Interface to use (will be the public IP)
Plugins folder (default=./plugins)
Configuration file to use
Configuration files folder (default=./conf)
DTLS certificate
DTLS certificate key
DTLS certificate key passphrase (if needed)
STUN server(:port) to use, if needed (e.g., Janus behind NAT, default=none)
-1, --nat-1-1=ips
Comma-separated list of public IPs to put in all host candidates, assuming a 1:1 NAT is in place (e.g., Amazon EC2 instances, default=none)
-2, --keep-private-host
When nat-1-1 is used (e.g., Amazon EC2 instances), don't remove the private host, but keep both to simulate STUN (default=off)
Comma-separated list of the only interfaces to use for ICE gathering; partial strings are supported (e.g., eth0 or eno1,wlan0, default=none)
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 (default=off)
Whether IPv6 link-local candidates should be gathered as well (default=off)
Whether to enable libnice debugging or not (default=off)
Do full-trickle instead of half-trickle (default=off)
Whether to enable the ICE Lite mode or not (default=off)
Whether to enable ICE-TCP or not (warning: only works with ICE Lite) (default=off)
Minimum size of the NACK queue (in ms) per user for retransmissions, no matter the RTT
Time (in s) that should pass with no media (audio or video) being received before Janus notifies you about this
Number of lost packets (per s) that should trigger a 'slowlink' Janus API event to users (default=0, feature disabled)
Port range to use for RTP/RTCP
How often (in ms) to send TWCC feedback back to senders, if negotiated (default=200ms)
Public name of this Janus instance (default=MyJanusInstance)
Session timeout value, in seconds (default=60)
Reclaim session timeout value, in seconds (default=0)
Debug/logging level (0=disable debugging, 7=maximum debug level; default=4)
Enable debug/logging timestamps (default=off)
Disable color in the logging (default=off)
Enable debugging of locks/mutexes (very verbose! default=off)
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)
Enable token-based authentication for all requests (default=off)
Enable event handlers (default=off)
Disable WebRTC encryption, so no DTLS or SRTP (only for debugging!) (default=off)

janus - Launch Janus with all options from configurations files

Lorenzo Miniero (lorenzo@meetecho.com)