# Configuration of the MQTT additional transport for the Janus API.
general: {
	enabled = false						# Whether the support must be enabled
	#events = true						# Whether to notify event handlers about transport events (default=true)
	json = "indented"						# Whether the JSON messages should be indented (default),
										# plain (no indentation) or compact (no indentation and no spaces)

	url = "tcp://localhost:1883"		# The connection URL of the MQTT broker: if you want
										# to use SSL, make sure you type ssl:// instead of tcp://,
										# and that you configure the SSL settings below
	#mqtt_version = "3.1.1"				# Protocol version. Available values: 3.1, 3.1.1 (default), 5.
	#client_id = "guest"				# Client identifier
	#username = "guest"					# Username to use to authenticate, if needed
	#password = "guest"					# Password to use to authenticate, if needed
	#keep_alive_interval = 20			# Keep connection for N seconds
	#cleansession = 0					# Clean session flag
	#max_inflight = 10					# Maximum number of inflight messages
	#max_buffered = 100					# Maximum number of buffered messages
	#disconnect_timeout = 100			# Milliseconds to wait before destroying client
	subscribe_topic = "to-janus"		# Topic for incoming messages
	#subscribe_qos = 1					# QoS for incoming messages
	publish_topic = "from-janus"		# Topic for outgoing messages
	#publish_qos = 1					# QoS for outgoing messages

	#ssl_enabled = true					# Whether ssl support must be enabled
	#verify_peer = true					# Whether peer verification must be enabled

	# Certificates to use when SSL support is enabled, if needed
	#cacertfile = /path/to/cacert.pem
	certfile = /etc/ssl/certs/ssl-cert-snakeoil.pem
	keyfile = /etc/ssl/private/ssl-cert-snakeoil.key

	# These options work with MQTT 5 only.
	#vacuum_interval = 60					# Interval for removing old transaction states in seconds.
	#proxy_transaction_user_properties = []	# Array of user property names to copy from the incoming message.
	#add_transaction_user_properties = ()	# List of user property ["key", "value"] pairs to add.
}

admin: {
	#admin_enabled = false				# Whether the support must be enabled
	subscribe_topic = "to-janus-admin"	# Topic for incoming admin messages
	#subscribe_qos = 1					# QoS for incoming admin messages
	publish_topic = "from-janus-admin"	# Topic for outgoing admin messages
	#publish_qos = 1					# QoS for outgoing admin messages
}

status: {
	enabled = false 			# Whether status messages must be enabled (default: false)

	# Initial message sent to status topic. Nothing is being sent if not set.
	#connect_message = "{\"online\": true}"

	# Message sent after disconnect or as LWT. Nothing is being sent if not set.
	#disconnect_message = "{\"online\": false}"

	#topic = "status"			# Status topic (default: "status")
	#qos = 1				  	# QoS for status messages (default: 1)
	#retain = false				# Whether status messages should be retained (default: false)
}
