Commit Graph

28 Commits

Author SHA1 Message Date
Joachim Bauch 042a78f99d
Fallback to common shared secret if none is set for backends.
Only applies to static backend configuration.
2023-08-08 10:54:47 +02:00
Marcel Müller 0b212819c7 Add allowall to docker image
Signed-off-by: Marcel Müller <marcel-mueller@gmx.de>
2023-06-11 17:15:37 +02:00
Joachim Bauch b2da4002a4
grpc: Reload certificate if file has changed and support mutual authentication. 2022-07-04 11:05:21 +02:00
Joachim Bauch 24eab34da7
Allow configuring backends through etcd. 2022-06-30 11:35:36 +02:00
Joachim Bauch 01858a89f4
grpc: Enable DNS discovery for GRPC clients. 2022-06-30 11:35:35 +02:00
Joachim Bauch 20cc51c2fe
grpc: Automatically detect if a target is the current server itself.
This allows configuring the same list of targets for all instances without
having to setup the "own" address differently for each server.
2022-06-30 11:35:35 +02:00
Joachim Bauch 25dabf910d
Allow configuring GRPC targets through etcd. 2022-06-30 11:35:32 +02:00
Joachim Bauch b315c09a3b
Allow configuring GRPC transport credentials. 2022-06-30 11:35:30 +02:00
Joachim Bauch a0d3af14e0
Add initial clustering support. 2022-06-30 11:35:28 +02:00
Joachim Bauch 0115c97946
Refactor asynchronous events to central location. 2022-06-24 13:37:35 +02:00
Joachim Bauch b0624be0a9
Move etcd configuration to common section. 2022-06-24 11:15:29 +02:00
Joachim Bauch 659730d371
Support DNS discovery for proxy server URLs.
If the hostname of a proxy server resolves to multiple IP addresses,
a connection is established to each of them.

Changes to the DNS are monitored regularly and proxy connections are
created or deleted as necessary.
2022-04-04 16:17:22 +02:00
Joachim Bauch a663dd43f9
Add option to allow subscribing of any streams (disabled by default). 2021-09-23 09:05:49 +02:00
Joachim Bauch 7bf6fa903b
Support continent mapping overrides.
This can be used for example to route all users on continent A to proxies
on continent B. Useful if no proxy exists on continent A and the global
selection chooses a non-ideal proxy.
2021-08-06 16:00:54 +02:00
Joachim Bauch 1ceb806c20
Support defining maximum bandwidths at diferent levels.
- Individually for each backend.
- For the proxy client (i.e. signaling server using cluster of proxies).
- For the proxy server / MCU.

The smallest bandwidth configured will be used, e.g. if a backend has a
larger limit than the MCU assigned for the stream, the limit of the MCU
server will be used.
2021-04-23 09:18:05 +02:00
Joachim Bauch a3e34143c5
Support limiting number of sessions per backend. 2020-12-17 14:56:45 +01:00
Joachim Bauch 559f1e28ae
Optionally disable certificate validation for proxy connections. 2020-12-16 15:17:44 +01:00
Joachim Bauch 7e3a7af9a3
Use dedicated (shorter) timeout for proxy requests.
This will prevent the overall MCU timeout to expire on the first proxy
request if that takes too long. With the shorter proxy timeout, the other
proxy servers will be retried if the first request timed out.
2020-09-16 10:13:09 +02:00
Joachim Bauch 198117a8d0
Fix commented default value of "urltype". 2020-09-07 17:06:40 +02:00
Joachim Bauch a9b6b44b14
Update syntax to match other commented values. 2020-09-07 09:44:39 +02:00
Joachim Bauch 34de2b9b58
Merge pull request #47 from strukturag/proxy-list-etcd
Add support for fetching proxy URLs from etcd cluster.
2020-09-01 12:48:46 +02:00
Joachim Bauch 64991a0a0e
Add option to override GeoIP lookups (e.g. for local addresses). 2020-09-01 12:41:00 +02:00
Joachim Bauch dcf533b8f1
Add support for fetching proxy URLs from etcd cluster. 2020-08-31 17:24:04 +02:00
Joachim Bauch 5e3164b5a4
Support loading a GeoIP database from a local file. 2020-08-13 14:07:26 +02:00
Joachim Bauch 4446b07951
Add MCU type "proxy" that delegates to one or multiple MCU proxies. 2020-08-13 13:17:06 +02:00
Joachim Bauch eb6deff32b
Add support for multiple Nextcloud backends. 2020-07-31 14:07:06 +02:00
Joachim Bauch 6455e70f15
Add basic stats API.
Can be used to query number of sessions, rooms and (if Janus is configured),
overall MCU clients and publishers.
2020-05-28 16:02:04 +02:00
Joachim Bauch 5dcfeda1e9
Initial commit of the OpenSource version.
This corresponds to nextcloud-spreed-signaling 0.0.13
2020-05-12 09:46:20 +02:00