Joachim Bauch
804e558e96
Switch to builtin "context" package now that we can assume Go 1.7
2020-08-31 13:58:28 +02:00
Joachim Bauch
b7d5f2a639
Merge pull request #44 from strukturag/proxy-tokens-etcd
...
Add support for fetching proxy tokens from etcd cluster.
2020-08-31 13:47:36 +02:00
Joachim Bauch
116188c3e3
Reload list of proxy URLs on SIGHUP.
2020-08-31 13:07:03 +02:00
Joachim Bauch
c6892dcb2a
Update config parameter name to match other options.
2020-08-28 17:09:57 +02:00
Joachim Bauch
66d860bd79
Add support for fetching proxy tokens from etcd cluster.
2020-08-28 17:09:57 +02:00
Joachim Bauch
85d6726d59
proxy: Prepare for different token storages.
2020-08-28 10:31:11 +02:00
Joachim Bauch
2d73b97882
Move member definition to get consistent formatting across Go versions.
2020-08-28 09:50:52 +02:00
Joachim Bauch
0dcb9f6b2d
Unregister / remove subscriber if reconnection didn't work.
...
Partial fix from #15 .
2020-08-13 14:51:07 +02:00
Joachim Bauch
dc1bf2bc9b
Revert "Move processing of deferred method to dedicated DeferredExecutor."
2020-08-13 14:40:06 +02:00
Joachim Bauch
5e3164b5a4
Support loading a GeoIP database from a local file.
2020-08-13 14:07:26 +02:00
Joachim Bauch
968913e32d
Merge pull request #15 from strukturag/keep-mcu-deferred-processing
...
Move processing of deferred method to dedicated DeferredExecutor.
2020-08-13 13:22:42 +02:00
Joachim Bauch
015fa3565d
Merge pull request #36 from strukturag/multiple-mcu-support
...
Support connecting to multiple Janus servers
2020-08-13 13:20:28 +02:00
Joachim Bauch
ea74a54d11
Select proxy based on country of publisher (if known).
...
The connections that have been sorted by load are also sorted by country
of publisher and continent of publisher, e.g. for worldwide proxies, the
ones closest to the publisher will be preferred.
2020-08-13 13:17:09 +02:00
Joachim Bauch
d9d11b58e1
Shutdown a proxy gracefully on SIGUSR1.
...
No new publishers will be created by the proxy, existing publishers can
still be subscribed. After all clients have disconnected, the process
will terminate.
2020-08-13 13:17:09 +02:00
Joachim Bauch
b7c258b459
Add proxy service implementation.
2020-08-13 13:17:08 +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
178006faba
Update "janus-go" dependency to handle changed slowlink message.
...
Janus no longer reports `nacks` since 0.7.3 but changed the field to `lost`.
2020-08-12 16:44:44 +02:00
Joachim Bauch
acbb47a100
Add callback on received RTT.
2020-08-07 11:40:35 +02:00
Joachim Bauch
f4d4d5fb4d
Add callbacks for when MCU connection is established/list.
2020-08-07 10:23:47 +02:00
Joachim Bauch
5a553fcc2d
Move some signaling-specific functions of client to hub to allow reuse.
2020-08-07 10:22:27 +02:00
Joachim Bauch
d23a392a1b
Process NATS messages directly without passing to channel in client.
...
Already in per-client/-session goroutines, so won't block others.
2020-08-03 14:30:43 +02:00
Joachim Bauch
68477474f8
Don't use "select" with a single case that reads from a channel but read channel directly.
2020-07-31 15:32:42 +02:00
Joachim Bauch
7d874ac1a7
Don't cast bytes to string but use "String()" method.
2020-07-31 15:26:18 +02:00
Joachim Bauch
6ffed30ddc
Remove unused error result (was always "nil").
2020-07-31 15:23:41 +02:00
Joachim Bauch
5964a98218
Remove unnecessary assignment to "err".
2020-07-31 15:22:18 +02:00
Joachim Bauch
efc232fb9c
Don't call "Fatal" from inside a goroutine.
2020-07-31 15:19:11 +02:00
Joachim Bauch
67c5bebdcb
Remove unused members.
2020-07-31 15:00:39 +02:00
Joachim Bauch
3f4693dca4
Remove unnecessary sub-loop.
2020-07-31 14:58:23 +02:00
Joachim Bauch
b8c9e816b3
Remove unnecessary assignments to the blank identifier.
2020-07-31 14:57:04 +02:00
Joachim Bauch
1ef50ea18c
Update wording.
2020-07-31 14:07:07 +02:00
Joachim Bauch
30877d01a1
Fix behaviour if "allowall" is configured.
2020-07-31 14:07:06 +02:00
Joachim Bauch
0198599a64
Fix test message.
2020-07-31 14:07:06 +02:00
Joachim Bauch
eb6deff32b
Add support for multiple Nextcloud backends.
2020-07-31 14:07:06 +02:00
Joachim Bauch
8772ea83fd
Add sleep between joining multiple clients to the same room.
2020-07-31 14:00:29 +02:00
Joachim Bauch
b165c44080
Reuse existing "WaitForUsersJoined" for test.
2020-07-31 13:50:15 +02:00
Joachim Bauch
75abe6d653
Allow one millisecond less delay to account for time variance on CI runners.
2020-07-31 13:44:43 +02:00
Joachim Bauch
7f92d105e5
Keep the continent map in the repository to avoid download on build.
...
Regularly check through CI cron job that it is the latest version.
2020-07-31 11:52:59 +02:00
Joachim Bauch
5bd525eae0
Add "reason" field to disinvite message.
...
This is required so clients can differentiate between no longer being
invited or the room being deleted. Fixes #25 .
2020-07-07 09:54:26 +02:00
Joachim Bauch
3d73ab48db
Merge pull request #16 from strukturag/stats-api
...
Add basic stats API.
2020-06-30 17:01:48 +02:00
Joachim Bauch
b22d9076a3
Unregister subscriber if "joinRoom" reconnect didn't work.
...
This will cause a new subscriber object to be created/connected if the client
retries the request.
2020-06-30 16:20:30 +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
4ef06867dd
Move processing of deferred method to dedicated DeferredExecutor.
...
This fixes an issue where re-joining a room after error stopped the
internal processing of deferred functions.
2020-05-28 10:11:43 +02:00
morph027
fbbb8315ac
remove credentials from log, fixes #11
2020-05-26 07:06:46 +02:00
Stefan Weil
859ba9ec2c
Fix some typos in comments and error messages (found by codespell)
...
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2020-05-23 09:35:00 +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