Commit graph

470 commits

Author SHA1 Message Date
Joachim Bauch 8ff62829ee
Add tests for etcd proxy tokens. 2022-05-13 14:37:21 +02:00
Joachim Bauch a098a7381b
Add go.etcd.io/etcd/server/v3 v3.5.4 2022-05-13 14:36:41 +02:00
Joachim Bauch cdf5cd47cb
Merge pull request #252 from strukturag/refactor-capabilities
Move capabilities handling to own file and refactor http client pool.
2022-05-13 10:21:13 +02:00
Joachim Bauch eb9e93b811
CI: Setup GOROOT environment variable so gcov2lcov uses correct path. 2022-05-13 10:16:46 +02:00
Joachim Bauch 79f7d85a53
Add tests for capabilities. 2022-05-13 10:16:45 +02:00
Joachim Bauch e9f2e037fd
Add methods to get config values from the capabilities. 2022-05-13 09:21:53 +02:00
Joachim Bauch 4856f63de8
Move capabilities handling to own file and refactor http client pool. 2022-05-13 09:20:31 +02:00
Joachim Bauch cbcd27bd74
Merge pull request #247 from strukturag/dependabot/github_actions/golangci/golangci-lint-action-3.2.0
Bump golangci/golangci-lint-action from 3.1.0 to 3.2.0
2022-05-12 10:06:40 +02:00
dependabot[bot] ab182daf12
Bump golangci/golangci-lint-action from 3.1.0 to 3.2.0
Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](https://github.com/golangci/golangci-lint-action/compare/v3.1.0...v3.2.0)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-12 07:55:35 +00:00
Joachim Bauch b517b01503
Merge pull request #249 from strukturag/ci-runon-yaml-change
CI: Run when workflow yaml file has changed.
2022-05-12 09:54:50 +02:00
Joachim Bauch f2e159e429
CI: Run when workflow yaml file has changed. 2022-05-12 09:49:35 +02:00
Joachim Bauch 94ee083d59
Merge pull request #248 from strukturag/dependabot/pip/docs/readthedocs-sphinx-search-0.1.2
Bump readthedocs-sphinx-search from 0.1.1 to 0.1.2 in /docs
2022-05-12 09:44:55 +02:00
dependabot[bot] 5aff1a47f7
Bump readthedocs-sphinx-search from 0.1.1 to 0.1.2 in /docs
Bumps [readthedocs-sphinx-search](https://github.com/readthedocs/readthedocs-sphinx-search) from 0.1.1 to 0.1.2.
- [Release notes](https://github.com/readthedocs/readthedocs-sphinx-search/releases)
- [Changelog](https://github.com/readthedocs/readthedocs-sphinx-search/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/readthedocs/readthedocs-sphinx-search/compare/0.1.1...0.1.2)

---
updated-dependencies:
- dependency-name: readthedocs-sphinx-search
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-11 20:36:35 +00:00
Joachim Bauch c0f56ff81a
Merge pull request #239 from strukturag/toggle-audio-video
Support toggling audio/video in subscribed streams.
2022-05-10 11:39:10 +02:00
Joachim Bauch ec7bc6874e
Remove redundant check for "nil" (fixes linter error). 2022-05-10 10:52:19 +02:00
Joachim Bauch 3cb8fc1117
Support toggling audio/video in subscribed streams.
The command `selectStream` also supports optional boolean flags `audio`
and `video` that can be used to enable/disable receiving the corresponding
media from the stream.
2022-05-10 10:29:44 +02:00
Joachim Bauch 6e5497cfff
Merge pull request #243 from strukturag/dependabot/go_modules/github.com/nats-io/nats.go-1.15.0
Bump github.com/nats-io/nats.go from 1.14.0 to 1.15.0
2022-05-06 08:22:02 +02:00
Joachim Bauch fd4208ae9c
Merge pull request #244 from strukturag/dependabot/github_actions/docker/build-push-action-3
Bump docker/build-push-action from 2 to 3
2022-05-06 08:21:50 +02:00
Joachim Bauch 8ec7b03180
Merge pull request #245 from strukturag/dependabot/github_actions/docker/setup-buildx-action-2
Bump docker/setup-buildx-action from 1 to 2
2022-05-06 08:21:33 +02:00
dependabot[bot] f7a51b03d5
Bump docker/setup-buildx-action from 1 to 2
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 1 to 2.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-05 20:10:01 +00:00
dependabot[bot] 3580ffc7eb
Bump docker/build-push-action from 2 to 3
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 2 to 3.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-05 20:09:59 +00:00
dependabot[bot] 5cb02c7ee9
Bump github.com/nats-io/nats.go from 1.14.0 to 1.15.0
Bumps [github.com/nats-io/nats.go](https://github.com/nats-io/nats.go) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/nats-io/nats.go/releases)
- [Commits](https://github.com/nats-io/nats.go/compare/v1.14.0...v1.15.0)

---
updated-dependencies:
- dependency-name: github.com/nats-io/nats.go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-05 20:09:36 +00:00
Joachim Bauch e92d2bd543
Merge pull request #242 from strukturag/dependabot/go_modules/github.com/nats-io/nats-server/v2-2.8.2
Bump github.com/nats-io/nats-server/v2 from 2.8.1 to 2.8.2
2022-05-05 08:35:14 +02:00
dependabot[bot] ba49cbf7ca
Bump github.com/nats-io/nats-server/v2 from 2.8.1 to 2.8.2
Bumps [github.com/nats-io/nats-server/v2](https://github.com/nats-io/nats-server) from 2.8.1 to 2.8.2.
- [Release notes](https://github.com/nats-io/nats-server/releases)
- [Changelog](https://github.com/nats-io/nats-server/blob/main/.goreleaser.yml)
- [Commits](https://github.com/nats-io/nats-server/compare/v2.8.1...v2.8.2)

---
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>
2022-05-04 20:07:15 +00:00
Joachim Bauch 7e40df3592
Merge pull request #240 from danxuliu/fix-signaling-server-messages-total-stat-not-being-incremented
Fix "signaling_server_messages_total" stat not being incremented
2022-05-03 14:08:27 +02:00
Daniel Calviño Sánchez 3f7ebc8ef9 Fix "signaling_server_messages_total" stat not being incremented
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-05-03 13:56:35 +02:00
Joachim Bauch 135df8c50d
Merge pull request #191 from danxuliu/add-support-for-request-offers-to-update-subscriber-connections
Add support for request offers to update subscriber connections
2022-04-28 08:39:13 +02:00
Daniel Calviño Sánchez 86bad15337 Add support for request offers to update subscriber connections
The "sid" parameter of "requestOffer" messages is now checked to update
the current Janus connection when it matches the "sid" of the subscriber
rather than closing it and creating a new one.

Updating a connection is needed for clients to renegotiate their
received media without interrupting the current connection. For example,
to stop receiving video by triggering a new offer from Janus and then
setting the video transceiver direction as inactive before creating the
answer.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-04-27 16:53:14 +02:00
Joachim Bauch f8f2adb0e2
Merge pull request #227 from strukturag/hide-displaynames
Add "permission" for sessions that may not receive display names.
2022-04-27 16:19:23 +02:00
Joachim Bauch 93746a4d9d
Merge pull request #229 from danxuliu/add-specific-id-for-connections-and-replace-update-parameter-with-it
Add specific id for connections and replace "update" parameter with it
2022-04-27 16:17:17 +02:00
Daniel Calviño Sánchez e86baba54d Discard unneeded messages based on their "sid" parameter
If a message includes a "sid" parameter and it does not match the one
from the publisher or the subscriber the message is ignored. However, if
the message does not include a "sid" parameter it is processed just like
before for backwards compatibility.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-04-27 11:14:59 +02:00
Daniel Calviño Sánchez 27989752bf Remove "update" parameter in favour of "sid"
The "update" parameter was used to know if an offer should be treated by
the clients as a renegotiation or a new connection. However, since the
introduction of "sid" this is implicitly known (if the "sid" matches an
existing connection then it is an update, otherwise it is a new
connection), so that specific parameter is no longer needed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-04-27 11:14:59 +02:00
Daniel Calviño Sánchez 3636e69dba Add specific ID for connections
A new ID is introduced for publishers and subscribers to be able to
identify different connections in the same session. While it was
possible to do that from the Janus handles this ID is meant to be shared
with the clients and set by the peer sending the offer, so it is set by
the client for publishers and by the signaling server for subscribers
(in which case the Janus handle is used).

This will make possible to know without any ambiguity if an offer/answer
belongs to an already existing connection or not. This can be used, for
example, to know if an offer represents an update or a new connection,
or to discard unneeded messages that might be sent in some corner cases
by the clients.

The ID name is "sid" for consistency with the property name used by the
internal signaling server of Talk.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-04-27 11:14:59 +02:00
Joachim Bauch 88af6f9285
Merge pull request #238 from strukturag/ci-docker
CI: Build docker image.
2022-04-26 15:02:35 +02:00
Joachim Bauch ccb1a724b8
docker: Build with Golang 1.18 2022-04-26 15:00:29 +02:00
Joachim Bauch 82c0071e80
CI: Build docker image. 2022-04-26 15:00:29 +02:00
Joachim Bauch 39cc523477
Add "permission" for sessions that may not receive display names.
By default, the "join" events contain the whole userdata as received
from the "auth" response. This might include a "displayname" field
containing the display name of the associated user.

For privacy reasons in certain scenarios, some attendees should not
be able to know which other users are connected to a room, therefore
the "displayname" should be hidden for them. By default, no filtering
occurrs.
2022-04-26 14:47:01 +02:00
Joachim Bauch a20b21b7fe
Merge pull request #236 from strukturag/dependabot/go_modules/go.etcd.io/etcd/client/v3-3.5.4
Bump go.etcd.io/etcd/client/v3 from 3.5.2 to 3.5.4
2022-04-26 12:13:04 +02:00
dependabot[bot] c8212a7126
Bump go.etcd.io/etcd/client/v3 from 3.5.2 to 3.5.4
Bumps [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) from 3.5.2 to 3.5.4.
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Changelog](https://github.com/etcd-io/etcd/blob/main/Dockerfile-release.amd64)
- [Commits](https://github.com/etcd-io/etcd/compare/v3.5.2...v3.5.4)

---
updated-dependencies:
- dependency-name: go.etcd.io/etcd/client/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-26 09:17:44 +00:00
Joachim Bauch bd069ce5da
Merge pull request #237 from strukturag/dependabot/github_actions/github/codeql-action-2
Bump github/codeql-action from 1 to 2
2022-04-26 11:17:09 +02:00
Joachim Bauch 83c906b8bc
Merge pull request #235 from strukturag/dependabot/go_modules/go.etcd.io/etcd/client/pkg/v3-3.5.4
Bump go.etcd.io/etcd/client/pkg/v3 from 3.5.2 to 3.5.4
2022-04-26 11:16:03 +02:00
dependabot[bot] ff0acac593
Bump github/codeql-action from 1 to 2
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 1 to 2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v1...v2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-25 20:12:00 +00:00
dependabot[bot] 51342975f7
Bump go.etcd.io/etcd/client/pkg/v3 from 3.5.2 to 3.5.4
Bumps [go.etcd.io/etcd/client/pkg/v3](https://github.com/etcd-io/etcd) from 3.5.2 to 3.5.4.
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Changelog](https://github.com/etcd-io/etcd/blob/main/Dockerfile-release.amd64)
- [Commits](https://github.com/etcd-io/etcd/compare/v3.5.2...v3.5.4)

---
updated-dependencies:
- dependency-name: go.etcd.io/etcd/client/pkg/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-25 20:11:39 +00:00
Joachim Bauch 1f20907092
Merge pull request #234 from strukturag/dependabot/go_modules/github.com/nats-io/nats-server/v2-2.8.1
Bump github.com/nats-io/nats-server/v2 from 2.7.4 to 2.8.1
2022-04-25 09:03:06 +02:00
dependabot[bot] 2772d27f40
Bump github.com/nats-io/nats-server/v2 from 2.7.4 to 2.8.1
Bumps [github.com/nats-io/nats-server/v2](https://github.com/nats-io/nats-server) from 2.7.4 to 2.8.1.
- [Release notes](https://github.com/nats-io/nats-server/releases)
- [Changelog](https://github.com/nats-io/nats-server/blob/main/.goreleaser.yml)
- [Commits](https://github.com/nats-io/nats-server/compare/v2.7.4...v2.8.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-22 20:11:33 +00:00
Joachim Bauch 6fa4a8b434
Also return in-order list of "join" events. 2022-04-11 17:01:08 +02:00
Joachim Bauch ef8d5ff628
Merge pull request #228 from strukturag/send-to-session
Send directly to local session with disconnected client.
2022-04-11 17:00:58 +02:00
Joachim Bauch 5f97794691
Send directly to local session with disconnected client.
Before it was using NATS to deliver the message to the session.
2022-04-11 16:53:47 +02:00
Joachim Bauch 681ba401a3
Merge pull request #226 from strukturag/dependabot/github_actions/actions/setup-go-3
Bump actions/setup-go from 2 to 3
2022-04-11 10:23:31 +02:00
Joachim Bauch 144eefa2fb
make: Fix unnecessary building of easyjson. 2022-04-11 10:22:22 +02:00