Commit Graph

248 Commits

Author SHA1 Message Date
Joachim Bauch 447fa9a279
Add "String" methods to ClientMessage/ServerMessage. 2021-06-07 16:53:26 +02:00
Joachim Bauch c8886d03c9
Simplify loopback NATS client.
Only use one goroutine per client instead of one per subscription.
This ensures that (like with the "real" client), all messages are
processed in order across different subscriptions.
2021-06-07 16:53:26 +02:00
Joachim Bauch fe95626f3b
Support closing clients from message processor. 2021-06-07 15:15:50 +02:00
Joachim Bauch 618e7b085e
Fix potential race condition when closing message channel. 2021-06-07 15:14:51 +02:00
Joachim Bauch 7bdff5ddef
Use subtests for testing with different values. 2021-06-07 10:44:25 +02:00
Joachim Bauch 04d315b0a4
Wait for any messages to be processed before stopping Hub in tests. 2021-06-07 10:37:56 +02:00
Joachim Bauch 3f19882612
No need to close NATS receiver channel.
Will be garbage collected once the room is removed and is not needed to
wakeup the reader (which is terminated in a "select" loop from the close
channel).
2021-06-07 10:29:50 +02:00
Joachim Bauch 2f4414561e
No need to include trailing newline in log messages. 2021-06-04 16:42:17 +02:00
Joachim Bauch 9a921a6572
Merge pull request #111 from strukturag/async-client-processing
Make client message processing asynchronous.
2021-06-04 16:27:03 +02:00
Joachim Bauch 0b2df54343
Send hello response through session. 2021-06-04 15:46:22 +02:00
Joachim Bauch 6e54d8f4f4
Attempt to fix flaky tests. 2021-06-04 15:46:21 +02:00
Joachim Bauch 21f3f506d1
Send more responses through the session to handle disconnected / resuming clients. 2021-06-04 15:40:43 +02:00
Joachim Bauch 15d5c93b0b
Support session resumption while a room is being joined.
If a client resumed a session while a (slow) backend request to join a room
was still active, the response could get lost.
2021-06-04 15:40:42 +02:00
Joachim Bauch b8b46264c1
Create messagechan for proxy clients. 2021-06-04 15:40:42 +02:00
Joachim Bauch 2b02a2f929
Make client message processing asynchronous.
This helps in detecting clients that disconnect while a backend request for
them is still active (e.g. joining a room).
2021-06-04 15:40:39 +02:00
Joachim Bauch 8f3db6da80
Merge pull request #105 from strukturag/nats-tests
Add tests for regular NATS client.
2021-06-04 15:39:44 +02:00
Joachim Bauch 1687c80122
Add more tests. 2021-06-04 15:30:55 +02:00
Joachim Bauch 762d1512c4
Remove unused "Request" method from NATS client. 2021-06-04 15:16:16 +02:00
Joachim Bauch 0d1c546355
Use buffered channel to receive read error. 2021-06-04 15:13:34 +02:00
Joachim Bauch c91b0de254
Add tests for regular NATS client. 2021-06-04 15:13:33 +02:00
Joachim Bauch 6fb57c7823
Merge pull request #114 from strukturag/janus-remove-nats
Remove NATS notifications for Janus publishers
2021-06-04 15:03:50 +02:00
Joachim Bauch 9b83993d48
Assume one Janus server is only used by one signaling server / -proxy.
With that, we can notify publisher events locally instead of through NATS
and can remove code that looks up publisher rooms by their ids on Janus.
2021-06-04 14:52:23 +02:00
Joachim Bauch d7bd809c54
Add class no notify named waiters. 2021-06-04 14:26:03 +02:00
Joachim Bauch f38ebdc518
Merge pull request #113 from strukturag/serialize-turn-credentials
Don't include TURN credentials in log message.
2021-06-01 08:30:10 +02:00
Joachim Bauch 5ed89af1eb
Don't include TURN credentials in log message. 2021-06-01 08:24:48 +02:00
Joachim Bauch dcc32bd682
Merge pull request #112 from strukturag/ci-codeql
CI: Add CodeQL Analysis.
2021-05-31 17:13:16 +02:00
Joachim Bauch ca8ce625e4
CI: Add CodeQL Analysis. 2021-05-31 17:05:08 +02:00
Joachim Bauch 9919e5a7e6
Merge pull request #110 from strukturag/dependabot/github_actions/actions/cache-2.1.6
Bump actions/cache from 2.1.5 to 2.1.6
2021-05-31 12:30:27 +02:00
dependabot[bot] 028c40707f
Bump actions/cache from 2.1.5 to 2.1.6
Bumps [actions/cache](https://github.com/actions/cache) from 2.1.5 to 2.1.6.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.5...v2.1.6)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-28 06:26:41 +00:00
Joachim Bauch 52c1514978
Always use auth userid in ping requests.
Fixes issue introduced in 3a2adffab6 where some
ping requests were not evaluated correctly if a userid was given in the room
session data.
2021-05-19 16:24:15 +02:00
Joachim Bauch da5890a1c7
Merge pull request #108 from strukturag/dependabot/github_actions/actions/checkout-2.3.4
Bump actions/checkout from 2 to 2.3.4
2021-05-12 08:27:22 +02:00
Joachim Bauch 327597f768
Merge pull request #107 from strukturag/dependabot/github_actions/golangci/golangci-lint-action-2.5.2
Bump golangci/golangci-lint-action from 2 to 2.5.2
2021-05-12 08:27:03 +02:00
Joachim Bauch 87b8e3bfd2
Merge pull request #106 from strukturag/dependabot/github_actions/actions/cache-2.1.5
Bump actions/cache from 2 to 2.1.5
2021-05-12 08:26:47 +02:00
dependabot[bot] a84ad07022
Bump actions/checkout from 2 to 2.3.4
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 2.3.4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v2.3.4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-12 06:18:11 +00:00
dependabot[bot] 643d1261f9
Bump golangci/golangci-lint-action from 2 to 2.5.2
Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 2 to 2.5.2.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](https://github.com/golangci/golangci-lint-action/compare/v2...v2.5.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-12 06:18:07 +00:00
dependabot[bot] 4b22a1439a
Bump actions/cache from 2 to 2.1.5
Bumps [actions/cache](https://github.com/actions/cache) from 2 to 2.1.5.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2...v2.1.5)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-12 06:18:03 +00:00
Joachim Bauch d432b0c1a9
Merge pull request #103 from strukturag/dependabot/github_actions/jandelgado/gcov2lcov-action-v1.0.8
Bump jandelgado/gcov2lcov-action from v1.0.2 to v1.0.8
2021-04-27 10:47:25 +02:00
Joachim Bauch 58cf21b63f
Merge pull request #102 from strukturag/dependabot/github_actions/coverallsapp/github-action-v1.1.2
Bump coverallsapp/github-action from v1.1.1 to v1.1.2
2021-04-27 10:46:38 +02:00
dependabot[bot] d118db9a24
Bump jandelgado/gcov2lcov-action from v1.0.2 to v1.0.8
Bumps [jandelgado/gcov2lcov-action](https://github.com/jandelgado/gcov2lcov-action) from v1.0.2 to v1.0.8.
- [Release notes](https://github.com/jandelgado/gcov2lcov-action/releases)
- [Changelog](https://github.com/jandelgado/gcov2lcov-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jandelgado/gcov2lcov-action/compare/v1.0.2...2477d9ec11814a9326e7fdde8d315783d163edb7)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-27 08:35:35 +00:00
dependabot[bot] 1182a36c90
Bump coverallsapp/github-action from v1.1.1 to v1.1.2
Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from v1.1.1 to v1.1.2.
- [Release notes](https://github.com/coverallsapp/github-action/releases)
- [Commits](https://github.com/coverallsapp/github-action/compare/v1.1.1...8cbef1dea373ebce56de0a14c68d6267baa10b44)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-27 08:35:32 +00:00
Joachim Bauch e143ada50d
Merge pull request #101 from strukturag/dependabot-actions
dependabot: check github actions for updates.
2021-04-27 09:05:12 +02:00
Joachim Bauch 1d12bfb107
dependabot: check github actions for updates. 2021-04-27 09:01:07 +02:00
Joachim Bauch 5d87df4b8e
Return error if unknown hello session was received while waiting for joined events. 2021-04-27 08:48:36 +02:00
Joachim Bauch 9cf796640c
Don't require certain order of own/other "joined" events. 2021-04-27 08:39:19 +02:00
Joachim Bauch 73acd90f2b
Merge pull request #32 from strukturag/ci-golang-lint
CI: Also run golangci-lint
2021-04-26 17:36:42 +02:00
Joachim Bauch 929ac80b86
CI: Also run golangci-lint 2021-04-26 17:32:43 +02:00
Joachim Bauch 4298c082eb
Merge pull request #100 from strukturag/lint-fixes
Fix various issues found by golangci-lint.
2021-04-26 17:32:16 +02:00
Joachim Bauch c8e4bfe007
Fix various issues found by golangci-lint. 2021-04-26 17:25:52 +02:00
Joachim Bauch e849dc8cbd
Add coverage status badge. 2021-04-23 15:53:09 +02:00
Joachim Bauch 16c4cc14bf
Merge pull request #34 from strukturag/ci-coverage
CI: Show coverage report.
2021-04-23 15:48:23 +02:00