* Option to control auto subscribe of data tracks.
* generated protobuf
* Create plenty-jobs-pump.md
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Data tracks initial protocol definition.
Just cutting and pasting protocol changes in this PR
(https://github.com/livekit/protocol/pull/1229) from @ladvoc. As
merging/generating code has been a challenge, just copying over protocol
changes and re-building.
* Create fair-candles-repeat.md
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Include mid -> trackID in SDP.
And send it in subscriber peer connection offer also. It can be useful
to clients even in dual peer connection case.
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Use mapped SDP answer when using single peer connection mode.
In single peer connection mode, the client does not get the
TR_ ids for tracks. That is because the transceiver is created with a
receiver when the offer is generated and a random id assigned. Once the
id is assigned, it is not updated. So, when client gets `onTrack`, the
id of the associated MediaStreamTrack is not the TR_ variety.
So, send the mapping of mid -> trackID in signalling when sending
answer. And used that on client side to find LK track ID for given mid.
Side note: Probably worth doing it for dual peer connection also when
subscriber sends offer so that we do not have to deduce it on client
side using some rules.
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Marking width and height as not deprecated.
Those fields reflect the capture dimensions.
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Suport for simulcast codec of audio.
Note that a disable should be a mute on client side and not a track
stop to allow re-enabling the track again.
* generated protobuf
* name change
* generated protobuf
* Create young-mayflies-wash.md
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* updating the reporter inteface to include the gateway noop reporter
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Allow clients to specify video layers mode.
The main issue is distinguishing between one RTP streaming carry
multiple spatial layers (example SVC codecs) vs one spatial layer
(codecs that are typically simulcast). The enum names are long, but
wanted them to be clear.
* generated protobuf
* Create unlucky-birds-drive.md
* comment
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Filling out some messages that are unlikely to change in v2.
* generated protobuf
* comment
* mage
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* feat: MoveParticipant API
This new API would move a participant from one cloud room to another.
It will support the following use cases:
- warm transfer in voice AI
- fast switching between different live streams
- prejoin room in meetings
* generated protobuf
* add RTC message
* repeat field number
* generated protobuf
* rpc
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: cnderrauber <zengjie9004@gmail.com>
* Refine backup codec policy
Make the default behavior to be a `preferred` value that
the sfu will determine proper policy by room information.
* rename
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Add a nonce to data messages.
Will be used to de-dupe messages sent via SendData API.
* generated protobuf
* comment
* generated protobuf
* add nonce to UserPacket
* generated protobuf
* 128-bit UUID as string for nonce
* generated protobuf
* UUID bytes
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
To provide backward compatibility with already existing Ingresses
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Send non-error responses also.
Settling on the name `RequestResponse` (after not being able to find a
solid candidate) as it is response sent only when `request_id != 0`.
Renaming `UNKNOWN` reason to `OK` as it was unused. Will bump up
protocol and send `OK` only to client supporting that protocol version.
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* add final field to TrickleRequest
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Support for key/value attributes on Participant
Key/value attributes lets us:
* allow various components to provide more information about the participant (i.e. SIP including the phone number)
* allow Agents to communicate their own status to the end user via RTC
* enable applications to update specific fields without overriding others
* generated protobuf
* Attribute support for SIP.
* generated protobuf
* generated protobuf
* allow specifying attributes during token generation
* Remove sip prefix and rename phone number attrs.
* regenerate protos
* update tests
* add kv attrs to sip token
* add attribute test
* changeset
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Denys Smirnov <dennwc@pm.me>
* Adding a simulation option for leave request.
@lukasIO I was thinking of making the simulation option
just a `LeaveRequest`. And when simulating, client side
can just set `Action` field of `LeaveRequest`.
But, decided against it as I did not use case for it
and also wanted to keep it simple/specific.
Let me know if I should change that to a generic `LeaveRequest`.
If doing generic `LeaveRequest`, server behaviour would be
1. `Action = DISCONNECT`: server will close the participant and send a
`LeaveRequest` with `Action = DISCONNECT`.
2. `Action = RESUME`, server will send `LeaveRequest` with `Action = RESUME`
and it will not include self region in `RegionSettings`.
3. `Action = RECONNECT`, server will send `LeaveRequest` with `Action = RECONNECT`
and it will not include self region in `RegionSettings`.
As the current simulation is only for full reconnect, it will behave
like #3 above.
Also, this option will be supported in cloud.
Please let me know if I should change this or just leave it as a
boolean.
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Deprecate UpdateVideoLayers.
Believe this was never used.
* generated protobuf
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Add signal requests for local track updates
* changeset
* fix indices
* fix field naming
* generated protobuf
* address comment
* generated protobuf
* Remove video features for now
* generated protobuf
* whitespace
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>