Commit Graph

273 Commits

Author SHA1 Message Date
Joachim Bauch dc713ea8e8
Only include body in 307/308 redirects if going to same host. 2021-07-07 12:35:53 +02:00
Joachim Bauch b422b4d379
Merge pull request #131 from strukturag/dependabot/github_actions/coverallsapp/github-action-1.1.3
Bump coverallsapp/github-action from 1.1.2 to 1.1.3
2021-07-07 11:33:33 +02:00
dependabot[bot] 8655c216d2
Bump coverallsapp/github-action from 1.1.2 to 1.1.3
Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 1.1.2 to 1.1.3.
- [Release notes](https://github.com/coverallsapp/github-action/releases)
- [Commits](https://github.com/coverallsapp/github-action/compare/v1.1.2...1.1.3)

---
updated-dependencies:
- dependency-name: coverallsapp/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-07 09:28:24 +00:00
Joachim Bauch 1820816160
Merge pull request #132 from strukturag/force-https
Force HTTPS for backend connections in old-style configurations.
2021-07-07 11:03:32 +02:00
Joachim Bauch ec71f29fee
Force HTTPS for backend connections in old-style configurations.
Prevents clients from sending a HTTP auth URL to trigger an insecure
connection from the signaling server to Nextcloud.
2021-07-07 09:16:59 +02:00
Joachim Bauch ed8c2752cb
Merge pull request #129 from morph027/multiarch-easyjson
adjust easyjson for multiarch builds
2021-07-05 08:30:41 +02:00
morph027 e157c1d0e7
adjust easyjson for multiarch builds
Signed-off-by: morph027 <stefan.heitmueller@gmx.com>
2021-07-03 14:47:11 +02:00
Joachim Bauch 2662d49017
Update changelog for 0.3.0 2021-07-01 09:24:52 +02:00
Joachim Bauch e40e86f32c
Merge pull request #104 from strukturag/stream-selection-api
Add API to select a simulcast substream / temporal layer.
2021-07-01 08:54:11 +02:00
Joachim Bauch b091db000e
Merge pull request #121 from strukturag/initial-virtual-flags
Notify new clients about flags of virtual sessions
2021-06-08 13:51:23 +02:00
Joachim Bauch 8a87a0d602
Add feature flag "simulcast". 2021-06-08 13:49:09 +02:00
Joachim Bauch 0a8ce3bda3
Add API to select a simulcast substream / temporal layer. 2021-06-08 13:49:08 +02:00
Joachim Bauch 9d2ad0f243
Notify new clients about current flags of virtual sessions. 2021-06-08 13:46:25 +02:00
Joachim Bauch 4d991725c3
Add method to get pending messages from testclient. 2021-06-08 13:45:58 +02:00
Joachim Bauch 6886bb9b53
Merge pull request #119 from strukturag/check-capabilities-v4api
Fetch capabilities to check if "v3" signaling API of Talk should be used.
2021-06-08 10:33:21 +02:00
Joachim Bauch 2bbc0a4d3c
Fetch capabilities to check if "v3" signaling API of Talk should be used. 2021-06-08 10:23:27 +02:00
Joachim Bauch 60b11b1ba9
Don't start test until receiving goroutine is ready. 2021-06-08 09:44:53 +02:00
Joachim Bauch 6c72d3f2bc
Merge pull request #116 from strukturag/dependabot/go_modules/github.com/nats-io/nats-server/v2-2.2.6
Bump github.com/nats-io/nats-server/v2 from 2.2.1 to 2.2.6
2021-06-08 09:38:43 +02:00
dependabot[bot] a5af6b9b58
Bump github.com/nats-io/nats-server/v2 from 2.2.1 to 2.2.6
Bumps [github.com/nats-io/nats-server/v2](https://github.com/nats-io/nats-server) from 2.2.1 to 2.2.6.
- [Release notes](https://github.com/nats-io/nats-server/releases)
- [Changelog](https://github.com/nats-io/nats-server/blob/master/.goreleaser.yml)
- [Commits](https://github.com/nats-io/nats-server/compare/v2.2.1...v2.2.6)

---
updated-dependencies:
- dependency-name: github.com/nats-io/nats-server/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-08 07:32:36 +00:00
Joachim Bauch 35d3bf84e6
Merge pull request #115 from strukturag/test-improvements
Various test improvements
2021-06-08 09:27:05 +02:00
Joachim Bauch 7618bc683c
Ignore room NATS messages that were sent before the room was joined.
Can happen mostly during tests (e.g. TestClientTakeoverRoomSession)
where the new client could receive the "leave" event that was sent
before it joined the room (but got delivered after joining).
2021-06-08 09:20:18 +02:00
Joachim Bauch 2628735431
Send close message when explicitly closing client. 2021-06-07 17:14:31 +02:00
Joachim Bauch 9a473b9bf1
Wait for close message to be processed in test client before closing. 2021-06-07 17:14:31 +02:00
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 8bf4fb5675
Merge pull request #120 from strukturag/notify-multiple-waiters
Support multiple waiters for the same key.
2021-06-07 14:51:12 +02:00
Joachim Bauch 60a88b327b
Support multiple waiters for the same key. 2021-06-07 14:36:52 +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