From c9ef0aed463d7cedbd803a7f53a2e261a94e8210 Mon Sep 17 00:00:00 2001 From: Max Heimbrock <43608204+MaxHeimbrock@users.noreply.github.com> Date: Fri, 8 May 2026 14:14:42 +0200 Subject: [PATCH 1/5] Release Room FFI handles on disconnect Room never disposed its RoomHandle on Disconnect(), and Participant / TrackPublication / Track never disposed theirs at all. Each handle is an independent entry in the Rust FFI handle table, so dropping one does not cascade. The handles only got freed when GC eventually finalized each SafeHandle, which in practice meant the entire Rust-side room (peer connection, signaling client, libwebrtc state) plus every wrapped participant, publication, and track lingered for an unpredictable amount of time after the user-visible session had ended. Make Room implement IDisposable. Disconnect() now sends the FFI request and then runs Cleanup(), which unsubscribes from FfiClient events, walks LocalParticipant + RemoteParticipants disposing each participant + its publications + the publications' tracks, and finally disposes RoomHandle itself. The same Cleanup() runs from the Disconnected room event so server-initiated drops behave the same as client-initiated ones. OnEventReceived guards against late events arriving after Cleanup, so the FfiClient unsubscribe race is harmless. DisposeHandles is added as an internal cascade: Track disposes its own handle, TrackPublication forwards to its Track, RemoteTrackPublication also disposes its publication handle, and Participant walks _tracks before disposing its own handle. The Meet sample's OnDestroy also calls Disconnect now so a scene change or quit while still connected releases the handles instead of leaking them until process exit. Verified with the FFI handle table diagnostic: a connect / hold / disconnect cycle now drops rooms, participants, tracks, and remote publications back to zero. Local publications and audio/video source handles still leak on this path; those are addressed separately. Co-Authored-By: Claude Opus 4.7 (1M context) --- Runtime/Scripts/Participant.cs | 8 ++++ Runtime/Scripts/Room.cs | 44 +++++++++++++++++++-- Runtime/Scripts/Track.cs | 5 +++ Runtime/Scripts/TrackPublication.cs | 11 ++++++ Samples~/Meet/Assets/Runtime/MeetManager.cs | 1 + 5 files changed, 65 insertions(+), 4 deletions(-) diff --git a/Runtime/Scripts/Participant.cs b/Runtime/Scripts/Participant.cs index b4c65e31..f5210a3a 100644 --- a/Runtime/Scripts/Participant.cs +++ b/Runtime/Scripts/Participant.cs @@ -55,6 +55,14 @@ internal void OnTrackUnpublished(RemoteTrackPublication publication) { TrackUnpublished?.Invoke(publication); } + + internal void DisposeHandles() + { + foreach (var pub in _tracks.Values) + pub.DisposeHandles(); + _tracks.Clear(); + Handle?.Dispose(); + } } public sealed class LocalParticipant : Participant diff --git a/Runtime/Scripts/Room.cs b/Runtime/Scripts/Room.cs index 88d58b2b..6252b67d 100644 --- a/Runtime/Scripts/Room.cs +++ b/Runtime/Scripts/Room.cs @@ -106,9 +106,10 @@ public Proto.RoomOptions ToProto() } } - public class Room + public class Room : IDisposable { internal FfiHandle RoomHandle = null; + private bool _disposed = false; private readonly Dictionary _participants = new(); private StreamHandlerRegistry _streamHandlers = new(); @@ -183,7 +184,7 @@ public ConnectInstruction Connect(string url, string token, RoomOptions options) public void Disconnect() { - if (this.RoomHandle == null) + if (_disposed || RoomHandle == null) return; var (response, _) = FFIBridge.Instance.SendDisconnectRequest(this); using (response) @@ -191,6 +192,38 @@ public void Disconnect() Utils.Debug($"Disconnect.... {RoomHandle}"); Utils.Debug($"Disconnect response.... {response}"); } + // Release the Rust-side room synchronously. Without this the FfiRoom + // (peer connection, signaling client, libwebrtc state) lingers in the + // FFI handle table until the SafeHandle finalizer runs. + Cleanup(); + } + + public void Dispose() + { + Disconnect(); + GC.SuppressFinalize(this); + } + + private void Cleanup() + { + if (_disposed) + return; + _disposed = true; + + FfiClient.Instance.RoomEventReceived -= OnEventReceived; + FfiClient.Instance.RpcMethodInvocationReceived -= OnRpcMethodInvocationReceived; + FfiClient.Instance.DisconnectReceived -= OnDisconnectReceived; + + // Participant + track + publication FFI handles are independent entries in the + // Rust handle table — dropping the room handle alone does not cascade to them, so + // they would otherwise linger until C# GC finalizes each SafeHandle. + LocalParticipant?.DisposeHandles(); + foreach (var p in _participants.Values) + p.DisposeHandles(); + _participants.Clear(); + + RoomHandle?.Dispose(); + RoomHandle = null; } /// @@ -266,6 +299,10 @@ internal void OnRpcMethodInvocationReceived(RpcMethodInvocationEvent e) internal void OnEventReceived(RoomEvent e) { + // After Cleanup() the handle is null but late events may still flow + // through the FfiClient before the unsubscribe fully takes effect. + if (RoomHandle == null) + return; if (e.RoomHandle != (ulong)RoomHandle.DangerousGetHandle()) return; @@ -564,8 +601,7 @@ private void OnDisconnectReceived(DisconnectCallback e) private void OnDisconnect() { - FfiClient.Instance.RoomEventReceived -= OnEventReceived; - FfiClient.Instance.RpcMethodInvocationReceived -= OnRpcMethodInvocationReceived; + Cleanup(); } internal RemoteParticipant CreateRemoteParticipantWithTracks(ConnectCallback.Types.ParticipantWithTracks item) diff --git a/Runtime/Scripts/Track.cs b/Runtime/Scripts/Track.cs index 91cc0608..419c25df 100644 --- a/Runtime/Scripts/Track.cs +++ b/Runtime/Scripts/Track.cs @@ -108,6 +108,11 @@ internal void UpdateMuted(bool muted) { _info.Muted = muted; } + + internal void DisposeHandles() + { + Handle?.Dispose(); + } } public sealed class LocalAudioTrack : Track, ILocalTrack, IAudioTrack diff --git a/Runtime/Scripts/TrackPublication.cs b/Runtime/Scripts/TrackPublication.cs index d078c6b2..edfcb525 100644 --- a/Runtime/Scripts/TrackPublication.cs +++ b/Runtime/Scripts/TrackPublication.cs @@ -40,6 +40,11 @@ internal void UpdateMuted(bool muted) _info.Muted = muted; Track?.UpdateMuted(muted); } + + internal virtual void DisposeHandles() + { + Track?.DisposeHandles(); + } } public sealed class RemoteTrackPublication : TrackPublication @@ -54,6 +59,12 @@ internal RemoteTrackPublication(TrackPublicationInfo info, FfiHandle handle) : b Handle = handle; } + internal override void DisposeHandles() + { + base.DisposeHandles(); + Handle?.Dispose(); + } + public void SetSubscribed(bool subscribed) { Subscribed = subscribed; diff --git a/Samples~/Meet/Assets/Runtime/MeetManager.cs b/Samples~/Meet/Assets/Runtime/MeetManager.cs index 8ad1bfee..5abf9485 100644 --- a/Samples~/Meet/Assets/Runtime/MeetManager.cs +++ b/Samples~/Meet/Assets/Runtime/MeetManager.cs @@ -82,6 +82,7 @@ private void Update() private void OnDestroy() { _webCamTexture?.Stop(); + _room?.Disconnect(); } #endregion From f23412056dc9137d40e136177b5439274881a491 Mon Sep 17 00:00:00 2001 From: Max Heimbrock <43608204+MaxHeimbrock@users.noreply.github.com> Date: Fri, 8 May 2026 14:15:24 +0200 Subject: [PATCH 2/5] Release local publication and Rtc source FFI handles on cleanup After the previous commit, Room cleanup walked participants and disposed their handles, including the publication handles for remote tracks. Three local-side handles still leaked on every disconnect: - LocalTrackPublication never wrapped its FFI handle. When PublishTrack succeeded, OnPublish constructed the C# publication from the proto info alone and dropped e.Publication.Handle on the floor. The Rust side kept the entry alive in the FFI handle table for the rest of the process. - RtcVideoSource and RtcAudioSource owned an FFI source handle but their Dispose(bool) implementations released the preview texture, capture buffer, and pending audio frames without ever disposing the handle. The source therefore stayed registered with Rust until the SafeHandle finalizer eventually ran. Wrap the publication handle in the PublishTrackInstruction callback and dispose it through the existing DisposeHandles cascade. Add Handle disposal to the two Rtc source Dispose(bool) overrides so the Meet sample's CleanUpAllTracks now actually frees them. With this change, disconnecting after publishing local mic + camera returns the FFI handle table to its pre-connect baseline on macOS. Co-Authored-By: Claude Opus 4.7 (1M context) --- Runtime/Scripts/Participant.cs | 2 +- Runtime/Scripts/RtcAudioSource.cs | 1 + Runtime/Scripts/RtcVideoSource.cs | 1 + Runtime/Scripts/TrackPublication.cs | 11 ++++++++++- 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Runtime/Scripts/Participant.cs b/Runtime/Scripts/Participant.cs index f5210a3a..bc49710b 100644 --- a/Runtime/Scripts/Participant.cs +++ b/Runtime/Scripts/Participant.cs @@ -624,7 +624,7 @@ internal void OnPublish(PublishTrackCallback e) IsError = !string.IsNullOrEmpty(e.Error); IsDone = true; - var publication = new LocalTrackPublication(e.Publication.Info); + var publication = new LocalTrackPublication(e.Publication.Info, FfiHandle.FromOwnedHandle(e.Publication.Handle)); publication.UpdateTrack(_localTrack as Track); _localTrack.UpdateSid(publication.Sid); _internalTracks.Add(e.Publication.Info.Sid, publication); diff --git a/Runtime/Scripts/RtcAudioSource.cs b/Runtime/Scripts/RtcAudioSource.cs index fa6c090f..dcbfb58f 100644 --- a/Runtime/Scripts/RtcAudioSource.cs +++ b/Runtime/Scripts/RtcAudioSource.cs @@ -294,6 +294,7 @@ protected virtual void Dispose(bool disposing) } _pendingFrameData.Clear(); } + Handle?.Dispose(); _disposed = true; Utils.Debug($"{DebugTag} disposed"); } diff --git a/Runtime/Scripts/RtcVideoSource.cs b/Runtime/Scripts/RtcVideoSource.cs index fc9b7677..5f62c671 100644 --- a/Runtime/Scripts/RtcVideoSource.cs +++ b/Runtime/Scripts/RtcVideoSource.cs @@ -211,6 +211,7 @@ protected virtual void Dispose(bool disposing) Debug.Log("Disposing capture buffer"); _captureBuffer.Dispose(); } + Handle?.Dispose(); _disposed = true; } diff --git a/Runtime/Scripts/TrackPublication.cs b/Runtime/Scripts/TrackPublication.cs index edfcb525..4fbd1284 100644 --- a/Runtime/Scripts/TrackPublication.cs +++ b/Runtime/Scripts/TrackPublication.cs @@ -96,8 +96,17 @@ public sealed class LocalTrackPublication : TrackPublication { public new ILocalTrack Track => base.Track as ILocalTrack; - internal LocalTrackPublication(TrackPublicationInfo info) : base(info) + private FfiHandle Handle; + + internal LocalTrackPublication(TrackPublicationInfo info, FfiHandle handle) : base(info) { + Handle = handle; + } + + internal override void DisposeHandles() + { + base.DisposeHandles(); + Handle?.Dispose(); } } } \ No newline at end of file From 149e4f35f5f17f618b8602a602de7e029e59a6b9 Mon Sep 17 00:00:00 2001 From: Max Heimbrock <43608204+MaxHeimbrock@users.noreply.github.com> Date: Fri, 8 May 2026 16:32:56 +0200 Subject: [PATCH 3/5] Temp pointing rust to fixed state to see if CI will pass now --- client-sdk-rust~ | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client-sdk-rust~ b/client-sdk-rust~ index b885d475..45895480 160000 --- a/client-sdk-rust~ +++ b/client-sdk-rust~ @@ -1 +1 @@ -Subproject commit b885d475538ace130ea6884d615556863b2f0a44 +Subproject commit 4589548085480a52b126fe3e6cd6b5890ba3ce69 From 301aa4277376d85358514798aea48f3ad0dca3cb Mon Sep 17 00:00:00 2001 From: Max Heimbrock <43608204+MaxHeimbrock@users.noreply.github.com> Date: Mon, 11 May 2026 13:43:28 +0200 Subject: [PATCH 4/5] Version jump in Rust FFI to 0.12.55 --- .../ffi-android-arm64/liblivekit_ffi.so | 4 +- .../ffi-android-armv7/liblivekit_ffi.so | 4 +- .../ffi-android-x86_64/liblivekit_ffi.so | 4 +- .../Plugins/ffi-ios-arm64/liblivekit_ffi.a | 4 +- .../ffi-ios-sim-arm64/liblivekit_ffi.a | 4 +- .../ffi-linux-x86_64/liblivekit_ffi.so | 4 +- .../ffi-macos-arm64/liblivekit_ffi.dylib | 4 +- .../ffi-macos-x86_64/liblivekit_ffi.dylib | 4 +- .../Plugins/ffi-windows-arm64/livekit_ffi.dll | 4 +- .../ffi-windows-x86_64/livekit_ffi.dll | 4 +- Runtime/Scripts/Proto/DataTrack.cs | 136 +- Runtime/Scripts/Proto/Ffi.cs | 567 +- Runtime/Scripts/Proto/Room.cs | 4892 +++++++++++------ Runtime/Scripts/Proto/Track.cs | 108 +- Runtime/Scripts/Proto/VideoFrame.cs | 473 +- client-sdk-rust~ | 2 +- version.ini | 2 +- 17 files changed, 4015 insertions(+), 2205 deletions(-) diff --git a/Runtime/Plugins/ffi-android-arm64/liblivekit_ffi.so b/Runtime/Plugins/ffi-android-arm64/liblivekit_ffi.so index cef2867c..31738c91 100755 --- a/Runtime/Plugins/ffi-android-arm64/liblivekit_ffi.so +++ b/Runtime/Plugins/ffi-android-arm64/liblivekit_ffi.so @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e447b3f76b78c20f910daa571207ec4ee4b6d45a2c148ab8e8c657e0e54e773b -size 18995600 +oid sha256:893897443a16c8e21cd3bc9c4cc33b96644e039e851ac1306b6eaa84fa43b9f6 +size 18694640 diff --git a/Runtime/Plugins/ffi-android-armv7/liblivekit_ffi.so b/Runtime/Plugins/ffi-android-armv7/liblivekit_ffi.so index a1af13cc..61fe2c7b 100755 --- a/Runtime/Plugins/ffi-android-armv7/liblivekit_ffi.so +++ b/Runtime/Plugins/ffi-android-armv7/liblivekit_ffi.so @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ec3ff8fcf2f3e2e62040079bce27e23b8272b062a57cb428bdd0726d6dcb70bf -size 10864732 +oid sha256:4de678a156e841074c502540690414fbc96bb53531666c5589ed6d1b835e82c9 +size 10676124 diff --git a/Runtime/Plugins/ffi-android-x86_64/liblivekit_ffi.so b/Runtime/Plugins/ffi-android-x86_64/liblivekit_ffi.so index 834ee00c..0eb159dd 100755 --- a/Runtime/Plugins/ffi-android-x86_64/liblivekit_ffi.so +++ b/Runtime/Plugins/ffi-android-x86_64/liblivekit_ffi.so @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f7c2b582c004bddf9b3efb867e43d54f33e80fccb3020cdb03ea8e071dbb02ab -size 23649944 +oid sha256:8035e1a5214b51903bcd5e554776289d379bce413e057ef7a044d272b6e0e0e0 +size 23315528 diff --git a/Runtime/Plugins/ffi-ios-arm64/liblivekit_ffi.a b/Runtime/Plugins/ffi-ios-arm64/liblivekit_ffi.a index 233ba035..c5b2dfb1 100644 --- a/Runtime/Plugins/ffi-ios-arm64/liblivekit_ffi.a +++ b/Runtime/Plugins/ffi-ios-arm64/liblivekit_ffi.a @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b4d17138b8362b19de0710e277fef9a294abd534bb5da570c6c22d69969fd66b -size 484185448 +oid sha256:8d79d16d10bad0a5ad60032449aaca96873273708752b203078af8d054c163d9 +size 484003536 diff --git a/Runtime/Plugins/ffi-ios-sim-arm64/liblivekit_ffi.a b/Runtime/Plugins/ffi-ios-sim-arm64/liblivekit_ffi.a index 05597935..24cb2740 100644 --- a/Runtime/Plugins/ffi-ios-sim-arm64/liblivekit_ffi.a +++ b/Runtime/Plugins/ffi-ios-sim-arm64/liblivekit_ffi.a @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:802199dcb4f4fa1d3f98841291e52be8977a8bb0a17ab0b551f8bfecbecf88d6 -size 486088328 +oid sha256:8db5e9980b5fc51133de64bba0966f4f0c69fe71dbb41d139516b01c09a25cd6 +size 485664920 diff --git a/Runtime/Plugins/ffi-linux-x86_64/liblivekit_ffi.so b/Runtime/Plugins/ffi-linux-x86_64/liblivekit_ffi.so index b730aed3..9651566c 100644 --- a/Runtime/Plugins/ffi-linux-x86_64/liblivekit_ffi.so +++ b/Runtime/Plugins/ffi-linux-x86_64/liblivekit_ffi.so @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:604180fcf712364211f4b920ab3178e2ce1db8712e8dd67ccd7d8a072e396c0a -size 27183944 +oid sha256:d64fa72243120af1d925f23543ec1593c1488e209ed3d9e0ecab6858fb4a66f0 +size 26870168 diff --git a/Runtime/Plugins/ffi-macos-arm64/liblivekit_ffi.dylib b/Runtime/Plugins/ffi-macos-arm64/liblivekit_ffi.dylib index 9854d51e..de757e6f 100644 --- a/Runtime/Plugins/ffi-macos-arm64/liblivekit_ffi.dylib +++ b/Runtime/Plugins/ffi-macos-arm64/liblivekit_ffi.dylib @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9f27cca65792654cc064865b48893195435908595dccb5560f7f931f3378fe36 -size 17597104 +oid sha256:65db2298a81f16b4f0346a14326e6ad38b7dfbed4bd6bf661e49f9a9ea1e60f0 +size 17379824 diff --git a/Runtime/Plugins/ffi-macos-x86_64/liblivekit_ffi.dylib b/Runtime/Plugins/ffi-macos-x86_64/liblivekit_ffi.dylib index c940ea87..5e428dc1 100644 --- a/Runtime/Plugins/ffi-macos-x86_64/liblivekit_ffi.dylib +++ b/Runtime/Plugins/ffi-macos-x86_64/liblivekit_ffi.dylib @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:460a9396e48773bece898160629dc636f5bec7f1869b7a8c89a42d3e37deccc4 -size 22396236 +oid sha256:31a15c8244b842c4fefa06e40dfe04677b09c31c0b12597ac816201e8e0cc49b +size 22140484 diff --git a/Runtime/Plugins/ffi-windows-arm64/livekit_ffi.dll b/Runtime/Plugins/ffi-windows-arm64/livekit_ffi.dll index 465074fb..cdca8369 100644 --- a/Runtime/Plugins/ffi-windows-arm64/livekit_ffi.dll +++ b/Runtime/Plugins/ffi-windows-arm64/livekit_ffi.dll @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c8f32659987bbd8ddb877f6068dddc572bc3ea650dc4e8bfb976c2532c2fd17a -size 17870336 +oid sha256:40527023c37bcf0c1fe441b846a92e3760546837b0b45dd924ebfb96fc371b1c +size 17875968 diff --git a/Runtime/Plugins/ffi-windows-x86_64/livekit_ffi.dll b/Runtime/Plugins/ffi-windows-x86_64/livekit_ffi.dll index ae72d4dc..73be74e7 100644 --- a/Runtime/Plugins/ffi-windows-x86_64/livekit_ffi.dll +++ b/Runtime/Plugins/ffi-windows-x86_64/livekit_ffi.dll @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e7090a2d227495fd24931bf86d379a9ce87dd75310ed0c3c15a90f9551614a97 -size 24420352 +oid sha256:2a387901074ef80374f416ca26353dff3796df9ae171c9ee710500eca512cb7c +size 24184832 diff --git a/Runtime/Scripts/Proto/DataTrack.cs b/Runtime/Scripts/Proto/DataTrack.cs index 32ce5889..de0a6934 100644 --- a/Runtime/Scripts/Proto/DataTrack.cs +++ b/Runtime/Scripts/Proto/DataTrack.cs @@ -76,43 +76,44 @@ static DataTrackReflection() { "by5EYXRhVHJhY2tTdHJlYW1GcmFtZVJlY2VpdmVkSAASMAoDZW9zGAMgASgL", "MiEubGl2ZWtpdC5wcm90by5EYXRhVHJhY2tTdHJlYW1FT1NIAEIICgZkZXRh", "aWwiTAocRGF0YVRyYWNrU3RyZWFtRnJhbWVSZWNlaXZlZBIsCgVmcmFtZRgB", - "IAIoCzIdLmxpdmVraXQucHJvdG8uRGF0YVRyYWNrRnJhbWUiIwoSRGF0YVRy", - "YWNrU3RyZWFtRU9TEg0KBWVycm9yGAEgASgJKocDChJEYXRhVHJhY2tFcnJv", - "ckNvZGUSIQodREFUQV9UUkFDS19FUlJPUl9DT0RFX1VOS05PV04QABIoCiRE", - "QVRBX1RSQUNLX0VSUk9SX0NPREVfSU5WQUxJRF9IQU5ETEUQARIuCipEQVRB", - "X1RSQUNLX0VSUk9SX0NPREVfRFVQTElDQVRFX1RSQUNLX05BTUUQAhIrCidE", - "QVRBX1RSQUNLX0VSUk9SX0NPREVfVFJBQ0tfVU5QVUJMSVNIRUQQAxIlCiFE", - "QVRBX1RSQUNLX0VSUk9SX0NPREVfQlVGRkVSX0ZVTEwQBBItCilEQVRBX1RS", - "QUNLX0VSUk9SX0NPREVfU1VCU0NSSVBUSU9OX0NMT1NFRBAFEiMKH0RBVEFf", - "VFJBQ0tfRVJST1JfQ09ERV9DQU5DRUxMRUQQBhIoCiREQVRBX1RSQUNLX0VS", - "Uk9SX0NPREVfUFJPVE9DT0xfRVJST1IQBxIiCh5EQVRBX1RSQUNLX0VSUk9S", - "X0NPREVfSU5URVJOQUwQCCrzAwoZUHVibGlzaERhdGFUcmFja0Vycm9yQ29k", - "ZRIpCiVQVUJMSVNIX0RBVEFfVFJBQ0tfRVJST1JfQ09ERV9VTktOT1dOEAAS", - "MAosUFVCTElTSF9EQVRBX1RSQUNLX0VSUk9SX0NPREVfSU5WQUxJRF9IQU5E", - "TEUQARIwCixQVUJMSVNIX0RBVEFfVFJBQ0tfRVJST1JfQ09ERV9EVVBMSUNB", - "VEVfTkFNRRACEikKJVBVQkxJU0hfREFUQV9UUkFDS19FUlJPUl9DT0RFX1RJ", - "TUVPVVQQAxIuCipQVUJMSVNIX0RBVEFfVFJBQ0tfRVJST1JfQ09ERV9ESVND", - "T05ORUNURUQQBBItCilQVUJMSVNIX0RBVEFfVFJBQ0tfRVJST1JfQ09ERV9O", - "T1RfQUxMT1dFRBAFEi4KKlBVQkxJU0hfREFUQV9UUkFDS19FUlJPUl9DT0RF", - "X0lOVkFMSURfTkFNRRAGEi8KK1BVQkxJU0hfREFUQV9UUkFDS19FUlJPUl9D", - "T0RFX0xJTUlUX1JFQUNIRUQQBxIwCixQVUJMSVNIX0RBVEFfVFJBQ0tfRVJS", - "T1JfQ09ERV9QUk9UT0NPTF9FUlJPUhAIEioKJlBVQkxJU0hfREFUQV9UUkFD", - "S19FUlJPUl9DT0RFX0lOVEVSTkFMEAkqrwIKHkxvY2FsRGF0YVRyYWNrVHJ5", - "UHVzaEVycm9yQ29kZRIwCixMT0NBTF9EQVRBX1RSQUNLX1RSWV9QVVNIX0VS", - "Uk9SX0NPREVfVU5LTk9XThAAEjcKM0xPQ0FMX0RBVEFfVFJBQ0tfVFJZX1BV", - "U0hfRVJST1JfQ09ERV9JTlZBTElEX0hBTkRMRRABEjoKNkxPQ0FMX0RBVEFf", - "VFJBQ0tfVFJZX1BVU0hfRVJST1JfQ09ERV9UUkFDS19VTlBVQkxJU0hFRBAC", - "EjMKL0xPQ0FMX0RBVEFfVFJBQ0tfVFJZX1BVU0hfRVJST1JfQ09ERV9RVUVV", - "RV9GVUxMEAMSMQotTE9DQUxfREFUQV9UUkFDS19UUllfUFVTSF9FUlJPUl9D", - "T0RFX0lOVEVSTkFMEAQq8AIKG1N1YnNjcmliZURhdGFUcmFja0Vycm9yQ29k", - "ZRIrCidTVUJTQ1JJQkVfREFUQV9UUkFDS19FUlJPUl9DT0RFX1VOS05PV04Q", - "ABIyCi5TVUJTQ1JJQkVfREFUQV9UUkFDS19FUlJPUl9DT0RFX0lOVkFMSURf", - "SEFORExFEAESLworU1VCU0NSSUJFX0RBVEFfVFJBQ0tfRVJST1JfQ09ERV9V", - "TlBVQkxJU0hFRBACEisKJ1NVQlNDUklCRV9EQVRBX1RSQUNLX0VSUk9SX0NP", - "REVfVElNRU9VVBADEjAKLFNVQlNDUklCRV9EQVRBX1RSQUNLX0VSUk9SX0NP", - "REVfRElTQ09OTkVDVEVEEAQSMgouU1VCU0NSSUJFX0RBVEFfVFJBQ0tfRVJS", - "T1JfQ09ERV9QUk9UT0NPTF9FUlJPUhAFEiwKKFNVQlNDUklCRV9EQVRBX1RS", - "QUNLX0VSUk9SX0NPREVfSU5URVJOQUwQBkIQqgINTGl2ZUtpdC5Qcm90bw==")); + "IAIoCzIdLmxpdmVraXQucHJvdG8uRGF0YVRyYWNrRnJhbWUiSwoSRGF0YVRy", + "YWNrU3RyZWFtRU9TEjUKBWVycm9yGAEgASgLMiYubGl2ZWtpdC5wcm90by5T", + "dWJzY3JpYmVEYXRhVHJhY2tFcnJvciqHAwoSRGF0YVRyYWNrRXJyb3JDb2Rl", + "EiEKHURBVEFfVFJBQ0tfRVJST1JfQ09ERV9VTktOT1dOEAASKAokREFUQV9U", + "UkFDS19FUlJPUl9DT0RFX0lOVkFMSURfSEFORExFEAESLgoqREFUQV9UUkFD", + "S19FUlJPUl9DT0RFX0RVUExJQ0FURV9UUkFDS19OQU1FEAISKwonREFUQV9U", + "UkFDS19FUlJPUl9DT0RFX1RSQUNLX1VOUFVCTElTSEVEEAMSJQohREFUQV9U", + "UkFDS19FUlJPUl9DT0RFX0JVRkZFUl9GVUxMEAQSLQopREFUQV9UUkFDS19F", + "UlJPUl9DT0RFX1NVQlNDUklQVElPTl9DTE9TRUQQBRIjCh9EQVRBX1RSQUNL", + "X0VSUk9SX0NPREVfQ0FOQ0VMTEVEEAYSKAokREFUQV9UUkFDS19FUlJPUl9D", + "T0RFX1BST1RPQ09MX0VSUk9SEAcSIgoeREFUQV9UUkFDS19FUlJPUl9DT0RF", + "X0lOVEVSTkFMEAgq8wMKGVB1Ymxpc2hEYXRhVHJhY2tFcnJvckNvZGUSKQol", + "UFVCTElTSF9EQVRBX1RSQUNLX0VSUk9SX0NPREVfVU5LTk9XThAAEjAKLFBV", + "QkxJU0hfREFUQV9UUkFDS19FUlJPUl9DT0RFX0lOVkFMSURfSEFORExFEAES", + "MAosUFVCTElTSF9EQVRBX1RSQUNLX0VSUk9SX0NPREVfRFVQTElDQVRFX05B", + "TUUQAhIpCiVQVUJMSVNIX0RBVEFfVFJBQ0tfRVJST1JfQ09ERV9USU1FT1VU", + "EAMSLgoqUFVCTElTSF9EQVRBX1RSQUNLX0VSUk9SX0NPREVfRElTQ09OTkVD", + "VEVEEAQSLQopUFVCTElTSF9EQVRBX1RSQUNLX0VSUk9SX0NPREVfTk9UX0FM", + "TE9XRUQQBRIuCipQVUJMSVNIX0RBVEFfVFJBQ0tfRVJST1JfQ09ERV9JTlZB", + "TElEX05BTUUQBhIvCitQVUJMSVNIX0RBVEFfVFJBQ0tfRVJST1JfQ09ERV9M", + "SU1JVF9SRUFDSEVEEAcSMAosUFVCTElTSF9EQVRBX1RSQUNLX0VSUk9SX0NP", + "REVfUFJPVE9DT0xfRVJST1IQCBIqCiZQVUJMSVNIX0RBVEFfVFJBQ0tfRVJS", + "T1JfQ09ERV9JTlRFUk5BTBAJKq8CCh5Mb2NhbERhdGFUcmFja1RyeVB1c2hF", + "cnJvckNvZGUSMAosTE9DQUxfREFUQV9UUkFDS19UUllfUFVTSF9FUlJPUl9D", + "T0RFX1VOS05PV04QABI3CjNMT0NBTF9EQVRBX1RSQUNLX1RSWV9QVVNIX0VS", + "Uk9SX0NPREVfSU5WQUxJRF9IQU5ETEUQARI6CjZMT0NBTF9EQVRBX1RSQUNL", + "X1RSWV9QVVNIX0VSUk9SX0NPREVfVFJBQ0tfVU5QVUJMSVNIRUQQAhIzCi9M", + "T0NBTF9EQVRBX1RSQUNLX1RSWV9QVVNIX0VSUk9SX0NPREVfUVVFVUVfRlVM", + "TBADEjEKLUxPQ0FMX0RBVEFfVFJBQ0tfVFJZX1BVU0hfRVJST1JfQ09ERV9J", + "TlRFUk5BTBAEKvACChtTdWJzY3JpYmVEYXRhVHJhY2tFcnJvckNvZGUSKwon", + "U1VCU0NSSUJFX0RBVEFfVFJBQ0tfRVJST1JfQ09ERV9VTktOT1dOEAASMgou", + "U1VCU0NSSUJFX0RBVEFfVFJBQ0tfRVJST1JfQ09ERV9JTlZBTElEX0hBTkRM", + "RRABEi8KK1NVQlNDUklCRV9EQVRBX1RSQUNLX0VSUk9SX0NPREVfVU5QVUJM", + "SVNIRUQQAhIrCidTVUJTQ1JJQkVfREFUQV9UUkFDS19FUlJPUl9DT0RFX1RJ", + "TUVPVVQQAxIwCixTVUJTQ1JJQkVfREFUQV9UUkFDS19FUlJPUl9DT0RFX0RJ", + "U0NPTk5FQ1RFRBAEEjIKLlNVQlNDUklCRV9EQVRBX1RSQUNLX0VSUk9SX0NP", + "REVfUFJPVE9DT0xfRVJST1IQBRIsCihTVUJTQ1JJQkVfREFUQV9UUkFDS19F", + "UlJPUl9DT0RFX0lOVEVSTkFMEAZCEKoCDUxpdmVLaXQuUHJvdG8=")); descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, new pbr::FileDescriptor[] { global::LiveKit.Proto.HandleReflection.Descriptor, }, new pbr::GeneratedClrTypeInfo(new[] {typeof(global::LiveKit.Proto.DataTrackErrorCode), typeof(global::LiveKit.Proto.PublishDataTrackErrorCode), typeof(global::LiveKit.Proto.LocalDataTrackTryPushErrorCode), typeof(global::LiveKit.Proto.SubscribeDataTrackErrorCode), }, null, new pbr::GeneratedClrTypeInfo[] { @@ -7120,7 +7121,7 @@ public DataTrackStreamEOS() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public DataTrackStreamEOS(DataTrackStreamEOS other) : this() { - error_ = other.error_; + error_ = other.error_ != null ? other.error_.Clone() : null; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } @@ -7132,33 +7133,19 @@ public DataTrackStreamEOS Clone() { /// Field number for the "error" field. public const int ErrorFieldNumber = 1; - private readonly static string ErrorDefaultValue = ""; - - private string error_; + private global::LiveKit.Proto.SubscribeDataTrackError error_; /// - /// If the track could not be subscribed to, a message describing the error. - /// Absent if the stream ended normally. + /// Present if stream ended before any frames were emitted due to subscription establishment failing. + /// Absent if the stream ended normally (i.e., due to the track being unpublished). /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Error { - get { return error_ ?? ErrorDefaultValue; } + public global::LiveKit.Proto.SubscribeDataTrackError Error { + get { return error_; } set { - error_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + error_ = value; } } - /// Gets whether the "error" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasError { - get { return error_ != null; } - } - /// Clears the value of the "error" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearError() { - error_ = null; - } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -7175,7 +7162,7 @@ public bool Equals(DataTrackStreamEOS other) { if (ReferenceEquals(other, this)) { return true; } - if (Error != other.Error) return false; + if (!object.Equals(Error, other.Error)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -7183,7 +7170,7 @@ public bool Equals(DataTrackStreamEOS other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (HasError) hash ^= Error.GetHashCode(); + if (error_ != null) hash ^= Error.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -7202,9 +7189,9 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (HasError) { + if (error_ != null) { output.WriteRawTag(10); - output.WriteString(Error); + output.WriteMessage(Error); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -7216,9 +7203,9 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (HasError) { + if (error_ != null) { output.WriteRawTag(10); - output.WriteString(Error); + output.WriteMessage(Error); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -7230,8 +7217,8 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (HasError) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Error); + if (error_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(Error); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -7245,8 +7232,11 @@ public void MergeFrom(DataTrackStreamEOS other) { if (other == null) { return; } - if (other.HasError) { - Error = other.Error; + if (other.error_ != null) { + if (error_ == null) { + Error = new global::LiveKit.Proto.SubscribeDataTrackError(); + } + Error.MergeFrom(other.Error); } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -7268,7 +7258,10 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { - Error = input.ReadString(); + if (error_ == null) { + Error = new global::LiveKit.Proto.SubscribeDataTrackError(); + } + input.ReadMessage(Error); break; } } @@ -7291,7 +7284,10 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 10: { - Error = input.ReadString(); + if (error_ == null) { + Error = new global::LiveKit.Proto.SubscribeDataTrackError(); + } + input.ReadMessage(Error); break; } } diff --git a/Runtime/Scripts/Proto/Ffi.cs b/Runtime/Scripts/Proto/Ffi.cs index b0a8bdbb..7485de29 100644 --- a/Runtime/Scripts/Proto/Ffi.cs +++ b/Runtime/Scripts/Proto/Ffi.cs @@ -27,7 +27,7 @@ static FfiReflection() { "CglmZmkucHJvdG8SDWxpdmVraXQucHJvdG8aCmUyZWUucHJvdG8aC3RyYWNr", "LnByb3RvGhd0cmFja19wdWJsaWNhdGlvbi5wcm90bxoKcm9vbS5wcm90bxoR", "dmlkZW9fZnJhbWUucHJvdG8aEWF1ZGlvX2ZyYW1lLnByb3RvGglycGMucHJv", - "dG8aEWRhdGFfc3RyZWFtLnByb3RvGhBkYXRhX3RyYWNrLnByb3RvIqAqCgpG", + "dG8aEWRhdGFfc3RyZWFtLnByb3RvGhBkYXRhX3RyYWNrLnByb3RvIuUqCgpG", "ZmlSZXF1ZXN0EjAKB2Rpc3Bvc2UYAiABKAsyHS5saXZla2l0LnByb3RvLkRp", "c3Bvc2VSZXF1ZXN0SAASMAoHY29ubmVjdBgDIAEoCzIdLmxpdmVraXQucHJv", "dG8uQ29ubmVjdFJlcXVlc3RIABI2CgpkaXNjb25uZWN0GAQgASgLMiAubGl2", @@ -147,207 +147,211 @@ static FfiReflection() { "ZXN0SAASWgoecmVtb3RlX2RhdGFfdHJhY2tfaXNfcHVibGlzaGVkGEogASgL", "MjAubGl2ZWtpdC5wcm90by5SZW1vdGVEYXRhVHJhY2tJc1B1Ymxpc2hlZFJl", "cXVlc3RIABJLChZkYXRhX3RyYWNrX3N0cmVhbV9yZWFkGEsgASgLMikubGl2", - "ZWtpdC5wcm90by5EYXRhVHJhY2tTdHJlYW1SZWFkUmVxdWVzdEgAQgkKB21l", - "c3NhZ2UipioKC0ZmaVJlc3BvbnNlEjEKB2Rpc3Bvc2UYAiABKAsyHi5saXZl", - "a2l0LnByb3RvLkRpc3Bvc2VSZXNwb25zZUgAEjEKB2Nvbm5lY3QYAyABKAsy", - "Hi5saXZla2l0LnByb3RvLkNvbm5lY3RSZXNwb25zZUgAEjcKCmRpc2Nvbm5l", - "Y3QYBCABKAsyIS5saXZla2l0LnByb3RvLkRpc2Nvbm5lY3RSZXNwb25zZUgA", - "EjwKDXB1Ymxpc2hfdHJhY2sYBSABKAsyIy5saXZla2l0LnByb3RvLlB1Ymxp", - "c2hUcmFja1Jlc3BvbnNlSAASQAoPdW5wdWJsaXNoX3RyYWNrGAYgASgLMiUu", - "bGl2ZWtpdC5wcm90by5VbnB1Ymxpc2hUcmFja1Jlc3BvbnNlSAASOgoMcHVi", - "bGlzaF9kYXRhGAcgASgLMiIubGl2ZWtpdC5wcm90by5QdWJsaXNoRGF0YVJl", - "c3BvbnNlSAASPgoOc2V0X3N1YnNjcmliZWQYCCABKAsyJC5saXZla2l0LnBy", - "b3RvLlNldFN1YnNjcmliZWRSZXNwb25zZUgAEkUKEnNldF9sb2NhbF9tZXRh", - "ZGF0YRgJIAEoCzInLmxpdmVraXQucHJvdG8uU2V0TG9jYWxNZXRhZGF0YVJl", - "c3BvbnNlSAASPQoOc2V0X2xvY2FsX25hbWUYCiABKAsyIy5saXZla2l0LnBy", - "b3RvLlNldExvY2FsTmFtZVJlc3BvbnNlSAASSQoUc2V0X2xvY2FsX2F0dHJp", - "YnV0ZXMYCyABKAsyKS5saXZla2l0LnByb3RvLlNldExvY2FsQXR0cmlidXRl", - "c1Jlc3BvbnNlSAASQwoRZ2V0X3Nlc3Npb25fc3RhdHMYDCABKAsyJi5saXZl", - "a2l0LnByb3RvLkdldFNlc3Npb25TdGF0c1Jlc3BvbnNlSAASTAoVcHVibGlz", - "aF90cmFuc2NyaXB0aW9uGA0gASgLMisubGl2ZWtpdC5wcm90by5QdWJsaXNo", - "VHJhbnNjcmlwdGlvblJlc3BvbnNlSAASQQoQcHVibGlzaF9zaXBfZHRtZhgO", - "IAEoCzIlLmxpdmVraXQucHJvdG8uUHVibGlzaFNpcER0bWZSZXNwb25zZUgA", - "EkUKEmNyZWF0ZV92aWRlb190cmFjaxgPIAEoCzInLmxpdmVraXQucHJvdG8u", - "Q3JlYXRlVmlkZW9UcmFja1Jlc3BvbnNlSAASRQoSY3JlYXRlX2F1ZGlvX3Ry", - "YWNrGBAgASgLMicubGl2ZWtpdC5wcm90by5DcmVhdGVBdWRpb1RyYWNrUmVz", - "cG9uc2VIABJBChBsb2NhbF90cmFja19tdXRlGBEgASgLMiUubGl2ZWtpdC5w", - "cm90by5Mb2NhbFRyYWNrTXV0ZVJlc3BvbnNlSAASRwoTZW5hYmxlX3JlbW90", - "ZV90cmFjaxgSIAEoCzIoLmxpdmVraXQucHJvdG8uRW5hYmxlUmVtb3RlVHJh", - "Y2tSZXNwb25zZUgAEjQKCWdldF9zdGF0cxgTIAEoCzIfLmxpdmVraXQucHJv", - "dG8uR2V0U3RhdHNSZXNwb25zZUgAEmQKInNldF90cmFja19zdWJzY3JpcHRp", - "b25fcGVybWlzc2lvbnMYLyABKAsyNi5saXZla2l0LnByb3RvLlNldFRyYWNr", - "U3Vic2NyaXB0aW9uUGVybWlzc2lvbnNSZXNwb25zZUgAEkEKEG5ld192aWRl", - "b19zdHJlYW0YFCABKAsyJS5saXZla2l0LnByb3RvLk5ld1ZpZGVvU3RyZWFt", - "UmVzcG9uc2VIABJBChBuZXdfdmlkZW9fc291cmNlGBUgASgLMiUubGl2ZWtp", - "dC5wcm90by5OZXdWaWRlb1NvdXJjZVJlc3BvbnNlSAASRwoTY2FwdHVyZV92", - "aWRlb19mcmFtZRgWIAEoCzIoLmxpdmVraXQucHJvdG8uQ2FwdHVyZVZpZGVv", - "RnJhbWVSZXNwb25zZUgAEjwKDXZpZGVvX2NvbnZlcnQYFyABKAsyIy5saXZl", - "a2l0LnByb3RvLlZpZGVvQ29udmVydFJlc3BvbnNlSAASWgoddmlkZW9fc3Ry", - "ZWFtX2Zyb21fcGFydGljaXBhbnQYGCABKAsyMS5saXZla2l0LnByb3RvLlZp", - "ZGVvU3RyZWFtRnJvbVBhcnRpY2lwYW50UmVzcG9uc2VIABJBChBuZXdfYXVk", - "aW9fc3RyZWFtGBkgASgLMiUubGl2ZWtpdC5wcm90by5OZXdBdWRpb1N0cmVh", - "bVJlc3BvbnNlSAASQQoQbmV3X2F1ZGlvX3NvdXJjZRgaIAEoCzIlLmxpdmVr", - "aXQucHJvdG8uTmV3QXVkaW9Tb3VyY2VSZXNwb25zZUgAEkcKE2NhcHR1cmVf", - "YXVkaW9fZnJhbWUYGyABKAsyKC5saXZla2l0LnByb3RvLkNhcHR1cmVBdWRp", - "b0ZyYW1lUmVzcG9uc2VIABJFChJjbGVhcl9hdWRpb19idWZmZXIYHCABKAsy", - "Jy5saXZla2l0LnByb3RvLkNsZWFyQXVkaW9CdWZmZXJSZXNwb25zZUgAEkcK", - "E25ld19hdWRpb19yZXNhbXBsZXIYHSABKAsyKC5saXZla2l0LnByb3RvLk5l", - "d0F1ZGlvUmVzYW1wbGVyUmVzcG9uc2VIABJFChJyZW1peF9hbmRfcmVzYW1w", - "bGUYHiABKAsyJy5saXZla2l0LnByb3RvLlJlbWl4QW5kUmVzYW1wbGVSZXNw", - "b25zZUgAEloKHWF1ZGlvX3N0cmVhbV9mcm9tX3BhcnRpY2lwYW50GB8gASgL", - "MjEubGl2ZWtpdC5wcm90by5BdWRpb1N0cmVhbUZyb21QYXJ0aWNpcGFudFJl", - "c3BvbnNlSAASKwoEZTJlZRggIAEoCzIbLmxpdmVraXQucHJvdG8uRTJlZVJl", - "c3BvbnNlSAASQwoRbmV3X3NveF9yZXNhbXBsZXIYISABKAsyJi5saXZla2l0", - "LnByb3RvLk5ld1NveFJlc2FtcGxlclJlc3BvbnNlSAASRQoScHVzaF9zb3hf", - "cmVzYW1wbGVyGCIgASgLMicubGl2ZWtpdC5wcm90by5QdXNoU294UmVzYW1w", - "bGVyUmVzcG9uc2VIABJHChNmbHVzaF9zb3hfcmVzYW1wbGVyGCMgASgLMigu", - "bGl2ZWtpdC5wcm90by5GbHVzaFNveFJlc2FtcGxlclJlc3BvbnNlSAASQwoR", - "c2VuZF9jaGF0X21lc3NhZ2UYJCABKAsyJi5saXZla2l0LnByb3RvLlNlbmRD", - "aGF0TWVzc2FnZVJlc3BvbnNlSAASOAoLcGVyZm9ybV9ycGMYJSABKAsyIS5s", - "aXZla2l0LnByb3RvLlBlcmZvcm1ScGNSZXNwb25zZUgAEkcKE3JlZ2lzdGVy", - "X3JwY19tZXRob2QYJiABKAsyKC5saXZla2l0LnByb3RvLlJlZ2lzdGVyUnBj", - "TWV0aG9kUmVzcG9uc2VIABJLChV1bnJlZ2lzdGVyX3JwY19tZXRob2QYJyAB", - "KAsyKi5saXZla2l0LnByb3RvLlVucmVnaXN0ZXJScGNNZXRob2RSZXNwb25z", - "ZUgAElwKHnJwY19tZXRob2RfaW52b2NhdGlvbl9yZXNwb25zZRgoIAEoCzIy", - "LmxpdmVraXQucHJvdG8uUnBjTWV0aG9kSW52b2NhdGlvblJlc3BvbnNlUmVz", - "cG9uc2VIABJeCh9lbmFibGVfcmVtb3RlX3RyYWNrX3B1YmxpY2F0aW9uGCkg", - "ASgLMjMubGl2ZWtpdC5wcm90by5FbmFibGVSZW1vdGVUcmFja1B1YmxpY2F0", - "aW9uUmVzcG9uc2VIABJxCil1cGRhdGVfcmVtb3RlX3RyYWNrX3B1YmxpY2F0", - "aW9uX2RpbWVuc2lvbhgqIAEoCzI8LmxpdmVraXQucHJvdG8uVXBkYXRlUmVt", - "b3RlVHJhY2tQdWJsaWNhdGlvbkRpbWVuc2lvblJlc3BvbnNlSAASRQoSc2Vu", - "ZF9zdHJlYW1faGVhZGVyGCsgASgLMicubGl2ZWtpdC5wcm90by5TZW5kU3Ry", - "ZWFtSGVhZGVyUmVzcG9uc2VIABJDChFzZW5kX3N0cmVhbV9jaHVuaxgsIAEo", - "CzImLmxpdmVraXQucHJvdG8uU2VuZFN0cmVhbUNodW5rUmVzcG9uc2VIABJH", - "ChNzZW5kX3N0cmVhbV90cmFpbGVyGC0gASgLMigubGl2ZWtpdC5wcm90by5T", - "ZW5kU3RyZWFtVHJhaWxlclJlc3BvbnNlSAASeQouc2V0X2RhdGFfY2hhbm5l", - "bF9idWZmZXJlZF9hbW91bnRfbG93X3RocmVzaG9sZBguIAEoCzI/LmxpdmVr", - "aXQucHJvdG8uU2V0RGF0YUNoYW5uZWxCdWZmZXJlZEFtb3VudExvd1RocmVz", - "aG9sZFJlc3BvbnNlSAASUAoYbG9hZF9hdWRpb19maWx0ZXJfcGx1Z2luGDAg", - "ASgLMiwubGl2ZWtpdC5wcm90by5Mb2FkQXVkaW9GaWx0ZXJQbHVnaW5SZXNw", - "b25zZUgAEjAKB25ld19hcG0YMSABKAsyHS5saXZla2l0LnByb3RvLk5ld0Fw", - "bVJlc3BvbnNlSAASRQoSYXBtX3Byb2Nlc3Nfc3RyZWFtGDIgASgLMicubGl2", - "ZWtpdC5wcm90by5BcG1Qcm9jZXNzU3RyZWFtUmVzcG9uc2VIABJUChphcG1f", - "cHJvY2Vzc19yZXZlcnNlX3N0cmVhbRgzIAEoCzIuLmxpdmVraXQucHJvdG8u", - "QXBtUHJvY2Vzc1JldmVyc2VTdHJlYW1SZXNwb25zZUgAEkgKFGFwbV9zZXRf", - "c3RyZWFtX2RlbGF5GDQgASgLMigubGl2ZWtpdC5wcm90by5BcG1TZXRTdHJl", - "YW1EZWxheVJlc3BvbnNlSAASVwoVYnl0ZV9yZWFkX2luY3JlbWVudGFsGDUg", - "ASgLMjYubGl2ZWtpdC5wcm90by5CeXRlU3RyZWFtUmVhZGVyUmVhZEluY3Jl", - "bWVudGFsUmVzcG9uc2VIABJHCg1ieXRlX3JlYWRfYWxsGDYgASgLMi4ubGl2", - "ZWtpdC5wcm90by5CeXRlU3RyZWFtUmVhZGVyUmVhZEFsbFJlc3BvbnNlSAAS", - "UAoSYnl0ZV93cml0ZV90b19maWxlGDcgASgLMjIubGl2ZWtpdC5wcm90by5C", - "eXRlU3RyZWFtUmVhZGVyV3JpdGVUb0ZpbGVSZXNwb25zZUgAElcKFXRleHRf", - "cmVhZF9pbmNyZW1lbnRhbBg4IAEoCzI2LmxpdmVraXQucHJvdG8uVGV4dFN0", - "cmVhbVJlYWRlclJlYWRJbmNyZW1lbnRhbFJlc3BvbnNlSAASRwoNdGV4dF9y", - "ZWFkX2FsbBg5IAEoCzIuLmxpdmVraXQucHJvdG8uVGV4dFN0cmVhbVJlYWRl", - "clJlYWRBbGxSZXNwb25zZUgAEjoKCXNlbmRfZmlsZRg6IAEoCzIlLmxpdmVr", - "aXQucHJvdG8uU3RyZWFtU2VuZEZpbGVSZXNwb25zZUgAEjoKCXNlbmRfdGV4", - "dBg7IAEoCzIlLmxpdmVraXQucHJvdG8uU3RyZWFtU2VuZFRleHRSZXNwb25z", - "ZUgAEkEKEGJ5dGVfc3RyZWFtX29wZW4YPCABKAsyJS5saXZla2l0LnByb3Rv", - "LkJ5dGVTdHJlYW1PcGVuUmVzcG9uc2VIABJJChFieXRlX3N0cmVhbV93cml0", - "ZRg9IAEoCzIsLmxpdmVraXQucHJvdG8uQnl0ZVN0cmVhbVdyaXRlcldyaXRl", - "UmVzcG9uc2VIABJJChFieXRlX3N0cmVhbV9jbG9zZRg+IAEoCzIsLmxpdmVr", - "aXQucHJvdG8uQnl0ZVN0cmVhbVdyaXRlckNsb3NlUmVzcG9uc2VIABJBChB0", - "ZXh0X3N0cmVhbV9vcGVuGD8gASgLMiUubGl2ZWtpdC5wcm90by5UZXh0U3Ry", - "ZWFtT3BlblJlc3BvbnNlSAASSQoRdGV4dF9zdHJlYW1fd3JpdGUYQCABKAsy", - "LC5saXZla2l0LnByb3RvLlRleHRTdHJlYW1Xcml0ZXJXcml0ZVJlc3BvbnNl", - "SAASSQoRdGV4dF9zdHJlYW1fY2xvc2UYQSABKAsyLC5saXZla2l0LnByb3Rv", - "LlRleHRTdHJlYW1Xcml0ZXJDbG9zZVJlc3BvbnNlSAASPAoKc2VuZF9ieXRl", - "cxhCIAEoCzImLmxpdmVraXQucHJvdG8uU3RyZWFtU2VuZEJ5dGVzUmVzcG9u", - "c2VIABJnCiRzZXRfcmVtb3RlX3RyYWNrX3B1YmxpY2F0aW9uX3F1YWxpdHkY", - "QyABKAsyNy5saXZla2l0LnByb3RvLlNldFJlbW90ZVRyYWNrUHVibGljYXRp", - "b25RdWFsaXR5UmVzcG9uc2VIABJFChJwdWJsaXNoX2RhdGFfdHJhY2sYRCAB", - "KAsyJy5saXZla2l0LnByb3RvLlB1Ymxpc2hEYXRhVHJhY2tSZXNwb25zZUgA", - "ElEKGWxvY2FsX2RhdGFfdHJhY2tfdHJ5X3B1c2gYRSABKAsyLC5saXZla2l0", - "LnByb3RvLkxvY2FsRGF0YVRyYWNrVHJ5UHVzaFJlc3BvbnNlSAASVAoabG9j", - "YWxfZGF0YV90cmFja191bnB1Ymxpc2gYRiABKAsyLi5saXZla2l0LnByb3Rv", - "LkxvY2FsRGF0YVRyYWNrVW5wdWJsaXNoUmVzcG9uc2VIABJZCh1sb2NhbF9k", - "YXRhX3RyYWNrX2lzX3B1Ymxpc2hlZBhHIAEoCzIwLmxpdmVraXQucHJvdG8u", - "TG9jYWxEYXRhVHJhY2tJc1B1Ymxpc2hlZFJlc3BvbnNlSAASSQoUc3Vic2Ny", - "aWJlX2RhdGFfdHJhY2sYSCABKAsyKS5saXZla2l0LnByb3RvLlN1YnNjcmli", - "ZURhdGFUcmFja1Jlc3BvbnNlSAASWwoecmVtb3RlX2RhdGFfdHJhY2tfaXNf", - "cHVibGlzaGVkGEkgASgLMjEubGl2ZWtpdC5wcm90by5SZW1vdGVEYXRhVHJh", - "Y2tJc1B1Ymxpc2hlZFJlc3BvbnNlSAASTAoWZGF0YV90cmFja19zdHJlYW1f", - "cmVhZBhKIAEoCzIqLmxpdmVraXQucHJvdG8uRGF0YVRyYWNrU3RyZWFtUmVh", - "ZFJlc3BvbnNlSABCCQoHbWVzc2FnZSKUFgoIRmZpRXZlbnQSLgoKcm9vbV9l", - "dmVudBgBIAEoCzIYLmxpdmVraXQucHJvdG8uUm9vbUV2ZW50SAASMAoLdHJh", - "Y2tfZXZlbnQYAiABKAsyGS5saXZla2l0LnByb3RvLlRyYWNrRXZlbnRIABI9", - "ChJ2aWRlb19zdHJlYW1fZXZlbnQYAyABKAsyHy5saXZla2l0LnByb3RvLlZp", - "ZGVvU3RyZWFtRXZlbnRIABI9ChJhdWRpb19zdHJlYW1fZXZlbnQYBCABKAsy", - "Hy5saXZla2l0LnByb3RvLkF1ZGlvU3RyZWFtRXZlbnRIABIxCgdjb25uZWN0", - "GAUgASgLMh4ubGl2ZWtpdC5wcm90by5Db25uZWN0Q2FsbGJhY2tIABI3Cgpk", - "aXNjb25uZWN0GAcgASgLMiEubGl2ZWtpdC5wcm90by5EaXNjb25uZWN0Q2Fs", - "bGJhY2tIABIxCgdkaXNwb3NlGAggASgLMh4ubGl2ZWtpdC5wcm90by5EaXNw", - "b3NlQ2FsbGJhY2tIABI8Cg1wdWJsaXNoX3RyYWNrGAkgASgLMiMubGl2ZWtp", - "dC5wcm90by5QdWJsaXNoVHJhY2tDYWxsYmFja0gAEkAKD3VucHVibGlzaF90", - "cmFjaxgKIAEoCzIlLmxpdmVraXQucHJvdG8uVW5wdWJsaXNoVHJhY2tDYWxs", - "YmFja0gAEjoKDHB1Ymxpc2hfZGF0YRgLIAEoCzIiLmxpdmVraXQucHJvdG8u", - "UHVibGlzaERhdGFDYWxsYmFja0gAEkwKFXB1Ymxpc2hfdHJhbnNjcmlwdGlv", - "bhgMIAEoCzIrLmxpdmVraXQucHJvdG8uUHVibGlzaFRyYW5zY3JpcHRpb25D", - "YWxsYmFja0gAEkcKE2NhcHR1cmVfYXVkaW9fZnJhbWUYDSABKAsyKC5saXZl", - "a2l0LnByb3RvLkNhcHR1cmVBdWRpb0ZyYW1lQ2FsbGJhY2tIABJFChJzZXRf", - "bG9jYWxfbWV0YWRhdGEYDiABKAsyJy5saXZla2l0LnByb3RvLlNldExvY2Fs", - "TWV0YWRhdGFDYWxsYmFja0gAEj0KDnNldF9sb2NhbF9uYW1lGA8gASgLMiMu", - "bGl2ZWtpdC5wcm90by5TZXRMb2NhbE5hbWVDYWxsYmFja0gAEkkKFHNldF9s", - "b2NhbF9hdHRyaWJ1dGVzGBAgASgLMikubGl2ZWtpdC5wcm90by5TZXRMb2Nh", - "bEF0dHJpYnV0ZXNDYWxsYmFja0gAEjQKCWdldF9zdGF0cxgRIAEoCzIfLmxp", - "dmVraXQucHJvdG8uR2V0U3RhdHNDYWxsYmFja0gAEicKBGxvZ3MYEiABKAsy", - "Fy5saXZla2l0LnByb3RvLkxvZ0JhdGNoSAASQwoRZ2V0X3Nlc3Npb25fc3Rh", - "dHMYEyABKAsyJi5saXZla2l0LnByb3RvLkdldFNlc3Npb25TdGF0c0NhbGxi", - "YWNrSAASJQoFcGFuaWMYFCABKAsyFC5saXZla2l0LnByb3RvLlBhbmljSAAS", - "QQoQcHVibGlzaF9zaXBfZHRtZhgVIAEoCzIlLmxpdmVraXQucHJvdG8uUHVi", - "bGlzaFNpcER0bWZDYWxsYmFja0gAEj4KDGNoYXRfbWVzc2FnZRgWIAEoCzIm", - "LmxpdmVraXQucHJvdG8uU2VuZENoYXRNZXNzYWdlQ2FsbGJhY2tIABI4Cgtw", - "ZXJmb3JtX3JwYxgXIAEoCzIhLmxpdmVraXQucHJvdG8uUGVyZm9ybVJwY0Nh", - "bGxiYWNrSAASSAoVcnBjX21ldGhvZF9pbnZvY2F0aW9uGBggASgLMicubGl2", - "ZWtpdC5wcm90by5ScGNNZXRob2RJbnZvY2F0aW9uRXZlbnRIABJFChJzZW5k", - "X3N0cmVhbV9oZWFkZXIYGSABKAsyJy5saXZla2l0LnByb3RvLlNlbmRTdHJl", - "YW1IZWFkZXJDYWxsYmFja0gAEkMKEXNlbmRfc3RyZWFtX2NodW5rGBogASgL", - "MiYubGl2ZWtpdC5wcm90by5TZW5kU3RyZWFtQ2h1bmtDYWxsYmFja0gAEkcK", - "E3NlbmRfc3RyZWFtX3RyYWlsZXIYGyABKAsyKC5saXZla2l0LnByb3RvLlNl", - "bmRTdHJlYW1UcmFpbGVyQ2FsbGJhY2tIABJIChhieXRlX3N0cmVhbV9yZWFk", - "ZXJfZXZlbnQYHCABKAsyJC5saXZla2l0LnByb3RvLkJ5dGVTdHJlYW1SZWFk", - "ZXJFdmVudEgAElUKG2J5dGVfc3RyZWFtX3JlYWRlcl9yZWFkX2FsbBgdIAEo", - "CzIuLmxpdmVraXQucHJvdG8uQnl0ZVN0cmVhbVJlYWRlclJlYWRBbGxDYWxs", - "YmFja0gAEl4KIGJ5dGVfc3RyZWFtX3JlYWRlcl93cml0ZV90b19maWxlGB4g", - "ASgLMjIubGl2ZWtpdC5wcm90by5CeXRlU3RyZWFtUmVhZGVyV3JpdGVUb0Zp", - "bGVDYWxsYmFja0gAEkEKEGJ5dGVfc3RyZWFtX29wZW4YHyABKAsyJS5saXZl", - "a2l0LnByb3RvLkJ5dGVTdHJlYW1PcGVuQ2FsbGJhY2tIABJQChhieXRlX3N0", - "cmVhbV93cml0ZXJfd3JpdGUYICABKAsyLC5saXZla2l0LnByb3RvLkJ5dGVT", - "dHJlYW1Xcml0ZXJXcml0ZUNhbGxiYWNrSAASUAoYYnl0ZV9zdHJlYW1fd3Jp", - "dGVyX2Nsb3NlGCEgASgLMiwubGl2ZWtpdC5wcm90by5CeXRlU3RyZWFtV3Jp", - "dGVyQ2xvc2VDYWxsYmFja0gAEjoKCXNlbmRfZmlsZRgiIAEoCzIlLmxpdmVr", - "aXQucHJvdG8uU3RyZWFtU2VuZEZpbGVDYWxsYmFja0gAEkgKGHRleHRfc3Ry", - "ZWFtX3JlYWRlcl9ldmVudBgjIAEoCzIkLmxpdmVraXQucHJvdG8uVGV4dFN0", - "cmVhbVJlYWRlckV2ZW50SAASVQobdGV4dF9zdHJlYW1fcmVhZGVyX3JlYWRf", - "YWxsGCQgASgLMi4ubGl2ZWtpdC5wcm90by5UZXh0U3RyZWFtUmVhZGVyUmVh", - "ZEFsbENhbGxiYWNrSAASQQoQdGV4dF9zdHJlYW1fb3BlbhglIAEoCzIlLmxp", - "dmVraXQucHJvdG8uVGV4dFN0cmVhbU9wZW5DYWxsYmFja0gAElAKGHRleHRf", - "c3RyZWFtX3dyaXRlcl93cml0ZRgmIAEoCzIsLmxpdmVraXQucHJvdG8uVGV4", - "dFN0cmVhbVdyaXRlcldyaXRlQ2FsbGJhY2tIABJQChh0ZXh0X3N0cmVhbV93", - "cml0ZXJfY2xvc2UYJyABKAsyLC5saXZla2l0LnByb3RvLlRleHRTdHJlYW1X", - "cml0ZXJDbG9zZUNhbGxiYWNrSAASOgoJc2VuZF90ZXh0GCggASgLMiUubGl2", - "ZWtpdC5wcm90by5TdHJlYW1TZW5kVGV4dENhbGxiYWNrSAASPAoKc2VuZF9i", - "eXRlcxgpIAEoCzImLmxpdmVraXQucHJvdG8uU3RyZWFtU2VuZEJ5dGVzQ2Fs", - "bGJhY2tIABJFChJwdWJsaXNoX2RhdGFfdHJhY2sYKiABKAsyJy5saXZla2l0", - "LnByb3RvLlB1Ymxpc2hEYXRhVHJhY2tDYWxsYmFja0gAEkYKF2RhdGFfdHJh", - "Y2tfc3RyZWFtX2V2ZW50GCsgASgLMiMubGl2ZWtpdC5wcm90by5EYXRhVHJh", - "Y2tTdHJlYW1FdmVudEgAQgkKB21lc3NhZ2UiHwoORGlzcG9zZVJlcXVlc3QS", - "DQoFYXN5bmMYASACKAgiIwoPRGlzcG9zZVJlc3BvbnNlEhAKCGFzeW5jX2lk", - "GAEgASgEIiMKD0Rpc3Bvc2VDYWxsYmFjaxIQCghhc3luY19pZBgBIAIoBCKF", - "AQoJTG9nUmVjb3JkEiYKBWxldmVsGAEgAigOMhcubGl2ZWtpdC5wcm90by5M", - "b2dMZXZlbBIOCgZ0YXJnZXQYAiACKAkSEwoLbW9kdWxlX3BhdGgYAyABKAkS", - "DAoEZmlsZRgEIAEoCRIMCgRsaW5lGAUgASgNEg8KB21lc3NhZ2UYBiACKAki", - "NQoITG9nQmF0Y2gSKQoHcmVjb3JkcxgBIAMoCzIYLmxpdmVraXQucHJvdG8u", - "TG9nUmVjb3JkIhgKBVBhbmljEg8KB21lc3NhZ2UYASACKAkqUwoITG9nTGV2", - "ZWwSDQoJTE9HX0VSUk9SEAASDAoITE9HX1dBUk4QARIMCghMT0dfSU5GTxAC", - "Eg0KCUxPR19ERUJVRxADEg0KCUxPR19UUkFDRRAEQhCqAg1MaXZlS2l0LlBy", - "b3Rv")); + "ZWtpdC5wcm90by5EYXRhVHJhY2tTdHJlYW1SZWFkUmVxdWVzdEgAEkMKEXNp", + "bXVsYXRlX3NjZW5hcmlvGEwgASgLMiYubGl2ZWtpdC5wcm90by5TaW11bGF0", + "ZVNjZW5hcmlvUmVxdWVzdEgAQgkKB21lc3NhZ2Ui7CoKC0ZmaVJlc3BvbnNl", + "EjEKB2Rpc3Bvc2UYAiABKAsyHi5saXZla2l0LnByb3RvLkRpc3Bvc2VSZXNw", + "b25zZUgAEjEKB2Nvbm5lY3QYAyABKAsyHi5saXZla2l0LnByb3RvLkNvbm5l", + "Y3RSZXNwb25zZUgAEjcKCmRpc2Nvbm5lY3QYBCABKAsyIS5saXZla2l0LnBy", + "b3RvLkRpc2Nvbm5lY3RSZXNwb25zZUgAEjwKDXB1Ymxpc2hfdHJhY2sYBSAB", + "KAsyIy5saXZla2l0LnByb3RvLlB1Ymxpc2hUcmFja1Jlc3BvbnNlSAASQAoP", + "dW5wdWJsaXNoX3RyYWNrGAYgASgLMiUubGl2ZWtpdC5wcm90by5VbnB1Ymxp", + "c2hUcmFja1Jlc3BvbnNlSAASOgoMcHVibGlzaF9kYXRhGAcgASgLMiIubGl2", + "ZWtpdC5wcm90by5QdWJsaXNoRGF0YVJlc3BvbnNlSAASPgoOc2V0X3N1YnNj", + "cmliZWQYCCABKAsyJC5saXZla2l0LnByb3RvLlNldFN1YnNjcmliZWRSZXNw", + "b25zZUgAEkUKEnNldF9sb2NhbF9tZXRhZGF0YRgJIAEoCzInLmxpdmVraXQu", + "cHJvdG8uU2V0TG9jYWxNZXRhZGF0YVJlc3BvbnNlSAASPQoOc2V0X2xvY2Fs", + "X25hbWUYCiABKAsyIy5saXZla2l0LnByb3RvLlNldExvY2FsTmFtZVJlc3Bv", + "bnNlSAASSQoUc2V0X2xvY2FsX2F0dHJpYnV0ZXMYCyABKAsyKS5saXZla2l0", + "LnByb3RvLlNldExvY2FsQXR0cmlidXRlc1Jlc3BvbnNlSAASQwoRZ2V0X3Nl", + "c3Npb25fc3RhdHMYDCABKAsyJi5saXZla2l0LnByb3RvLkdldFNlc3Npb25T", + "dGF0c1Jlc3BvbnNlSAASTAoVcHVibGlzaF90cmFuc2NyaXB0aW9uGA0gASgL", + "MisubGl2ZWtpdC5wcm90by5QdWJsaXNoVHJhbnNjcmlwdGlvblJlc3BvbnNl", + "SAASQQoQcHVibGlzaF9zaXBfZHRtZhgOIAEoCzIlLmxpdmVraXQucHJvdG8u", + "UHVibGlzaFNpcER0bWZSZXNwb25zZUgAEkUKEmNyZWF0ZV92aWRlb190cmFj", + "axgPIAEoCzInLmxpdmVraXQucHJvdG8uQ3JlYXRlVmlkZW9UcmFja1Jlc3Bv", + "bnNlSAASRQoSY3JlYXRlX2F1ZGlvX3RyYWNrGBAgASgLMicubGl2ZWtpdC5w", + "cm90by5DcmVhdGVBdWRpb1RyYWNrUmVzcG9uc2VIABJBChBsb2NhbF90cmFj", + "a19tdXRlGBEgASgLMiUubGl2ZWtpdC5wcm90by5Mb2NhbFRyYWNrTXV0ZVJl", + "c3BvbnNlSAASRwoTZW5hYmxlX3JlbW90ZV90cmFjaxgSIAEoCzIoLmxpdmVr", + "aXQucHJvdG8uRW5hYmxlUmVtb3RlVHJhY2tSZXNwb25zZUgAEjQKCWdldF9z", + "dGF0cxgTIAEoCzIfLmxpdmVraXQucHJvdG8uR2V0U3RhdHNSZXNwb25zZUgA", + "EmQKInNldF90cmFja19zdWJzY3JpcHRpb25fcGVybWlzc2lvbnMYLyABKAsy", + "Ni5saXZla2l0LnByb3RvLlNldFRyYWNrU3Vic2NyaXB0aW9uUGVybWlzc2lv", + "bnNSZXNwb25zZUgAEkEKEG5ld192aWRlb19zdHJlYW0YFCABKAsyJS5saXZl", + "a2l0LnByb3RvLk5ld1ZpZGVvU3RyZWFtUmVzcG9uc2VIABJBChBuZXdfdmlk", + "ZW9fc291cmNlGBUgASgLMiUubGl2ZWtpdC5wcm90by5OZXdWaWRlb1NvdXJj", + "ZVJlc3BvbnNlSAASRwoTY2FwdHVyZV92aWRlb19mcmFtZRgWIAEoCzIoLmxp", + "dmVraXQucHJvdG8uQ2FwdHVyZVZpZGVvRnJhbWVSZXNwb25zZUgAEjwKDXZp", + "ZGVvX2NvbnZlcnQYFyABKAsyIy5saXZla2l0LnByb3RvLlZpZGVvQ29udmVy", + "dFJlc3BvbnNlSAASWgoddmlkZW9fc3RyZWFtX2Zyb21fcGFydGljaXBhbnQY", + "GCABKAsyMS5saXZla2l0LnByb3RvLlZpZGVvU3RyZWFtRnJvbVBhcnRpY2lw", + "YW50UmVzcG9uc2VIABJBChBuZXdfYXVkaW9fc3RyZWFtGBkgASgLMiUubGl2", + "ZWtpdC5wcm90by5OZXdBdWRpb1N0cmVhbVJlc3BvbnNlSAASQQoQbmV3X2F1", + "ZGlvX3NvdXJjZRgaIAEoCzIlLmxpdmVraXQucHJvdG8uTmV3QXVkaW9Tb3Vy", + "Y2VSZXNwb25zZUgAEkcKE2NhcHR1cmVfYXVkaW9fZnJhbWUYGyABKAsyKC5s", + "aXZla2l0LnByb3RvLkNhcHR1cmVBdWRpb0ZyYW1lUmVzcG9uc2VIABJFChJj", + "bGVhcl9hdWRpb19idWZmZXIYHCABKAsyJy5saXZla2l0LnByb3RvLkNsZWFy", + "QXVkaW9CdWZmZXJSZXNwb25zZUgAEkcKE25ld19hdWRpb19yZXNhbXBsZXIY", + "HSABKAsyKC5saXZla2l0LnByb3RvLk5ld0F1ZGlvUmVzYW1wbGVyUmVzcG9u", + "c2VIABJFChJyZW1peF9hbmRfcmVzYW1wbGUYHiABKAsyJy5saXZla2l0LnBy", + "b3RvLlJlbWl4QW5kUmVzYW1wbGVSZXNwb25zZUgAEloKHWF1ZGlvX3N0cmVh", + "bV9mcm9tX3BhcnRpY2lwYW50GB8gASgLMjEubGl2ZWtpdC5wcm90by5BdWRp", + "b1N0cmVhbUZyb21QYXJ0aWNpcGFudFJlc3BvbnNlSAASKwoEZTJlZRggIAEo", + "CzIbLmxpdmVraXQucHJvdG8uRTJlZVJlc3BvbnNlSAASQwoRbmV3X3NveF9y", + "ZXNhbXBsZXIYISABKAsyJi5saXZla2l0LnByb3RvLk5ld1NveFJlc2FtcGxl", + "clJlc3BvbnNlSAASRQoScHVzaF9zb3hfcmVzYW1wbGVyGCIgASgLMicubGl2", + "ZWtpdC5wcm90by5QdXNoU294UmVzYW1wbGVyUmVzcG9uc2VIABJHChNmbHVz", + "aF9zb3hfcmVzYW1wbGVyGCMgASgLMigubGl2ZWtpdC5wcm90by5GbHVzaFNv", + "eFJlc2FtcGxlclJlc3BvbnNlSAASQwoRc2VuZF9jaGF0X21lc3NhZ2UYJCAB", + "KAsyJi5saXZla2l0LnByb3RvLlNlbmRDaGF0TWVzc2FnZVJlc3BvbnNlSAAS", + "OAoLcGVyZm9ybV9ycGMYJSABKAsyIS5saXZla2l0LnByb3RvLlBlcmZvcm1S", + "cGNSZXNwb25zZUgAEkcKE3JlZ2lzdGVyX3JwY19tZXRob2QYJiABKAsyKC5s", + "aXZla2l0LnByb3RvLlJlZ2lzdGVyUnBjTWV0aG9kUmVzcG9uc2VIABJLChV1", + "bnJlZ2lzdGVyX3JwY19tZXRob2QYJyABKAsyKi5saXZla2l0LnByb3RvLlVu", + "cmVnaXN0ZXJScGNNZXRob2RSZXNwb25zZUgAElwKHnJwY19tZXRob2RfaW52", + "b2NhdGlvbl9yZXNwb25zZRgoIAEoCzIyLmxpdmVraXQucHJvdG8uUnBjTWV0", + "aG9kSW52b2NhdGlvblJlc3BvbnNlUmVzcG9uc2VIABJeCh9lbmFibGVfcmVt", + "b3RlX3RyYWNrX3B1YmxpY2F0aW9uGCkgASgLMjMubGl2ZWtpdC5wcm90by5F", + "bmFibGVSZW1vdGVUcmFja1B1YmxpY2F0aW9uUmVzcG9uc2VIABJxCil1cGRh", + "dGVfcmVtb3RlX3RyYWNrX3B1YmxpY2F0aW9uX2RpbWVuc2lvbhgqIAEoCzI8", + "LmxpdmVraXQucHJvdG8uVXBkYXRlUmVtb3RlVHJhY2tQdWJsaWNhdGlvbkRp", + "bWVuc2lvblJlc3BvbnNlSAASRQoSc2VuZF9zdHJlYW1faGVhZGVyGCsgASgL", + "MicubGl2ZWtpdC5wcm90by5TZW5kU3RyZWFtSGVhZGVyUmVzcG9uc2VIABJD", + "ChFzZW5kX3N0cmVhbV9jaHVuaxgsIAEoCzImLmxpdmVraXQucHJvdG8uU2Vu", + "ZFN0cmVhbUNodW5rUmVzcG9uc2VIABJHChNzZW5kX3N0cmVhbV90cmFpbGVy", + "GC0gASgLMigubGl2ZWtpdC5wcm90by5TZW5kU3RyZWFtVHJhaWxlclJlc3Bv", + "bnNlSAASeQouc2V0X2RhdGFfY2hhbm5lbF9idWZmZXJlZF9hbW91bnRfbG93", + "X3RocmVzaG9sZBguIAEoCzI/LmxpdmVraXQucHJvdG8uU2V0RGF0YUNoYW5u", + "ZWxCdWZmZXJlZEFtb3VudExvd1RocmVzaG9sZFJlc3BvbnNlSAASUAoYbG9h", + "ZF9hdWRpb19maWx0ZXJfcGx1Z2luGDAgASgLMiwubGl2ZWtpdC5wcm90by5M", + "b2FkQXVkaW9GaWx0ZXJQbHVnaW5SZXNwb25zZUgAEjAKB25ld19hcG0YMSAB", + "KAsyHS5saXZla2l0LnByb3RvLk5ld0FwbVJlc3BvbnNlSAASRQoSYXBtX3By", + "b2Nlc3Nfc3RyZWFtGDIgASgLMicubGl2ZWtpdC5wcm90by5BcG1Qcm9jZXNz", + "U3RyZWFtUmVzcG9uc2VIABJUChphcG1fcHJvY2Vzc19yZXZlcnNlX3N0cmVh", + "bRgzIAEoCzIuLmxpdmVraXQucHJvdG8uQXBtUHJvY2Vzc1JldmVyc2VTdHJl", + "YW1SZXNwb25zZUgAEkgKFGFwbV9zZXRfc3RyZWFtX2RlbGF5GDQgASgLMigu", + "bGl2ZWtpdC5wcm90by5BcG1TZXRTdHJlYW1EZWxheVJlc3BvbnNlSAASVwoV", + "Ynl0ZV9yZWFkX2luY3JlbWVudGFsGDUgASgLMjYubGl2ZWtpdC5wcm90by5C", + "eXRlU3RyZWFtUmVhZGVyUmVhZEluY3JlbWVudGFsUmVzcG9uc2VIABJHCg1i", + "eXRlX3JlYWRfYWxsGDYgASgLMi4ubGl2ZWtpdC5wcm90by5CeXRlU3RyZWFt", + "UmVhZGVyUmVhZEFsbFJlc3BvbnNlSAASUAoSYnl0ZV93cml0ZV90b19maWxl", + "GDcgASgLMjIubGl2ZWtpdC5wcm90by5CeXRlU3RyZWFtUmVhZGVyV3JpdGVU", + "b0ZpbGVSZXNwb25zZUgAElcKFXRleHRfcmVhZF9pbmNyZW1lbnRhbBg4IAEo", + "CzI2LmxpdmVraXQucHJvdG8uVGV4dFN0cmVhbVJlYWRlclJlYWRJbmNyZW1l", + "bnRhbFJlc3BvbnNlSAASRwoNdGV4dF9yZWFkX2FsbBg5IAEoCzIuLmxpdmVr", + "aXQucHJvdG8uVGV4dFN0cmVhbVJlYWRlclJlYWRBbGxSZXNwb25zZUgAEjoK", + "CXNlbmRfZmlsZRg6IAEoCzIlLmxpdmVraXQucHJvdG8uU3RyZWFtU2VuZEZp", + "bGVSZXNwb25zZUgAEjoKCXNlbmRfdGV4dBg7IAEoCzIlLmxpdmVraXQucHJv", + "dG8uU3RyZWFtU2VuZFRleHRSZXNwb25zZUgAEkEKEGJ5dGVfc3RyZWFtX29w", + "ZW4YPCABKAsyJS5saXZla2l0LnByb3RvLkJ5dGVTdHJlYW1PcGVuUmVzcG9u", + "c2VIABJJChFieXRlX3N0cmVhbV93cml0ZRg9IAEoCzIsLmxpdmVraXQucHJv", + "dG8uQnl0ZVN0cmVhbVdyaXRlcldyaXRlUmVzcG9uc2VIABJJChFieXRlX3N0", + "cmVhbV9jbG9zZRg+IAEoCzIsLmxpdmVraXQucHJvdG8uQnl0ZVN0cmVhbVdy", + "aXRlckNsb3NlUmVzcG9uc2VIABJBChB0ZXh0X3N0cmVhbV9vcGVuGD8gASgL", + "MiUubGl2ZWtpdC5wcm90by5UZXh0U3RyZWFtT3BlblJlc3BvbnNlSAASSQoR", + "dGV4dF9zdHJlYW1fd3JpdGUYQCABKAsyLC5saXZla2l0LnByb3RvLlRleHRT", + "dHJlYW1Xcml0ZXJXcml0ZVJlc3BvbnNlSAASSQoRdGV4dF9zdHJlYW1fY2xv", + "c2UYQSABKAsyLC5saXZla2l0LnByb3RvLlRleHRTdHJlYW1Xcml0ZXJDbG9z", + "ZVJlc3BvbnNlSAASPAoKc2VuZF9ieXRlcxhCIAEoCzImLmxpdmVraXQucHJv", + "dG8uU3RyZWFtU2VuZEJ5dGVzUmVzcG9uc2VIABJnCiRzZXRfcmVtb3RlX3Ry", + "YWNrX3B1YmxpY2F0aW9uX3F1YWxpdHkYQyABKAsyNy5saXZla2l0LnByb3Rv", + "LlNldFJlbW90ZVRyYWNrUHVibGljYXRpb25RdWFsaXR5UmVzcG9uc2VIABJF", + "ChJwdWJsaXNoX2RhdGFfdHJhY2sYRCABKAsyJy5saXZla2l0LnByb3RvLlB1", + "Ymxpc2hEYXRhVHJhY2tSZXNwb25zZUgAElEKGWxvY2FsX2RhdGFfdHJhY2tf", + "dHJ5X3B1c2gYRSABKAsyLC5saXZla2l0LnByb3RvLkxvY2FsRGF0YVRyYWNr", + "VHJ5UHVzaFJlc3BvbnNlSAASVAoabG9jYWxfZGF0YV90cmFja191bnB1Ymxp", + "c2gYRiABKAsyLi5saXZla2l0LnByb3RvLkxvY2FsRGF0YVRyYWNrVW5wdWJs", + "aXNoUmVzcG9uc2VIABJZCh1sb2NhbF9kYXRhX3RyYWNrX2lzX3B1Ymxpc2hl", + "ZBhHIAEoCzIwLmxpdmVraXQucHJvdG8uTG9jYWxEYXRhVHJhY2tJc1B1Ymxp", + "c2hlZFJlc3BvbnNlSAASSQoUc3Vic2NyaWJlX2RhdGFfdHJhY2sYSCABKAsy", + "KS5saXZla2l0LnByb3RvLlN1YnNjcmliZURhdGFUcmFja1Jlc3BvbnNlSAAS", + "WwoecmVtb3RlX2RhdGFfdHJhY2tfaXNfcHVibGlzaGVkGEkgASgLMjEubGl2", + "ZWtpdC5wcm90by5SZW1vdGVEYXRhVHJhY2tJc1B1Ymxpc2hlZFJlc3BvbnNl", + "SAASTAoWZGF0YV90cmFja19zdHJlYW1fcmVhZBhKIAEoCzIqLmxpdmVraXQu", + "cHJvdG8uRGF0YVRyYWNrU3RyZWFtUmVhZFJlc3BvbnNlSAASRAoRc2ltdWxh", + "dGVfc2NlbmFyaW8YSyABKAsyJy5saXZla2l0LnByb3RvLlNpbXVsYXRlU2Nl", + "bmFyaW9SZXNwb25zZUgAQgkKB21lc3NhZ2Ui2hYKCEZmaUV2ZW50Ei4KCnJv", + "b21fZXZlbnQYASABKAsyGC5saXZla2l0LnByb3RvLlJvb21FdmVudEgAEjAK", + "C3RyYWNrX2V2ZW50GAIgASgLMhkubGl2ZWtpdC5wcm90by5UcmFja0V2ZW50", + "SAASPQoSdmlkZW9fc3RyZWFtX2V2ZW50GAMgASgLMh8ubGl2ZWtpdC5wcm90", + "by5WaWRlb1N0cmVhbUV2ZW50SAASPQoSYXVkaW9fc3RyZWFtX2V2ZW50GAQg", + "ASgLMh8ubGl2ZWtpdC5wcm90by5BdWRpb1N0cmVhbUV2ZW50SAASMQoHY29u", + "bmVjdBgFIAEoCzIeLmxpdmVraXQucHJvdG8uQ29ubmVjdENhbGxiYWNrSAAS", + "NwoKZGlzY29ubmVjdBgHIAEoCzIhLmxpdmVraXQucHJvdG8uRGlzY29ubmVj", + "dENhbGxiYWNrSAASMQoHZGlzcG9zZRgIIAEoCzIeLmxpdmVraXQucHJvdG8u", + "RGlzcG9zZUNhbGxiYWNrSAASPAoNcHVibGlzaF90cmFjaxgJIAEoCzIjLmxp", + "dmVraXQucHJvdG8uUHVibGlzaFRyYWNrQ2FsbGJhY2tIABJACg91bnB1Ymxp", + "c2hfdHJhY2sYCiABKAsyJS5saXZla2l0LnByb3RvLlVucHVibGlzaFRyYWNr", + "Q2FsbGJhY2tIABI6CgxwdWJsaXNoX2RhdGEYCyABKAsyIi5saXZla2l0LnBy", + "b3RvLlB1Ymxpc2hEYXRhQ2FsbGJhY2tIABJMChVwdWJsaXNoX3RyYW5zY3Jp", + "cHRpb24YDCABKAsyKy5saXZla2l0LnByb3RvLlB1Ymxpc2hUcmFuc2NyaXB0", + "aW9uQ2FsbGJhY2tIABJHChNjYXB0dXJlX2F1ZGlvX2ZyYW1lGA0gASgLMigu", + "bGl2ZWtpdC5wcm90by5DYXB0dXJlQXVkaW9GcmFtZUNhbGxiYWNrSAASRQoS", + "c2V0X2xvY2FsX21ldGFkYXRhGA4gASgLMicubGl2ZWtpdC5wcm90by5TZXRM", + "b2NhbE1ldGFkYXRhQ2FsbGJhY2tIABI9Cg5zZXRfbG9jYWxfbmFtZRgPIAEo", + "CzIjLmxpdmVraXQucHJvdG8uU2V0TG9jYWxOYW1lQ2FsbGJhY2tIABJJChRz", + "ZXRfbG9jYWxfYXR0cmlidXRlcxgQIAEoCzIpLmxpdmVraXQucHJvdG8uU2V0", + "TG9jYWxBdHRyaWJ1dGVzQ2FsbGJhY2tIABI0CglnZXRfc3RhdHMYESABKAsy", + "Hy5saXZla2l0LnByb3RvLkdldFN0YXRzQ2FsbGJhY2tIABInCgRsb2dzGBIg", + "ASgLMhcubGl2ZWtpdC5wcm90by5Mb2dCYXRjaEgAEkMKEWdldF9zZXNzaW9u", + "X3N0YXRzGBMgASgLMiYubGl2ZWtpdC5wcm90by5HZXRTZXNzaW9uU3RhdHND", + "YWxsYmFja0gAEiUKBXBhbmljGBQgASgLMhQubGl2ZWtpdC5wcm90by5QYW5p", + "Y0gAEkEKEHB1Ymxpc2hfc2lwX2R0bWYYFSABKAsyJS5saXZla2l0LnByb3Rv", + "LlB1Ymxpc2hTaXBEdG1mQ2FsbGJhY2tIABI+CgxjaGF0X21lc3NhZ2UYFiAB", + "KAsyJi5saXZla2l0LnByb3RvLlNlbmRDaGF0TWVzc2FnZUNhbGxiYWNrSAAS", + "OAoLcGVyZm9ybV9ycGMYFyABKAsyIS5saXZla2l0LnByb3RvLlBlcmZvcm1S", + "cGNDYWxsYmFja0gAEkgKFXJwY19tZXRob2RfaW52b2NhdGlvbhgYIAEoCzIn", + "LmxpdmVraXQucHJvdG8uUnBjTWV0aG9kSW52b2NhdGlvbkV2ZW50SAASRQoS", + "c2VuZF9zdHJlYW1faGVhZGVyGBkgASgLMicubGl2ZWtpdC5wcm90by5TZW5k", + "U3RyZWFtSGVhZGVyQ2FsbGJhY2tIABJDChFzZW5kX3N0cmVhbV9jaHVuaxga", + "IAEoCzImLmxpdmVraXQucHJvdG8uU2VuZFN0cmVhbUNodW5rQ2FsbGJhY2tI", + "ABJHChNzZW5kX3N0cmVhbV90cmFpbGVyGBsgASgLMigubGl2ZWtpdC5wcm90", + "by5TZW5kU3RyZWFtVHJhaWxlckNhbGxiYWNrSAASSAoYYnl0ZV9zdHJlYW1f", + "cmVhZGVyX2V2ZW50GBwgASgLMiQubGl2ZWtpdC5wcm90by5CeXRlU3RyZWFt", + "UmVhZGVyRXZlbnRIABJVChtieXRlX3N0cmVhbV9yZWFkZXJfcmVhZF9hbGwY", + "HSABKAsyLi5saXZla2l0LnByb3RvLkJ5dGVTdHJlYW1SZWFkZXJSZWFkQWxs", + "Q2FsbGJhY2tIABJeCiBieXRlX3N0cmVhbV9yZWFkZXJfd3JpdGVfdG9fZmls", + "ZRgeIAEoCzIyLmxpdmVraXQucHJvdG8uQnl0ZVN0cmVhbVJlYWRlcldyaXRl", + "VG9GaWxlQ2FsbGJhY2tIABJBChBieXRlX3N0cmVhbV9vcGVuGB8gASgLMiUu", + "bGl2ZWtpdC5wcm90by5CeXRlU3RyZWFtT3BlbkNhbGxiYWNrSAASUAoYYnl0", + "ZV9zdHJlYW1fd3JpdGVyX3dyaXRlGCAgASgLMiwubGl2ZWtpdC5wcm90by5C", + "eXRlU3RyZWFtV3JpdGVyV3JpdGVDYWxsYmFja0gAElAKGGJ5dGVfc3RyZWFt", + "X3dyaXRlcl9jbG9zZRghIAEoCzIsLmxpdmVraXQucHJvdG8uQnl0ZVN0cmVh", + "bVdyaXRlckNsb3NlQ2FsbGJhY2tIABI6CglzZW5kX2ZpbGUYIiABKAsyJS5s", + "aXZla2l0LnByb3RvLlN0cmVhbVNlbmRGaWxlQ2FsbGJhY2tIABJIChh0ZXh0", + "X3N0cmVhbV9yZWFkZXJfZXZlbnQYIyABKAsyJC5saXZla2l0LnByb3RvLlRl", + "eHRTdHJlYW1SZWFkZXJFdmVudEgAElUKG3RleHRfc3RyZWFtX3JlYWRlcl9y", + "ZWFkX2FsbBgkIAEoCzIuLmxpdmVraXQucHJvdG8uVGV4dFN0cmVhbVJlYWRl", + "clJlYWRBbGxDYWxsYmFja0gAEkEKEHRleHRfc3RyZWFtX29wZW4YJSABKAsy", + "JS5saXZla2l0LnByb3RvLlRleHRTdHJlYW1PcGVuQ2FsbGJhY2tIABJQChh0", + "ZXh0X3N0cmVhbV93cml0ZXJfd3JpdGUYJiABKAsyLC5saXZla2l0LnByb3Rv", + "LlRleHRTdHJlYW1Xcml0ZXJXcml0ZUNhbGxiYWNrSAASUAoYdGV4dF9zdHJl", + "YW1fd3JpdGVyX2Nsb3NlGCcgASgLMiwubGl2ZWtpdC5wcm90by5UZXh0U3Ry", + "ZWFtV3JpdGVyQ2xvc2VDYWxsYmFja0gAEjoKCXNlbmRfdGV4dBgoIAEoCzIl", + "LmxpdmVraXQucHJvdG8uU3RyZWFtU2VuZFRleHRDYWxsYmFja0gAEjwKCnNl", + "bmRfYnl0ZXMYKSABKAsyJi5saXZla2l0LnByb3RvLlN0cmVhbVNlbmRCeXRl", + "c0NhbGxiYWNrSAASRQoScHVibGlzaF9kYXRhX3RyYWNrGCogASgLMicubGl2", + "ZWtpdC5wcm90by5QdWJsaXNoRGF0YVRyYWNrQ2FsbGJhY2tIABJGChdkYXRh", + "X3RyYWNrX3N0cmVhbV9ldmVudBgrIAEoCzIjLmxpdmVraXQucHJvdG8uRGF0", + "YVRyYWNrU3RyZWFtRXZlbnRIABJEChFzaW11bGF0ZV9zY2VuYXJpbxgsIAEo", + "CzInLmxpdmVraXQucHJvdG8uU2ltdWxhdGVTY2VuYXJpb0NhbGxiYWNrSABC", + "CQoHbWVzc2FnZSIfCg5EaXNwb3NlUmVxdWVzdBINCgVhc3luYxgBIAIoCCIj", + "Cg9EaXNwb3NlUmVzcG9uc2USEAoIYXN5bmNfaWQYASABKAQiIwoPRGlzcG9z", + "ZUNhbGxiYWNrEhAKCGFzeW5jX2lkGAEgAigEIoUBCglMb2dSZWNvcmQSJgoF", + "bGV2ZWwYASACKA4yFy5saXZla2l0LnByb3RvLkxvZ0xldmVsEg4KBnRhcmdl", + "dBgCIAIoCRITCgttb2R1bGVfcGF0aBgDIAEoCRIMCgRmaWxlGAQgASgJEgwK", + "BGxpbmUYBSABKA0SDwoHbWVzc2FnZRgGIAIoCSI1CghMb2dCYXRjaBIpCgdy", + "ZWNvcmRzGAEgAygLMhgubGl2ZWtpdC5wcm90by5Mb2dSZWNvcmQiGAoFUGFu", + "aWMSDwoHbWVzc2FnZRgBIAIoCSpTCghMb2dMZXZlbBINCglMT0dfRVJST1IQ", + "ABIMCghMT0dfV0FSThABEgwKCExPR19JTkZPEAISDQoJTE9HX0RFQlVHEAMS", + "DQoJTE9HX1RSQUNFEARCEKoCDUxpdmVLaXQuUHJvdG8=")); descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, new pbr::FileDescriptor[] { global::LiveKit.Proto.E2EeReflection.Descriptor, global::LiveKit.Proto.TrackReflection.Descriptor, global::LiveKit.Proto.TrackPublicationReflection.Descriptor, global::LiveKit.Proto.RoomReflection.Descriptor, global::LiveKit.Proto.VideoFrameReflection.Descriptor, global::LiveKit.Proto.AudioFrameReflection.Descriptor, global::LiveKit.Proto.RpcReflection.Descriptor, global::LiveKit.Proto.DataStreamReflection.Descriptor, global::LiveKit.Proto.DataTrackReflection.Descriptor, }, new pbr::GeneratedClrTypeInfo(new[] {typeof(global::LiveKit.Proto.LogLevel), }, null, new pbr::GeneratedClrTypeInfo[] { - new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.FfiRequest), global::LiveKit.Proto.FfiRequest.Parser, new[]{ "Dispose", "Connect", "Disconnect", "PublishTrack", "UnpublishTrack", "PublishData", "SetSubscribed", "SetLocalMetadata", "SetLocalName", "SetLocalAttributes", "GetSessionStats", "PublishTranscription", "PublishSipDtmf", "CreateVideoTrack", "CreateAudioTrack", "LocalTrackMute", "EnableRemoteTrack", "GetStats", "SetTrackSubscriptionPermissions", "NewVideoStream", "NewVideoSource", "CaptureVideoFrame", "VideoConvert", "VideoStreamFromParticipant", "NewAudioStream", "NewAudioSource", "CaptureAudioFrame", "ClearAudioBuffer", "NewAudioResampler", "RemixAndResample", "E2Ee", "AudioStreamFromParticipant", "NewSoxResampler", "PushSoxResampler", "FlushSoxResampler", "SendChatMessage", "EditChatMessage", "PerformRpc", "RegisterRpcMethod", "UnregisterRpcMethod", "RpcMethodInvocationResponse", "EnableRemoteTrackPublication", "UpdateRemoteTrackPublicationDimension", "SendStreamHeader", "SendStreamChunk", "SendStreamTrailer", "SetDataChannelBufferedAmountLowThreshold", "LoadAudioFilterPlugin", "NewApm", "ApmProcessStream", "ApmProcessReverseStream", "ApmSetStreamDelay", "ByteReadIncremental", "ByteReadAll", "ByteWriteToFile", "TextReadIncremental", "TextReadAll", "SendFile", "SendText", "ByteStreamOpen", "ByteStreamWrite", "ByteStreamClose", "TextStreamOpen", "TextStreamWrite", "TextStreamClose", "SendBytes", "SetRemoteTrackPublicationQuality", "PublishDataTrack", "LocalDataTrackTryPush", "LocalDataTrackUnpublish", "LocalDataTrackIsPublished", "SubscribeDataTrack", "RemoteDataTrackIsPublished", "DataTrackStreamRead" }, new[]{ "Message" }, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.FfiResponse), global::LiveKit.Proto.FfiResponse.Parser, new[]{ "Dispose", "Connect", "Disconnect", "PublishTrack", "UnpublishTrack", "PublishData", "SetSubscribed", "SetLocalMetadata", "SetLocalName", "SetLocalAttributes", "GetSessionStats", "PublishTranscription", "PublishSipDtmf", "CreateVideoTrack", "CreateAudioTrack", "LocalTrackMute", "EnableRemoteTrack", "GetStats", "SetTrackSubscriptionPermissions", "NewVideoStream", "NewVideoSource", "CaptureVideoFrame", "VideoConvert", "VideoStreamFromParticipant", "NewAudioStream", "NewAudioSource", "CaptureAudioFrame", "ClearAudioBuffer", "NewAudioResampler", "RemixAndResample", "AudioStreamFromParticipant", "E2Ee", "NewSoxResampler", "PushSoxResampler", "FlushSoxResampler", "SendChatMessage", "PerformRpc", "RegisterRpcMethod", "UnregisterRpcMethod", "RpcMethodInvocationResponse", "EnableRemoteTrackPublication", "UpdateRemoteTrackPublicationDimension", "SendStreamHeader", "SendStreamChunk", "SendStreamTrailer", "SetDataChannelBufferedAmountLowThreshold", "LoadAudioFilterPlugin", "NewApm", "ApmProcessStream", "ApmProcessReverseStream", "ApmSetStreamDelay", "ByteReadIncremental", "ByteReadAll", "ByteWriteToFile", "TextReadIncremental", "TextReadAll", "SendFile", "SendText", "ByteStreamOpen", "ByteStreamWrite", "ByteStreamClose", "TextStreamOpen", "TextStreamWrite", "TextStreamClose", "SendBytes", "SetRemoteTrackPublicationQuality", "PublishDataTrack", "LocalDataTrackTryPush", "LocalDataTrackUnpublish", "LocalDataTrackIsPublished", "SubscribeDataTrack", "RemoteDataTrackIsPublished", "DataTrackStreamRead" }, new[]{ "Message" }, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.FfiEvent), global::LiveKit.Proto.FfiEvent.Parser, new[]{ "RoomEvent", "TrackEvent", "VideoStreamEvent", "AudioStreamEvent", "Connect", "Disconnect", "Dispose", "PublishTrack", "UnpublishTrack", "PublishData", "PublishTranscription", "CaptureAudioFrame", "SetLocalMetadata", "SetLocalName", "SetLocalAttributes", "GetStats", "Logs", "GetSessionStats", "Panic", "PublishSipDtmf", "ChatMessage", "PerformRpc", "RpcMethodInvocation", "SendStreamHeader", "SendStreamChunk", "SendStreamTrailer", "ByteStreamReaderEvent", "ByteStreamReaderReadAll", "ByteStreamReaderWriteToFile", "ByteStreamOpen", "ByteStreamWriterWrite", "ByteStreamWriterClose", "SendFile", "TextStreamReaderEvent", "TextStreamReaderReadAll", "TextStreamOpen", "TextStreamWriterWrite", "TextStreamWriterClose", "SendText", "SendBytes", "PublishDataTrack", "DataTrackStreamEvent" }, new[]{ "Message" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.FfiRequest), global::LiveKit.Proto.FfiRequest.Parser, new[]{ "Dispose", "Connect", "Disconnect", "PublishTrack", "UnpublishTrack", "PublishData", "SetSubscribed", "SetLocalMetadata", "SetLocalName", "SetLocalAttributes", "GetSessionStats", "PublishTranscription", "PublishSipDtmf", "CreateVideoTrack", "CreateAudioTrack", "LocalTrackMute", "EnableRemoteTrack", "GetStats", "SetTrackSubscriptionPermissions", "NewVideoStream", "NewVideoSource", "CaptureVideoFrame", "VideoConvert", "VideoStreamFromParticipant", "NewAudioStream", "NewAudioSource", "CaptureAudioFrame", "ClearAudioBuffer", "NewAudioResampler", "RemixAndResample", "E2Ee", "AudioStreamFromParticipant", "NewSoxResampler", "PushSoxResampler", "FlushSoxResampler", "SendChatMessage", "EditChatMessage", "PerformRpc", "RegisterRpcMethod", "UnregisterRpcMethod", "RpcMethodInvocationResponse", "EnableRemoteTrackPublication", "UpdateRemoteTrackPublicationDimension", "SendStreamHeader", "SendStreamChunk", "SendStreamTrailer", "SetDataChannelBufferedAmountLowThreshold", "LoadAudioFilterPlugin", "NewApm", "ApmProcessStream", "ApmProcessReverseStream", "ApmSetStreamDelay", "ByteReadIncremental", "ByteReadAll", "ByteWriteToFile", "TextReadIncremental", "TextReadAll", "SendFile", "SendText", "ByteStreamOpen", "ByteStreamWrite", "ByteStreamClose", "TextStreamOpen", "TextStreamWrite", "TextStreamClose", "SendBytes", "SetRemoteTrackPublicationQuality", "PublishDataTrack", "LocalDataTrackTryPush", "LocalDataTrackUnpublish", "LocalDataTrackIsPublished", "SubscribeDataTrack", "RemoteDataTrackIsPublished", "DataTrackStreamRead", "SimulateScenario" }, new[]{ "Message" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.FfiResponse), global::LiveKit.Proto.FfiResponse.Parser, new[]{ "Dispose", "Connect", "Disconnect", "PublishTrack", "UnpublishTrack", "PublishData", "SetSubscribed", "SetLocalMetadata", "SetLocalName", "SetLocalAttributes", "GetSessionStats", "PublishTranscription", "PublishSipDtmf", "CreateVideoTrack", "CreateAudioTrack", "LocalTrackMute", "EnableRemoteTrack", "GetStats", "SetTrackSubscriptionPermissions", "NewVideoStream", "NewVideoSource", "CaptureVideoFrame", "VideoConvert", "VideoStreamFromParticipant", "NewAudioStream", "NewAudioSource", "CaptureAudioFrame", "ClearAudioBuffer", "NewAudioResampler", "RemixAndResample", "AudioStreamFromParticipant", "E2Ee", "NewSoxResampler", "PushSoxResampler", "FlushSoxResampler", "SendChatMessage", "PerformRpc", "RegisterRpcMethod", "UnregisterRpcMethod", "RpcMethodInvocationResponse", "EnableRemoteTrackPublication", "UpdateRemoteTrackPublicationDimension", "SendStreamHeader", "SendStreamChunk", "SendStreamTrailer", "SetDataChannelBufferedAmountLowThreshold", "LoadAudioFilterPlugin", "NewApm", "ApmProcessStream", "ApmProcessReverseStream", "ApmSetStreamDelay", "ByteReadIncremental", "ByteReadAll", "ByteWriteToFile", "TextReadIncremental", "TextReadAll", "SendFile", "SendText", "ByteStreamOpen", "ByteStreamWrite", "ByteStreamClose", "TextStreamOpen", "TextStreamWrite", "TextStreamClose", "SendBytes", "SetRemoteTrackPublicationQuality", "PublishDataTrack", "LocalDataTrackTryPush", "LocalDataTrackUnpublish", "LocalDataTrackIsPublished", "SubscribeDataTrack", "RemoteDataTrackIsPublished", "DataTrackStreamRead", "SimulateScenario" }, new[]{ "Message" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.FfiEvent), global::LiveKit.Proto.FfiEvent.Parser, new[]{ "RoomEvent", "TrackEvent", "VideoStreamEvent", "AudioStreamEvent", "Connect", "Disconnect", "Dispose", "PublishTrack", "UnpublishTrack", "PublishData", "PublishTranscription", "CaptureAudioFrame", "SetLocalMetadata", "SetLocalName", "SetLocalAttributes", "GetStats", "Logs", "GetSessionStats", "Panic", "PublishSipDtmf", "ChatMessage", "PerformRpc", "RpcMethodInvocation", "SendStreamHeader", "SendStreamChunk", "SendStreamTrailer", "ByteStreamReaderEvent", "ByteStreamReaderReadAll", "ByteStreamReaderWriteToFile", "ByteStreamOpen", "ByteStreamWriterWrite", "ByteStreamWriterClose", "SendFile", "TextStreamReaderEvent", "TextStreamReaderReadAll", "TextStreamOpen", "TextStreamWriterWrite", "TextStreamWriterClose", "SendText", "SendBytes", "PublishDataTrack", "DataTrackStreamEvent", "SimulateScenario" }, new[]{ "Message" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.DisposeRequest), global::LiveKit.Proto.DisposeRequest.Parser, new[]{ "Async" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.DisposeResponse), global::LiveKit.Proto.DisposeResponse.Parser, new[]{ "AsyncId" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.DisposeCallback), global::LiveKit.Proto.DisposeCallback.Parser, new[]{ "AsyncId" }, null, null, null, null), @@ -633,6 +637,9 @@ public FfiRequest(FfiRequest other) : this() { case MessageOneofCase.DataTrackStreamRead: DataTrackStreamRead = other.DataTrackStreamRead.Clone(); break; + case MessageOneofCase.SimulateScenario: + SimulateScenario = other.SimulateScenario.Clone(); + break; } _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); @@ -1568,6 +1575,21 @@ public FfiRequest Clone() { } } + /// Field number for the "simulate_scenario" field. + public const int SimulateScenarioFieldNumber = 76; + /// + /// Reconnection / chaos testing + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::LiveKit.Proto.SimulateScenarioRequest SimulateScenario { + get { return messageCase_ == MessageOneofCase.SimulateScenario ? (global::LiveKit.Proto.SimulateScenarioRequest) message_ : null; } + set { + message_ = value; + messageCase_ = value == null ? MessageOneofCase.None : MessageOneofCase.SimulateScenario; + } + } + private object message_; /// Enum of possible cases for the "message" oneof. public enum MessageOneofCase { @@ -1646,6 +1668,7 @@ public enum MessageOneofCase { SubscribeDataTrack = 73, RemoteDataTrackIsPublished = 74, DataTrackStreamRead = 75, + SimulateScenario = 76, } private MessageOneofCase messageCase_ = MessageOneofCase.None; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -1750,6 +1773,7 @@ public bool Equals(FfiRequest other) { if (!object.Equals(SubscribeDataTrack, other.SubscribeDataTrack)) return false; if (!object.Equals(RemoteDataTrackIsPublished, other.RemoteDataTrackIsPublished)) return false; if (!object.Equals(DataTrackStreamRead, other.DataTrackStreamRead)) return false; + if (!object.Equals(SimulateScenario, other.SimulateScenario)) return false; if (MessageCase != other.MessageCase) return false; return Equals(_unknownFields, other._unknownFields); } @@ -1832,6 +1856,7 @@ public override int GetHashCode() { if (messageCase_ == MessageOneofCase.SubscribeDataTrack) hash ^= SubscribeDataTrack.GetHashCode(); if (messageCase_ == MessageOneofCase.RemoteDataTrackIsPublished) hash ^= RemoteDataTrackIsPublished.GetHashCode(); if (messageCase_ == MessageOneofCase.DataTrackStreamRead) hash ^= DataTrackStreamRead.GetHashCode(); + if (messageCase_ == MessageOneofCase.SimulateScenario) hash ^= SimulateScenario.GetHashCode(); hash ^= (int) messageCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -2147,6 +2172,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(218, 4); output.WriteMessage(DataTrackStreamRead); } + if (messageCase_ == MessageOneofCase.SimulateScenario) { + output.WriteRawTag(226, 4); + output.WriteMessage(SimulateScenario); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -2453,6 +2482,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(218, 4); output.WriteMessage(DataTrackStreamRead); } + if (messageCase_ == MessageOneofCase.SimulateScenario) { + output.WriteRawTag(226, 4); + output.WriteMessage(SimulateScenario); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -2685,6 +2718,9 @@ public int CalculateSize() { if (messageCase_ == MessageOneofCase.DataTrackStreamRead) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(DataTrackStreamRead); } + if (messageCase_ == MessageOneofCase.SimulateScenario) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(SimulateScenario); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -3142,6 +3178,12 @@ public void MergeFrom(FfiRequest other) { } DataTrackStreamRead.MergeFrom(other.DataTrackStreamRead); break; + case MessageOneofCase.SimulateScenario: + if (SimulateScenario == null) { + SimulateScenario = new global::LiveKit.Proto.SimulateScenarioRequest(); + } + SimulateScenario.MergeFrom(other.SimulateScenario); + break; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); @@ -3829,6 +3871,15 @@ public void MergeFrom(pb::CodedInputStream input) { DataTrackStreamRead = subBuilder; break; } + case 610: { + global::LiveKit.Proto.SimulateScenarioRequest subBuilder = new global::LiveKit.Proto.SimulateScenarioRequest(); + if (messageCase_ == MessageOneofCase.SimulateScenario) { + subBuilder.MergeFrom(SimulateScenario); + } + input.ReadMessage(subBuilder); + SimulateScenario = subBuilder; + break; + } } } #endif @@ -4514,6 +4565,15 @@ public void MergeFrom(pb::CodedInputStream input) { DataTrackStreamRead = subBuilder; break; } + case 610: { + global::LiveKit.Proto.SimulateScenarioRequest subBuilder = new global::LiveKit.Proto.SimulateScenarioRequest(); + if (messageCase_ == MessageOneofCase.SimulateScenario) { + subBuilder.MergeFrom(SimulateScenario); + } + input.ReadMessage(subBuilder); + SimulateScenario = subBuilder; + break; + } } } } @@ -4779,6 +4839,9 @@ public FfiResponse(FfiResponse other) : this() { case MessageOneofCase.DataTrackStreamRead: DataTrackStreamRead = other.DataTrackStreamRead.Clone(); break; + case MessageOneofCase.SimulateScenario: + SimulateScenario = other.SimulateScenario.Clone(); + break; } _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); @@ -5702,6 +5765,21 @@ public FfiResponse Clone() { } } + /// Field number for the "simulate_scenario" field. + public const int SimulateScenarioFieldNumber = 75; + /// + /// Reconnection / chaos testing + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::LiveKit.Proto.SimulateScenarioResponse SimulateScenario { + get { return messageCase_ == MessageOneofCase.SimulateScenario ? (global::LiveKit.Proto.SimulateScenarioResponse) message_ : null; } + set { + message_ = value; + messageCase_ = value == null ? MessageOneofCase.None : MessageOneofCase.SimulateScenario; + } + } + private object message_; /// Enum of possible cases for the "message" oneof. public enum MessageOneofCase { @@ -5779,6 +5857,7 @@ public enum MessageOneofCase { SubscribeDataTrack = 72, RemoteDataTrackIsPublished = 73, DataTrackStreamRead = 74, + SimulateScenario = 75, } private MessageOneofCase messageCase_ = MessageOneofCase.None; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -5882,6 +5961,7 @@ public bool Equals(FfiResponse other) { if (!object.Equals(SubscribeDataTrack, other.SubscribeDataTrack)) return false; if (!object.Equals(RemoteDataTrackIsPublished, other.RemoteDataTrackIsPublished)) return false; if (!object.Equals(DataTrackStreamRead, other.DataTrackStreamRead)) return false; + if (!object.Equals(SimulateScenario, other.SimulateScenario)) return false; if (MessageCase != other.MessageCase) return false; return Equals(_unknownFields, other._unknownFields); } @@ -5963,6 +6043,7 @@ public override int GetHashCode() { if (messageCase_ == MessageOneofCase.SubscribeDataTrack) hash ^= SubscribeDataTrack.GetHashCode(); if (messageCase_ == MessageOneofCase.RemoteDataTrackIsPublished) hash ^= RemoteDataTrackIsPublished.GetHashCode(); if (messageCase_ == MessageOneofCase.DataTrackStreamRead) hash ^= DataTrackStreamRead.GetHashCode(); + if (messageCase_ == MessageOneofCase.SimulateScenario) hash ^= SimulateScenario.GetHashCode(); hash ^= (int) messageCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -6274,6 +6355,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(210, 4); output.WriteMessage(DataTrackStreamRead); } + if (messageCase_ == MessageOneofCase.SimulateScenario) { + output.WriteRawTag(218, 4); + output.WriteMessage(SimulateScenario); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -6576,6 +6661,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(210, 4); output.WriteMessage(DataTrackStreamRead); } + if (messageCase_ == MessageOneofCase.SimulateScenario) { + output.WriteRawTag(218, 4); + output.WriteMessage(SimulateScenario); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -6805,6 +6894,9 @@ public int CalculateSize() { if (messageCase_ == MessageOneofCase.DataTrackStreamRead) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(DataTrackStreamRead); } + if (messageCase_ == MessageOneofCase.SimulateScenario) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(SimulateScenario); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -7256,6 +7348,12 @@ public void MergeFrom(FfiResponse other) { } DataTrackStreamRead.MergeFrom(other.DataTrackStreamRead); break; + case MessageOneofCase.SimulateScenario: + if (SimulateScenario == null) { + SimulateScenario = new global::LiveKit.Proto.SimulateScenarioResponse(); + } + SimulateScenario.MergeFrom(other.SimulateScenario); + break; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); @@ -7934,6 +8032,15 @@ public void MergeFrom(pb::CodedInputStream input) { DataTrackStreamRead = subBuilder; break; } + case 602: { + global::LiveKit.Proto.SimulateScenarioResponse subBuilder = new global::LiveKit.Proto.SimulateScenarioResponse(); + if (messageCase_ == MessageOneofCase.SimulateScenario) { + subBuilder.MergeFrom(SimulateScenario); + } + input.ReadMessage(subBuilder); + SimulateScenario = subBuilder; + break; + } } } #endif @@ -8610,6 +8717,15 @@ public void MergeFrom(pb::CodedInputStream input) { DataTrackStreamRead = subBuilder; break; } + case 602: { + global::LiveKit.Proto.SimulateScenarioResponse subBuilder = new global::LiveKit.Proto.SimulateScenarioResponse(); + if (messageCase_ == MessageOneofCase.SimulateScenario) { + subBuilder.MergeFrom(SimulateScenario); + } + input.ReadMessage(subBuilder); + SimulateScenario = subBuilder; + break; + } } } } @@ -8784,6 +8900,9 @@ public FfiEvent(FfiEvent other) : this() { case MessageOneofCase.DataTrackStreamEvent: DataTrackStreamEvent = other.DataTrackStreamEvent.Clone(); break; + case MessageOneofCase.SimulateScenario: + SimulateScenario = other.SimulateScenario.Clone(); + break; } _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); @@ -9311,6 +9430,18 @@ public FfiEvent Clone() { } } + /// Field number for the "simulate_scenario" field. + public const int SimulateScenarioFieldNumber = 44; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::LiveKit.Proto.SimulateScenarioCallback SimulateScenario { + get { return messageCase_ == MessageOneofCase.SimulateScenario ? (global::LiveKit.Proto.SimulateScenarioCallback) message_ : null; } + set { + message_ = value; + messageCase_ = value == null ? MessageOneofCase.None : MessageOneofCase.SimulateScenario; + } + } + private object message_; /// Enum of possible cases for the "message" oneof. public enum MessageOneofCase { @@ -9357,6 +9488,7 @@ public enum MessageOneofCase { SendBytes = 41, PublishDataTrack = 42, DataTrackStreamEvent = 43, + SimulateScenario = 44, } private MessageOneofCase messageCase_ = MessageOneofCase.None; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -9429,6 +9561,7 @@ public bool Equals(FfiEvent other) { if (!object.Equals(SendBytes, other.SendBytes)) return false; if (!object.Equals(PublishDataTrack, other.PublishDataTrack)) return false; if (!object.Equals(DataTrackStreamEvent, other.DataTrackStreamEvent)) return false; + if (!object.Equals(SimulateScenario, other.SimulateScenario)) return false; if (MessageCase != other.MessageCase) return false; return Equals(_unknownFields, other._unknownFields); } @@ -9479,6 +9612,7 @@ public override int GetHashCode() { if (messageCase_ == MessageOneofCase.SendBytes) hash ^= SendBytes.GetHashCode(); if (messageCase_ == MessageOneofCase.PublishDataTrack) hash ^= PublishDataTrack.GetHashCode(); if (messageCase_ == MessageOneofCase.DataTrackStreamEvent) hash ^= DataTrackStreamEvent.GetHashCode(); + if (messageCase_ == MessageOneofCase.SimulateScenario) hash ^= SimulateScenario.GetHashCode(); hash ^= (int) messageCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -9666,6 +9800,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(218, 2); output.WriteMessage(DataTrackStreamEvent); } + if (messageCase_ == MessageOneofCase.SimulateScenario) { + output.WriteRawTag(226, 2); + output.WriteMessage(SimulateScenario); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -9844,6 +9982,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(218, 2); output.WriteMessage(DataTrackStreamEvent); } + if (messageCase_ == MessageOneofCase.SimulateScenario) { + output.WriteRawTag(226, 2); + output.WriteMessage(SimulateScenario); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -9980,6 +10122,9 @@ public int CalculateSize() { if (messageCase_ == MessageOneofCase.DataTrackStreamEvent) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(DataTrackStreamEvent); } + if (messageCase_ == MessageOneofCase.SimulateScenario) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(SimulateScenario); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -10245,6 +10390,12 @@ public void MergeFrom(FfiEvent other) { } DataTrackStreamEvent.MergeFrom(other.DataTrackStreamEvent); break; + case MessageOneofCase.SimulateScenario: + if (SimulateScenario == null) { + SimulateScenario = new global::LiveKit.Proto.SimulateScenarioCallback(); + } + SimulateScenario.MergeFrom(other.SimulateScenario); + break; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); @@ -10644,6 +10795,15 @@ public void MergeFrom(pb::CodedInputStream input) { DataTrackStreamEvent = subBuilder; break; } + case 354: { + global::LiveKit.Proto.SimulateScenarioCallback subBuilder = new global::LiveKit.Proto.SimulateScenarioCallback(); + if (messageCase_ == MessageOneofCase.SimulateScenario) { + subBuilder.MergeFrom(SimulateScenario); + } + input.ReadMessage(subBuilder); + SimulateScenario = subBuilder; + break; + } } } #endif @@ -11041,6 +11201,15 @@ public void MergeFrom(pb::CodedInputStream input) { DataTrackStreamEvent = subBuilder; break; } + case 354: { + global::LiveKit.Proto.SimulateScenarioCallback subBuilder = new global::LiveKit.Proto.SimulateScenarioCallback(); + if (messageCase_ == MessageOneofCase.SimulateScenario) { + subBuilder.MergeFrom(SimulateScenario); + } + input.ReadMessage(subBuilder); + SimulateScenario = subBuilder; + break; + } } } } diff --git a/Runtime/Scripts/Proto/Room.cs b/Runtime/Scripts/Proto/Room.cs index c9e129d7..c3489334 100644 --- a/Runtime/Scripts/Proto/Room.cs +++ b/Runtime/Scripts/Proto/Room.cs @@ -45,315 +45,331 @@ static RoomReflection() { "dF9hc3luY19pZBgCIAEoBBIvCgZyZWFzb24YAyABKA4yHy5saXZla2l0LnBy", "b3RvLkRpc2Nvbm5lY3RSZWFzb24iJgoSRGlzY29ubmVjdFJlc3BvbnNlEhAK", "CGFzeW5jX2lkGAEgAigEIiYKEkRpc2Nvbm5lY3RDYWxsYmFjaxIQCghhc3lu", - "Y19pZBgBIAIoBCKcAQoTUHVibGlzaFRyYWNrUmVxdWVzdBIgChhsb2NhbF9w", - "YXJ0aWNpcGFudF9oYW5kbGUYASACKAQSFAoMdHJhY2tfaGFuZGxlGAIgAigE", - "EjMKB29wdGlvbnMYAyACKAsyIi5saXZla2l0LnByb3RvLlRyYWNrUHVibGlz", - "aE9wdGlvbnMSGAoQcmVxdWVzdF9hc3luY19pZBgEIAEoBCIoChRQdWJsaXNo", - "VHJhY2tSZXNwb25zZRIQCghhc3luY19pZBgBIAIoBCKBAQoUUHVibGlzaFRy", - "YWNrQ2FsbGJhY2sSEAoIYXN5bmNfaWQYASACKAQSDwoFZXJyb3IYAiABKAlI", - "ABI7CgtwdWJsaWNhdGlvbhgDIAEoCzIkLmxpdmVraXQucHJvdG8uT3duZWRU", - "cmFja1B1YmxpY2F0aW9uSABCCQoHbWVzc2FnZSKBAQoVVW5wdWJsaXNoVHJh", - "Y2tSZXF1ZXN0EiAKGGxvY2FsX3BhcnRpY2lwYW50X2hhbmRsZRgBIAIoBBIR", - "Cgl0cmFja19zaWQYAiACKAkSGQoRc3RvcF9vbl91bnB1Ymxpc2gYAyACKAgS", - "GAoQcmVxdWVzdF9hc3luY19pZBgEIAEoBCIqChZVbnB1Ymxpc2hUcmFja1Jl", - "c3BvbnNlEhAKCGFzeW5jX2lkGAEgAigEIjkKFlVucHVibGlzaFRyYWNrQ2Fs", - "bGJhY2sSEAoIYXN5bmNfaWQYASACKAQSDQoFZXJyb3IYAiABKAki0wEKElB1", - "Ymxpc2hEYXRhUmVxdWVzdBIgChhsb2NhbF9wYXJ0aWNpcGFudF9oYW5kbGUY", - "ASACKAQSEAoIZGF0YV9wdHIYAiACKAQSEAoIZGF0YV9sZW4YAyACKAQSEAoI", - "cmVsaWFibGUYBCACKAgSHAoQZGVzdGluYXRpb25fc2lkcxgFIAMoCUICGAES", - "DQoFdG9waWMYBiABKAkSHgoWZGVzdGluYXRpb25faWRlbnRpdGllcxgHIAMo", - "CRIYChByZXF1ZXN0X2FzeW5jX2lkGAggASgEIicKE1B1Ymxpc2hEYXRhUmVz", - "cG9uc2USEAoIYXN5bmNfaWQYASACKAQiNgoTUHVibGlzaERhdGFDYWxsYmFj", - "axIQCghhc3luY19pZBgBIAIoBBINCgVlcnJvchgCIAEoCSLAAQobUHVibGlz", - "aFRyYW5zY3JpcHRpb25SZXF1ZXN0EiAKGGxvY2FsX3BhcnRpY2lwYW50X2hh", - "bmRsZRgBIAIoBBIcChRwYXJ0aWNpcGFudF9pZGVudGl0eRgCIAIoCRIQCgh0", - "cmFja19pZBgDIAIoCRI1CghzZWdtZW50cxgEIAMoCzIjLmxpdmVraXQucHJv", - "dG8uVHJhbnNjcmlwdGlvblNlZ21lbnQSGAoQcmVxdWVzdF9hc3luY19pZBgF", - "IAEoBCIwChxQdWJsaXNoVHJhbnNjcmlwdGlvblJlc3BvbnNlEhAKCGFzeW5j", - "X2lkGAEgAigEIj8KHFB1Ymxpc2hUcmFuc2NyaXB0aW9uQ2FsbGJhY2sSEAoI", - "YXN5bmNfaWQYASACKAQSDQoFZXJyb3IYAiABKAkikAEKFVB1Ymxpc2hTaXBE", - "dG1mUmVxdWVzdBIgChhsb2NhbF9wYXJ0aWNpcGFudF9oYW5kbGUYASACKAQS", - "DAoEY29kZRgCIAIoDRINCgVkaWdpdBgDIAIoCRIeChZkZXN0aW5hdGlvbl9p", - "ZGVudGl0aWVzGAQgAygJEhgKEHJlcXVlc3RfYXN5bmNfaWQYBSABKAQiKgoW", - "UHVibGlzaFNpcER0bWZSZXNwb25zZRIQCghhc3luY19pZBgBIAIoBCI5ChZQ", - "dWJsaXNoU2lwRHRtZkNhbGxiYWNrEhAKCGFzeW5jX2lkGAEgAigEEg0KBWVy", - "cm9yGAIgASgJImcKF1NldExvY2FsTWV0YWRhdGFSZXF1ZXN0EiAKGGxvY2Fs", - "X3BhcnRpY2lwYW50X2hhbmRsZRgBIAIoBBIQCghtZXRhZGF0YRgCIAIoCRIY", - "ChByZXF1ZXN0X2FzeW5jX2lkGAMgASgEIiwKGFNldExvY2FsTWV0YWRhdGFS", - "ZXNwb25zZRIQCghhc3luY19pZBgBIAIoBCI7ChhTZXRMb2NhbE1ldGFkYXRh", - "Q2FsbGJhY2sSEAoIYXN5bmNfaWQYASACKAQSDQoFZXJyb3IYAiABKAkingEK", - "FlNlbmRDaGF0TWVzc2FnZVJlcXVlc3QSIAoYbG9jYWxfcGFydGljaXBhbnRf", - "aGFuZGxlGAEgAigEEg8KB21lc3NhZ2UYAiACKAkSHgoWZGVzdGluYXRpb25f", - "aWRlbnRpdGllcxgDIAMoCRIXCg9zZW5kZXJfaWRlbnRpdHkYBCABKAkSGAoQ", - "cmVxdWVzdF9hc3luY19pZBgFIAEoBCLWAQoWRWRpdENoYXRNZXNzYWdlUmVx", - "dWVzdBIgChhsb2NhbF9wYXJ0aWNpcGFudF9oYW5kbGUYASACKAQSEQoJZWRp", - "dF90ZXh0GAIgAigJEjQKEG9yaWdpbmFsX21lc3NhZ2UYAyACKAsyGi5saXZl", - "a2l0LnByb3RvLkNoYXRNZXNzYWdlEh4KFmRlc3RpbmF0aW9uX2lkZW50aXRp", - "ZXMYBCADKAkSFwoPc2VuZGVyX2lkZW50aXR5GAUgASgJEhgKEHJlcXVlc3Rf", - "YXN5bmNfaWQYBiABKAQiKwoXU2VuZENoYXRNZXNzYWdlUmVzcG9uc2USEAoI", - "YXN5bmNfaWQYASACKAQiewoXU2VuZENoYXRNZXNzYWdlQ2FsbGJhY2sSEAoI", - "YXN5bmNfaWQYASACKAQSDwoFZXJyb3IYAiABKAlIABIyCgxjaGF0X21lc3Nh", - "Z2UYAyABKAsyGi5saXZla2l0LnByb3RvLkNoYXRNZXNzYWdlSABCCQoHbWVz", - "c2FnZSKLAQoZU2V0TG9jYWxBdHRyaWJ1dGVzUmVxdWVzdBIgChhsb2NhbF9w", - "YXJ0aWNpcGFudF9oYW5kbGUYASACKAQSMgoKYXR0cmlidXRlcxgCIAMoCzIe", - "LmxpdmVraXQucHJvdG8uQXR0cmlidXRlc0VudHJ5EhgKEHJlcXVlc3RfYXN5", - "bmNfaWQYAyABKAQiLQoPQXR0cmlidXRlc0VudHJ5EgsKA2tleRgBIAIoCRIN", - "CgV2YWx1ZRgCIAIoCSIuChpTZXRMb2NhbEF0dHJpYnV0ZXNSZXNwb25zZRIQ", - "Cghhc3luY19pZBgBIAIoBCI9ChpTZXRMb2NhbEF0dHJpYnV0ZXNDYWxsYmFj", - "axIQCghhc3luY19pZBgBIAIoBBINCgVlcnJvchgCIAEoCSJfChNTZXRMb2Nh", - "bE5hbWVSZXF1ZXN0EiAKGGxvY2FsX3BhcnRpY2lwYW50X2hhbmRsZRgBIAIo", - "BBIMCgRuYW1lGAIgAigJEhgKEHJlcXVlc3RfYXN5bmNfaWQYAyABKAQiKAoU", - "U2V0TG9jYWxOYW1lUmVzcG9uc2USEAoIYXN5bmNfaWQYASACKAQiNwoUU2V0", - "TG9jYWxOYW1lQ2FsbGJhY2sSEAoIYXN5bmNfaWQYASACKAQSDQoFZXJyb3IY", - "AiABKAkiRQoUU2V0U3Vic2NyaWJlZFJlcXVlc3QSEQoJc3Vic2NyaWJlGAEg", - "AigIEhoKEnB1YmxpY2F0aW9uX2hhbmRsZRgCIAIoBCIXChVTZXRTdWJzY3Jp", - "YmVkUmVzcG9uc2UiRwoWR2V0U2Vzc2lvblN0YXRzUmVxdWVzdBITCgtyb29t", - "X2hhbmRsZRgBIAIoBBIYChByZXF1ZXN0X2FzeW5jX2lkGAIgASgEIisKF0dl", - "dFNlc3Npb25TdGF0c1Jlc3BvbnNlEhAKCGFzeW5jX2lkGAEgAigEIvcBChdH", - "ZXRTZXNzaW9uU3RhdHNDYWxsYmFjaxIQCghhc3luY19pZBgBIAIoBBIPCgVl", - "cnJvchgCIAEoCUgAEj8KBnJlc3VsdBgDIAEoCzItLmxpdmVraXQucHJvdG8u", - "R2V0U2Vzc2lvblN0YXRzQ2FsbGJhY2suUmVzdWx0SAAabQoGUmVzdWx0EjAK", - "D3B1Ymxpc2hlcl9zdGF0cxgBIAMoCzIXLmxpdmVraXQucHJvdG8uUnRjU3Rh", - "dHMSMQoQc3Vic2NyaWJlcl9zdGF0cxgCIAMoCzIXLmxpdmVraXQucHJvdG8u", - "UnRjU3RhdHNCCQoHbWVzc2FnZSI7Cg1WaWRlb0VuY29kaW5nEhMKC21heF9i", - "aXRyYXRlGAEgAigEEhUKDW1heF9mcmFtZXJhdGUYAiACKAEiJAoNQXVkaW9F", - "bmNvZGluZxITCgttYXhfYml0cmF0ZRgBIAIoBCK1AgoTVHJhY2tQdWJsaXNo", - "T3B0aW9ucxI0Cg52aWRlb19lbmNvZGluZxgBIAEoCzIcLmxpdmVraXQucHJv", - "dG8uVmlkZW9FbmNvZGluZxI0Cg5hdWRpb19lbmNvZGluZxgCIAEoCzIcLmxp", - "dmVraXQucHJvdG8uQXVkaW9FbmNvZGluZxIuCgt2aWRlb19jb2RlYxgDIAEo", - "DjIZLmxpdmVraXQucHJvdG8uVmlkZW9Db2RlYxILCgNkdHgYBCABKAgSCwoD", - "cmVkGAUgASgIEhEKCXNpbXVsY2FzdBgGIAEoCBIqCgZzb3VyY2UYByABKA4y", - "Gi5saXZla2l0LnByb3RvLlRyYWNrU291cmNlEg4KBnN0cmVhbRgIIAEoCRIZ", - "ChFwcmVjb25uZWN0X2J1ZmZlchgJIAEoCCI9CglJY2VTZXJ2ZXISDAoEdXJs", - "cxgBIAMoCRIQCgh1c2VybmFtZRgCIAEoCRIQCghwYXNzd29yZBgDIAEoCSLE", - "AQoJUnRjQ29uZmlnEjsKEmljZV90cmFuc3BvcnRfdHlwZRgBIAEoDjIfLmxp", - "dmVraXQucHJvdG8uSWNlVHJhbnNwb3J0VHlwZRJLChpjb250aW51YWxfZ2F0", - "aGVyaW5nX3BvbGljeRgCIAEoDjInLmxpdmVraXQucHJvdG8uQ29udGludWFs", - "R2F0aGVyaW5nUG9saWN5Ei0KC2ljZV9zZXJ2ZXJzGAMgAygLMhgubGl2ZWtp", - "dC5wcm90by5JY2VTZXJ2ZXIirgIKC1Jvb21PcHRpb25zEhYKDmF1dG9fc3Vi", - "c2NyaWJlGAEgASgIEhcKD2FkYXB0aXZlX3N0cmVhbRgCIAEoCBIQCghkeW5h", - "Y2FzdBgDIAEoCBIsCgRlMmVlGAQgASgLMhoubGl2ZWtpdC5wcm90by5FMmVl", - "T3B0aW9uc0ICGAESLAoKcnRjX2NvbmZpZxgFIAEoCzIYLmxpdmVraXQucHJv", - "dG8uUnRjQ29uZmlnEhQKDGpvaW5fcmV0cmllcxgGIAEoDRIuCgplbmNyeXB0", - "aW9uGAcgASgLMhoubGl2ZWtpdC5wcm90by5FMmVlT3B0aW9ucxIeChZzaW5n", - "bGVfcGVlcl9jb25uZWN0aW9uGAggASgIEhoKEmNvbm5lY3RfdGltZW91dF9t", - "cxgJIAEoBCJ3ChRUcmFuc2NyaXB0aW9uU2VnbWVudBIKCgJpZBgBIAIoCRIM", - "CgR0ZXh0GAIgAigJEhIKCnN0YXJ0X3RpbWUYAyACKAQSEAoIZW5kX3RpbWUY", - "BCACKAQSDQoFZmluYWwYBSACKAgSEAoIbGFuZ3VhZ2UYBiACKAkiMAoKQnVm", - "ZmVySW5mbxIQCghkYXRhX3B0chgBIAIoBBIQCghkYXRhX2xlbhgCIAIoBCJl", - "CgtPd25lZEJ1ZmZlchItCgZoYW5kbGUYASACKAsyHS5saXZla2l0LnByb3Rv", - "LkZmaU93bmVkSGFuZGxlEicKBGRhdGEYAiACKAsyGS5saXZla2l0LnByb3Rv", - "LkJ1ZmZlckluZm8ihRcKCVJvb21FdmVudBITCgtyb29tX2hhbmRsZRgBIAIo", - "BBJEChVwYXJ0aWNpcGFudF9jb25uZWN0ZWQYAiABKAsyIy5saXZla2l0LnBy", - "b3RvLlBhcnRpY2lwYW50Q29ubmVjdGVkSAASSgoYcGFydGljaXBhbnRfZGlz", - "Y29ubmVjdGVkGAMgASgLMiYubGl2ZWtpdC5wcm90by5QYXJ0aWNpcGFudERp", - "c2Nvbm5lY3RlZEgAEkMKFWxvY2FsX3RyYWNrX3B1Ymxpc2hlZBgEIAEoCzIi", - "LmxpdmVraXQucHJvdG8uTG9jYWxUcmFja1B1Ymxpc2hlZEgAEkcKF2xvY2Fs", - "X3RyYWNrX3VucHVibGlzaGVkGAUgASgLMiQubGl2ZWtpdC5wcm90by5Mb2Nh", - "bFRyYWNrVW5wdWJsaXNoZWRIABJFChZsb2NhbF90cmFja19zdWJzY3JpYmVk", - "GAYgASgLMiMubGl2ZWtpdC5wcm90by5Mb2NhbFRyYWNrU3Vic2NyaWJlZEgA", - "EjgKD3RyYWNrX3B1Ymxpc2hlZBgHIAEoCzIdLmxpdmVraXQucHJvdG8uVHJh", - "Y2tQdWJsaXNoZWRIABI8ChF0cmFja191bnB1Ymxpc2hlZBgIIAEoCzIfLmxp", - "dmVraXQucHJvdG8uVHJhY2tVbnB1Ymxpc2hlZEgAEjoKEHRyYWNrX3N1YnNj", - "cmliZWQYCSABKAsyHi5saXZla2l0LnByb3RvLlRyYWNrU3Vic2NyaWJlZEgA", - "Ej4KEnRyYWNrX3Vuc3Vic2NyaWJlZBgKIAEoCzIgLmxpdmVraXQucHJvdG8u", - "VHJhY2tVbnN1YnNjcmliZWRIABJLChl0cmFja19zdWJzY3JpcHRpb25fZmFp", - "bGVkGAsgASgLMiYubGl2ZWtpdC5wcm90by5UcmFja1N1YnNjcmlwdGlvbkZh", - "aWxlZEgAEjAKC3RyYWNrX211dGVkGAwgASgLMhkubGl2ZWtpdC5wcm90by5U", - "cmFja011dGVkSAASNAoNdHJhY2tfdW5tdXRlZBgNIAEoCzIbLmxpdmVraXQu", - "cHJvdG8uVHJhY2tVbm11dGVkSAASRwoXYWN0aXZlX3NwZWFrZXJzX2NoYW5n", - "ZWQYDiABKAsyJC5saXZla2l0LnByb3RvLkFjdGl2ZVNwZWFrZXJzQ2hhbmdl", - "ZEgAEkMKFXJvb21fbWV0YWRhdGFfY2hhbmdlZBgPIAEoCzIiLmxpdmVraXQu", - "cHJvdG8uUm9vbU1ldGFkYXRhQ2hhbmdlZEgAEjkKEHJvb21fc2lkX2NoYW5n", - "ZWQYECABKAsyHS5saXZla2l0LnByb3RvLlJvb21TaWRDaGFuZ2VkSAASUQoc", - "cGFydGljaXBhbnRfbWV0YWRhdGFfY2hhbmdlZBgRIAEoCzIpLmxpdmVraXQu", - "cHJvdG8uUGFydGljaXBhbnRNZXRhZGF0YUNoYW5nZWRIABJJChhwYXJ0aWNp", - "cGFudF9uYW1lX2NoYW5nZWQYEiABKAsyJS5saXZla2l0LnByb3RvLlBhcnRp", - "Y2lwYW50TmFtZUNoYW5nZWRIABJVCh5wYXJ0aWNpcGFudF9hdHRyaWJ1dGVz", - "X2NoYW5nZWQYEyABKAsyKy5saXZla2l0LnByb3RvLlBhcnRpY2lwYW50QXR0", - "cmlidXRlc0NoYW5nZWRIABJNChpjb25uZWN0aW9uX3F1YWxpdHlfY2hhbmdl", - "ZBgUIAEoCzInLmxpdmVraXQucHJvdG8uQ29ubmVjdGlvblF1YWxpdHlDaGFu", - "Z2VkSAASSQoYY29ubmVjdGlvbl9zdGF0ZV9jaGFuZ2VkGBUgASgLMiUubGl2", - "ZWtpdC5wcm90by5Db25uZWN0aW9uU3RhdGVDaGFuZ2VkSAASMwoMZGlzY29u", - "bmVjdGVkGBYgASgLMhsubGl2ZWtpdC5wcm90by5EaXNjb25uZWN0ZWRIABIz", - "CgxyZWNvbm5lY3RpbmcYFyABKAsyGy5saXZla2l0LnByb3RvLlJlY29ubmVj", - "dGluZ0gAEjEKC3JlY29ubmVjdGVkGBggASgLMhoubGl2ZWtpdC5wcm90by5S", - "ZWNvbm5lY3RlZEgAEj0KEmUyZWVfc3RhdGVfY2hhbmdlZBgZIAEoCzIfLmxp", - "dmVraXQucHJvdG8uRTJlZVN0YXRlQ2hhbmdlZEgAEiUKA2VvcxgaIAEoCzIW", - "LmxpdmVraXQucHJvdG8uUm9vbUVPU0gAEkEKFGRhdGFfcGFja2V0X3JlY2Vp", - "dmVkGBsgASgLMiEubGl2ZWtpdC5wcm90by5EYXRhUGFja2V0UmVjZWl2ZWRI", - "ABJGChZ0cmFuc2NyaXB0aW9uX3JlY2VpdmVkGBwgASgLMiQubGl2ZWtpdC5w", - "cm90by5UcmFuc2NyaXB0aW9uUmVjZWl2ZWRIABI6CgxjaGF0X21lc3NhZ2UY", - "HSABKAsyIi5saXZla2l0LnByb3RvLkNoYXRNZXNzYWdlUmVjZWl2ZWRIABJJ", - "ChZzdHJlYW1faGVhZGVyX3JlY2VpdmVkGB4gASgLMicubGl2ZWtpdC5wcm90", - "by5EYXRhU3RyZWFtSGVhZGVyUmVjZWl2ZWRIABJHChVzdHJlYW1fY2h1bmtf", - "cmVjZWl2ZWQYHyABKAsyJi5saXZla2l0LnByb3RvLkRhdGFTdHJlYW1DaHVu", - "a1JlY2VpdmVkSAASSwoXc3RyZWFtX3RyYWlsZXJfcmVjZWl2ZWQYICABKAsy", - "KC5saXZla2l0LnByb3RvLkRhdGFTdHJlYW1UcmFpbGVyUmVjZWl2ZWRIABJp", - "CiJkYXRhX2NoYW5uZWxfbG93X3RocmVzaG9sZF9jaGFuZ2VkGCEgASgLMjsu", - "bGl2ZWtpdC5wcm90by5EYXRhQ2hhbm5lbEJ1ZmZlcmVkQW1vdW50TG93VGhy", - "ZXNob2xkQ2hhbmdlZEgAEj0KEmJ5dGVfc3RyZWFtX29wZW5lZBgiIAEoCzIf", - "LmxpdmVraXQucHJvdG8uQnl0ZVN0cmVhbU9wZW5lZEgAEj0KEnRleHRfc3Ry", - "ZWFtX29wZW5lZBgjIAEoCzIfLmxpdmVraXQucHJvdG8uVGV4dFN0cmVhbU9w", - "ZW5lZEgAEi8KDHJvb21fdXBkYXRlZBgkIAEoCzIXLmxpdmVraXQucHJvdG8u", - "Um9vbUluZm9IABIoCgVtb3ZlZBglIAEoCzIXLmxpdmVraXQucHJvdG8uUm9v", - "bUluZm9IABJCChRwYXJ0aWNpcGFudHNfdXBkYXRlZBgmIAEoCzIiLmxpdmVr", - "aXQucHJvdG8uUGFydGljaXBhbnRzVXBkYXRlZEgAEmIKJXBhcnRpY2lwYW50", - "X2VuY3J5cHRpb25fc3RhdHVzX2NoYW5nZWQYJyABKAsyMS5saXZla2l0LnBy", - "b3RvLlBhcnRpY2lwYW50RW5jcnlwdGlvblN0YXR1c0NoYW5nZWRIABJVCh5w", - "YXJ0aWNpcGFudF9wZXJtaXNzaW9uX2NoYW5nZWQYKSABKAsyKy5saXZla2l0", - "LnByb3RvLlBhcnRpY2lwYW50UGVybWlzc2lvbkNoYW5nZWRIABI4Cg90b2tl", - "bl9yZWZyZXNoZWQYKCABKAsyHS5saXZla2l0LnByb3RvLlRva2VuUmVmcmVz", - "aGVkSAASPgoScGFydGljaXBhbnRfYWN0aXZlGCogASgLMiAubGl2ZWtpdC5w", - "cm90by5QYXJ0aWNpcGFudEFjdGl2ZUgAEkEKFGRhdGFfdHJhY2tfcHVibGlz", - "aGVkGCsgASgLMiEubGl2ZWtpdC5wcm90by5EYXRhVHJhY2tQdWJsaXNoZWRI", - "ABJFChZkYXRhX3RyYWNrX3VucHVibGlzaGVkGCwgASgLMiMubGl2ZWtpdC5w", - "cm90by5EYXRhVHJhY2tVbnB1Ymxpc2hlZEgAQgkKB21lc3NhZ2UiyQIKCFJv", - "b21JbmZvEgsKA3NpZBgBIAEoCRIMCgRuYW1lGAIgAigJEhAKCG1ldGFkYXRh", - "GAMgAigJEi4KJmxvc3N5X2RjX2J1ZmZlcmVkX2Ftb3VudF9sb3dfdGhyZXNo", - "b2xkGAQgAigEEjEKKXJlbGlhYmxlX2RjX2J1ZmZlcmVkX2Ftb3VudF9sb3df", - "dGhyZXNob2xkGAUgAigEEhUKDWVtcHR5X3RpbWVvdXQYBiACKA0SGQoRZGVw", - "YXJ0dXJlX3RpbWVvdXQYByACKA0SGAoQbWF4X3BhcnRpY2lwYW50cxgIIAIo", - "DRIVCg1jcmVhdGlvbl90aW1lGAkgAigDEhgKEG51bV9wYXJ0aWNpcGFudHMY", - "CiACKA0SFgoObnVtX3B1Ymxpc2hlcnMYCyACKA0SGAoQYWN0aXZlX3JlY29y", - "ZGluZxgMIAIoCCJhCglPd25lZFJvb20SLQoGaGFuZGxlGAEgAigLMh0ubGl2", - "ZWtpdC5wcm90by5GZmlPd25lZEhhbmRsZRIlCgRpbmZvGAIgAigLMhcubGl2", - "ZWtpdC5wcm90by5Sb29tSW5mbyJLChNQYXJ0aWNpcGFudHNVcGRhdGVkEjQK", - "DHBhcnRpY2lwYW50cxgBIAMoCzIeLmxpdmVraXQucHJvdG8uUGFydGljaXBh", - "bnRJbmZvIkUKFFBhcnRpY2lwYW50Q29ubmVjdGVkEi0KBGluZm8YASACKAsy", - "Hy5saXZla2l0LnByb3RvLk93bmVkUGFydGljaXBhbnQiMQoRUGFydGljaXBh", - "bnRBY3RpdmUSHAoUcGFydGljaXBhbnRfaWRlbnRpdHkYASACKAkicwoXUGFy", - "dGljaXBhbnREaXNjb25uZWN0ZWQSHAoUcGFydGljaXBhbnRfaWRlbnRpdHkY", - "ASACKAkSOgoRZGlzY29ubmVjdF9yZWFzb24YAiACKA4yHy5saXZla2l0LnBy", - "b3RvLkRpc2Nvbm5lY3RSZWFzb24iKAoTTG9jYWxUcmFja1B1Ymxpc2hlZBIR", - "Cgl0cmFja19zaWQYASACKAkiMAoVTG9jYWxUcmFja1VucHVibGlzaGVkEhcK", - "D3B1YmxpY2F0aW9uX3NpZBgBIAIoCSIpChRMb2NhbFRyYWNrU3Vic2NyaWJl", - "ZBIRCgl0cmFja19zaWQYAiACKAkiaQoOVHJhY2tQdWJsaXNoZWQSHAoUcGFy", - "dGljaXBhbnRfaWRlbnRpdHkYASACKAkSOQoLcHVibGljYXRpb24YAiACKAsy", - "JC5saXZla2l0LnByb3RvLk93bmVkVHJhY2tQdWJsaWNhdGlvbiJJChBUcmFj", - "a1VucHVibGlzaGVkEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5GAEgAigJEhcK", - "D3B1YmxpY2F0aW9uX3NpZBgCIAIoCSJZCg9UcmFja1N1YnNjcmliZWQSHAoU", - "cGFydGljaXBhbnRfaWRlbnRpdHkYASACKAkSKAoFdHJhY2sYAiACKAsyGS5s", - "aXZla2l0LnByb3RvLk93bmVkVHJhY2siRAoRVHJhY2tVbnN1YnNjcmliZWQS", - "HAoUcGFydGljaXBhbnRfaWRlbnRpdHkYASACKAkSEQoJdHJhY2tfc2lkGAIg", - "AigJIlkKF1RyYWNrU3Vic2NyaXB0aW9uRmFpbGVkEhwKFHBhcnRpY2lwYW50", - "X2lkZW50aXR5GAEgAigJEhEKCXRyYWNrX3NpZBgCIAIoCRINCgVlcnJvchgD", - "IAIoCSI9CgpUcmFja011dGVkEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5GAEg", - "AigJEhEKCXRyYWNrX3NpZBgCIAIoCSI/CgxUcmFja1VubXV0ZWQSHAoUcGFy", - "dGljaXBhbnRfaWRlbnRpdHkYASACKAkSEQoJdHJhY2tfc2lkGAIgAigJIl8K", - "EEUyZWVTdGF0ZUNoYW5nZWQSHAoUcGFydGljaXBhbnRfaWRlbnRpdHkYASAC", - "KAkSLQoFc3RhdGUYAiACKA4yHi5saXZla2l0LnByb3RvLkVuY3J5cHRpb25T", - "dGF0ZSI3ChVBY3RpdmVTcGVha2Vyc0NoYW5nZWQSHgoWcGFydGljaXBhbnRf", - "aWRlbnRpdGllcxgBIAMoCSInChNSb29tTWV0YWRhdGFDaGFuZ2VkEhAKCG1l", - "dGFkYXRhGAEgAigJIh0KDlJvb21TaWRDaGFuZ2VkEgsKA3NpZBgBIAIoCSJM", - "ChpQYXJ0aWNpcGFudE1ldGFkYXRhQ2hhbmdlZBIcChRwYXJ0aWNpcGFudF9p", - "ZGVudGl0eRgBIAIoCRIQCghtZXRhZGF0YRgCIAIoCSKsAQocUGFydGljaXBh", - "bnRBdHRyaWJ1dGVzQ2hhbmdlZBIcChRwYXJ0aWNpcGFudF9pZGVudGl0eRgB", - "IAIoCRIyCgphdHRyaWJ1dGVzGAIgAygLMh4ubGl2ZWtpdC5wcm90by5BdHRy", - "aWJ1dGVzRW50cnkSOgoSY2hhbmdlZF9hdHRyaWJ1dGVzGAMgAygLMh4ubGl2", - "ZWtpdC5wcm90by5BdHRyaWJ1dGVzRW50cnkiWAoiUGFydGljaXBhbnRFbmNy", - "eXB0aW9uU3RhdHVzQ2hhbmdlZBIcChRwYXJ0aWNpcGFudF9pZGVudGl0eRgB", - "IAIoCRIUCgxpc19lbmNyeXB0ZWQYAiACKAgiRAoWUGFydGljaXBhbnROYW1l", - "Q2hhbmdlZBIcChRwYXJ0aWNpcGFudF9pZGVudGl0eRgBIAIoCRIMCgRuYW1l", - "GAIgAigJInYKHFBhcnRpY2lwYW50UGVybWlzc2lvbkNoYW5nZWQSHAoUcGFy", - "dGljaXBhbnRfaWRlbnRpdHkYASACKAkSOAoKcGVybWlzc2lvbhgCIAEoCzIk", - "LmxpdmVraXQucHJvdG8uUGFydGljaXBhbnRQZXJtaXNzaW9uImsKGENvbm5l", - "Y3Rpb25RdWFsaXR5Q2hhbmdlZBIcChRwYXJ0aWNpcGFudF9pZGVudGl0eRgB", - "IAIoCRIxCgdxdWFsaXR5GAIgAigOMiAubGl2ZWtpdC5wcm90by5Db25uZWN0", - "aW9uUXVhbGl0eSJFCgpVc2VyUGFja2V0EigKBGRhdGEYASACKAsyGi5saXZl", - "a2l0LnByb3RvLk93bmVkQnVmZmVyEg0KBXRvcGljGAIgASgJInkKC0NoYXRN", - "ZXNzYWdlEgoKAmlkGAEgAigJEhEKCXRpbWVzdGFtcBgCIAIoAxIPCgdtZXNz", - "YWdlGAMgAigJEhYKDmVkaXRfdGltZXN0YW1wGAQgASgDEg8KB2RlbGV0ZWQY", - "BSABKAgSEQoJZ2VuZXJhdGVkGAYgASgIImAKE0NoYXRNZXNzYWdlUmVjZWl2", - "ZWQSKwoHbWVzc2FnZRgBIAIoCzIaLmxpdmVraXQucHJvdG8uQ2hhdE1lc3Nh", - "Z2USHAoUcGFydGljaXBhbnRfaWRlbnRpdHkYAiACKAkiJgoHU2lwRFRNRhIM", - "CgRjb2RlGAEgAigNEg0KBWRpZ2l0GAIgASgJIr8BChJEYXRhUGFja2V0UmVj", - "ZWl2ZWQSKwoEa2luZBgBIAIoDjIdLmxpdmVraXQucHJvdG8uRGF0YVBhY2tl", - "dEtpbmQSHAoUcGFydGljaXBhbnRfaWRlbnRpdHkYAiACKAkSKQoEdXNlchgE", - "IAEoCzIZLmxpdmVraXQucHJvdG8uVXNlclBhY2tldEgAEioKCHNpcF9kdG1m", - "GAUgASgLMhYubGl2ZWtpdC5wcm90by5TaXBEVE1GSABCBwoFdmFsdWUifwoV", - "VHJhbnNjcmlwdGlvblJlY2VpdmVkEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5", - "GAEgASgJEhEKCXRyYWNrX3NpZBgCIAEoCRI1CghzZWdtZW50cxgDIAMoCzIj", - "LmxpdmVraXQucHJvdG8uVHJhbnNjcmlwdGlvblNlZ21lbnQiRwoWQ29ubmVj", - "dGlvblN0YXRlQ2hhbmdlZBItCgVzdGF0ZRgBIAIoDjIeLmxpdmVraXQucHJv", - "dG8uQ29ubmVjdGlvblN0YXRlIgsKCUNvbm5lY3RlZCI/CgxEaXNjb25uZWN0", - "ZWQSLwoGcmVhc29uGAEgAigOMh8ubGl2ZWtpdC5wcm90by5EaXNjb25uZWN0", - "UmVhc29uIg4KDFJlY29ubmVjdGluZyINCgtSZWNvbm5lY3RlZCIfCg5Ub2tl", - "blJlZnJlc2hlZBINCgV0b2tlbhgBIAIoCSIJCgdSb29tRU9TIo4HCgpEYXRh", - "U3RyZWFtGqoBCgpUZXh0SGVhZGVyEj8KDm9wZXJhdGlvbl90eXBlGAEgAigO", - "MicubGl2ZWtpdC5wcm90by5EYXRhU3RyZWFtLk9wZXJhdGlvblR5cGUSDwoH", - "dmVyc2lvbhgCIAEoBRIaChJyZXBseV90b19zdHJlYW1faWQYAyABKAkSGwoT", - "YXR0YWNoZWRfc3RyZWFtX2lkcxgEIAMoCRIRCglnZW5lcmF0ZWQYBSABKAga", - "GgoKQnl0ZUhlYWRlchIMCgRuYW1lGAEgAigJGusCCgZIZWFkZXISEQoJc3Ry", - "ZWFtX2lkGAEgAigJEhEKCXRpbWVzdGFtcBgCIAIoAxIRCgltaW1lX3R5cGUY", - "AyACKAkSDQoFdG9waWMYBCACKAkSFAoMdG90YWxfbGVuZ3RoGAUgASgEEkQK", - "CmF0dHJpYnV0ZXMYBiADKAsyMC5saXZla2l0LnByb3RvLkRhdGFTdHJlYW0u", - "SGVhZGVyLkF0dHJpYnV0ZXNFbnRyeRI7Cgt0ZXh0X2hlYWRlchgHIAEoCzIk", - "LmxpdmVraXQucHJvdG8uRGF0YVN0cmVhbS5UZXh0SGVhZGVySAASOwoLYnl0", - "ZV9oZWFkZXIYCCABKAsyJC5saXZla2l0LnByb3RvLkRhdGFTdHJlYW0uQnl0", - "ZUhlYWRlckgAGjEKD0F0dHJpYnV0ZXNFbnRyeRILCgNrZXkYASABKAkSDQoF", - "dmFsdWUYAiABKAk6AjgBQhAKDmNvbnRlbnRfaGVhZGVyGl0KBUNodW5rEhEK", - "CXN0cmVhbV9pZBgBIAIoCRITCgtjaHVua19pbmRleBgCIAIoBBIPCgdjb250", - "ZW50GAMgAigMEg8KB3ZlcnNpb24YBCABKAUSCgoCaXYYBSABKAwapgEKB1Ry", - "YWlsZXISEQoJc3RyZWFtX2lkGAEgAigJEg4KBnJlYXNvbhgCIAIoCRJFCgph", - "dHRyaWJ1dGVzGAMgAygLMjEubGl2ZWtpdC5wcm90by5EYXRhU3RyZWFtLlRy", - "YWlsZXIuQXR0cmlidXRlc0VudHJ5GjEKD0F0dHJpYnV0ZXNFbnRyeRILCgNr", - "ZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIkEKDU9wZXJhdGlvblR5cGUS", - "CgoGQ1JFQVRFEAASCgoGVVBEQVRFEAESCgoGREVMRVRFEAISDAoIUkVBQ1RJ", - "T04QAyJqChhEYXRhU3RyZWFtSGVhZGVyUmVjZWl2ZWQSHAoUcGFydGljaXBh", - "bnRfaWRlbnRpdHkYASACKAkSMAoGaGVhZGVyGAIgAigLMiAubGl2ZWtpdC5w", - "cm90by5EYXRhU3RyZWFtLkhlYWRlciJnChdEYXRhU3RyZWFtQ2h1bmtSZWNl", - "aXZlZBIcChRwYXJ0aWNpcGFudF9pZGVudGl0eRgBIAIoCRIuCgVjaHVuaxgC", - "IAIoCzIfLmxpdmVraXQucHJvdG8uRGF0YVN0cmVhbS5DaHVuayJtChlEYXRh", - "U3RyZWFtVHJhaWxlclJlY2VpdmVkEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5", - "GAEgAigJEjIKB3RyYWlsZXIYAiACKAsyIS5saXZla2l0LnByb3RvLkRhdGFT", - "dHJlYW0uVHJhaWxlciLAAQoXU2VuZFN0cmVhbUhlYWRlclJlcXVlc3QSIAoY", - "bG9jYWxfcGFydGljaXBhbnRfaGFuZGxlGAEgAigEEjAKBmhlYWRlchgCIAIo", - "CzIgLmxpdmVraXQucHJvdG8uRGF0YVN0cmVhbS5IZWFkZXISHgoWZGVzdGlu", - "YXRpb25faWRlbnRpdGllcxgDIAMoCRIXCg9zZW5kZXJfaWRlbnRpdHkYBCAC", - "KAkSGAoQcmVxdWVzdF9hc3luY19pZBgFIAEoBCK9AQoWU2VuZFN0cmVhbUNo", - "dW5rUmVxdWVzdBIgChhsb2NhbF9wYXJ0aWNpcGFudF9oYW5kbGUYASACKAQS", + "Y19pZBgBIAIoBCJ/ChdTaW11bGF0ZVNjZW5hcmlvUmVxdWVzdBITCgtyb29t", + "X2hhbmRsZRgBIAIoBBI1CghzY2VuYXJpbxgCIAIoDjIjLmxpdmVraXQucHJv", + "dG8uU2ltdWxhdGVTY2VuYXJpb0tpbmQSGAoQcmVxdWVzdF9hc3luY19pZBgD", + "IAEoBCIsChhTaW11bGF0ZVNjZW5hcmlvUmVzcG9uc2USEAoIYXN5bmNfaWQY", + "ASACKAQiOwoYU2ltdWxhdGVTY2VuYXJpb0NhbGxiYWNrEhAKCGFzeW5jX2lk", + "GAEgAigEEg0KBWVycm9yGAIgASgJIpwBChNQdWJsaXNoVHJhY2tSZXF1ZXN0", + "EiAKGGxvY2FsX3BhcnRpY2lwYW50X2hhbmRsZRgBIAIoBBIUCgx0cmFja19o", + "YW5kbGUYAiACKAQSMwoHb3B0aW9ucxgDIAIoCzIiLmxpdmVraXQucHJvdG8u", + "VHJhY2tQdWJsaXNoT3B0aW9ucxIYChByZXF1ZXN0X2FzeW5jX2lkGAQgASgE", + "IigKFFB1Ymxpc2hUcmFja1Jlc3BvbnNlEhAKCGFzeW5jX2lkGAEgAigEIoEB", + "ChRQdWJsaXNoVHJhY2tDYWxsYmFjaxIQCghhc3luY19pZBgBIAIoBBIPCgVl", + "cnJvchgCIAEoCUgAEjsKC3B1YmxpY2F0aW9uGAMgASgLMiQubGl2ZWtpdC5w", + "cm90by5Pd25lZFRyYWNrUHVibGljYXRpb25IAEIJCgdtZXNzYWdlIoEBChVV", + "bnB1Ymxpc2hUcmFja1JlcXVlc3QSIAoYbG9jYWxfcGFydGljaXBhbnRfaGFu", + "ZGxlGAEgAigEEhEKCXRyYWNrX3NpZBgCIAIoCRIZChFzdG9wX29uX3VucHVi", + "bGlzaBgDIAIoCBIYChByZXF1ZXN0X2FzeW5jX2lkGAQgASgEIioKFlVucHVi", + "bGlzaFRyYWNrUmVzcG9uc2USEAoIYXN5bmNfaWQYASACKAQiOQoWVW5wdWJs", + "aXNoVHJhY2tDYWxsYmFjaxIQCghhc3luY19pZBgBIAIoBBINCgVlcnJvchgC", + "IAEoCSLTAQoSUHVibGlzaERhdGFSZXF1ZXN0EiAKGGxvY2FsX3BhcnRpY2lw", + "YW50X2hhbmRsZRgBIAIoBBIQCghkYXRhX3B0chgCIAIoBBIQCghkYXRhX2xl", + "bhgDIAIoBBIQCghyZWxpYWJsZRgEIAIoCBIcChBkZXN0aW5hdGlvbl9zaWRz", + "GAUgAygJQgIYARINCgV0b3BpYxgGIAEoCRIeChZkZXN0aW5hdGlvbl9pZGVu", + "dGl0aWVzGAcgAygJEhgKEHJlcXVlc3RfYXN5bmNfaWQYCCABKAQiJwoTUHVi", + "bGlzaERhdGFSZXNwb25zZRIQCghhc3luY19pZBgBIAIoBCI2ChNQdWJsaXNo", + "RGF0YUNhbGxiYWNrEhAKCGFzeW5jX2lkGAEgAigEEg0KBWVycm9yGAIgASgJ", + "IsABChtQdWJsaXNoVHJhbnNjcmlwdGlvblJlcXVlc3QSIAoYbG9jYWxfcGFy", + "dGljaXBhbnRfaGFuZGxlGAEgAigEEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5", + "GAIgAigJEhAKCHRyYWNrX2lkGAMgAigJEjUKCHNlZ21lbnRzGAQgAygLMiMu", + "bGl2ZWtpdC5wcm90by5UcmFuc2NyaXB0aW9uU2VnbWVudBIYChByZXF1ZXN0", + "X2FzeW5jX2lkGAUgASgEIjAKHFB1Ymxpc2hUcmFuc2NyaXB0aW9uUmVzcG9u", + "c2USEAoIYXN5bmNfaWQYASACKAQiPwocUHVibGlzaFRyYW5zY3JpcHRpb25D", + "YWxsYmFjaxIQCghhc3luY19pZBgBIAIoBBINCgVlcnJvchgCIAEoCSKQAQoV", + "UHVibGlzaFNpcER0bWZSZXF1ZXN0EiAKGGxvY2FsX3BhcnRpY2lwYW50X2hh", + "bmRsZRgBIAIoBBIMCgRjb2RlGAIgAigNEg0KBWRpZ2l0GAMgAigJEh4KFmRl", + "c3RpbmF0aW9uX2lkZW50aXRpZXMYBCADKAkSGAoQcmVxdWVzdF9hc3luY19p", + "ZBgFIAEoBCIqChZQdWJsaXNoU2lwRHRtZlJlc3BvbnNlEhAKCGFzeW5jX2lk", + "GAEgAigEIjkKFlB1Ymxpc2hTaXBEdG1mQ2FsbGJhY2sSEAoIYXN5bmNfaWQY", + "ASACKAQSDQoFZXJyb3IYAiABKAkiZwoXU2V0TG9jYWxNZXRhZGF0YVJlcXVl", + "c3QSIAoYbG9jYWxfcGFydGljaXBhbnRfaGFuZGxlGAEgAigEEhAKCG1ldGFk", + "YXRhGAIgAigJEhgKEHJlcXVlc3RfYXN5bmNfaWQYAyABKAQiLAoYU2V0TG9j", + "YWxNZXRhZGF0YVJlc3BvbnNlEhAKCGFzeW5jX2lkGAEgAigEIjsKGFNldExv", + "Y2FsTWV0YWRhdGFDYWxsYmFjaxIQCghhc3luY19pZBgBIAIoBBINCgVlcnJv", + "chgCIAEoCSKeAQoWU2VuZENoYXRNZXNzYWdlUmVxdWVzdBIgChhsb2NhbF9w", + "YXJ0aWNpcGFudF9oYW5kbGUYASACKAQSDwoHbWVzc2FnZRgCIAIoCRIeChZk", + "ZXN0aW5hdGlvbl9pZGVudGl0aWVzGAMgAygJEhcKD3NlbmRlcl9pZGVudGl0", + "eRgEIAEoCRIYChByZXF1ZXN0X2FzeW5jX2lkGAUgASgEItYBChZFZGl0Q2hh", + "dE1lc3NhZ2VSZXF1ZXN0EiAKGGxvY2FsX3BhcnRpY2lwYW50X2hhbmRsZRgB", + "IAIoBBIRCgllZGl0X3RleHQYAiACKAkSNAoQb3JpZ2luYWxfbWVzc2FnZRgD", + "IAIoCzIaLmxpdmVraXQucHJvdG8uQ2hhdE1lc3NhZ2USHgoWZGVzdGluYXRp", + "b25faWRlbnRpdGllcxgEIAMoCRIXCg9zZW5kZXJfaWRlbnRpdHkYBSABKAkS", + "GAoQcmVxdWVzdF9hc3luY19pZBgGIAEoBCIrChdTZW5kQ2hhdE1lc3NhZ2VS", + "ZXNwb25zZRIQCghhc3luY19pZBgBIAIoBCJ7ChdTZW5kQ2hhdE1lc3NhZ2VD", + "YWxsYmFjaxIQCghhc3luY19pZBgBIAIoBBIPCgVlcnJvchgCIAEoCUgAEjIK", + "DGNoYXRfbWVzc2FnZRgDIAEoCzIaLmxpdmVraXQucHJvdG8uQ2hhdE1lc3Nh", + "Z2VIAEIJCgdtZXNzYWdlIosBChlTZXRMb2NhbEF0dHJpYnV0ZXNSZXF1ZXN0", + "EiAKGGxvY2FsX3BhcnRpY2lwYW50X2hhbmRsZRgBIAIoBBIyCgphdHRyaWJ1", + "dGVzGAIgAygLMh4ubGl2ZWtpdC5wcm90by5BdHRyaWJ1dGVzRW50cnkSGAoQ", + "cmVxdWVzdF9hc3luY19pZBgDIAEoBCItCg9BdHRyaWJ1dGVzRW50cnkSCwoD", + "a2V5GAEgAigJEg0KBXZhbHVlGAIgAigJIi4KGlNldExvY2FsQXR0cmlidXRl", + "c1Jlc3BvbnNlEhAKCGFzeW5jX2lkGAEgAigEIj0KGlNldExvY2FsQXR0cmli", + "dXRlc0NhbGxiYWNrEhAKCGFzeW5jX2lkGAEgAigEEg0KBWVycm9yGAIgASgJ", + "Il8KE1NldExvY2FsTmFtZVJlcXVlc3QSIAoYbG9jYWxfcGFydGljaXBhbnRf", + "aGFuZGxlGAEgAigEEgwKBG5hbWUYAiACKAkSGAoQcmVxdWVzdF9hc3luY19p", + "ZBgDIAEoBCIoChRTZXRMb2NhbE5hbWVSZXNwb25zZRIQCghhc3luY19pZBgB", + "IAIoBCI3ChRTZXRMb2NhbE5hbWVDYWxsYmFjaxIQCghhc3luY19pZBgBIAIo", + "BBINCgVlcnJvchgCIAEoCSJFChRTZXRTdWJzY3JpYmVkUmVxdWVzdBIRCglz", + "dWJzY3JpYmUYASACKAgSGgoScHVibGljYXRpb25faGFuZGxlGAIgAigEIhcK", + "FVNldFN1YnNjcmliZWRSZXNwb25zZSJHChZHZXRTZXNzaW9uU3RhdHNSZXF1", + "ZXN0EhMKC3Jvb21faGFuZGxlGAEgAigEEhgKEHJlcXVlc3RfYXN5bmNfaWQY", + "AiABKAQiKwoXR2V0U2Vzc2lvblN0YXRzUmVzcG9uc2USEAoIYXN5bmNfaWQY", + "ASACKAQi9wEKF0dldFNlc3Npb25TdGF0c0NhbGxiYWNrEhAKCGFzeW5jX2lk", + "GAEgAigEEg8KBWVycm9yGAIgASgJSAASPwoGcmVzdWx0GAMgASgLMi0ubGl2", + "ZWtpdC5wcm90by5HZXRTZXNzaW9uU3RhdHNDYWxsYmFjay5SZXN1bHRIABpt", + "CgZSZXN1bHQSMAoPcHVibGlzaGVyX3N0YXRzGAEgAygLMhcubGl2ZWtpdC5w", + "cm90by5SdGNTdGF0cxIxChBzdWJzY3JpYmVyX3N0YXRzGAIgAygLMhcubGl2", + "ZWtpdC5wcm90by5SdGNTdGF0c0IJCgdtZXNzYWdlIjsKDVZpZGVvRW5jb2Rp", + "bmcSEwoLbWF4X2JpdHJhdGUYASACKAQSFQoNbWF4X2ZyYW1lcmF0ZRgCIAIo", + "ASIkCg1BdWRpb0VuY29kaW5nEhMKC21heF9iaXRyYXRlGAEgAigEIvsCChNU", + "cmFja1B1Ymxpc2hPcHRpb25zEjQKDnZpZGVvX2VuY29kaW5nGAEgASgLMhwu", + "bGl2ZWtpdC5wcm90by5WaWRlb0VuY29kaW5nEjQKDmF1ZGlvX2VuY29kaW5n", + "GAIgASgLMhwubGl2ZWtpdC5wcm90by5BdWRpb0VuY29kaW5nEi4KC3ZpZGVv", + "X2NvZGVjGAMgASgOMhkubGl2ZWtpdC5wcm90by5WaWRlb0NvZGVjEgsKA2R0", + "eBgEIAEoCBILCgNyZWQYBSABKAgSEQoJc2ltdWxjYXN0GAYgASgIEioKBnNv", + "dXJjZRgHIAEoDjIaLmxpdmVraXQucHJvdG8uVHJhY2tTb3VyY2USDgoGc3Ry", + "ZWFtGAggASgJEhkKEXByZWNvbm5lY3RfYnVmZmVyGAkgASgIEkQKF3BhY2tl", + "dF90cmFpbGVyX2ZlYXR1cmVzGAogAygOMiMubGl2ZWtpdC5wcm90by5QYWNr", + "ZXRUcmFpbGVyRmVhdHVyZSI9CglJY2VTZXJ2ZXISDAoEdXJscxgBIAMoCRIQ", + "Cgh1c2VybmFtZRgCIAEoCRIQCghwYXNzd29yZBgDIAEoCSLEAQoJUnRjQ29u", + "ZmlnEjsKEmljZV90cmFuc3BvcnRfdHlwZRgBIAEoDjIfLmxpdmVraXQucHJv", + "dG8uSWNlVHJhbnNwb3J0VHlwZRJLChpjb250aW51YWxfZ2F0aGVyaW5nX3Bv", + "bGljeRgCIAEoDjInLmxpdmVraXQucHJvdG8uQ29udGludWFsR2F0aGVyaW5n", + "UG9saWN5Ei0KC2ljZV9zZXJ2ZXJzGAMgAygLMhgubGl2ZWtpdC5wcm90by5J", + "Y2VTZXJ2ZXIirgIKC1Jvb21PcHRpb25zEhYKDmF1dG9fc3Vic2NyaWJlGAEg", + "ASgIEhcKD2FkYXB0aXZlX3N0cmVhbRgCIAEoCBIQCghkeW5hY2FzdBgDIAEo", + "CBIsCgRlMmVlGAQgASgLMhoubGl2ZWtpdC5wcm90by5FMmVlT3B0aW9uc0IC", + "GAESLAoKcnRjX2NvbmZpZxgFIAEoCzIYLmxpdmVraXQucHJvdG8uUnRjQ29u", + "ZmlnEhQKDGpvaW5fcmV0cmllcxgGIAEoDRIuCgplbmNyeXB0aW9uGAcgASgL", + "MhoubGl2ZWtpdC5wcm90by5FMmVlT3B0aW9ucxIeChZzaW5nbGVfcGVlcl9j", + "b25uZWN0aW9uGAggASgIEhoKEmNvbm5lY3RfdGltZW91dF9tcxgJIAEoBCJ3", + "ChRUcmFuc2NyaXB0aW9uU2VnbWVudBIKCgJpZBgBIAIoCRIMCgR0ZXh0GAIg", + "AigJEhIKCnN0YXJ0X3RpbWUYAyACKAQSEAoIZW5kX3RpbWUYBCACKAQSDQoF", + "ZmluYWwYBSACKAgSEAoIbGFuZ3VhZ2UYBiACKAkiMAoKQnVmZmVySW5mbxIQ", + "CghkYXRhX3B0chgBIAIoBBIQCghkYXRhX2xlbhgCIAIoBCJlCgtPd25lZEJ1", + "ZmZlchItCgZoYW5kbGUYASACKAsyHS5saXZla2l0LnByb3RvLkZmaU93bmVk", + "SGFuZGxlEicKBGRhdGEYAiACKAsyGS5saXZla2l0LnByb3RvLkJ1ZmZlcklu", + "Zm8izhcKCVJvb21FdmVudBITCgtyb29tX2hhbmRsZRgBIAIoBBJEChVwYXJ0", + "aWNpcGFudF9jb25uZWN0ZWQYAiABKAsyIy5saXZla2l0LnByb3RvLlBhcnRp", + "Y2lwYW50Q29ubmVjdGVkSAASSgoYcGFydGljaXBhbnRfZGlzY29ubmVjdGVk", + "GAMgASgLMiYubGl2ZWtpdC5wcm90by5QYXJ0aWNpcGFudERpc2Nvbm5lY3Rl", + "ZEgAEkMKFWxvY2FsX3RyYWNrX3B1Ymxpc2hlZBgEIAEoCzIiLmxpdmVraXQu", + "cHJvdG8uTG9jYWxUcmFja1B1Ymxpc2hlZEgAEkcKF2xvY2FsX3RyYWNrX3Vu", + "cHVibGlzaGVkGAUgASgLMiQubGl2ZWtpdC5wcm90by5Mb2NhbFRyYWNrVW5w", + "dWJsaXNoZWRIABJFChZsb2NhbF90cmFja19zdWJzY3JpYmVkGAYgASgLMiMu", + "bGl2ZWtpdC5wcm90by5Mb2NhbFRyYWNrU3Vic2NyaWJlZEgAEjgKD3RyYWNr", + "X3B1Ymxpc2hlZBgHIAEoCzIdLmxpdmVraXQucHJvdG8uVHJhY2tQdWJsaXNo", + "ZWRIABI8ChF0cmFja191bnB1Ymxpc2hlZBgIIAEoCzIfLmxpdmVraXQucHJv", + "dG8uVHJhY2tVbnB1Ymxpc2hlZEgAEjoKEHRyYWNrX3N1YnNjcmliZWQYCSAB", + "KAsyHi5saXZla2l0LnByb3RvLlRyYWNrU3Vic2NyaWJlZEgAEj4KEnRyYWNr", + "X3Vuc3Vic2NyaWJlZBgKIAEoCzIgLmxpdmVraXQucHJvdG8uVHJhY2tVbnN1", + "YnNjcmliZWRIABJLChl0cmFja19zdWJzY3JpcHRpb25fZmFpbGVkGAsgASgL", + "MiYubGl2ZWtpdC5wcm90by5UcmFja1N1YnNjcmlwdGlvbkZhaWxlZEgAEjAK", + "C3RyYWNrX211dGVkGAwgASgLMhkubGl2ZWtpdC5wcm90by5UcmFja011dGVk", + "SAASNAoNdHJhY2tfdW5tdXRlZBgNIAEoCzIbLmxpdmVraXQucHJvdG8uVHJh", + "Y2tVbm11dGVkSAASRwoXYWN0aXZlX3NwZWFrZXJzX2NoYW5nZWQYDiABKAsy", + "JC5saXZla2l0LnByb3RvLkFjdGl2ZVNwZWFrZXJzQ2hhbmdlZEgAEkMKFXJv", + "b21fbWV0YWRhdGFfY2hhbmdlZBgPIAEoCzIiLmxpdmVraXQucHJvdG8uUm9v", + "bU1ldGFkYXRhQ2hhbmdlZEgAEjkKEHJvb21fc2lkX2NoYW5nZWQYECABKAsy", + "HS5saXZla2l0LnByb3RvLlJvb21TaWRDaGFuZ2VkSAASUQoccGFydGljaXBh", + "bnRfbWV0YWRhdGFfY2hhbmdlZBgRIAEoCzIpLmxpdmVraXQucHJvdG8uUGFy", + "dGljaXBhbnRNZXRhZGF0YUNoYW5nZWRIABJJChhwYXJ0aWNpcGFudF9uYW1l", + "X2NoYW5nZWQYEiABKAsyJS5saXZla2l0LnByb3RvLlBhcnRpY2lwYW50TmFt", + "ZUNoYW5nZWRIABJVCh5wYXJ0aWNpcGFudF9hdHRyaWJ1dGVzX2NoYW5nZWQY", + "EyABKAsyKy5saXZla2l0LnByb3RvLlBhcnRpY2lwYW50QXR0cmlidXRlc0No", + "YW5nZWRIABJNChpjb25uZWN0aW9uX3F1YWxpdHlfY2hhbmdlZBgUIAEoCzIn", + "LmxpdmVraXQucHJvdG8uQ29ubmVjdGlvblF1YWxpdHlDaGFuZ2VkSAASSQoY", + "Y29ubmVjdGlvbl9zdGF0ZV9jaGFuZ2VkGBUgASgLMiUubGl2ZWtpdC5wcm90", + "by5Db25uZWN0aW9uU3RhdGVDaGFuZ2VkSAASMwoMZGlzY29ubmVjdGVkGBYg", + "ASgLMhsubGl2ZWtpdC5wcm90by5EaXNjb25uZWN0ZWRIABIzCgxyZWNvbm5l", + "Y3RpbmcYFyABKAsyGy5saXZla2l0LnByb3RvLlJlY29ubmVjdGluZ0gAEjEK", + "C3JlY29ubmVjdGVkGBggASgLMhoubGl2ZWtpdC5wcm90by5SZWNvbm5lY3Rl", + "ZEgAEj0KEmUyZWVfc3RhdGVfY2hhbmdlZBgZIAEoCzIfLmxpdmVraXQucHJv", + "dG8uRTJlZVN0YXRlQ2hhbmdlZEgAEiUKA2VvcxgaIAEoCzIWLmxpdmVraXQu", + "cHJvdG8uUm9vbUVPU0gAEkEKFGRhdGFfcGFja2V0X3JlY2VpdmVkGBsgASgL", + "MiEubGl2ZWtpdC5wcm90by5EYXRhUGFja2V0UmVjZWl2ZWRIABJGChZ0cmFu", + "c2NyaXB0aW9uX3JlY2VpdmVkGBwgASgLMiQubGl2ZWtpdC5wcm90by5UcmFu", + "c2NyaXB0aW9uUmVjZWl2ZWRIABI6CgxjaGF0X21lc3NhZ2UYHSABKAsyIi5s", + "aXZla2l0LnByb3RvLkNoYXRNZXNzYWdlUmVjZWl2ZWRIABJJChZzdHJlYW1f", + "aGVhZGVyX3JlY2VpdmVkGB4gASgLMicubGl2ZWtpdC5wcm90by5EYXRhU3Ry", + "ZWFtSGVhZGVyUmVjZWl2ZWRIABJHChVzdHJlYW1fY2h1bmtfcmVjZWl2ZWQY", + "HyABKAsyJi5saXZla2l0LnByb3RvLkRhdGFTdHJlYW1DaHVua1JlY2VpdmVk", + "SAASSwoXc3RyZWFtX3RyYWlsZXJfcmVjZWl2ZWQYICABKAsyKC5saXZla2l0", + "LnByb3RvLkRhdGFTdHJlYW1UcmFpbGVyUmVjZWl2ZWRIABJpCiJkYXRhX2No", + "YW5uZWxfbG93X3RocmVzaG9sZF9jaGFuZ2VkGCEgASgLMjsubGl2ZWtpdC5w", + "cm90by5EYXRhQ2hhbm5lbEJ1ZmZlcmVkQW1vdW50TG93VGhyZXNob2xkQ2hh", + "bmdlZEgAEj0KEmJ5dGVfc3RyZWFtX29wZW5lZBgiIAEoCzIfLmxpdmVraXQu", + "cHJvdG8uQnl0ZVN0cmVhbU9wZW5lZEgAEj0KEnRleHRfc3RyZWFtX29wZW5l", + "ZBgjIAEoCzIfLmxpdmVraXQucHJvdG8uVGV4dFN0cmVhbU9wZW5lZEgAEi8K", + "DHJvb21fdXBkYXRlZBgkIAEoCzIXLmxpdmVraXQucHJvdG8uUm9vbUluZm9I", + "ABIoCgVtb3ZlZBglIAEoCzIXLmxpdmVraXQucHJvdG8uUm9vbUluZm9IABJC", + "ChRwYXJ0aWNpcGFudHNfdXBkYXRlZBgmIAEoCzIiLmxpdmVraXQucHJvdG8u", + "UGFydGljaXBhbnRzVXBkYXRlZEgAEmIKJXBhcnRpY2lwYW50X2VuY3J5cHRp", + "b25fc3RhdHVzX2NoYW5nZWQYJyABKAsyMS5saXZla2l0LnByb3RvLlBhcnRp", + "Y2lwYW50RW5jcnlwdGlvblN0YXR1c0NoYW5nZWRIABJVCh5wYXJ0aWNpcGFu", + "dF9wZXJtaXNzaW9uX2NoYW5nZWQYKSABKAsyKy5saXZla2l0LnByb3RvLlBh", + "cnRpY2lwYW50UGVybWlzc2lvbkNoYW5nZWRIABI4Cg90b2tlbl9yZWZyZXNo", + "ZWQYKCABKAsyHS5saXZla2l0LnByb3RvLlRva2VuUmVmcmVzaGVkSAASPgoS", + "cGFydGljaXBhbnRfYWN0aXZlGCogASgLMiAubGl2ZWtpdC5wcm90by5QYXJ0", + "aWNpcGFudEFjdGl2ZUgAEkEKFGRhdGFfdHJhY2tfcHVibGlzaGVkGCsgASgL", + "MiEubGl2ZWtpdC5wcm90by5EYXRhVHJhY2tQdWJsaXNoZWRIABJFChZkYXRh", + "X3RyYWNrX3VucHVibGlzaGVkGCwgASgLMiMubGl2ZWtpdC5wcm90by5EYXRh", + "VHJhY2tVbnB1Ymxpc2hlZEgAEkcKF2xvY2FsX3RyYWNrX3JlcHVibGlzaGVk", + "GC0gASgLMiQubGl2ZWtpdC5wcm90by5Mb2NhbFRyYWNrUmVwdWJsaXNoZWRI", + "AEIJCgdtZXNzYWdlIskCCghSb29tSW5mbxILCgNzaWQYASABKAkSDAoEbmFt", + "ZRgCIAIoCRIQCghtZXRhZGF0YRgDIAIoCRIuCiZsb3NzeV9kY19idWZmZXJl", + "ZF9hbW91bnRfbG93X3RocmVzaG9sZBgEIAIoBBIxCilyZWxpYWJsZV9kY19i", + "dWZmZXJlZF9hbW91bnRfbG93X3RocmVzaG9sZBgFIAIoBBIVCg1lbXB0eV90", + "aW1lb3V0GAYgAigNEhkKEWRlcGFydHVyZV90aW1lb3V0GAcgAigNEhgKEG1h", + "eF9wYXJ0aWNpcGFudHMYCCACKA0SFQoNY3JlYXRpb25fdGltZRgJIAIoAxIY", + "ChBudW1fcGFydGljaXBhbnRzGAogAigNEhYKDm51bV9wdWJsaXNoZXJzGAsg", + "AigNEhgKEGFjdGl2ZV9yZWNvcmRpbmcYDCACKAgiYQoJT3duZWRSb29tEi0K", + "BmhhbmRsZRgBIAIoCzIdLmxpdmVraXQucHJvdG8uRmZpT3duZWRIYW5kbGUS", + "JQoEaW5mbxgCIAIoCzIXLmxpdmVraXQucHJvdG8uUm9vbUluZm8iSwoTUGFy", + "dGljaXBhbnRzVXBkYXRlZBI0CgxwYXJ0aWNpcGFudHMYASADKAsyHi5saXZl", + "a2l0LnByb3RvLlBhcnRpY2lwYW50SW5mbyJFChRQYXJ0aWNpcGFudENvbm5l", + "Y3RlZBItCgRpbmZvGAEgAigLMh8ubGl2ZWtpdC5wcm90by5Pd25lZFBhcnRp", + "Y2lwYW50IjEKEVBhcnRpY2lwYW50QWN0aXZlEhwKFHBhcnRpY2lwYW50X2lk", + "ZW50aXR5GAEgAigJInMKF1BhcnRpY2lwYW50RGlzY29ubmVjdGVkEhwKFHBh", + "cnRpY2lwYW50X2lkZW50aXR5GAEgAigJEjoKEWRpc2Nvbm5lY3RfcmVhc29u", + "GAIgAigOMh8ubGl2ZWtpdC5wcm90by5EaXNjb25uZWN0UmVhc29uIigKE0xv", + "Y2FsVHJhY2tQdWJsaXNoZWQSEQoJdHJhY2tfc2lkGAEgAigJIjAKFUxvY2Fs", + "VHJhY2tVbnB1Ymxpc2hlZBIXCg9wdWJsaWNhdGlvbl9zaWQYASACKAkifAoV", + "TG9jYWxUcmFja1JlcHVibGlzaGVkEhoKEnB1YmxpY2F0aW9uX2hhbmRsZRgB", + "IAIoBBIUCgxwcmV2aW91c19zaWQYAiACKAkSMQoEaW5mbxgDIAIoCzIjLmxp", + "dmVraXQucHJvdG8uVHJhY2tQdWJsaWNhdGlvbkluZm8iKQoUTG9jYWxUcmFj", + "a1N1YnNjcmliZWQSEQoJdHJhY2tfc2lkGAIgAigJImkKDlRyYWNrUHVibGlz", + "aGVkEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5GAEgAigJEjkKC3B1YmxpY2F0", + "aW9uGAIgAigLMiQubGl2ZWtpdC5wcm90by5Pd25lZFRyYWNrUHVibGljYXRp", + "b24iSQoQVHJhY2tVbnB1Ymxpc2hlZBIcChRwYXJ0aWNpcGFudF9pZGVudGl0", + "eRgBIAIoCRIXCg9wdWJsaWNhdGlvbl9zaWQYAiACKAkiWQoPVHJhY2tTdWJz", + "Y3JpYmVkEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5GAEgAigJEigKBXRyYWNr", + "GAIgAigLMhkubGl2ZWtpdC5wcm90by5Pd25lZFRyYWNrIkQKEVRyYWNrVW5z", + "dWJzY3JpYmVkEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5GAEgAigJEhEKCXRy", + "YWNrX3NpZBgCIAIoCSJZChdUcmFja1N1YnNjcmlwdGlvbkZhaWxlZBIcChRw", + "YXJ0aWNpcGFudF9pZGVudGl0eRgBIAIoCRIRCgl0cmFja19zaWQYAiACKAkS", + "DQoFZXJyb3IYAyACKAkiPQoKVHJhY2tNdXRlZBIcChRwYXJ0aWNpcGFudF9p", + "ZGVudGl0eRgBIAIoCRIRCgl0cmFja19zaWQYAiACKAkiPwoMVHJhY2tVbm11", + "dGVkEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5GAEgAigJEhEKCXRyYWNrX3Np", + "ZBgCIAIoCSJfChBFMmVlU3RhdGVDaGFuZ2VkEhwKFHBhcnRpY2lwYW50X2lk", + "ZW50aXR5GAEgAigJEi0KBXN0YXRlGAIgAigOMh4ubGl2ZWtpdC5wcm90by5F", + "bmNyeXB0aW9uU3RhdGUiNwoVQWN0aXZlU3BlYWtlcnNDaGFuZ2VkEh4KFnBh", + "cnRpY2lwYW50X2lkZW50aXRpZXMYASADKAkiJwoTUm9vbU1ldGFkYXRhQ2hh", + "bmdlZBIQCghtZXRhZGF0YRgBIAIoCSIdCg5Sb29tU2lkQ2hhbmdlZBILCgNz", + "aWQYASACKAkiTAoaUGFydGljaXBhbnRNZXRhZGF0YUNoYW5nZWQSHAoUcGFy", + "dGljaXBhbnRfaWRlbnRpdHkYASACKAkSEAoIbWV0YWRhdGEYAiACKAkirAEK", + "HFBhcnRpY2lwYW50QXR0cmlidXRlc0NoYW5nZWQSHAoUcGFydGljaXBhbnRf", + "aWRlbnRpdHkYASACKAkSMgoKYXR0cmlidXRlcxgCIAMoCzIeLmxpdmVraXQu", + "cHJvdG8uQXR0cmlidXRlc0VudHJ5EjoKEmNoYW5nZWRfYXR0cmlidXRlcxgD", + "IAMoCzIeLmxpdmVraXQucHJvdG8uQXR0cmlidXRlc0VudHJ5IlgKIlBhcnRp", + "Y2lwYW50RW5jcnlwdGlvblN0YXR1c0NoYW5nZWQSHAoUcGFydGljaXBhbnRf", + "aWRlbnRpdHkYASACKAkSFAoMaXNfZW5jcnlwdGVkGAIgAigIIkQKFlBhcnRp", + "Y2lwYW50TmFtZUNoYW5nZWQSHAoUcGFydGljaXBhbnRfaWRlbnRpdHkYASAC", + "KAkSDAoEbmFtZRgCIAIoCSJ2ChxQYXJ0aWNpcGFudFBlcm1pc3Npb25DaGFu", + "Z2VkEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5GAEgAigJEjgKCnBlcm1pc3Np", + "b24YAiABKAsyJC5saXZla2l0LnByb3RvLlBhcnRpY2lwYW50UGVybWlzc2lv", + "biJrChhDb25uZWN0aW9uUXVhbGl0eUNoYW5nZWQSHAoUcGFydGljaXBhbnRf", + "aWRlbnRpdHkYASACKAkSMQoHcXVhbGl0eRgCIAIoDjIgLmxpdmVraXQucHJv", + "dG8uQ29ubmVjdGlvblF1YWxpdHkiRQoKVXNlclBhY2tldBIoCgRkYXRhGAEg", + "AigLMhoubGl2ZWtpdC5wcm90by5Pd25lZEJ1ZmZlchINCgV0b3BpYxgCIAEo", + "CSJ5CgtDaGF0TWVzc2FnZRIKCgJpZBgBIAIoCRIRCgl0aW1lc3RhbXAYAiAC", + "KAMSDwoHbWVzc2FnZRgDIAIoCRIWCg5lZGl0X3RpbWVzdGFtcBgEIAEoAxIP", + "CgdkZWxldGVkGAUgASgIEhEKCWdlbmVyYXRlZBgGIAEoCCJgChNDaGF0TWVz", + "c2FnZVJlY2VpdmVkEisKB21lc3NhZ2UYASACKAsyGi5saXZla2l0LnByb3Rv", + "LkNoYXRNZXNzYWdlEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5GAIgAigJIiYK", + "B1NpcERUTUYSDAoEY29kZRgBIAIoDRINCgVkaWdpdBgCIAEoCSK/AQoSRGF0", + "YVBhY2tldFJlY2VpdmVkEisKBGtpbmQYASACKA4yHS5saXZla2l0LnByb3Rv", + "LkRhdGFQYWNrZXRLaW5kEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5GAIgAigJ", + "EikKBHVzZXIYBCABKAsyGS5saXZla2l0LnByb3RvLlVzZXJQYWNrZXRIABIq", + "CghzaXBfZHRtZhgFIAEoCzIWLmxpdmVraXQucHJvdG8uU2lwRFRNRkgAQgcK", + "BXZhbHVlIn8KFVRyYW5zY3JpcHRpb25SZWNlaXZlZBIcChRwYXJ0aWNpcGFu", + "dF9pZGVudGl0eRgBIAEoCRIRCgl0cmFja19zaWQYAiABKAkSNQoIc2VnbWVu", + "dHMYAyADKAsyIy5saXZla2l0LnByb3RvLlRyYW5zY3JpcHRpb25TZWdtZW50", + "IkcKFkNvbm5lY3Rpb25TdGF0ZUNoYW5nZWQSLQoFc3RhdGUYASACKA4yHi5s", + "aXZla2l0LnByb3RvLkNvbm5lY3Rpb25TdGF0ZSILCglDb25uZWN0ZWQiPwoM", + "RGlzY29ubmVjdGVkEi8KBnJlYXNvbhgBIAIoDjIfLmxpdmVraXQucHJvdG8u", + "RGlzY29ubmVjdFJlYXNvbiIOCgxSZWNvbm5lY3RpbmciDQoLUmVjb25uZWN0", + "ZWQiHwoOVG9rZW5SZWZyZXNoZWQSDQoFdG9rZW4YASACKAkiCQoHUm9vbUVP", + "UyKOBwoKRGF0YVN0cmVhbRqqAQoKVGV4dEhlYWRlchI/Cg5vcGVyYXRpb25f", + "dHlwZRgBIAIoDjInLmxpdmVraXQucHJvdG8uRGF0YVN0cmVhbS5PcGVyYXRp", + "b25UeXBlEg8KB3ZlcnNpb24YAiABKAUSGgoScmVwbHlfdG9fc3RyZWFtX2lk", + "GAMgASgJEhsKE2F0dGFjaGVkX3N0cmVhbV9pZHMYBCADKAkSEQoJZ2VuZXJh", + "dGVkGAUgASgIGhoKCkJ5dGVIZWFkZXISDAoEbmFtZRgBIAIoCRrrAgoGSGVh", + "ZGVyEhEKCXN0cmVhbV9pZBgBIAIoCRIRCgl0aW1lc3RhbXAYAiACKAMSEQoJ", + "bWltZV90eXBlGAMgAigJEg0KBXRvcGljGAQgAigJEhQKDHRvdGFsX2xlbmd0", + "aBgFIAEoBBJECgphdHRyaWJ1dGVzGAYgAygLMjAubGl2ZWtpdC5wcm90by5E", + "YXRhU3RyZWFtLkhlYWRlci5BdHRyaWJ1dGVzRW50cnkSOwoLdGV4dF9oZWFk", + "ZXIYByABKAsyJC5saXZla2l0LnByb3RvLkRhdGFTdHJlYW0uVGV4dEhlYWRl", + "ckgAEjsKC2J5dGVfaGVhZGVyGAggASgLMiQubGl2ZWtpdC5wcm90by5EYXRh", + "U3RyZWFtLkJ5dGVIZWFkZXJIABoxCg9BdHRyaWJ1dGVzRW50cnkSCwoDa2V5", + "GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4AUIQCg5jb250ZW50X2hlYWRlchpd", + "CgVDaHVuaxIRCglzdHJlYW1faWQYASACKAkSEwoLY2h1bmtfaW5kZXgYAiAC", + "KAQSDwoHY29udGVudBgDIAIoDBIPCgd2ZXJzaW9uGAQgASgFEgoKAml2GAUg", + "ASgMGqYBCgdUcmFpbGVyEhEKCXN0cmVhbV9pZBgBIAIoCRIOCgZyZWFzb24Y", + "AiACKAkSRQoKYXR0cmlidXRlcxgDIAMoCzIxLmxpdmVraXQucHJvdG8uRGF0", + "YVN0cmVhbS5UcmFpbGVyLkF0dHJpYnV0ZXNFbnRyeRoxCg9BdHRyaWJ1dGVz", + "RW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJBCg1PcGVy", + "YXRpb25UeXBlEgoKBkNSRUFURRAAEgoKBlVQREFURRABEgoKBkRFTEVURRAC", + "EgwKCFJFQUNUSU9OEAMiagoYRGF0YVN0cmVhbUhlYWRlclJlY2VpdmVkEhwK", + "FHBhcnRpY2lwYW50X2lkZW50aXR5GAEgAigJEjAKBmhlYWRlchgCIAIoCzIg", + "LmxpdmVraXQucHJvdG8uRGF0YVN0cmVhbS5IZWFkZXIiZwoXRGF0YVN0cmVh", + "bUNodW5rUmVjZWl2ZWQSHAoUcGFydGljaXBhbnRfaWRlbnRpdHkYASACKAkS", "LgoFY2h1bmsYAiACKAsyHy5saXZla2l0LnByb3RvLkRhdGFTdHJlYW0uQ2h1", - "bmsSHgoWZGVzdGluYXRpb25faWRlbnRpdGllcxgDIAMoCRIXCg9zZW5kZXJf", - "aWRlbnRpdHkYBCACKAkSGAoQcmVxdWVzdF9hc3luY19pZBgFIAEoBCLDAQoY", - "U2VuZFN0cmVhbVRyYWlsZXJSZXF1ZXN0EiAKGGxvY2FsX3BhcnRpY2lwYW50", - "X2hhbmRsZRgBIAIoBBIyCgd0cmFpbGVyGAIgAigLMiEubGl2ZWtpdC5wcm90", - "by5EYXRhU3RyZWFtLlRyYWlsZXISHgoWZGVzdGluYXRpb25faWRlbnRpdGll", - "cxgDIAMoCRIXCg9zZW5kZXJfaWRlbnRpdHkYBCACKAkSGAoQcmVxdWVzdF9h", - "c3luY19pZBgFIAEoBCIsChhTZW5kU3RyZWFtSGVhZGVyUmVzcG9uc2USEAoI", - "YXN5bmNfaWQYASACKAQiKwoXU2VuZFN0cmVhbUNodW5rUmVzcG9uc2USEAoI", - "YXN5bmNfaWQYASACKAQiLQoZU2VuZFN0cmVhbVRyYWlsZXJSZXNwb25zZRIQ", - "Cghhc3luY19pZBgBIAIoBCI7ChhTZW5kU3RyZWFtSGVhZGVyQ2FsbGJhY2sS", - "EAoIYXN5bmNfaWQYASACKAQSDQoFZXJyb3IYAiABKAkiOgoXU2VuZFN0cmVh", - "bUNodW5rQ2FsbGJhY2sSEAoIYXN5bmNfaWQYASACKAQSDQoFZXJyb3IYAiAB", - "KAkiPAoZU2VuZFN0cmVhbVRyYWlsZXJDYWxsYmFjaxIQCghhc3luY19pZBgB", - "IAIoBBINCgVlcnJvchgCIAEoCSKTAQovU2V0RGF0YUNoYW5uZWxCdWZmZXJl", - "ZEFtb3VudExvd1RocmVzaG9sZFJlcXVlc3QSIAoYbG9jYWxfcGFydGljaXBh", - "bnRfaGFuZGxlGAEgAigEEhEKCXRocmVzaG9sZBgCIAIoBBIrCgRraW5kGAMg", - "AigOMh0ubGl2ZWtpdC5wcm90by5EYXRhUGFja2V0S2luZCIyCjBTZXREYXRh", - "Q2hhbm5lbEJ1ZmZlcmVkQW1vdW50TG93VGhyZXNob2xkUmVzcG9uc2Uibgos", - "RGF0YUNoYW5uZWxCdWZmZXJlZEFtb3VudExvd1RocmVzaG9sZENoYW5nZWQS", - "KwoEa2luZBgBIAIoDjIdLmxpdmVraXQucHJvdG8uRGF0YVBhY2tldEtpbmQS", - "EQoJdGhyZXNob2xkGAIgAigEImYKEEJ5dGVTdHJlYW1PcGVuZWQSNAoGcmVh", - "ZGVyGAEgAigLMiQubGl2ZWtpdC5wcm90by5Pd25lZEJ5dGVTdHJlYW1SZWFk", - "ZXISHAoUcGFydGljaXBhbnRfaWRlbnRpdHkYAiACKAkiZgoQVGV4dFN0cmVh", - "bU9wZW5lZBI0CgZyZWFkZXIYASACKAsyJC5saXZla2l0LnByb3RvLk93bmVk", - "VGV4dFN0cmVhbVJlYWRlchIcChRwYXJ0aWNpcGFudF9pZGVudGl0eRgCIAIo", - "CSJIChJEYXRhVHJhY2tQdWJsaXNoZWQSMgoFdHJhY2sYASACKAsyIy5saXZl", - "a2l0LnByb3RvLk93bmVkUmVtb3RlRGF0YVRyYWNrIiMKFERhdGFUcmFja1Vu", - "cHVibGlzaGVkEgsKA3NpZBgBIAIoCSpQChBJY2VUcmFuc3BvcnRUeXBlEhMK", - "D1RSQU5TUE9SVF9SRUxBWRAAEhQKEFRSQU5TUE9SVF9OT0hPU1QQARIRCg1U", - "UkFOU1BPUlRfQUxMEAIqQwoYQ29udGludWFsR2F0aGVyaW5nUG9saWN5Eg8K", - "C0dBVEhFUl9PTkNFEAASFgoSR0FUSEVSX0NPTlRJTlVBTExZEAEqYAoRQ29u", - "bmVjdGlvblF1YWxpdHkSEAoMUVVBTElUWV9QT09SEAASEAoMUVVBTElUWV9H", - "T09EEAESFQoRUVVBTElUWV9FWENFTExFTlQQAhIQCgxRVUFMSVRZX0xPU1QQ", - "AypTCg9Db25uZWN0aW9uU3RhdGUSFQoRQ09OTl9ESVNDT05ORUNURUQQABIS", - "Cg5DT05OX0NPTk5FQ1RFRBABEhUKEUNPTk5fUkVDT05ORUNUSU5HEAIqMwoO", - "RGF0YVBhY2tldEtpbmQSDgoKS0lORF9MT1NTWRAAEhEKDUtJTkRfUkVMSUFC", - "TEUQAUIQqgINTGl2ZUtpdC5Qcm90bw==")); + "bmsibQoZRGF0YVN0cmVhbVRyYWlsZXJSZWNlaXZlZBIcChRwYXJ0aWNpcGFu", + "dF9pZGVudGl0eRgBIAIoCRIyCgd0cmFpbGVyGAIgAigLMiEubGl2ZWtpdC5w", + "cm90by5EYXRhU3RyZWFtLlRyYWlsZXIiwAEKF1NlbmRTdHJlYW1IZWFkZXJS", + "ZXF1ZXN0EiAKGGxvY2FsX3BhcnRpY2lwYW50X2hhbmRsZRgBIAIoBBIwCgZo", + "ZWFkZXIYAiACKAsyIC5saXZla2l0LnByb3RvLkRhdGFTdHJlYW0uSGVhZGVy", + "Eh4KFmRlc3RpbmF0aW9uX2lkZW50aXRpZXMYAyADKAkSFwoPc2VuZGVyX2lk", + "ZW50aXR5GAQgAigJEhgKEHJlcXVlc3RfYXN5bmNfaWQYBSABKAQivQEKFlNl", + "bmRTdHJlYW1DaHVua1JlcXVlc3QSIAoYbG9jYWxfcGFydGljaXBhbnRfaGFu", + "ZGxlGAEgAigEEi4KBWNodW5rGAIgAigLMh8ubGl2ZWtpdC5wcm90by5EYXRh", + "U3RyZWFtLkNodW5rEh4KFmRlc3RpbmF0aW9uX2lkZW50aXRpZXMYAyADKAkS", + "FwoPc2VuZGVyX2lkZW50aXR5GAQgAigJEhgKEHJlcXVlc3RfYXN5bmNfaWQY", + "BSABKAQiwwEKGFNlbmRTdHJlYW1UcmFpbGVyUmVxdWVzdBIgChhsb2NhbF9w", + "YXJ0aWNpcGFudF9oYW5kbGUYASACKAQSMgoHdHJhaWxlchgCIAIoCzIhLmxp", + "dmVraXQucHJvdG8uRGF0YVN0cmVhbS5UcmFpbGVyEh4KFmRlc3RpbmF0aW9u", + "X2lkZW50aXRpZXMYAyADKAkSFwoPc2VuZGVyX2lkZW50aXR5GAQgAigJEhgK", + "EHJlcXVlc3RfYXN5bmNfaWQYBSABKAQiLAoYU2VuZFN0cmVhbUhlYWRlclJl", + "c3BvbnNlEhAKCGFzeW5jX2lkGAEgAigEIisKF1NlbmRTdHJlYW1DaHVua1Jl", + "c3BvbnNlEhAKCGFzeW5jX2lkGAEgAigEIi0KGVNlbmRTdHJlYW1UcmFpbGVy", + "UmVzcG9uc2USEAoIYXN5bmNfaWQYASACKAQiOwoYU2VuZFN0cmVhbUhlYWRl", + "ckNhbGxiYWNrEhAKCGFzeW5jX2lkGAEgAigEEg0KBWVycm9yGAIgASgJIjoK", + "F1NlbmRTdHJlYW1DaHVua0NhbGxiYWNrEhAKCGFzeW5jX2lkGAEgAigEEg0K", + "BWVycm9yGAIgASgJIjwKGVNlbmRTdHJlYW1UcmFpbGVyQ2FsbGJhY2sSEAoI", + "YXN5bmNfaWQYASACKAQSDQoFZXJyb3IYAiABKAkikwEKL1NldERhdGFDaGFu", + "bmVsQnVmZmVyZWRBbW91bnRMb3dUaHJlc2hvbGRSZXF1ZXN0EiAKGGxvY2Fs", + "X3BhcnRpY2lwYW50X2hhbmRsZRgBIAIoBBIRCgl0aHJlc2hvbGQYAiACKAQS", + "KwoEa2luZBgDIAIoDjIdLmxpdmVraXQucHJvdG8uRGF0YVBhY2tldEtpbmQi", + "MgowU2V0RGF0YUNoYW5uZWxCdWZmZXJlZEFtb3VudExvd1RocmVzaG9sZFJl", + "c3BvbnNlIm4KLERhdGFDaGFubmVsQnVmZmVyZWRBbW91bnRMb3dUaHJlc2hv", + "bGRDaGFuZ2VkEisKBGtpbmQYASACKA4yHS5saXZla2l0LnByb3RvLkRhdGFQ", + "YWNrZXRLaW5kEhEKCXRocmVzaG9sZBgCIAIoBCJmChBCeXRlU3RyZWFtT3Bl", + "bmVkEjQKBnJlYWRlchgBIAIoCzIkLmxpdmVraXQucHJvdG8uT3duZWRCeXRl", + "U3RyZWFtUmVhZGVyEhwKFHBhcnRpY2lwYW50X2lkZW50aXR5GAIgAigJImYK", + "EFRleHRTdHJlYW1PcGVuZWQSNAoGcmVhZGVyGAEgAigLMiQubGl2ZWtpdC5w", + "cm90by5Pd25lZFRleHRTdHJlYW1SZWFkZXISHAoUcGFydGljaXBhbnRfaWRl", + "bnRpdHkYAiACKAkiSAoSRGF0YVRyYWNrUHVibGlzaGVkEjIKBXRyYWNrGAEg", + "AigLMiMubGl2ZWtpdC5wcm90by5Pd25lZFJlbW90ZURhdGFUcmFjayIjChRE", + "YXRhVHJhY2tVbnB1Ymxpc2hlZBILCgNzaWQYASACKAkq5gEKFFNpbXVsYXRl", + "U2NlbmFyaW9LaW5kEh0KGVNJTVVMQVRFX1NJR05BTF9SRUNPTk5FQ1QQABIU", + "ChBTSU1VTEFURV9TUEVBS0VSEAESGQoVU0lNVUxBVEVfTk9ERV9GQUlMVVJF", + "EAISGQoVU0lNVUxBVEVfU0VSVkVSX0xFQVZFEAMSFgoSU0lNVUxBVEVfTUlH", + "UkFUSU9OEAQSFgoSU0lNVUxBVEVfRk9SQ0VfVENQEAUSFgoSU0lNVUxBVEVf", + "Rk9SQ0VfVExTEAYSGwoXU0lNVUxBVEVfRlVMTF9SRUNPTk5FQ1QQBypQChBJ", + "Y2VUcmFuc3BvcnRUeXBlEhMKD1RSQU5TUE9SVF9SRUxBWRAAEhQKEFRSQU5T", + "UE9SVF9OT0hPU1QQARIRCg1UUkFOU1BPUlRfQUxMEAIqQwoYQ29udGludWFs", + "R2F0aGVyaW5nUG9saWN5Eg8KC0dBVEhFUl9PTkNFEAASFgoSR0FUSEVSX0NP", + "TlRJTlVBTExZEAEqYAoRQ29ubmVjdGlvblF1YWxpdHkSEAoMUVVBTElUWV9Q", + "T09SEAASEAoMUVVBTElUWV9HT09EEAESFQoRUVVBTElUWV9FWENFTExFTlQQ", + "AhIQCgxRVUFMSVRZX0xPU1QQAypTCg9Db25uZWN0aW9uU3RhdGUSFQoRQ09O", + "Tl9ESVNDT05ORUNURUQQABISCg5DT05OX0NPTk5FQ1RFRBABEhUKEUNPTk5f", + "UkVDT05ORUNUSU5HEAIqMwoORGF0YVBhY2tldEtpbmQSDgoKS0lORF9MT1NT", + "WRAAEhEKDUtJTkRfUkVMSUFCTEUQAUIQqgINTGl2ZUtpdC5Qcm90bw==")); descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, new pbr::FileDescriptor[] { global::LiveKit.Proto.E2EeReflection.Descriptor, global::LiveKit.Proto.HandleReflection.Descriptor, global::LiveKit.Proto.ParticipantReflection.Descriptor, global::LiveKit.Proto.TrackReflection.Descriptor, global::LiveKit.Proto.VideoFrameReflection.Descriptor, global::LiveKit.Proto.StatsReflection.Descriptor, global::LiveKit.Proto.DataStreamReflection.Descriptor, global::LiveKit.Proto.DataTrackReflection.Descriptor, }, - new pbr::GeneratedClrTypeInfo(new[] {typeof(global::LiveKit.Proto.IceTransportType), typeof(global::LiveKit.Proto.ContinualGatheringPolicy), typeof(global::LiveKit.Proto.ConnectionQuality), typeof(global::LiveKit.Proto.ConnectionState), typeof(global::LiveKit.Proto.DataPacketKind), }, null, new pbr::GeneratedClrTypeInfo[] { + new pbr::GeneratedClrTypeInfo(new[] {typeof(global::LiveKit.Proto.SimulateScenarioKind), typeof(global::LiveKit.Proto.IceTransportType), typeof(global::LiveKit.Proto.ContinualGatheringPolicy), typeof(global::LiveKit.Proto.ConnectionQuality), typeof(global::LiveKit.Proto.ConnectionState), typeof(global::LiveKit.Proto.DataPacketKind), }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.ConnectRequest), global::LiveKit.Proto.ConnectRequest.Parser, new[]{ "Url", "Token", "Options", "RequestAsyncId" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.ConnectResponse), global::LiveKit.Proto.ConnectResponse.Parser, new[]{ "AsyncId" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.ConnectCallback), global::LiveKit.Proto.ConnectCallback.Parser, new[]{ "AsyncId", "Error", "Result" }, new[]{ "Message" }, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.ConnectCallback.Types.ParticipantWithTracks), global::LiveKit.Proto.ConnectCallback.Types.ParticipantWithTracks.Parser, new[]{ "Participant", "Publications" }, null, null, null, null), @@ -361,6 +377,9 @@ static RoomReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.DisconnectRequest), global::LiveKit.Proto.DisconnectRequest.Parser, new[]{ "RoomHandle", "RequestAsyncId", "Reason" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.DisconnectResponse), global::LiveKit.Proto.DisconnectResponse.Parser, new[]{ "AsyncId" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.DisconnectCallback), global::LiveKit.Proto.DisconnectCallback.Parser, new[]{ "AsyncId" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.SimulateScenarioRequest), global::LiveKit.Proto.SimulateScenarioRequest.Parser, new[]{ "RoomHandle", "Scenario", "RequestAsyncId" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.SimulateScenarioResponse), global::LiveKit.Proto.SimulateScenarioResponse.Parser, new[]{ "AsyncId" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.SimulateScenarioCallback), global::LiveKit.Proto.SimulateScenarioCallback.Parser, new[]{ "AsyncId", "Error" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.PublishTrackRequest), global::LiveKit.Proto.PublishTrackRequest.Parser, new[]{ "LocalParticipantHandle", "TrackHandle", "Options", "RequestAsyncId" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.PublishTrackResponse), global::LiveKit.Proto.PublishTrackResponse.Parser, new[]{ "AsyncId" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.PublishTrackCallback), global::LiveKit.Proto.PublishTrackCallback.Parser, new[]{ "AsyncId", "Error", "Publication" }, new[]{ "Message" }, null, null, null), @@ -397,14 +416,14 @@ static RoomReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.GetSessionStatsCallback), global::LiveKit.Proto.GetSessionStatsCallback.Parser, new[]{ "AsyncId", "Error", "Result" }, new[]{ "Message" }, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.GetSessionStatsCallback.Types.Result), global::LiveKit.Proto.GetSessionStatsCallback.Types.Result.Parser, new[]{ "PublisherStats", "SubscriberStats" }, null, null, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoEncoding), global::LiveKit.Proto.VideoEncoding.Parser, new[]{ "MaxBitrate", "MaxFramerate" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.AudioEncoding), global::LiveKit.Proto.AudioEncoding.Parser, new[]{ "MaxBitrate" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.TrackPublishOptions), global::LiveKit.Proto.TrackPublishOptions.Parser, new[]{ "VideoEncoding", "AudioEncoding", "VideoCodec", "Dtx", "Red", "Simulcast", "Source", "Stream", "PreconnectBuffer" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.TrackPublishOptions), global::LiveKit.Proto.TrackPublishOptions.Parser, new[]{ "VideoEncoding", "AudioEncoding", "VideoCodec", "Dtx", "Red", "Simulcast", "Source", "Stream", "PreconnectBuffer", "PacketTrailerFeatures" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.IceServer), global::LiveKit.Proto.IceServer.Parser, new[]{ "Urls", "Username", "Password" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.RtcConfig), global::LiveKit.Proto.RtcConfig.Parser, new[]{ "IceTransportType", "ContinualGatheringPolicy", "IceServers" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.RoomOptions), global::LiveKit.Proto.RoomOptions.Parser, new[]{ "AutoSubscribe", "AdaptiveStream", "Dynacast", "E2Ee", "RtcConfig", "JoinRetries", "Encryption", "SinglePeerConnection", "ConnectTimeoutMs" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.TranscriptionSegment), global::LiveKit.Proto.TranscriptionSegment.Parser, new[]{ "Id", "Text", "StartTime", "EndTime", "Final", "Language" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.BufferInfo), global::LiveKit.Proto.BufferInfo.Parser, new[]{ "DataPtr", "DataLen" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.OwnedBuffer), global::LiveKit.Proto.OwnedBuffer.Parser, new[]{ "Handle", "Data" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.RoomEvent), global::LiveKit.Proto.RoomEvent.Parser, new[]{ "RoomHandle", "ParticipantConnected", "ParticipantDisconnected", "LocalTrackPublished", "LocalTrackUnpublished", "LocalTrackSubscribed", "TrackPublished", "TrackUnpublished", "TrackSubscribed", "TrackUnsubscribed", "TrackSubscriptionFailed", "TrackMuted", "TrackUnmuted", "ActiveSpeakersChanged", "RoomMetadataChanged", "RoomSidChanged", "ParticipantMetadataChanged", "ParticipantNameChanged", "ParticipantAttributesChanged", "ConnectionQualityChanged", "ConnectionStateChanged", "Disconnected", "Reconnecting", "Reconnected", "E2EeStateChanged", "Eos", "DataPacketReceived", "TranscriptionReceived", "ChatMessage", "StreamHeaderReceived", "StreamChunkReceived", "StreamTrailerReceived", "DataChannelLowThresholdChanged", "ByteStreamOpened", "TextStreamOpened", "RoomUpdated", "Moved", "ParticipantsUpdated", "ParticipantEncryptionStatusChanged", "ParticipantPermissionChanged", "TokenRefreshed", "ParticipantActive", "DataTrackPublished", "DataTrackUnpublished" }, new[]{ "Message" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.RoomEvent), global::LiveKit.Proto.RoomEvent.Parser, new[]{ "RoomHandle", "ParticipantConnected", "ParticipantDisconnected", "LocalTrackPublished", "LocalTrackUnpublished", "LocalTrackSubscribed", "TrackPublished", "TrackUnpublished", "TrackSubscribed", "TrackUnsubscribed", "TrackSubscriptionFailed", "TrackMuted", "TrackUnmuted", "ActiveSpeakersChanged", "RoomMetadataChanged", "RoomSidChanged", "ParticipantMetadataChanged", "ParticipantNameChanged", "ParticipantAttributesChanged", "ConnectionQualityChanged", "ConnectionStateChanged", "Disconnected", "Reconnecting", "Reconnected", "E2EeStateChanged", "Eos", "DataPacketReceived", "TranscriptionReceived", "ChatMessage", "StreamHeaderReceived", "StreamChunkReceived", "StreamTrailerReceived", "DataChannelLowThresholdChanged", "ByteStreamOpened", "TextStreamOpened", "RoomUpdated", "Moved", "ParticipantsUpdated", "ParticipantEncryptionStatusChanged", "ParticipantPermissionChanged", "TokenRefreshed", "ParticipantActive", "DataTrackPublished", "DataTrackUnpublished", "LocalTrackRepublished" }, new[]{ "Message" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.RoomInfo), global::LiveKit.Proto.RoomInfo.Parser, new[]{ "Sid", "Name", "Metadata", "LossyDcBufferedAmountLowThreshold", "ReliableDcBufferedAmountLowThreshold", "EmptyTimeout", "DepartureTimeout", "MaxParticipants", "CreationTime", "NumParticipants", "NumPublishers", "ActiveRecording" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.OwnedRoom), global::LiveKit.Proto.OwnedRoom.Parser, new[]{ "Handle", "Info" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.ParticipantsUpdated), global::LiveKit.Proto.ParticipantsUpdated.Parser, new[]{ "Participants" }, null, null, null, null), @@ -413,6 +432,7 @@ static RoomReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.ParticipantDisconnected), global::LiveKit.Proto.ParticipantDisconnected.Parser, new[]{ "ParticipantIdentity", "DisconnectReason" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.LocalTrackPublished), global::LiveKit.Proto.LocalTrackPublished.Parser, new[]{ "TrackSid" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.LocalTrackUnpublished), global::LiveKit.Proto.LocalTrackUnpublished.Parser, new[]{ "PublicationSid" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.LocalTrackRepublished), global::LiveKit.Proto.LocalTrackRepublished.Parser, new[]{ "PublicationHandle", "PreviousSid", "Info" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.LocalTrackSubscribed), global::LiveKit.Proto.LocalTrackSubscribed.Parser, new[]{ "TrackSid" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.TrackPublished), global::LiveKit.Proto.TrackPublished.Parser, new[]{ "ParticipantIdentity", "Publication" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.TrackUnpublished), global::LiveKit.Proto.TrackUnpublished.Parser, new[]{ "ParticipantIdentity", "PublicationSid" }, null, null, null, null), @@ -474,6 +494,30 @@ static RoomReflection() { } #region Enums + /// + /// Simulate a reconnection scenario for testing. Mirrors the variants of + /// `livekit::SimulateScenario`. The Resume / FullReconnect variants are + /// the relevant ones for verifying that resume preserves publications and + /// full reconnect republishes them exactly once. + /// + public enum SimulateScenarioKind { + /// + /// Closes the signal channel locally; engine attempts a Resume. + /// + [pbr::OriginalName("SIMULATE_SIGNAL_RECONNECT")] SimulateSignalReconnect = 0, + [pbr::OriginalName("SIMULATE_SPEAKER")] SimulateSpeaker = 1, + [pbr::OriginalName("SIMULATE_NODE_FAILURE")] SimulateNodeFailure = 2, + [pbr::OriginalName("SIMULATE_SERVER_LEAVE")] SimulateServerLeave = 3, + [pbr::OriginalName("SIMULATE_MIGRATION")] SimulateMigration = 4, + [pbr::OriginalName("SIMULATE_FORCE_TCP")] SimulateForceTcp = 5, + [pbr::OriginalName("SIMULATE_FORCE_TLS")] SimulateForceTls = 6, + /// + /// Asks the server to send `LeaveRequest{Reconnect}`, forcing a full + /// reconnect (new RtcSession; SDK republishes existing local tracks). + /// + [pbr::OriginalName("SIMULATE_FULL_RECONNECT")] SimulateFullReconnect = 7, + } + public enum IceTransportType { [pbr::OriginalName("TRANSPORT_RELAY")] TransportRelay = 0, [pbr::OriginalName("TRANSPORT_NOHOST")] TransportNohost = 1, @@ -2712,21 +2756,18 @@ public void MergeFrom(pb::CodedInputStream input) { } - /// - /// Publish a track to the room - /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PublishTrackRequest : pb::IMessage + public sealed partial class SimulateScenarioRequest : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishTrackRequest()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SimulateScenarioRequest()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -2742,7 +2783,7 @@ public sealed partial class PublishTrackRequest : pb::IMessageField number for the "local_participant_handle" field. - public const int LocalParticipantHandleFieldNumber = 1; - private readonly static ulong LocalParticipantHandleDefaultValue = 0UL; + /// Field number for the "room_handle" field. + public const int RoomHandleFieldNumber = 1; + private readonly static ulong RoomHandleDefaultValue = 0UL; - private ulong localParticipantHandle_; + private ulong roomHandle_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ulong LocalParticipantHandle { - get { if ((_hasBits0 & 1) != 0) { return localParticipantHandle_; } else { return LocalParticipantHandleDefaultValue; } } + public ulong RoomHandle { + get { if ((_hasBits0 & 1) != 0) { return roomHandle_; } else { return RoomHandleDefaultValue; } } set { _hasBits0 |= 1; - localParticipantHandle_ = value; + roomHandle_ = value; } } - /// Gets whether the "local_participant_handle" field is set + /// Gets whether the "room_handle" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasLocalParticipantHandle { + public bool HasRoomHandle { get { return (_hasBits0 & 1) != 0; } } - /// Clears the value of the "local_participant_handle" field + /// Clears the value of the "room_handle" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearLocalParticipantHandle() { + public void ClearRoomHandle() { _hasBits0 &= ~1; } - /// Field number for the "track_handle" field. - public const int TrackHandleFieldNumber = 2; - private readonly static ulong TrackHandleDefaultValue = 0UL; + /// Field number for the "scenario" field. + public const int ScenarioFieldNumber = 2; + private readonly static global::LiveKit.Proto.SimulateScenarioKind ScenarioDefaultValue = global::LiveKit.Proto.SimulateScenarioKind.SimulateSignalReconnect; - private ulong trackHandle_; + private global::LiveKit.Proto.SimulateScenarioKind scenario_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ulong TrackHandle { - get { if ((_hasBits0 & 2) != 0) { return trackHandle_; } else { return TrackHandleDefaultValue; } } + public global::LiveKit.Proto.SimulateScenarioKind Scenario { + get { if ((_hasBits0 & 2) != 0) { return scenario_; } else { return ScenarioDefaultValue; } } set { _hasBits0 |= 2; - trackHandle_ = value; + scenario_ = value; } } - /// Gets whether the "track_handle" field is set + /// Gets whether the "scenario" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasTrackHandle { + public bool HasScenario { get { return (_hasBits0 & 2) != 0; } } - /// Clears the value of the "track_handle" field + /// Clears the value of the "scenario" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearTrackHandle() { + public void ClearScenario() { _hasBits0 &= ~2; } - /// Field number for the "options" field. - public const int OptionsFieldNumber = 3; - private global::LiveKit.Proto.TrackPublishOptions options_; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::LiveKit.Proto.TrackPublishOptions Options { - get { return options_; } - set { - options_ = value; - } - } - /// Field number for the "request_async_id" field. - public const int RequestAsyncIdFieldNumber = 4; + public const int RequestAsyncIdFieldNumber = 3; private readonly static ulong RequestAsyncIdDefaultValue = 0UL; private ulong requestAsyncId_; @@ -2861,21 +2889,20 @@ public void ClearRequestAsyncId() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as PublishTrackRequest); + return Equals(other as SimulateScenarioRequest); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PublishTrackRequest other) { + public bool Equals(SimulateScenarioRequest other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (LocalParticipantHandle != other.LocalParticipantHandle) return false; - if (TrackHandle != other.TrackHandle) return false; - if (!object.Equals(Options, other.Options)) return false; + if (RoomHandle != other.RoomHandle) return false; + if (Scenario != other.Scenario) return false; if (RequestAsyncId != other.RequestAsyncId) return false; return Equals(_unknownFields, other._unknownFields); } @@ -2884,9 +2911,8 @@ public bool Equals(PublishTrackRequest other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (HasLocalParticipantHandle) hash ^= LocalParticipantHandle.GetHashCode(); - if (HasTrackHandle) hash ^= TrackHandle.GetHashCode(); - if (options_ != null) hash ^= Options.GetHashCode(); + if (HasRoomHandle) hash ^= RoomHandle.GetHashCode(); + if (HasScenario) hash ^= Scenario.GetHashCode(); if (HasRequestAsyncId) hash ^= RequestAsyncId.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -2906,20 +2932,16 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (HasLocalParticipantHandle) { + if (HasRoomHandle) { output.WriteRawTag(8); - output.WriteUInt64(LocalParticipantHandle); + output.WriteUInt64(RoomHandle); } - if (HasTrackHandle) { + if (HasScenario) { output.WriteRawTag(16); - output.WriteUInt64(TrackHandle); - } - if (options_ != null) { - output.WriteRawTag(26); - output.WriteMessage(Options); + output.WriteEnum((int) Scenario); } if (HasRequestAsyncId) { - output.WriteRawTag(32); + output.WriteRawTag(24); output.WriteUInt64(RequestAsyncId); } if (_unknownFields != null) { @@ -2932,20 +2954,16 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (HasLocalParticipantHandle) { + if (HasRoomHandle) { output.WriteRawTag(8); - output.WriteUInt64(LocalParticipantHandle); + output.WriteUInt64(RoomHandle); } - if (HasTrackHandle) { + if (HasScenario) { output.WriteRawTag(16); - output.WriteUInt64(TrackHandle); - } - if (options_ != null) { - output.WriteRawTag(26); - output.WriteMessage(Options); + output.WriteEnum((int) Scenario); } if (HasRequestAsyncId) { - output.WriteRawTag(32); + output.WriteRawTag(24); output.WriteUInt64(RequestAsyncId); } if (_unknownFields != null) { @@ -2958,14 +2976,11 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (HasLocalParticipantHandle) { - size += 1 + pb::CodedOutputStream.ComputeUInt64Size(LocalParticipantHandle); - } - if (HasTrackHandle) { - size += 1 + pb::CodedOutputStream.ComputeUInt64Size(TrackHandle); + if (HasRoomHandle) { + size += 1 + pb::CodedOutputStream.ComputeUInt64Size(RoomHandle); } - if (options_ != null) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(Options); + if (HasScenario) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Scenario); } if (HasRequestAsyncId) { size += 1 + pb::CodedOutputStream.ComputeUInt64Size(RequestAsyncId); @@ -2978,21 +2993,15 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PublishTrackRequest other) { + public void MergeFrom(SimulateScenarioRequest other) { if (other == null) { return; } - if (other.HasLocalParticipantHandle) { - LocalParticipantHandle = other.LocalParticipantHandle; - } - if (other.HasTrackHandle) { - TrackHandle = other.TrackHandle; + if (other.HasRoomHandle) { + RoomHandle = other.RoomHandle; } - if (other.options_ != null) { - if (options_ == null) { - Options = new global::LiveKit.Proto.TrackPublishOptions(); - } - Options.MergeFrom(other.Options); + if (other.HasScenario) { + Scenario = other.Scenario; } if (other.HasRequestAsyncId) { RequestAsyncId = other.RequestAsyncId; @@ -3017,21 +3026,14 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 8: { - LocalParticipantHandle = input.ReadUInt64(); + RoomHandle = input.ReadUInt64(); break; } case 16: { - TrackHandle = input.ReadUInt64(); + Scenario = (global::LiveKit.Proto.SimulateScenarioKind) input.ReadEnum(); break; } - case 26: { - if (options_ == null) { - Options = new global::LiveKit.Proto.TrackPublishOptions(); - } - input.ReadMessage(Options); - break; - } - case 32: { + case 24: { RequestAsyncId = input.ReadUInt64(); break; } @@ -3055,21 +3057,14 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 8: { - LocalParticipantHandle = input.ReadUInt64(); + RoomHandle = input.ReadUInt64(); break; } case 16: { - TrackHandle = input.ReadUInt64(); + Scenario = (global::LiveKit.Proto.SimulateScenarioKind) input.ReadEnum(); break; } - case 26: { - if (options_ == null) { - Options = new global::LiveKit.Proto.TrackPublishOptions(); - } - input.ReadMessage(Options); - break; - } - case 32: { + case 24: { RequestAsyncId = input.ReadUInt64(); break; } @@ -3081,17 +3076,17 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PublishTrackResponse : pb::IMessage + public sealed partial class SimulateScenarioResponse : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishTrackResponse()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SimulateScenarioResponse()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -3107,7 +3102,7 @@ public sealed partial class PublishTrackResponse : pb::IMessageField number for the "async_id" field. @@ -3157,12 +3152,12 @@ public void ClearAsyncId() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as PublishTrackResponse); + return Equals(other as SimulateScenarioResponse); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PublishTrackResponse other) { + public bool Equals(SimulateScenarioResponse other) { if (ReferenceEquals(other, null)) { return false; } @@ -3235,7 +3230,7 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PublishTrackResponse other) { + public void MergeFrom(SimulateScenarioResponse other) { if (other == null) { return; } @@ -3296,17 +3291,17 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PublishTrackCallback : pb::IMessage + public sealed partial class SimulateScenarioCallback : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishTrackCallback()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SimulateScenarioCallback()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -3322,7 +3317,7 @@ public sealed partial class PublishTrackCallback : pb::IMessageField number for the "async_id" field. @@ -3380,72 +3367,39 @@ public void ClearAsyncId() { /// Field number for the "error" field. public const int ErrorFieldNumber = 2; + private readonly static string ErrorDefaultValue = ""; + + private string error_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public string Error { - get { return HasError ? (string) message_ : ""; } + get { return error_ ?? ErrorDefaultValue; } set { - message_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - messageCase_ = MessageOneofCase.Error; + error_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Gets whether the "error" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public bool HasError { - get { return messageCase_ == MessageOneofCase.Error; } + get { return error_ != null; } } - /// Clears the value of the oneof if it's currently set to "error" + /// Clears the value of the "error" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public void ClearError() { - if (HasError) { - ClearMessage(); - } - } - - /// Field number for the "publication" field. - public const int PublicationFieldNumber = 3; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::LiveKit.Proto.OwnedTrackPublication Publication { - get { return messageCase_ == MessageOneofCase.Publication ? (global::LiveKit.Proto.OwnedTrackPublication) message_ : null; } - set { - message_ = value; - messageCase_ = value == null ? MessageOneofCase.None : MessageOneofCase.Publication; - } - } - - private object message_; - /// Enum of possible cases for the "message" oneof. - public enum MessageOneofCase { - None = 0, - Error = 2, - Publication = 3, - } - private MessageOneofCase messageCase_ = MessageOneofCase.None; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public MessageOneofCase MessageCase { - get { return messageCase_; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearMessage() { - messageCase_ = MessageOneofCase.None; - message_ = null; + error_ = null; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as PublishTrackCallback); + return Equals(other as SimulateScenarioCallback); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PublishTrackCallback other) { + public bool Equals(SimulateScenarioCallback other) { if (ReferenceEquals(other, null)) { return false; } @@ -3454,8 +3408,6 @@ public bool Equals(PublishTrackCallback other) { } if (AsyncId != other.AsyncId) return false; if (Error != other.Error) return false; - if (!object.Equals(Publication, other.Publication)) return false; - if (MessageCase != other.MessageCase) return false; return Equals(_unknownFields, other._unknownFields); } @@ -3465,8 +3417,6 @@ public override int GetHashCode() { int hash = 1; if (HasAsyncId) hash ^= AsyncId.GetHashCode(); if (HasError) hash ^= Error.GetHashCode(); - if (messageCase_ == MessageOneofCase.Publication) hash ^= Publication.GetHashCode(); - hash ^= (int) messageCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -3493,10 +3443,6 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(18); output.WriteString(Error); } - if (messageCase_ == MessageOneofCase.Publication) { - output.WriteRawTag(26); - output.WriteMessage(Publication); - } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -3515,10 +3461,6 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(18); output.WriteString(Error); } - if (messageCase_ == MessageOneofCase.Publication) { - output.WriteRawTag(26); - output.WriteMessage(Publication); - } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -3535,9 +3477,6 @@ public int CalculateSize() { if (HasError) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Error); } - if (messageCase_ == MessageOneofCase.Publication) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(Publication); - } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -3546,25 +3485,16 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PublishTrackCallback other) { + public void MergeFrom(SimulateScenarioCallback other) { if (other == null) { return; } if (other.HasAsyncId) { AsyncId = other.AsyncId; } - switch (other.MessageCase) { - case MessageOneofCase.Error: - Error = other.Error; - break; - case MessageOneofCase.Publication: - if (Publication == null) { - Publication = new global::LiveKit.Proto.OwnedTrackPublication(); - } - Publication.MergeFrom(other.Publication); - break; + if (other.HasError) { + Error = other.Error; } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -3592,15 +3522,6 @@ public void MergeFrom(pb::CodedInputStream input) { Error = input.ReadString(); break; } - case 26: { - global::LiveKit.Proto.OwnedTrackPublication subBuilder = new global::LiveKit.Proto.OwnedTrackPublication(); - if (messageCase_ == MessageOneofCase.Publication) { - subBuilder.MergeFrom(Publication); - } - input.ReadMessage(subBuilder); - Publication = subBuilder; - break; - } } } #endif @@ -3628,15 +3549,6 @@ public void MergeFrom(pb::CodedInputStream input) { Error = input.ReadString(); break; } - case 26: { - global::LiveKit.Proto.OwnedTrackPublication subBuilder = new global::LiveKit.Proto.OwnedTrackPublication(); - if (messageCase_ == MessageOneofCase.Publication) { - subBuilder.MergeFrom(Publication); - } - input.ReadMessage(subBuilder); - Publication = subBuilder; - break; - } } } } @@ -3645,20 +3557,20 @@ public void MergeFrom(pb::CodedInputStream input) { } /// - /// Unpublish a track from the room + /// Publish a track to the room /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class UnpublishTrackRequest : pb::IMessage + public sealed partial class PublishTrackRequest : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new UnpublishTrackRequest()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishTrackRequest()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -3674,7 +3586,7 @@ public sealed partial class UnpublishTrackRequest : pb::IMessageField number for the "local_participant_handle" field. @@ -3724,58 +3636,44 @@ public void ClearLocalParticipantHandle() { _hasBits0 &= ~1; } - /// Field number for the "track_sid" field. - public const int TrackSidFieldNumber = 2; - private readonly static string TrackSidDefaultValue = ""; + /// Field number for the "track_handle" field. + public const int TrackHandleFieldNumber = 2; + private readonly static ulong TrackHandleDefaultValue = 0UL; - private string trackSid_; + private ulong trackHandle_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string TrackSid { - get { return trackSid_ ?? TrackSidDefaultValue; } + public ulong TrackHandle { + get { if ((_hasBits0 & 2) != 0) { return trackHandle_; } else { return TrackHandleDefaultValue; } } set { - trackSid_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + _hasBits0 |= 2; + trackHandle_ = value; } } - /// Gets whether the "track_sid" field is set + /// Gets whether the "track_handle" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasTrackSid { - get { return trackSid_ != null; } + public bool HasTrackHandle { + get { return (_hasBits0 & 2) != 0; } } - /// Clears the value of the "track_sid" field + /// Clears the value of the "track_handle" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearTrackSid() { - trackSid_ = null; + public void ClearTrackHandle() { + _hasBits0 &= ~2; } - /// Field number for the "stop_on_unpublish" field. - public const int StopOnUnpublishFieldNumber = 3; - private readonly static bool StopOnUnpublishDefaultValue = false; - - private bool stopOnUnpublish_; + /// Field number for the "options" field. + public const int OptionsFieldNumber = 3; + private global::LiveKit.Proto.TrackPublishOptions options_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool StopOnUnpublish { - get { if ((_hasBits0 & 2) != 0) { return stopOnUnpublish_; } else { return StopOnUnpublishDefaultValue; } } + public global::LiveKit.Proto.TrackPublishOptions Options { + get { return options_; } set { - _hasBits0 |= 2; - stopOnUnpublish_ = value; + options_ = value; } } - /// Gets whether the "stop_on_unpublish" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasStopOnUnpublish { - get { return (_hasBits0 & 2) != 0; } - } - /// Clears the value of the "stop_on_unpublish" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearStopOnUnpublish() { - _hasBits0 &= ~2; - } /// Field number for the "request_async_id" field. public const int RequestAsyncIdFieldNumber = 4; @@ -3807,12 +3705,12 @@ public void ClearRequestAsyncId() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as UnpublishTrackRequest); + return Equals(other as PublishTrackRequest); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(UnpublishTrackRequest other) { + public bool Equals(PublishTrackRequest other) { if (ReferenceEquals(other, null)) { return false; } @@ -3820,8 +3718,8 @@ public bool Equals(UnpublishTrackRequest other) { return true; } if (LocalParticipantHandle != other.LocalParticipantHandle) return false; - if (TrackSid != other.TrackSid) return false; - if (StopOnUnpublish != other.StopOnUnpublish) return false; + if (TrackHandle != other.TrackHandle) return false; + if (!object.Equals(Options, other.Options)) return false; if (RequestAsyncId != other.RequestAsyncId) return false; return Equals(_unknownFields, other._unknownFields); } @@ -3831,8 +3729,8 @@ public bool Equals(UnpublishTrackRequest other) { public override int GetHashCode() { int hash = 1; if (HasLocalParticipantHandle) hash ^= LocalParticipantHandle.GetHashCode(); - if (HasTrackSid) hash ^= TrackSid.GetHashCode(); - if (HasStopOnUnpublish) hash ^= StopOnUnpublish.GetHashCode(); + if (HasTrackHandle) hash ^= TrackHandle.GetHashCode(); + if (options_ != null) hash ^= Options.GetHashCode(); if (HasRequestAsyncId) hash ^= RequestAsyncId.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -3856,13 +3754,13 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(8); output.WriteUInt64(LocalParticipantHandle); } - if (HasTrackSid) { - output.WriteRawTag(18); - output.WriteString(TrackSid); + if (HasTrackHandle) { + output.WriteRawTag(16); + output.WriteUInt64(TrackHandle); } - if (HasStopOnUnpublish) { - output.WriteRawTag(24); - output.WriteBool(StopOnUnpublish); + if (options_ != null) { + output.WriteRawTag(26); + output.WriteMessage(Options); } if (HasRequestAsyncId) { output.WriteRawTag(32); @@ -3882,13 +3780,13 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(8); output.WriteUInt64(LocalParticipantHandle); } - if (HasTrackSid) { - output.WriteRawTag(18); - output.WriteString(TrackSid); + if (HasTrackHandle) { + output.WriteRawTag(16); + output.WriteUInt64(TrackHandle); } - if (HasStopOnUnpublish) { - output.WriteRawTag(24); - output.WriteBool(StopOnUnpublish); + if (options_ != null) { + output.WriteRawTag(26); + output.WriteMessage(Options); } if (HasRequestAsyncId) { output.WriteRawTag(32); @@ -3907,11 +3805,11 @@ public int CalculateSize() { if (HasLocalParticipantHandle) { size += 1 + pb::CodedOutputStream.ComputeUInt64Size(LocalParticipantHandle); } - if (HasTrackSid) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(TrackSid); + if (HasTrackHandle) { + size += 1 + pb::CodedOutputStream.ComputeUInt64Size(TrackHandle); } - if (HasStopOnUnpublish) { - size += 1 + 1; + if (options_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(Options); } if (HasRequestAsyncId) { size += 1 + pb::CodedOutputStream.ComputeUInt64Size(RequestAsyncId); @@ -3924,18 +3822,21 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(UnpublishTrackRequest other) { + public void MergeFrom(PublishTrackRequest other) { if (other == null) { return; } if (other.HasLocalParticipantHandle) { LocalParticipantHandle = other.LocalParticipantHandle; } - if (other.HasTrackSid) { - TrackSid = other.TrackSid; + if (other.HasTrackHandle) { + TrackHandle = other.TrackHandle; } - if (other.HasStopOnUnpublish) { - StopOnUnpublish = other.StopOnUnpublish; + if (other.options_ != null) { + if (options_ == null) { + Options = new global::LiveKit.Proto.TrackPublishOptions(); + } + Options.MergeFrom(other.Options); } if (other.HasRequestAsyncId) { RequestAsyncId = other.RequestAsyncId; @@ -3963,12 +3864,15 @@ public void MergeFrom(pb::CodedInputStream input) { LocalParticipantHandle = input.ReadUInt64(); break; } - case 18: { - TrackSid = input.ReadString(); + case 16: { + TrackHandle = input.ReadUInt64(); break; } - case 24: { - StopOnUnpublish = input.ReadBool(); + case 26: { + if (options_ == null) { + Options = new global::LiveKit.Proto.TrackPublishOptions(); + } + input.ReadMessage(Options); break; } case 32: { @@ -3998,12 +3902,15 @@ public void MergeFrom(pb::CodedInputStream input) { LocalParticipantHandle = input.ReadUInt64(); break; } - case 18: { - TrackSid = input.ReadString(); + case 16: { + TrackHandle = input.ReadUInt64(); break; } - case 24: { - StopOnUnpublish = input.ReadBool(); + case 26: { + if (options_ == null) { + Options = new global::LiveKit.Proto.TrackPublishOptions(); + } + input.ReadMessage(Options); break; } case 32: { @@ -4018,17 +3925,17 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class UnpublishTrackResponse : pb::IMessage + public sealed partial class PublishTrackResponse : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new UnpublishTrackResponse()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishTrackResponse()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -4044,7 +3951,7 @@ public sealed partial class UnpublishTrackResponse : pb::IMessageField number for the "async_id" field. @@ -4094,12 +4001,12 @@ public void ClearAsyncId() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as UnpublishTrackResponse); + return Equals(other as PublishTrackResponse); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(UnpublishTrackResponse other) { + public bool Equals(PublishTrackResponse other) { if (ReferenceEquals(other, null)) { return false; } @@ -4172,7 +4079,7 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(UnpublishTrackResponse other) { + public void MergeFrom(PublishTrackResponse other) { if (other == null) { return; } @@ -4233,17 +4140,17 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class UnpublishTrackCallback : pb::IMessage + public sealed partial class PublishTrackCallback : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new UnpublishTrackCallback()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishTrackCallback()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -4259,7 +4166,7 @@ public sealed partial class UnpublishTrackCallback : pb::IMessageField number for the "async_id" field. @@ -4309,39 +4224,72 @@ public void ClearAsyncId() { /// Field number for the "error" field. public const int ErrorFieldNumber = 2; - private readonly static string ErrorDefaultValue = ""; - - private string error_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public string Error { - get { return error_ ?? ErrorDefaultValue; } + get { return HasError ? (string) message_ : ""; } set { - error_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + message_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + messageCase_ = MessageOneofCase.Error; } } /// Gets whether the "error" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public bool HasError { - get { return error_ != null; } + get { return messageCase_ == MessageOneofCase.Error; } } - /// Clears the value of the "error" field + /// Clears the value of the oneof if it's currently set to "error" [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public void ClearError() { - error_ = null; + if (HasError) { + ClearMessage(); + } + } + + /// Field number for the "publication" field. + public const int PublicationFieldNumber = 3; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::LiveKit.Proto.OwnedTrackPublication Publication { + get { return messageCase_ == MessageOneofCase.Publication ? (global::LiveKit.Proto.OwnedTrackPublication) message_ : null; } + set { + message_ = value; + messageCase_ = value == null ? MessageOneofCase.None : MessageOneofCase.Publication; + } + } + + private object message_; + /// Enum of possible cases for the "message" oneof. + public enum MessageOneofCase { + None = 0, + Error = 2, + Publication = 3, + } + private MessageOneofCase messageCase_ = MessageOneofCase.None; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public MessageOneofCase MessageCase { + get { return messageCase_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearMessage() { + messageCase_ = MessageOneofCase.None; + message_ = null; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as UnpublishTrackCallback); + return Equals(other as PublishTrackCallback); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(UnpublishTrackCallback other) { + public bool Equals(PublishTrackCallback other) { if (ReferenceEquals(other, null)) { return false; } @@ -4350,6 +4298,8 @@ public bool Equals(UnpublishTrackCallback other) { } if (AsyncId != other.AsyncId) return false; if (Error != other.Error) return false; + if (!object.Equals(Publication, other.Publication)) return false; + if (MessageCase != other.MessageCase) return false; return Equals(_unknownFields, other._unknownFields); } @@ -4359,6 +4309,8 @@ public override int GetHashCode() { int hash = 1; if (HasAsyncId) hash ^= AsyncId.GetHashCode(); if (HasError) hash ^= Error.GetHashCode(); + if (messageCase_ == MessageOneofCase.Publication) hash ^= Publication.GetHashCode(); + hash ^= (int) messageCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -4385,6 +4337,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(18); output.WriteString(Error); } + if (messageCase_ == MessageOneofCase.Publication) { + output.WriteRawTag(26); + output.WriteMessage(Publication); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -4403,6 +4359,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(18); output.WriteString(Error); } + if (messageCase_ == MessageOneofCase.Publication) { + output.WriteRawTag(26); + output.WriteMessage(Publication); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -4419,6 +4379,9 @@ public int CalculateSize() { if (HasError) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Error); } + if (messageCase_ == MessageOneofCase.Publication) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(Publication); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -4427,16 +4390,25 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(UnpublishTrackCallback other) { + public void MergeFrom(PublishTrackCallback other) { if (other == null) { return; } if (other.HasAsyncId) { AsyncId = other.AsyncId; } - if (other.HasError) { - Error = other.Error; + switch (other.MessageCase) { + case MessageOneofCase.Error: + Error = other.Error; + break; + case MessageOneofCase.Publication: + if (Publication == null) { + Publication = new global::LiveKit.Proto.OwnedTrackPublication(); + } + Publication.MergeFrom(other.Publication); + break; } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -4464,6 +4436,15 @@ public void MergeFrom(pb::CodedInputStream input) { Error = input.ReadString(); break; } + case 26: { + global::LiveKit.Proto.OwnedTrackPublication subBuilder = new global::LiveKit.Proto.OwnedTrackPublication(); + if (messageCase_ == MessageOneofCase.Publication) { + subBuilder.MergeFrom(Publication); + } + input.ReadMessage(subBuilder); + Publication = subBuilder; + break; + } } } #endif @@ -4491,6 +4472,15 @@ public void MergeFrom(pb::CodedInputStream input) { Error = input.ReadString(); break; } + case 26: { + global::LiveKit.Proto.OwnedTrackPublication subBuilder = new global::LiveKit.Proto.OwnedTrackPublication(); + if (messageCase_ == MessageOneofCase.Publication) { + subBuilder.MergeFrom(Publication); + } + input.ReadMessage(subBuilder); + Publication = subBuilder; + break; + } } } } @@ -4499,20 +4489,20 @@ public void MergeFrom(pb::CodedInputStream input) { } /// - /// Publish data to other participants + /// Unpublish a track from the room /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PublishDataRequest : pb::IMessage + public sealed partial class UnpublishTrackRequest : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishDataRequest()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new UnpublishTrackRequest()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -4528,7 +4518,7 @@ public sealed partial class PublishDataRequest : pb::IMessageField number for the "local_participant_handle" field. @@ -4582,147 +4568,70 @@ public void ClearLocalParticipantHandle() { _hasBits0 &= ~1; } - /// Field number for the "data_ptr" field. - public const int DataPtrFieldNumber = 2; - private readonly static ulong DataPtrDefaultValue = 0UL; - - private ulong dataPtr_; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ulong DataPtr { - get { if ((_hasBits0 & 2) != 0) { return dataPtr_; } else { return DataPtrDefaultValue; } } - set { - _hasBits0 |= 2; - dataPtr_ = value; - } - } - /// Gets whether the "data_ptr" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasDataPtr { - get { return (_hasBits0 & 2) != 0; } - } - /// Clears the value of the "data_ptr" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearDataPtr() { - _hasBits0 &= ~2; - } - - /// Field number for the "data_len" field. - public const int DataLenFieldNumber = 3; - private readonly static ulong DataLenDefaultValue = 0UL; - - private ulong dataLen_; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ulong DataLen { - get { if ((_hasBits0 & 4) != 0) { return dataLen_; } else { return DataLenDefaultValue; } } - set { - _hasBits0 |= 4; - dataLen_ = value; - } - } - /// Gets whether the "data_len" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasDataLen { - get { return (_hasBits0 & 4) != 0; } - } - /// Clears the value of the "data_len" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearDataLen() { - _hasBits0 &= ~4; - } - - /// Field number for the "reliable" field. - public const int ReliableFieldNumber = 4; - private readonly static bool ReliableDefaultValue = false; + /// Field number for the "track_sid" field. + public const int TrackSidFieldNumber = 2; + private readonly static string TrackSidDefaultValue = ""; - private bool reliable_; + private string trackSid_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Reliable { - get { if ((_hasBits0 & 8) != 0) { return reliable_; } else { return ReliableDefaultValue; } } + public string TrackSid { + get { return trackSid_ ?? TrackSidDefaultValue; } set { - _hasBits0 |= 8; - reliable_ = value; + trackSid_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Gets whether the "reliable" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasReliable { - get { return (_hasBits0 & 8) != 0; } - } - /// Clears the value of the "reliable" field + /// Gets whether the "track_sid" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearReliable() { - _hasBits0 &= ~8; + public bool HasTrackSid { + get { return trackSid_ != null; } } - - /// Field number for the "destination_sids" field. - public const int DestinationSidsFieldNumber = 5; - private static readonly pb::FieldCodec _repeated_destinationSids_codec - = pb::FieldCodec.ForString(42); - private readonly pbc::RepeatedField destinationSids_ = new pbc::RepeatedField(); - [global::System.ObsoleteAttribute] + /// Clears the value of the "track_sid" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField DestinationSids { - get { return destinationSids_; } + public void ClearTrackSid() { + trackSid_ = null; } - /// Field number for the "topic" field. - public const int TopicFieldNumber = 6; - private readonly static string TopicDefaultValue = ""; + /// Field number for the "stop_on_unpublish" field. + public const int StopOnUnpublishFieldNumber = 3; + private readonly static bool StopOnUnpublishDefaultValue = false; - private string topic_; + private bool stopOnUnpublish_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Topic { - get { return topic_ ?? TopicDefaultValue; } + public bool StopOnUnpublish { + get { if ((_hasBits0 & 2) != 0) { return stopOnUnpublish_; } else { return StopOnUnpublishDefaultValue; } } set { - topic_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + _hasBits0 |= 2; + stopOnUnpublish_ = value; } } - /// Gets whether the "topic" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasTopic { - get { return topic_ != null; } - } - /// Clears the value of the "topic" field + /// Gets whether the "stop_on_unpublish" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearTopic() { - topic_ = null; + public bool HasStopOnUnpublish { + get { return (_hasBits0 & 2) != 0; } } - - /// Field number for the "destination_identities" field. - public const int DestinationIdentitiesFieldNumber = 7; - private static readonly pb::FieldCodec _repeated_destinationIdentities_codec - = pb::FieldCodec.ForString(58); - private readonly pbc::RepeatedField destinationIdentities_ = new pbc::RepeatedField(); + /// Clears the value of the "stop_on_unpublish" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField DestinationIdentities { - get { return destinationIdentities_; } + public void ClearStopOnUnpublish() { + _hasBits0 &= ~2; } /// Field number for the "request_async_id" field. - public const int RequestAsyncIdFieldNumber = 8; + public const int RequestAsyncIdFieldNumber = 4; private readonly static ulong RequestAsyncIdDefaultValue = 0UL; private ulong requestAsyncId_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public ulong RequestAsyncId { - get { if ((_hasBits0 & 16) != 0) { return requestAsyncId_; } else { return RequestAsyncIdDefaultValue; } } + get { if ((_hasBits0 & 4) != 0) { return requestAsyncId_; } else { return RequestAsyncIdDefaultValue; } } set { - _hasBits0 |= 16; + _hasBits0 |= 4; requestAsyncId_ = value; } } @@ -4730,24 +4639,24 @@ public ulong RequestAsyncId { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public bool HasRequestAsyncId { - get { return (_hasBits0 & 16) != 0; } + get { return (_hasBits0 & 4) != 0; } } /// Clears the value of the "request_async_id" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public void ClearRequestAsyncId() { - _hasBits0 &= ~16; + _hasBits0 &= ~4; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as PublishDataRequest); + return Equals(other as UnpublishTrackRequest); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PublishDataRequest other) { + public bool Equals(UnpublishTrackRequest other) { if (ReferenceEquals(other, null)) { return false; } @@ -4755,12 +4664,8 @@ public bool Equals(PublishDataRequest other) { return true; } if (LocalParticipantHandle != other.LocalParticipantHandle) return false; - if (DataPtr != other.DataPtr) return false; - if (DataLen != other.DataLen) return false; - if (Reliable != other.Reliable) return false; - if(!destinationSids_.Equals(other.destinationSids_)) return false; - if (Topic != other.Topic) return false; - if(!destinationIdentities_.Equals(other.destinationIdentities_)) return false; + if (TrackSid != other.TrackSid) return false; + if (StopOnUnpublish != other.StopOnUnpublish) return false; if (RequestAsyncId != other.RequestAsyncId) return false; return Equals(_unknownFields, other._unknownFields); } @@ -4770,12 +4675,8 @@ public bool Equals(PublishDataRequest other) { public override int GetHashCode() { int hash = 1; if (HasLocalParticipantHandle) hash ^= LocalParticipantHandle.GetHashCode(); - if (HasDataPtr) hash ^= DataPtr.GetHashCode(); - if (HasDataLen) hash ^= DataLen.GetHashCode(); - if (HasReliable) hash ^= Reliable.GetHashCode(); - hash ^= destinationSids_.GetHashCode(); - if (HasTopic) hash ^= Topic.GetHashCode(); - hash ^= destinationIdentities_.GetHashCode(); + if (HasTrackSid) hash ^= TrackSid.GetHashCode(); + if (HasStopOnUnpublish) hash ^= StopOnUnpublish.GetHashCode(); if (HasRequestAsyncId) hash ^= RequestAsyncId.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -4799,26 +4700,16 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(8); output.WriteUInt64(LocalParticipantHandle); } - if (HasDataPtr) { - output.WriteRawTag(16); - output.WriteUInt64(DataPtr); + if (HasTrackSid) { + output.WriteRawTag(18); + output.WriteString(TrackSid); } - if (HasDataLen) { + if (HasStopOnUnpublish) { output.WriteRawTag(24); - output.WriteUInt64(DataLen); - } - if (HasReliable) { - output.WriteRawTag(32); - output.WriteBool(Reliable); - } - destinationSids_.WriteTo(output, _repeated_destinationSids_codec); - if (HasTopic) { - output.WriteRawTag(50); - output.WriteString(Topic); + output.WriteBool(StopOnUnpublish); } - destinationIdentities_.WriteTo(output, _repeated_destinationIdentities_codec); if (HasRequestAsyncId) { - output.WriteRawTag(64); + output.WriteRawTag(32); output.WriteUInt64(RequestAsyncId); } if (_unknownFields != null) { @@ -4835,26 +4726,16 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(8); output.WriteUInt64(LocalParticipantHandle); } - if (HasDataPtr) { - output.WriteRawTag(16); - output.WriteUInt64(DataPtr); + if (HasTrackSid) { + output.WriteRawTag(18); + output.WriteString(TrackSid); } - if (HasDataLen) { + if (HasStopOnUnpublish) { output.WriteRawTag(24); - output.WriteUInt64(DataLen); - } - if (HasReliable) { - output.WriteRawTag(32); - output.WriteBool(Reliable); - } - destinationSids_.WriteTo(ref output, _repeated_destinationSids_codec); - if (HasTopic) { - output.WriteRawTag(50); - output.WriteString(Topic); + output.WriteBool(StopOnUnpublish); } - destinationIdentities_.WriteTo(ref output, _repeated_destinationIdentities_codec); if (HasRequestAsyncId) { - output.WriteRawTag(64); + output.WriteRawTag(32); output.WriteUInt64(RequestAsyncId); } if (_unknownFields != null) { @@ -4870,20 +4751,12 @@ public int CalculateSize() { if (HasLocalParticipantHandle) { size += 1 + pb::CodedOutputStream.ComputeUInt64Size(LocalParticipantHandle); } - if (HasDataPtr) { - size += 1 + pb::CodedOutputStream.ComputeUInt64Size(DataPtr); - } - if (HasDataLen) { - size += 1 + pb::CodedOutputStream.ComputeUInt64Size(DataLen); + if (HasTrackSid) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(TrackSid); } - if (HasReliable) { + if (HasStopOnUnpublish) { size += 1 + 1; } - size += destinationSids_.CalculateSize(_repeated_destinationSids_codec); - if (HasTopic) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Topic); - } - size += destinationIdentities_.CalculateSize(_repeated_destinationIdentities_codec); if (HasRequestAsyncId) { size += 1 + pb::CodedOutputStream.ComputeUInt64Size(RequestAsyncId); } @@ -4895,27 +4768,19 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PublishDataRequest other) { + public void MergeFrom(UnpublishTrackRequest other) { if (other == null) { return; } if (other.HasLocalParticipantHandle) { LocalParticipantHandle = other.LocalParticipantHandle; } - if (other.HasDataPtr) { - DataPtr = other.DataPtr; - } - if (other.HasDataLen) { - DataLen = other.DataLen; - } - if (other.HasReliable) { - Reliable = other.Reliable; + if (other.HasTrackSid) { + TrackSid = other.TrackSid; } - destinationSids_.Add(other.destinationSids_); - if (other.HasTopic) { - Topic = other.Topic; + if (other.HasStopOnUnpublish) { + StopOnUnpublish = other.StopOnUnpublish; } - destinationIdentities_.Add(other.destinationIdentities_); if (other.HasRequestAsyncId) { RequestAsyncId = other.RequestAsyncId; } @@ -4942,31 +4807,15 @@ public void MergeFrom(pb::CodedInputStream input) { LocalParticipantHandle = input.ReadUInt64(); break; } - case 16: { - DataPtr = input.ReadUInt64(); + case 18: { + TrackSid = input.ReadString(); break; } case 24: { - DataLen = input.ReadUInt64(); + StopOnUnpublish = input.ReadBool(); break; } case 32: { - Reliable = input.ReadBool(); - break; - } - case 42: { - destinationSids_.AddEntriesFrom(input, _repeated_destinationSids_codec); - break; - } - case 50: { - Topic = input.ReadString(); - break; - } - case 58: { - destinationIdentities_.AddEntriesFrom(input, _repeated_destinationIdentities_codec); - break; - } - case 64: { RequestAsyncId = input.ReadUInt64(); break; } @@ -4993,31 +4842,15 @@ public void MergeFrom(pb::CodedInputStream input) { LocalParticipantHandle = input.ReadUInt64(); break; } - case 16: { - DataPtr = input.ReadUInt64(); + case 18: { + TrackSid = input.ReadString(); break; } case 24: { - DataLen = input.ReadUInt64(); + StopOnUnpublish = input.ReadBool(); break; } case 32: { - Reliable = input.ReadBool(); - break; - } - case 42: { - destinationSids_.AddEntriesFrom(ref input, _repeated_destinationSids_codec); - break; - } - case 50: { - Topic = input.ReadString(); - break; - } - case 58: { - destinationIdentities_.AddEntriesFrom(ref input, _repeated_destinationIdentities_codec); - break; - } - case 64: { RequestAsyncId = input.ReadUInt64(); break; } @@ -5029,17 +4862,17 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PublishDataResponse : pb::IMessage + public sealed partial class UnpublishTrackResponse : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishDataResponse()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new UnpublishTrackResponse()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -5055,7 +4888,7 @@ public sealed partial class PublishDataResponse : pb::IMessageField number for the "async_id" field. @@ -5105,12 +4938,12 @@ public void ClearAsyncId() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as PublishDataResponse); + return Equals(other as UnpublishTrackResponse); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PublishDataResponse other) { + public bool Equals(UnpublishTrackResponse other) { if (ReferenceEquals(other, null)) { return false; } @@ -5183,7 +5016,7 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PublishDataResponse other) { + public void MergeFrom(UnpublishTrackResponse other) { if (other == null) { return; } @@ -5244,17 +5077,17 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PublishDataCallback : pb::IMessage + public sealed partial class UnpublishTrackCallback : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishDataCallback()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new UnpublishTrackCallback()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -5270,7 +5103,7 @@ public sealed partial class PublishDataCallback : pb::IMessageField number for the "async_id" field. @@ -5347,12 +5180,12 @@ public void ClearError() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as PublishDataCallback); + return Equals(other as UnpublishTrackCallback); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PublishDataCallback other) { + public bool Equals(UnpublishTrackCallback other) { if (ReferenceEquals(other, null)) { return false; } @@ -5438,7 +5271,7 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PublishDataCallback other) { + public void MergeFrom(UnpublishTrackCallback other) { if (other == null) { return; } @@ -5510,20 +5343,20 @@ public void MergeFrom(pb::CodedInputStream input) { } /// - /// Publish transcription messages to room + /// Publish data to other participants /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PublishTranscriptionRequest : pb::IMessage + public sealed partial class PublishDataRequest : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishTranscriptionRequest()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishDataRequest()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -5539,7 +5372,7 @@ public sealed partial class PublishTranscriptionRequest : pb::IMessageField number for the "local_participant_handle" field. @@ -5590,80 +5426,147 @@ public void ClearLocalParticipantHandle() { _hasBits0 &= ~1; } - /// Field number for the "participant_identity" field. - public const int ParticipantIdentityFieldNumber = 2; - private readonly static string ParticipantIdentityDefaultValue = ""; + /// Field number for the "data_ptr" field. + public const int DataPtrFieldNumber = 2; + private readonly static ulong DataPtrDefaultValue = 0UL; - private string participantIdentity_; + private ulong dataPtr_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ParticipantIdentity { - get { return participantIdentity_ ?? ParticipantIdentityDefaultValue; } + public ulong DataPtr { + get { if ((_hasBits0 & 2) != 0) { return dataPtr_; } else { return DataPtrDefaultValue; } } set { - participantIdentity_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + _hasBits0 |= 2; + dataPtr_ = value; } } - /// Gets whether the "participant_identity" field is set + /// Gets whether the "data_ptr" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasParticipantIdentity { - get { return participantIdentity_ != null; } + public bool HasDataPtr { + get { return (_hasBits0 & 2) != 0; } } - /// Clears the value of the "participant_identity" field + /// Clears the value of the "data_ptr" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearParticipantIdentity() { - participantIdentity_ = null; + public void ClearDataPtr() { + _hasBits0 &= ~2; } - /// Field number for the "track_id" field. - public const int TrackIdFieldNumber = 3; - private readonly static string TrackIdDefaultValue = ""; + /// Field number for the "data_len" field. + public const int DataLenFieldNumber = 3; + private readonly static ulong DataLenDefaultValue = 0UL; - private string trackId_; + private ulong dataLen_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string TrackId { - get { return trackId_ ?? TrackIdDefaultValue; } + public ulong DataLen { + get { if ((_hasBits0 & 4) != 0) { return dataLen_; } else { return DataLenDefaultValue; } } set { - trackId_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + _hasBits0 |= 4; + dataLen_ = value; } } - /// Gets whether the "track_id" field is set + /// Gets whether the "data_len" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasTrackId { - get { return trackId_ != null; } + public bool HasDataLen { + get { return (_hasBits0 & 4) != 0; } } - /// Clears the value of the "track_id" field + /// Clears the value of the "data_len" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearTrackId() { - trackId_ = null; + public void ClearDataLen() { + _hasBits0 &= ~4; } - /// Field number for the "segments" field. - public const int SegmentsFieldNumber = 4; - private static readonly pb::FieldCodec _repeated_segments_codec - = pb::FieldCodec.ForMessage(34, global::LiveKit.Proto.TranscriptionSegment.Parser); - private readonly pbc::RepeatedField segments_ = new pbc::RepeatedField(); + /// Field number for the "reliable" field. + public const int ReliableFieldNumber = 4; + private readonly static bool ReliableDefaultValue = false; + + private bool reliable_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField Segments { - get { return segments_; } + public bool Reliable { + get { if ((_hasBits0 & 8) != 0) { return reliable_; } else { return ReliableDefaultValue; } } + set { + _hasBits0 |= 8; + reliable_ = value; + } + } + /// Gets whether the "reliable" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasReliable { + get { return (_hasBits0 & 8) != 0; } + } + /// Clears the value of the "reliable" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearReliable() { + _hasBits0 &= ~8; + } + + /// Field number for the "destination_sids" field. + public const int DestinationSidsFieldNumber = 5; + private static readonly pb::FieldCodec _repeated_destinationSids_codec + = pb::FieldCodec.ForString(42); + private readonly pbc::RepeatedField destinationSids_ = new pbc::RepeatedField(); + [global::System.ObsoleteAttribute] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField DestinationSids { + get { return destinationSids_; } + } + + /// Field number for the "topic" field. + public const int TopicFieldNumber = 6; + private readonly static string TopicDefaultValue = ""; + + private string topic_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Topic { + get { return topic_ ?? TopicDefaultValue; } + set { + topic_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + /// Gets whether the "topic" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasTopic { + get { return topic_ != null; } + } + /// Clears the value of the "topic" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearTopic() { + topic_ = null; + } + + /// Field number for the "destination_identities" field. + public const int DestinationIdentitiesFieldNumber = 7; + private static readonly pb::FieldCodec _repeated_destinationIdentities_codec + = pb::FieldCodec.ForString(58); + private readonly pbc::RepeatedField destinationIdentities_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField DestinationIdentities { + get { return destinationIdentities_; } } /// Field number for the "request_async_id" field. - public const int RequestAsyncIdFieldNumber = 5; + public const int RequestAsyncIdFieldNumber = 8; private readonly static ulong RequestAsyncIdDefaultValue = 0UL; private ulong requestAsyncId_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public ulong RequestAsyncId { - get { if ((_hasBits0 & 2) != 0) { return requestAsyncId_; } else { return RequestAsyncIdDefaultValue; } } + get { if ((_hasBits0 & 16) != 0) { return requestAsyncId_; } else { return RequestAsyncIdDefaultValue; } } set { - _hasBits0 |= 2; + _hasBits0 |= 16; requestAsyncId_ = value; } } @@ -5671,24 +5574,24 @@ public ulong RequestAsyncId { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public bool HasRequestAsyncId { - get { return (_hasBits0 & 2) != 0; } + get { return (_hasBits0 & 16) != 0; } } /// Clears the value of the "request_async_id" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public void ClearRequestAsyncId() { - _hasBits0 &= ~2; + _hasBits0 &= ~16; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as PublishTranscriptionRequest); + return Equals(other as PublishDataRequest); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PublishTranscriptionRequest other) { + public bool Equals(PublishDataRequest other) { if (ReferenceEquals(other, null)) { return false; } @@ -5696,9 +5599,12 @@ public bool Equals(PublishTranscriptionRequest other) { return true; } if (LocalParticipantHandle != other.LocalParticipantHandle) return false; - if (ParticipantIdentity != other.ParticipantIdentity) return false; - if (TrackId != other.TrackId) return false; - if(!segments_.Equals(other.segments_)) return false; + if (DataPtr != other.DataPtr) return false; + if (DataLen != other.DataLen) return false; + if (Reliable != other.Reliable) return false; + if(!destinationSids_.Equals(other.destinationSids_)) return false; + if (Topic != other.Topic) return false; + if(!destinationIdentities_.Equals(other.destinationIdentities_)) return false; if (RequestAsyncId != other.RequestAsyncId) return false; return Equals(_unknownFields, other._unknownFields); } @@ -5708,9 +5614,12 @@ public bool Equals(PublishTranscriptionRequest other) { public override int GetHashCode() { int hash = 1; if (HasLocalParticipantHandle) hash ^= LocalParticipantHandle.GetHashCode(); - if (HasParticipantIdentity) hash ^= ParticipantIdentity.GetHashCode(); - if (HasTrackId) hash ^= TrackId.GetHashCode(); - hash ^= segments_.GetHashCode(); + if (HasDataPtr) hash ^= DataPtr.GetHashCode(); + if (HasDataLen) hash ^= DataLen.GetHashCode(); + if (HasReliable) hash ^= Reliable.GetHashCode(); + hash ^= destinationSids_.GetHashCode(); + if (HasTopic) hash ^= Topic.GetHashCode(); + hash ^= destinationIdentities_.GetHashCode(); if (HasRequestAsyncId) hash ^= RequestAsyncId.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -5734,17 +5643,26 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(8); output.WriteUInt64(LocalParticipantHandle); } - if (HasParticipantIdentity) { - output.WriteRawTag(18); - output.WriteString(ParticipantIdentity); + if (HasDataPtr) { + output.WriteRawTag(16); + output.WriteUInt64(DataPtr); } - if (HasTrackId) { - output.WriteRawTag(26); - output.WriteString(TrackId); + if (HasDataLen) { + output.WriteRawTag(24); + output.WriteUInt64(DataLen); } - segments_.WriteTo(output, _repeated_segments_codec); + if (HasReliable) { + output.WriteRawTag(32); + output.WriteBool(Reliable); + } + destinationSids_.WriteTo(output, _repeated_destinationSids_codec); + if (HasTopic) { + output.WriteRawTag(50); + output.WriteString(Topic); + } + destinationIdentities_.WriteTo(output, _repeated_destinationIdentities_codec); if (HasRequestAsyncId) { - output.WriteRawTag(40); + output.WriteRawTag(64); output.WriteUInt64(RequestAsyncId); } if (_unknownFields != null) { @@ -5761,17 +5679,26 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(8); output.WriteUInt64(LocalParticipantHandle); } - if (HasParticipantIdentity) { - output.WriteRawTag(18); - output.WriteString(ParticipantIdentity); + if (HasDataPtr) { + output.WriteRawTag(16); + output.WriteUInt64(DataPtr); } - if (HasTrackId) { - output.WriteRawTag(26); - output.WriteString(TrackId); + if (HasDataLen) { + output.WriteRawTag(24); + output.WriteUInt64(DataLen); } - segments_.WriteTo(ref output, _repeated_segments_codec); + if (HasReliable) { + output.WriteRawTag(32); + output.WriteBool(Reliable); + } + destinationSids_.WriteTo(ref output, _repeated_destinationSids_codec); + if (HasTopic) { + output.WriteRawTag(50); + output.WriteString(Topic); + } + destinationIdentities_.WriteTo(ref output, _repeated_destinationIdentities_codec); if (HasRequestAsyncId) { - output.WriteRawTag(40); + output.WriteRawTag(64); output.WriteUInt64(RequestAsyncId); } if (_unknownFields != null) { @@ -5787,13 +5714,20 @@ public int CalculateSize() { if (HasLocalParticipantHandle) { size += 1 + pb::CodedOutputStream.ComputeUInt64Size(LocalParticipantHandle); } - if (HasParticipantIdentity) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ParticipantIdentity); + if (HasDataPtr) { + size += 1 + pb::CodedOutputStream.ComputeUInt64Size(DataPtr); } - if (HasTrackId) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(TrackId); + if (HasDataLen) { + size += 1 + pb::CodedOutputStream.ComputeUInt64Size(DataLen); } - size += segments_.CalculateSize(_repeated_segments_codec); + if (HasReliable) { + size += 1 + 1; + } + size += destinationSids_.CalculateSize(_repeated_destinationSids_codec); + if (HasTopic) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Topic); + } + size += destinationIdentities_.CalculateSize(_repeated_destinationIdentities_codec); if (HasRequestAsyncId) { size += 1 + pb::CodedOutputStream.ComputeUInt64Size(RequestAsyncId); } @@ -5805,20 +5739,27 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PublishTranscriptionRequest other) { + public void MergeFrom(PublishDataRequest other) { if (other == null) { return; } if (other.HasLocalParticipantHandle) { LocalParticipantHandle = other.LocalParticipantHandle; } - if (other.HasParticipantIdentity) { - ParticipantIdentity = other.ParticipantIdentity; + if (other.HasDataPtr) { + DataPtr = other.DataPtr; } - if (other.HasTrackId) { - TrackId = other.TrackId; + if (other.HasDataLen) { + DataLen = other.DataLen; } - segments_.Add(other.segments_); + if (other.HasReliable) { + Reliable = other.Reliable; + } + destinationSids_.Add(other.destinationSids_); + if (other.HasTopic) { + Topic = other.Topic; + } + destinationIdentities_.Add(other.destinationIdentities_); if (other.HasRequestAsyncId) { RequestAsyncId = other.RequestAsyncId; } @@ -5845,19 +5786,31 @@ public void MergeFrom(pb::CodedInputStream input) { LocalParticipantHandle = input.ReadUInt64(); break; } - case 18: { - ParticipantIdentity = input.ReadString(); + case 16: { + DataPtr = input.ReadUInt64(); break; } - case 26: { - TrackId = input.ReadString(); + case 24: { + DataLen = input.ReadUInt64(); break; } - case 34: { - segments_.AddEntriesFrom(input, _repeated_segments_codec); + case 32: { + Reliable = input.ReadBool(); break; } - case 40: { + case 42: { + destinationSids_.AddEntriesFrom(input, _repeated_destinationSids_codec); + break; + } + case 50: { + Topic = input.ReadString(); + break; + } + case 58: { + destinationIdentities_.AddEntriesFrom(input, _repeated_destinationIdentities_codec); + break; + } + case 64: { RequestAsyncId = input.ReadUInt64(); break; } @@ -5884,19 +5837,31 @@ public void MergeFrom(pb::CodedInputStream input) { LocalParticipantHandle = input.ReadUInt64(); break; } - case 18: { - ParticipantIdentity = input.ReadString(); + case 16: { + DataPtr = input.ReadUInt64(); break; } - case 26: { - TrackId = input.ReadString(); + case 24: { + DataLen = input.ReadUInt64(); break; } - case 34: { - segments_.AddEntriesFrom(ref input, _repeated_segments_codec); + case 32: { + Reliable = input.ReadBool(); break; } - case 40: { + case 42: { + destinationSids_.AddEntriesFrom(ref input, _repeated_destinationSids_codec); + break; + } + case 50: { + Topic = input.ReadString(); + break; + } + case 58: { + destinationIdentities_.AddEntriesFrom(ref input, _repeated_destinationIdentities_codec); + break; + } + case 64: { RequestAsyncId = input.ReadUInt64(); break; } @@ -5908,17 +5873,17 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PublishTranscriptionResponse : pb::IMessage + public sealed partial class PublishDataResponse : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishTranscriptionResponse()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishDataResponse()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -5934,7 +5899,7 @@ public sealed partial class PublishTranscriptionResponse : pb::IMessageField number for the "async_id" field. @@ -5984,12 +5949,12 @@ public void ClearAsyncId() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as PublishTranscriptionResponse); + return Equals(other as PublishDataResponse); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PublishTranscriptionResponse other) { + public bool Equals(PublishDataResponse other) { if (ReferenceEquals(other, null)) { return false; } @@ -6062,7 +6027,7 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PublishTranscriptionResponse other) { + public void MergeFrom(PublishDataResponse other) { if (other == null) { return; } @@ -6123,17 +6088,17 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PublishTranscriptionCallback : pb::IMessage + public sealed partial class PublishDataCallback : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishTranscriptionCallback()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishDataCallback()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -6149,7 +6114,7 @@ public sealed partial class PublishTranscriptionCallback : pb::IMessageField number for the "async_id" field. @@ -6226,12 +6191,12 @@ public void ClearError() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as PublishTranscriptionCallback); + return Equals(other as PublishDataCallback); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PublishTranscriptionCallback other) { + public bool Equals(PublishDataCallback other) { if (ReferenceEquals(other, null)) { return false; } @@ -6317,7 +6282,7 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PublishTranscriptionCallback other) { + public void MergeFrom(PublishDataCallback other) { if (other == null) { return; } @@ -6389,20 +6354,20 @@ public void MergeFrom(pb::CodedInputStream input) { } /// - /// Publish Sip DTMF messages to other participants + /// Publish transcription messages to room /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PublishSipDtmfRequest : pb::IMessage + public sealed partial class PublishTranscriptionRequest : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishSipDtmfRequest()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishTranscriptionRequest()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -6418,7 +6383,7 @@ public sealed partial class PublishSipDtmfRequest : pb::IMessageField number for the "local_participant_handle" field. @@ -6469,68 +6434,67 @@ public void ClearLocalParticipantHandle() { _hasBits0 &= ~1; } - /// Field number for the "code" field. - public const int CodeFieldNumber = 2; - private readonly static uint CodeDefaultValue = 0; + /// Field number for the "participant_identity" field. + public const int ParticipantIdentityFieldNumber = 2; + private readonly static string ParticipantIdentityDefaultValue = ""; - private uint code_; + private string participantIdentity_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public uint Code { - get { if ((_hasBits0 & 2) != 0) { return code_; } else { return CodeDefaultValue; } } + public string ParticipantIdentity { + get { return participantIdentity_ ?? ParticipantIdentityDefaultValue; } set { - _hasBits0 |= 2; - code_ = value; + participantIdentity_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Gets whether the "code" field is set + /// Gets whether the "participant_identity" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasCode { - get { return (_hasBits0 & 2) != 0; } + public bool HasParticipantIdentity { + get { return participantIdentity_ != null; } } - /// Clears the value of the "code" field + /// Clears the value of the "participant_identity" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearCode() { - _hasBits0 &= ~2; + public void ClearParticipantIdentity() { + participantIdentity_ = null; } - /// Field number for the "digit" field. - public const int DigitFieldNumber = 3; - private readonly static string DigitDefaultValue = ""; + /// Field number for the "track_id" field. + public const int TrackIdFieldNumber = 3; + private readonly static string TrackIdDefaultValue = ""; - private string digit_; + private string trackId_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Digit { - get { return digit_ ?? DigitDefaultValue; } + public string TrackId { + get { return trackId_ ?? TrackIdDefaultValue; } set { - digit_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + trackId_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Gets whether the "digit" field is set + /// Gets whether the "track_id" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasDigit { - get { return digit_ != null; } + public bool HasTrackId { + get { return trackId_ != null; } } - /// Clears the value of the "digit" field + /// Clears the value of the "track_id" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearDigit() { - digit_ = null; + public void ClearTrackId() { + trackId_ = null; } - /// Field number for the "destination_identities" field. - public const int DestinationIdentitiesFieldNumber = 4; - private static readonly pb::FieldCodec _repeated_destinationIdentities_codec - = pb::FieldCodec.ForString(34); - private readonly pbc::RepeatedField destinationIdentities_ = new pbc::RepeatedField(); + /// Field number for the "segments" field. + public const int SegmentsFieldNumber = 4; + private static readonly pb::FieldCodec _repeated_segments_codec + = pb::FieldCodec.ForMessage(34, global::LiveKit.Proto.TranscriptionSegment.Parser); + private readonly pbc::RepeatedField segments_ = new pbc::RepeatedField(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField DestinationIdentities { - get { return destinationIdentities_; } + public pbc::RepeatedField Segments { + get { return segments_; } } /// Field number for the "request_async_id" field. @@ -6541,9 +6505,9 @@ public void ClearDigit() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public ulong RequestAsyncId { - get { if ((_hasBits0 & 4) != 0) { return requestAsyncId_; } else { return RequestAsyncIdDefaultValue; } } + get { if ((_hasBits0 & 2) != 0) { return requestAsyncId_; } else { return RequestAsyncIdDefaultValue; } } set { - _hasBits0 |= 4; + _hasBits0 |= 2; requestAsyncId_ = value; } } @@ -6551,24 +6515,24 @@ public ulong RequestAsyncId { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public bool HasRequestAsyncId { - get { return (_hasBits0 & 4) != 0; } + get { return (_hasBits0 & 2) != 0; } } /// Clears the value of the "request_async_id" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public void ClearRequestAsyncId() { - _hasBits0 &= ~4; + _hasBits0 &= ~2; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as PublishSipDtmfRequest); + return Equals(other as PublishTranscriptionRequest); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PublishSipDtmfRequest other) { + public bool Equals(PublishTranscriptionRequest other) { if (ReferenceEquals(other, null)) { return false; } @@ -6576,9 +6540,9 @@ public bool Equals(PublishSipDtmfRequest other) { return true; } if (LocalParticipantHandle != other.LocalParticipantHandle) return false; - if (Code != other.Code) return false; - if (Digit != other.Digit) return false; - if(!destinationIdentities_.Equals(other.destinationIdentities_)) return false; + if (ParticipantIdentity != other.ParticipantIdentity) return false; + if (TrackId != other.TrackId) return false; + if(!segments_.Equals(other.segments_)) return false; if (RequestAsyncId != other.RequestAsyncId) return false; return Equals(_unknownFields, other._unknownFields); } @@ -6588,9 +6552,9 @@ public bool Equals(PublishSipDtmfRequest other) { public override int GetHashCode() { int hash = 1; if (HasLocalParticipantHandle) hash ^= LocalParticipantHandle.GetHashCode(); - if (HasCode) hash ^= Code.GetHashCode(); - if (HasDigit) hash ^= Digit.GetHashCode(); - hash ^= destinationIdentities_.GetHashCode(); + if (HasParticipantIdentity) hash ^= ParticipantIdentity.GetHashCode(); + if (HasTrackId) hash ^= TrackId.GetHashCode(); + hash ^= segments_.GetHashCode(); if (HasRequestAsyncId) hash ^= RequestAsyncId.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -6614,15 +6578,15 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(8); output.WriteUInt64(LocalParticipantHandle); } - if (HasCode) { - output.WriteRawTag(16); - output.WriteUInt32(Code); + if (HasParticipantIdentity) { + output.WriteRawTag(18); + output.WriteString(ParticipantIdentity); } - if (HasDigit) { + if (HasTrackId) { output.WriteRawTag(26); - output.WriteString(Digit); + output.WriteString(TrackId); } - destinationIdentities_.WriteTo(output, _repeated_destinationIdentities_codec); + segments_.WriteTo(output, _repeated_segments_codec); if (HasRequestAsyncId) { output.WriteRawTag(40); output.WriteUInt64(RequestAsyncId); @@ -6641,15 +6605,15 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(8); output.WriteUInt64(LocalParticipantHandle); } - if (HasCode) { - output.WriteRawTag(16); - output.WriteUInt32(Code); + if (HasParticipantIdentity) { + output.WriteRawTag(18); + output.WriteString(ParticipantIdentity); } - if (HasDigit) { + if (HasTrackId) { output.WriteRawTag(26); - output.WriteString(Digit); + output.WriteString(TrackId); } - destinationIdentities_.WriteTo(ref output, _repeated_destinationIdentities_codec); + segments_.WriteTo(ref output, _repeated_segments_codec); if (HasRequestAsyncId) { output.WriteRawTag(40); output.WriteUInt64(RequestAsyncId); @@ -6667,13 +6631,13 @@ public int CalculateSize() { if (HasLocalParticipantHandle) { size += 1 + pb::CodedOutputStream.ComputeUInt64Size(LocalParticipantHandle); } - if (HasCode) { - size += 1 + pb::CodedOutputStream.ComputeUInt32Size(Code); + if (HasParticipantIdentity) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ParticipantIdentity); } - if (HasDigit) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Digit); + if (HasTrackId) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(TrackId); } - size += destinationIdentities_.CalculateSize(_repeated_destinationIdentities_codec); + size += segments_.CalculateSize(_repeated_segments_codec); if (HasRequestAsyncId) { size += 1 + pb::CodedOutputStream.ComputeUInt64Size(RequestAsyncId); } @@ -6685,20 +6649,20 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PublishSipDtmfRequest other) { + public void MergeFrom(PublishTranscriptionRequest other) { if (other == null) { return; } if (other.HasLocalParticipantHandle) { LocalParticipantHandle = other.LocalParticipantHandle; } - if (other.HasCode) { - Code = other.Code; + if (other.HasParticipantIdentity) { + ParticipantIdentity = other.ParticipantIdentity; } - if (other.HasDigit) { - Digit = other.Digit; + if (other.HasTrackId) { + TrackId = other.TrackId; } - destinationIdentities_.Add(other.destinationIdentities_); + segments_.Add(other.segments_); if (other.HasRequestAsyncId) { RequestAsyncId = other.RequestAsyncId; } @@ -6725,16 +6689,16 @@ public void MergeFrom(pb::CodedInputStream input) { LocalParticipantHandle = input.ReadUInt64(); break; } - case 16: { - Code = input.ReadUInt32(); + case 18: { + ParticipantIdentity = input.ReadString(); break; } case 26: { - Digit = input.ReadString(); + TrackId = input.ReadString(); break; } case 34: { - destinationIdentities_.AddEntriesFrom(input, _repeated_destinationIdentities_codec); + segments_.AddEntriesFrom(input, _repeated_segments_codec); break; } case 40: { @@ -6764,16 +6728,16 @@ public void MergeFrom(pb::CodedInputStream input) { LocalParticipantHandle = input.ReadUInt64(); break; } - case 16: { - Code = input.ReadUInt32(); + case 18: { + ParticipantIdentity = input.ReadString(); break; } case 26: { - Digit = input.ReadString(); + TrackId = input.ReadString(); break; } case 34: { - destinationIdentities_.AddEntriesFrom(ref input, _repeated_destinationIdentities_codec); + segments_.AddEntriesFrom(ref input, _repeated_segments_codec); break; } case 40: { @@ -6788,17 +6752,17 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PublishSipDtmfResponse : pb::IMessage + public sealed partial class PublishTranscriptionResponse : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishSipDtmfResponse()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishTranscriptionResponse()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -6814,7 +6778,7 @@ public sealed partial class PublishSipDtmfResponse : pb::IMessageField number for the "async_id" field. @@ -6864,12 +6828,12 @@ public void ClearAsyncId() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as PublishSipDtmfResponse); + return Equals(other as PublishTranscriptionResponse); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PublishSipDtmfResponse other) { + public bool Equals(PublishTranscriptionResponse other) { if (ReferenceEquals(other, null)) { return false; } @@ -6942,7 +6906,7 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PublishSipDtmfResponse other) { + public void MergeFrom(PublishTranscriptionResponse other) { if (other == null) { return; } @@ -7003,17 +6967,17 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class PublishSipDtmfCallback : pb::IMessage + public sealed partial class PublishTranscriptionCallback : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishSipDtmfCallback()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishTranscriptionCallback()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -7029,7 +6993,7 @@ public sealed partial class PublishSipDtmfCallback : pb::IMessageField number for the "async_id" field. @@ -7106,12 +7070,12 @@ public void ClearError() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as PublishSipDtmfCallback); + return Equals(other as PublishTranscriptionCallback); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(PublishSipDtmfCallback other) { + public bool Equals(PublishTranscriptionCallback other) { if (ReferenceEquals(other, null)) { return false; } @@ -7197,7 +7161,7 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(PublishSipDtmfCallback other) { + public void MergeFrom(PublishTranscriptionCallback other) { if (other == null) { return; } @@ -7269,20 +7233,20 @@ public void MergeFrom(pb::CodedInputStream input) { } /// - /// Change the local participant's metadata + /// Publish Sip DTMF messages to other participants /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class SetLocalMetadataRequest : pb::IMessage + public sealed partial class PublishSipDtmfRequest : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SetLocalMetadataRequest()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishSipDtmfRequest()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -7298,7 +7262,7 @@ public sealed partial class SetLocalMetadataRequest : pb::IMessageField number for the "local_participant_handle" field. @@ -7347,43 +7313,81 @@ public void ClearLocalParticipantHandle() { _hasBits0 &= ~1; } - /// Field number for the "metadata" field. - public const int MetadataFieldNumber = 2; - private readonly static string MetadataDefaultValue = ""; + /// Field number for the "code" field. + public const int CodeFieldNumber = 2; + private readonly static uint CodeDefaultValue = 0; - private string metadata_; + private uint code_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string Metadata { - get { return metadata_ ?? MetadataDefaultValue; } + public uint Code { + get { if ((_hasBits0 & 2) != 0) { return code_; } else { return CodeDefaultValue; } } set { - metadata_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + _hasBits0 |= 2; + code_ = value; } } - /// Gets whether the "metadata" field is set + /// Gets whether the "code" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasMetadata { - get { return metadata_ != null; } + public bool HasCode { + get { return (_hasBits0 & 2) != 0; } } - /// Clears the value of the "metadata" field + /// Clears the value of the "code" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearMetadata() { - metadata_ = null; + public void ClearCode() { + _hasBits0 &= ~2; + } + + /// Field number for the "digit" field. + public const int DigitFieldNumber = 3; + private readonly static string DigitDefaultValue = ""; + + private string digit_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Digit { + get { return digit_ ?? DigitDefaultValue; } + set { + digit_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + /// Gets whether the "digit" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasDigit { + get { return digit_ != null; } + } + /// Clears the value of the "digit" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearDigit() { + digit_ = null; + } + + /// Field number for the "destination_identities" field. + public const int DestinationIdentitiesFieldNumber = 4; + private static readonly pb::FieldCodec _repeated_destinationIdentities_codec + = pb::FieldCodec.ForString(34); + private readonly pbc::RepeatedField destinationIdentities_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField DestinationIdentities { + get { return destinationIdentities_; } } /// Field number for the "request_async_id" field. - public const int RequestAsyncIdFieldNumber = 3; + public const int RequestAsyncIdFieldNumber = 5; private readonly static ulong RequestAsyncIdDefaultValue = 0UL; private ulong requestAsyncId_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public ulong RequestAsyncId { - get { if ((_hasBits0 & 2) != 0) { return requestAsyncId_; } else { return RequestAsyncIdDefaultValue; } } + get { if ((_hasBits0 & 4) != 0) { return requestAsyncId_; } else { return RequestAsyncIdDefaultValue; } } set { - _hasBits0 |= 2; + _hasBits0 |= 4; requestAsyncId_ = value; } } @@ -7391,24 +7395,24 @@ public ulong RequestAsyncId { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public bool HasRequestAsyncId { - get { return (_hasBits0 & 2) != 0; } + get { return (_hasBits0 & 4) != 0; } } /// Clears the value of the "request_async_id" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public void ClearRequestAsyncId() { - _hasBits0 &= ~2; + _hasBits0 &= ~4; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as SetLocalMetadataRequest); + return Equals(other as PublishSipDtmfRequest); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(SetLocalMetadataRequest other) { + public bool Equals(PublishSipDtmfRequest other) { if (ReferenceEquals(other, null)) { return false; } @@ -7416,7 +7420,9 @@ public bool Equals(SetLocalMetadataRequest other) { return true; } if (LocalParticipantHandle != other.LocalParticipantHandle) return false; - if (Metadata != other.Metadata) return false; + if (Code != other.Code) return false; + if (Digit != other.Digit) return false; + if(!destinationIdentities_.Equals(other.destinationIdentities_)) return false; if (RequestAsyncId != other.RequestAsyncId) return false; return Equals(_unknownFields, other._unknownFields); } @@ -7426,7 +7432,9 @@ public bool Equals(SetLocalMetadataRequest other) { public override int GetHashCode() { int hash = 1; if (HasLocalParticipantHandle) hash ^= LocalParticipantHandle.GetHashCode(); - if (HasMetadata) hash ^= Metadata.GetHashCode(); + if (HasCode) hash ^= Code.GetHashCode(); + if (HasDigit) hash ^= Digit.GetHashCode(); + hash ^= destinationIdentities_.GetHashCode(); if (HasRequestAsyncId) hash ^= RequestAsyncId.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -7450,12 +7458,17 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(8); output.WriteUInt64(LocalParticipantHandle); } - if (HasMetadata) { - output.WriteRawTag(18); - output.WriteString(Metadata); + if (HasCode) { + output.WriteRawTag(16); + output.WriteUInt32(Code); } + if (HasDigit) { + output.WriteRawTag(26); + output.WriteString(Digit); + } + destinationIdentities_.WriteTo(output, _repeated_destinationIdentities_codec); if (HasRequestAsyncId) { - output.WriteRawTag(24); + output.WriteRawTag(40); output.WriteUInt64(RequestAsyncId); } if (_unknownFields != null) { @@ -7472,12 +7485,17 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(8); output.WriteUInt64(LocalParticipantHandle); } - if (HasMetadata) { - output.WriteRawTag(18); - output.WriteString(Metadata); + if (HasCode) { + output.WriteRawTag(16); + output.WriteUInt32(Code); + } + if (HasDigit) { + output.WriteRawTag(26); + output.WriteString(Digit); } + destinationIdentities_.WriteTo(ref output, _repeated_destinationIdentities_codec); if (HasRequestAsyncId) { - output.WriteRawTag(24); + output.WriteRawTag(40); output.WriteUInt64(RequestAsyncId); } if (_unknownFields != null) { @@ -7493,9 +7511,13 @@ public int CalculateSize() { if (HasLocalParticipantHandle) { size += 1 + pb::CodedOutputStream.ComputeUInt64Size(LocalParticipantHandle); } - if (HasMetadata) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(Metadata); + if (HasCode) { + size += 1 + pb::CodedOutputStream.ComputeUInt32Size(Code); + } + if (HasDigit) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Digit); } + size += destinationIdentities_.CalculateSize(_repeated_destinationIdentities_codec); if (HasRequestAsyncId) { size += 1 + pb::CodedOutputStream.ComputeUInt64Size(RequestAsyncId); } @@ -7507,16 +7529,20 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(SetLocalMetadataRequest other) { + public void MergeFrom(PublishSipDtmfRequest other) { if (other == null) { return; } if (other.HasLocalParticipantHandle) { LocalParticipantHandle = other.LocalParticipantHandle; } - if (other.HasMetadata) { - Metadata = other.Metadata; + if (other.HasCode) { + Code = other.Code; + } + if (other.HasDigit) { + Digit = other.Digit; } + destinationIdentities_.Add(other.destinationIdentities_); if (other.HasRequestAsyncId) { RequestAsyncId = other.RequestAsyncId; } @@ -7543,11 +7569,19 @@ public void MergeFrom(pb::CodedInputStream input) { LocalParticipantHandle = input.ReadUInt64(); break; } - case 18: { - Metadata = input.ReadString(); + case 16: { + Code = input.ReadUInt32(); break; } - case 24: { + case 26: { + Digit = input.ReadString(); + break; + } + case 34: { + destinationIdentities_.AddEntriesFrom(input, _repeated_destinationIdentities_codec); + break; + } + case 40: { RequestAsyncId = input.ReadUInt64(); break; } @@ -7574,11 +7608,19 @@ public void MergeFrom(pb::CodedInputStream input) { LocalParticipantHandle = input.ReadUInt64(); break; } - case 18: { - Metadata = input.ReadString(); + case 16: { + Code = input.ReadUInt32(); break; } - case 24: { + case 26: { + Digit = input.ReadString(); + break; + } + case 34: { + destinationIdentities_.AddEntriesFrom(ref input, _repeated_destinationIdentities_codec); + break; + } + case 40: { RequestAsyncId = input.ReadUInt64(); break; } @@ -7590,17 +7632,17 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class SetLocalMetadataResponse : pb::IMessage + public sealed partial class PublishSipDtmfResponse : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SetLocalMetadataResponse()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishSipDtmfResponse()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -7616,7 +7658,7 @@ public sealed partial class SetLocalMetadataResponse : pb::IMessageField number for the "async_id" field. @@ -7666,12 +7708,12 @@ public void ClearAsyncId() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as SetLocalMetadataResponse); + return Equals(other as PublishSipDtmfResponse); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(SetLocalMetadataResponse other) { + public bool Equals(PublishSipDtmfResponse other) { if (ReferenceEquals(other, null)) { return false; } @@ -7744,7 +7786,7 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(SetLocalMetadataResponse other) { + public void MergeFrom(PublishSipDtmfResponse other) { if (other == null) { return; } @@ -7805,17 +7847,17 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class SetLocalMetadataCallback : pb::IMessage + public sealed partial class PublishSipDtmfCallback : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SetLocalMetadataCallback()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new PublishSipDtmfCallback()); private pb::UnknownFieldSet _unknownFields; private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] @@ -7831,7 +7873,7 @@ public sealed partial class SetLocalMetadataCallback : pb::IMessageField number for the "async_id" field. + public const int AsyncIdFieldNumber = 1; + private readonly static ulong AsyncIdDefaultValue = 0UL; + + private ulong asyncId_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public ulong AsyncId { + get { if ((_hasBits0 & 1) != 0) { return asyncId_; } else { return AsyncIdDefaultValue; } } + set { + _hasBits0 |= 1; + asyncId_ = value; + } + } + /// Gets whether the "async_id" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasAsyncId { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "async_id" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearAsyncId() { + _hasBits0 &= ~1; + } + + /// Field number for the "error" field. + public const int ErrorFieldNumber = 2; + private readonly static string ErrorDefaultValue = ""; + + private string error_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Error { + get { return error_ ?? ErrorDefaultValue; } + set { + error_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + /// Gets whether the "error" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasError { + get { return error_ != null; } + } + /// Clears the value of the "error" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearError() { + error_ = null; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as PublishSipDtmfCallback); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(PublishSipDtmfCallback other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (AsyncId != other.AsyncId) return false; + if (Error != other.Error) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (HasAsyncId) hash ^= AsyncId.GetHashCode(); + if (HasError) hash ^= Error.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasAsyncId) { + output.WriteRawTag(8); + output.WriteUInt64(AsyncId); + } + if (HasError) { + output.WriteRawTag(18); + output.WriteString(Error); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasAsyncId) { + output.WriteRawTag(8); + output.WriteUInt64(AsyncId); + } + if (HasError) { + output.WriteRawTag(18); + output.WriteString(Error); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (HasAsyncId) { + size += 1 + pb::CodedOutputStream.ComputeUInt64Size(AsyncId); + } + if (HasError) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Error); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(PublishSipDtmfCallback other) { + if (other == null) { + return; + } + if (other.HasAsyncId) { + AsyncId = other.AsyncId; + } + if (other.HasError) { + Error = other.Error; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + AsyncId = input.ReadUInt64(); + break; + } + case 18: { + Error = input.ReadString(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + AsyncId = input.ReadUInt64(); + break; + } + case 18: { + Error = input.ReadString(); + break; + } + } + } + } + #endif + + } + + /// + /// Change the local participant's metadata + /// + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class SetLocalMetadataRequest : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SetLocalMetadataRequest()); + private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[24]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SetLocalMetadataRequest() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SetLocalMetadataRequest(SetLocalMetadataRequest other) : this() { + _hasBits0 = other._hasBits0; + localParticipantHandle_ = other.localParticipantHandle_; + metadata_ = other.metadata_; + requestAsyncId_ = other.requestAsyncId_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SetLocalMetadataRequest Clone() { + return new SetLocalMetadataRequest(this); + } + + /// Field number for the "local_participant_handle" field. + public const int LocalParticipantHandleFieldNumber = 1; + private readonly static ulong LocalParticipantHandleDefaultValue = 0UL; + + private ulong localParticipantHandle_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public ulong LocalParticipantHandle { + get { if ((_hasBits0 & 1) != 0) { return localParticipantHandle_; } else { return LocalParticipantHandleDefaultValue; } } + set { + _hasBits0 |= 1; + localParticipantHandle_ = value; + } + } + /// Gets whether the "local_participant_handle" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasLocalParticipantHandle { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "local_participant_handle" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearLocalParticipantHandle() { + _hasBits0 &= ~1; + } + + /// Field number for the "metadata" field. + public const int MetadataFieldNumber = 2; + private readonly static string MetadataDefaultValue = ""; + + private string metadata_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string Metadata { + get { return metadata_ ?? MetadataDefaultValue; } + set { + metadata_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + /// Gets whether the "metadata" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasMetadata { + get { return metadata_ != null; } + } + /// Clears the value of the "metadata" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearMetadata() { + metadata_ = null; + } + + /// Field number for the "request_async_id" field. + public const int RequestAsyncIdFieldNumber = 3; + private readonly static ulong RequestAsyncIdDefaultValue = 0UL; + + private ulong requestAsyncId_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public ulong RequestAsyncId { + get { if ((_hasBits0 & 2) != 0) { return requestAsyncId_; } else { return RequestAsyncIdDefaultValue; } } + set { + _hasBits0 |= 2; + requestAsyncId_ = value; + } + } + /// Gets whether the "request_async_id" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasRequestAsyncId { + get { return (_hasBits0 & 2) != 0; } + } + /// Clears the value of the "request_async_id" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearRequestAsyncId() { + _hasBits0 &= ~2; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as SetLocalMetadataRequest); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(SetLocalMetadataRequest other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (LocalParticipantHandle != other.LocalParticipantHandle) return false; + if (Metadata != other.Metadata) return false; + if (RequestAsyncId != other.RequestAsyncId) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (HasLocalParticipantHandle) hash ^= LocalParticipantHandle.GetHashCode(); + if (HasMetadata) hash ^= Metadata.GetHashCode(); + if (HasRequestAsyncId) hash ^= RequestAsyncId.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasLocalParticipantHandle) { + output.WriteRawTag(8); + output.WriteUInt64(LocalParticipantHandle); + } + if (HasMetadata) { + output.WriteRawTag(18); + output.WriteString(Metadata); + } + if (HasRequestAsyncId) { + output.WriteRawTag(24); + output.WriteUInt64(RequestAsyncId); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasLocalParticipantHandle) { + output.WriteRawTag(8); + output.WriteUInt64(LocalParticipantHandle); + } + if (HasMetadata) { + output.WriteRawTag(18); + output.WriteString(Metadata); + } + if (HasRequestAsyncId) { + output.WriteRawTag(24); + output.WriteUInt64(RequestAsyncId); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (HasLocalParticipantHandle) { + size += 1 + pb::CodedOutputStream.ComputeUInt64Size(LocalParticipantHandle); + } + if (HasMetadata) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(Metadata); + } + if (HasRequestAsyncId) { + size += 1 + pb::CodedOutputStream.ComputeUInt64Size(RequestAsyncId); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(SetLocalMetadataRequest other) { + if (other == null) { + return; + } + if (other.HasLocalParticipantHandle) { + LocalParticipantHandle = other.LocalParticipantHandle; + } + if (other.HasMetadata) { + Metadata = other.Metadata; + } + if (other.HasRequestAsyncId) { + RequestAsyncId = other.RequestAsyncId; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + LocalParticipantHandle = input.ReadUInt64(); + break; + } + case 18: { + Metadata = input.ReadString(); + break; + } + case 24: { + RequestAsyncId = input.ReadUInt64(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + LocalParticipantHandle = input.ReadUInt64(); + break; + } + case 18: { + Metadata = input.ReadString(); + break; + } + case 24: { + RequestAsyncId = input.ReadUInt64(); + break; + } + } + } + } + #endif + + } + + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class SetLocalMetadataResponse : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SetLocalMetadataResponse()); + private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[25]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SetLocalMetadataResponse() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SetLocalMetadataResponse(SetLocalMetadataResponse other) : this() { + _hasBits0 = other._hasBits0; + asyncId_ = other.asyncId_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SetLocalMetadataResponse Clone() { + return new SetLocalMetadataResponse(this); + } + + /// Field number for the "async_id" field. + public const int AsyncIdFieldNumber = 1; + private readonly static ulong AsyncIdDefaultValue = 0UL; + + private ulong asyncId_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public ulong AsyncId { + get { if ((_hasBits0 & 1) != 0) { return asyncId_; } else { return AsyncIdDefaultValue; } } + set { + _hasBits0 |= 1; + asyncId_ = value; + } + } + /// Gets whether the "async_id" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasAsyncId { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "async_id" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearAsyncId() { + _hasBits0 &= ~1; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as SetLocalMetadataResponse); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(SetLocalMetadataResponse other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (AsyncId != other.AsyncId) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (HasAsyncId) hash ^= AsyncId.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasAsyncId) { + output.WriteRawTag(8); + output.WriteUInt64(AsyncId); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasAsyncId) { + output.WriteRawTag(8); + output.WriteUInt64(AsyncId); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (HasAsyncId) { + size += 1 + pb::CodedOutputStream.ComputeUInt64Size(AsyncId); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(SetLocalMetadataResponse other) { + if (other == null) { + return; + } + if (other.HasAsyncId) { + AsyncId = other.AsyncId; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + AsyncId = input.ReadUInt64(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + AsyncId = input.ReadUInt64(); + break; + } + } + } + } + #endif + + } + + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class SetLocalMetadataCallback : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SetLocalMetadataCallback()); + private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[26]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SetLocalMetadataCallback() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SetLocalMetadataCallback(SetLocalMetadataCallback other) : this() { + _hasBits0 = other._hasBits0; + asyncId_ = other.asyncId_; + error_ = other.error_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SetLocalMetadataCallback Clone() { + return new SetLocalMetadataCallback(this); } /// Field number for the "async_id" field. @@ -8086,7 +8930,7 @@ public sealed partial class SendChatMessageRequest : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[29]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[32]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -10045,7 +10889,7 @@ public sealed partial class SetLocalAttributesResponse : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[40]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[43]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -13078,7 +13922,7 @@ public sealed partial class AudioEncoding : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[41]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[44]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -13293,7 +14137,7 @@ public sealed partial class TrackPublishOptions : pb::IMessageField number for the "packet_trailer_features" field. + public const int PacketTrailerFeaturesFieldNumber = 10; + private static readonly pb::FieldCodec _repeated_packetTrailerFeatures_codec + = pb::FieldCodec.ForEnum(80, x => (int) x, x => (global::LiveKit.Proto.PacketTrailerFeature) x); + private readonly pbc::RepeatedField packetTrailerFeatures_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField PacketTrailerFeatures { + get { return packetTrailerFeatures_; } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -13571,6 +14427,7 @@ public bool Equals(TrackPublishOptions other) { if (Source != other.Source) return false; if (Stream != other.Stream) return false; if (PreconnectBuffer != other.PreconnectBuffer) return false; + if(!packetTrailerFeatures_.Equals(other.packetTrailerFeatures_)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -13587,6 +14444,7 @@ public override int GetHashCode() { if (HasSource) hash ^= Source.GetHashCode(); if (HasStream) hash ^= Stream.GetHashCode(); if (HasPreconnectBuffer) hash ^= PreconnectBuffer.GetHashCode(); + hash ^= packetTrailerFeatures_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -13641,6 +14499,7 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(72); output.WriteBool(PreconnectBuffer); } + packetTrailerFeatures_.WriteTo(output, _repeated_packetTrailerFeatures_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -13687,6 +14546,7 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(72); output.WriteBool(PreconnectBuffer); } + packetTrailerFeatures_.WriteTo(ref output, _repeated_packetTrailerFeatures_codec); if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -13724,6 +14584,7 @@ public int CalculateSize() { if (HasPreconnectBuffer) { size += 1 + 1; } + size += packetTrailerFeatures_.CalculateSize(_repeated_packetTrailerFeatures_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -13769,6 +14630,7 @@ public void MergeFrom(TrackPublishOptions other) { if (other.HasPreconnectBuffer) { PreconnectBuffer = other.PreconnectBuffer; } + packetTrailerFeatures_.Add(other.packetTrailerFeatures_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -13830,6 +14692,11 @@ public void MergeFrom(pb::CodedInputStream input) { PreconnectBuffer = input.ReadBool(); break; } + case 82: + case 80: { + packetTrailerFeatures_.AddEntriesFrom(input, _repeated_packetTrailerFeatures_codec); + break; + } } } #endif @@ -13891,6 +14758,11 @@ public void MergeFrom(pb::CodedInputStream input) { PreconnectBuffer = input.ReadBool(); break; } + case 82: + case 80: { + packetTrailerFeatures_.AddEntriesFrom(ref input, _repeated_packetTrailerFeatures_codec); + break; + } } } } @@ -13913,7 +14785,7 @@ public sealed partial class IceServer : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[43]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[46]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -14203,7 +15075,7 @@ public sealed partial class RtcConfig : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[44]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[47]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -14499,7 +15371,7 @@ public sealed partial class RoomOptions : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[45]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[48]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -15122,7 +15994,7 @@ public sealed partial class TranscriptionSegment : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[47]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[50]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -15860,7 +16732,7 @@ public sealed partial class OwnedBuffer : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[48]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[51]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -16114,7 +16986,7 @@ public sealed partial class RoomEvent : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[49]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[52]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -16266,6 +17138,9 @@ public RoomEvent(RoomEvent other) : this() { case MessageOneofCase.DataTrackUnpublished: DataTrackUnpublished = other.DataTrackUnpublished.Clone(); break; + case MessageOneofCase.LocalTrackRepublished: + LocalTrackRepublished = other.LocalTrackRepublished.Clone(); + break; } _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); @@ -16841,6 +17716,18 @@ public void ClearRoomHandle() { } } + /// Field number for the "local_track_republished" field. + public const int LocalTrackRepublishedFieldNumber = 45; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::LiveKit.Proto.LocalTrackRepublished LocalTrackRepublished { + get { return messageCase_ == MessageOneofCase.LocalTrackRepublished ? (global::LiveKit.Proto.LocalTrackRepublished) message_ : null; } + set { + message_ = value; + messageCase_ = value == null ? MessageOneofCase.None : MessageOneofCase.LocalTrackRepublished; + } + } + private object message_; /// Enum of possible cases for the "message" oneof. public enum MessageOneofCase { @@ -16888,6 +17775,7 @@ public enum MessageOneofCase { ParticipantActive = 42, DataTrackPublished = 43, DataTrackUnpublished = 44, + LocalTrackRepublished = 45, } private MessageOneofCase messageCase_ = MessageOneofCase.None; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -16962,6 +17850,7 @@ public bool Equals(RoomEvent other) { if (!object.Equals(ParticipantActive, other.ParticipantActive)) return false; if (!object.Equals(DataTrackPublished, other.DataTrackPublished)) return false; if (!object.Equals(DataTrackUnpublished, other.DataTrackUnpublished)) return false; + if (!object.Equals(LocalTrackRepublished, other.LocalTrackRepublished)) return false; if (MessageCase != other.MessageCase) return false; return Equals(_unknownFields, other._unknownFields); } @@ -17014,6 +17903,7 @@ public override int GetHashCode() { if (messageCase_ == MessageOneofCase.ParticipantActive) hash ^= ParticipantActive.GetHashCode(); if (messageCase_ == MessageOneofCase.DataTrackPublished) hash ^= DataTrackPublished.GetHashCode(); if (messageCase_ == MessageOneofCase.DataTrackUnpublished) hash ^= DataTrackUnpublished.GetHashCode(); + if (messageCase_ == MessageOneofCase.LocalTrackRepublished) hash ^= LocalTrackRepublished.GetHashCode(); hash ^= (int) messageCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -17209,6 +18099,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(226, 2); output.WriteMessage(DataTrackUnpublished); } + if (messageCase_ == MessageOneofCase.LocalTrackRepublished) { + output.WriteRawTag(234, 2); + output.WriteMessage(LocalTrackRepublished); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -17395,6 +18289,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(226, 2); output.WriteMessage(DataTrackUnpublished); } + if (messageCase_ == MessageOneofCase.LocalTrackRepublished) { + output.WriteRawTag(234, 2); + output.WriteMessage(LocalTrackRepublished); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -17537,6 +18435,9 @@ public int CalculateSize() { if (messageCase_ == MessageOneofCase.DataTrackUnpublished) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(DataTrackUnpublished); } + if (messageCase_ == MessageOneofCase.LocalTrackRepublished) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(LocalTrackRepublished); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -17811,6 +18712,12 @@ public void MergeFrom(RoomEvent other) { } DataTrackUnpublished.MergeFrom(other.DataTrackUnpublished); break; + case MessageOneofCase.LocalTrackRepublished: + if (LocalTrackRepublished == null) { + LocalTrackRepublished = new global::LiveKit.Proto.LocalTrackRepublished(); + } + LocalTrackRepublished.MergeFrom(other.LocalTrackRepublished); + break; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); @@ -18223,6 +19130,15 @@ public void MergeFrom(pb::CodedInputStream input) { DataTrackUnpublished = subBuilder; break; } + case 362: { + global::LiveKit.Proto.LocalTrackRepublished subBuilder = new global::LiveKit.Proto.LocalTrackRepublished(); + if (messageCase_ == MessageOneofCase.LocalTrackRepublished) { + subBuilder.MergeFrom(LocalTrackRepublished); + } + input.ReadMessage(subBuilder); + LocalTrackRepublished = subBuilder; + break; + } } } #endif @@ -18633,6 +19549,15 @@ public void MergeFrom(pb::CodedInputStream input) { DataTrackUnpublished = subBuilder; break; } + case 362: { + global::LiveKit.Proto.LocalTrackRepublished subBuilder = new global::LiveKit.Proto.LocalTrackRepublished(); + if (messageCase_ == MessageOneofCase.LocalTrackRepublished) { + subBuilder.MergeFrom(LocalTrackRepublished); + } + input.ReadMessage(subBuilder); + LocalTrackRepublished = subBuilder; + break; + } } } } @@ -18656,7 +19581,7 @@ public sealed partial class RoomInfo : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[50]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[53]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -19370,51 +20295,491 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 10: { - Sid = input.ReadString(); - break; - } - case 18: { - Name = input.ReadString(); - break; - } - case 26: { - Metadata = input.ReadString(); - break; - } - case 32: { - LossyDcBufferedAmountLowThreshold = input.ReadUInt64(); - break; - } - case 40: { - ReliableDcBufferedAmountLowThreshold = input.ReadUInt64(); - break; - } - case 48: { - EmptyTimeout = input.ReadUInt32(); - break; - } - case 56: { - DepartureTimeout = input.ReadUInt32(); - break; - } - case 64: { - MaxParticipants = input.ReadUInt32(); - break; - } - case 72: { - CreationTime = input.ReadInt64(); - break; - } - case 80: { - NumParticipants = input.ReadUInt32(); - break; - } - case 88: { - NumPublishers = input.ReadUInt32(); - break; - } - case 96: { - ActiveRecording = input.ReadBool(); + Sid = input.ReadString(); + break; + } + case 18: { + Name = input.ReadString(); + break; + } + case 26: { + Metadata = input.ReadString(); + break; + } + case 32: { + LossyDcBufferedAmountLowThreshold = input.ReadUInt64(); + break; + } + case 40: { + ReliableDcBufferedAmountLowThreshold = input.ReadUInt64(); + break; + } + case 48: { + EmptyTimeout = input.ReadUInt32(); + break; + } + case 56: { + DepartureTimeout = input.ReadUInt32(); + break; + } + case 64: { + MaxParticipants = input.ReadUInt32(); + break; + } + case 72: { + CreationTime = input.ReadInt64(); + break; + } + case 80: { + NumParticipants = input.ReadUInt32(); + break; + } + case 88: { + NumPublishers = input.ReadUInt32(); + break; + } + case 96: { + ActiveRecording = input.ReadBool(); + break; + } + } + } + } + #endif + + } + + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class OwnedRoom : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new OwnedRoom()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[54]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public OwnedRoom() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public OwnedRoom(OwnedRoom other) : this() { + handle_ = other.handle_ != null ? other.handle_.Clone() : null; + info_ = other.info_ != null ? other.info_.Clone() : null; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public OwnedRoom Clone() { + return new OwnedRoom(this); + } + + /// Field number for the "handle" field. + public const int HandleFieldNumber = 1; + private global::LiveKit.Proto.FfiOwnedHandle handle_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::LiveKit.Proto.FfiOwnedHandle Handle { + get { return handle_; } + set { + handle_ = value; + } + } + + /// Field number for the "info" field. + public const int InfoFieldNumber = 2; + private global::LiveKit.Proto.RoomInfo info_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::LiveKit.Proto.RoomInfo Info { + get { return info_; } + set { + info_ = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as OwnedRoom); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(OwnedRoom other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (!object.Equals(Handle, other.Handle)) return false; + if (!object.Equals(Info, other.Info)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (handle_ != null) hash ^= Handle.GetHashCode(); + if (info_ != null) hash ^= Info.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (handle_ != null) { + output.WriteRawTag(10); + output.WriteMessage(Handle); + } + if (info_ != null) { + output.WriteRawTag(18); + output.WriteMessage(Info); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (handle_ != null) { + output.WriteRawTag(10); + output.WriteMessage(Handle); + } + if (info_ != null) { + output.WriteRawTag(18); + output.WriteMessage(Info); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (handle_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(Handle); + } + if (info_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(Info); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(OwnedRoom other) { + if (other == null) { + return; + } + if (other.handle_ != null) { + if (handle_ == null) { + Handle = new global::LiveKit.Proto.FfiOwnedHandle(); + } + Handle.MergeFrom(other.Handle); + } + if (other.info_ != null) { + if (info_ == null) { + Info = new global::LiveKit.Proto.RoomInfo(); + } + Info.MergeFrom(other.Info); + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + if (handle_ == null) { + Handle = new global::LiveKit.Proto.FfiOwnedHandle(); + } + input.ReadMessage(Handle); + break; + } + case 18: { + if (info_ == null) { + Info = new global::LiveKit.Proto.RoomInfo(); + } + input.ReadMessage(Info); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + if (handle_ == null) { + Handle = new global::LiveKit.Proto.FfiOwnedHandle(); + } + input.ReadMessage(Handle); + break; + } + case 18: { + if (info_ == null) { + Info = new global::LiveKit.Proto.RoomInfo(); + } + input.ReadMessage(Info); + break; + } + } + } + } + #endif + + } + + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class ParticipantsUpdated : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ParticipantsUpdated()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[55]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public ParticipantsUpdated() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public ParticipantsUpdated(ParticipantsUpdated other) : this() { + participants_ = other.participants_.Clone(); + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public ParticipantsUpdated Clone() { + return new ParticipantsUpdated(this); + } + + /// Field number for the "participants" field. + public const int ParticipantsFieldNumber = 1; + private static readonly pb::FieldCodec _repeated_participants_codec + = pb::FieldCodec.ForMessage(10, global::LiveKit.Proto.ParticipantInfo.Parser); + private readonly pbc::RepeatedField participants_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField Participants { + get { return participants_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as ParticipantsUpdated); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(ParticipantsUpdated other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if(!participants_.Equals(other.participants_)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + hash ^= participants_.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + participants_.WriteTo(output, _repeated_participants_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + participants_.WriteTo(ref output, _repeated_participants_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + size += participants_.CalculateSize(_repeated_participants_codec); + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(ParticipantsUpdated other) { + if (other == null) { + return; + } + participants_.Add(other.participants_); + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + participants_.AddEntriesFrom(input, _repeated_participants_codec); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + participants_.AddEntriesFrom(ref input, _repeated_participants_codec); break; } } @@ -19425,21 +20790,21 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class OwnedRoom : pb::IMessage + public sealed partial class ParticipantConnected : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new OwnedRoom()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ParticipantConnected()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[51]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[56]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -19450,7 +20815,7 @@ public sealed partial class OwnedRoom : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public OwnedRoom() { + public ParticipantConnected() { OnConstruction(); } @@ -19458,36 +20823,23 @@ public OwnedRoom() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public OwnedRoom(OwnedRoom other) : this() { - handle_ = other.handle_ != null ? other.handle_.Clone() : null; + public ParticipantConnected(ParticipantConnected other) : this() { info_ = other.info_ != null ? other.info_.Clone() : null; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public OwnedRoom Clone() { - return new OwnedRoom(this); - } - - /// Field number for the "handle" field. - public const int HandleFieldNumber = 1; - private global::LiveKit.Proto.FfiOwnedHandle handle_; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::LiveKit.Proto.FfiOwnedHandle Handle { - get { return handle_; } - set { - handle_ = value; - } + public ParticipantConnected Clone() { + return new ParticipantConnected(this); } /// Field number for the "info" field. - public const int InfoFieldNumber = 2; - private global::LiveKit.Proto.RoomInfo info_; + public const int InfoFieldNumber = 1; + private global::LiveKit.Proto.OwnedParticipant info_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::LiveKit.Proto.RoomInfo Info { + public global::LiveKit.Proto.OwnedParticipant Info { get { return info_; } set { info_ = value; @@ -19497,19 +20849,18 @@ public OwnedRoom Clone() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as OwnedRoom); + return Equals(other as ParticipantConnected); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(OwnedRoom other) { + public bool Equals(ParticipantConnected other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (!object.Equals(Handle, other.Handle)) return false; if (!object.Equals(Info, other.Info)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -19518,7 +20869,6 @@ public bool Equals(OwnedRoom other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (handle_ != null) hash ^= Handle.GetHashCode(); if (info_ != null) hash ^= Info.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -19538,12 +20888,8 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (handle_ != null) { - output.WriteRawTag(10); - output.WriteMessage(Handle); - } if (info_ != null) { - output.WriteRawTag(18); + output.WriteRawTag(10); output.WriteMessage(Info); } if (_unknownFields != null) { @@ -19556,12 +20902,8 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (handle_ != null) { - output.WriteRawTag(10); - output.WriteMessage(Handle); - } if (info_ != null) { - output.WriteRawTag(18); + output.WriteRawTag(10); output.WriteMessage(Info); } if (_unknownFields != null) { @@ -19574,9 +20916,6 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (handle_ != null) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(Handle); - } if (info_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(Info); } @@ -19588,19 +20927,13 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(OwnedRoom other) { + public void MergeFrom(ParticipantConnected other) { if (other == null) { return; } - if (other.handle_ != null) { - if (handle_ == null) { - Handle = new global::LiveKit.Proto.FfiOwnedHandle(); - } - Handle.MergeFrom(other.Handle); - } if (other.info_ != null) { if (info_ == null) { - Info = new global::LiveKit.Proto.RoomInfo(); + Info = new global::LiveKit.Proto.OwnedParticipant(); } Info.MergeFrom(other.Info); } @@ -19624,15 +20957,8 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { - if (handle_ == null) { - Handle = new global::LiveKit.Proto.FfiOwnedHandle(); - } - input.ReadMessage(Handle); - break; - } - case 18: { if (info_ == null) { - Info = new global::LiveKit.Proto.RoomInfo(); + Info = new global::LiveKit.Proto.OwnedParticipant(); } input.ReadMessage(Info); break; @@ -19657,15 +20983,8 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 10: { - if (handle_ == null) { - Handle = new global::LiveKit.Proto.FfiOwnedHandle(); - } - input.ReadMessage(Handle); - break; - } - case 18: { if (info_ == null) { - Info = new global::LiveKit.Proto.RoomInfo(); + Info = new global::LiveKit.Proto.OwnedParticipant(); } input.ReadMessage(Info); break; @@ -19678,21 +20997,21 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class ParticipantsUpdated : pb::IMessage + public sealed partial class ParticipantActive : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ParticipantsUpdated()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ParticipantActive()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[52]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[57]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -19703,7 +21022,7 @@ public sealed partial class ParticipantsUpdated : pb::IMessageField number for the "participants" field. - public const int ParticipantsFieldNumber = 1; - private static readonly pb::FieldCodec _repeated_participants_codec - = pb::FieldCodec.ForMessage(10, global::LiveKit.Proto.ParticipantInfo.Parser); - private readonly pbc::RepeatedField participants_ = new pbc::RepeatedField(); + /// Field number for the "participant_identity" field. + public const int ParticipantIdentityFieldNumber = 1; + private readonly static string ParticipantIdentityDefaultValue = ""; + + private string participantIdentity_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public pbc::RepeatedField Participants { - get { return participants_; } + public string ParticipantIdentity { + get { return participantIdentity_ ?? ParticipantIdentityDefaultValue; } + set { + participantIdentity_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + /// Gets whether the "participant_identity" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasParticipantIdentity { + get { return participantIdentity_ != null; } + } + /// Clears the value of the "participant_identity" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearParticipantIdentity() { + participantIdentity_ = null; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as ParticipantsUpdated); + return Equals(other as ParticipantActive); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(ParticipantsUpdated other) { + public bool Equals(ParticipantActive other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if(!participants_.Equals(other.participants_)) return false; + if (ParticipantIdentity != other.ParticipantIdentity) return false; return Equals(_unknownFields, other._unknownFields); } @@ -19756,7 +21090,7 @@ public bool Equals(ParticipantsUpdated other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - hash ^= participants_.GetHashCode(); + if (HasParticipantIdentity) hash ^= ParticipantIdentity.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -19775,7 +21109,10 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - participants_.WriteTo(output, _repeated_participants_codec); + if (HasParticipantIdentity) { + output.WriteRawTag(10); + output.WriteString(ParticipantIdentity); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -19786,7 +21123,10 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - participants_.WriteTo(ref output, _repeated_participants_codec); + if (HasParticipantIdentity) { + output.WriteRawTag(10); + output.WriteString(ParticipantIdentity); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -19797,7 +21137,9 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - size += participants_.CalculateSize(_repeated_participants_codec); + if (HasParticipantIdentity) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ParticipantIdentity); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -19806,11 +21148,13 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(ParticipantsUpdated other) { + public void MergeFrom(ParticipantActive other) { if (other == null) { return; } - participants_.Add(other.participants_); + if (other.HasParticipantIdentity) { + ParticipantIdentity = other.ParticipantIdentity; + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -19831,7 +21175,7 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { - participants_.AddEntriesFrom(input, _repeated_participants_codec); + ParticipantIdentity = input.ReadString(); break; } } @@ -19854,7 +21198,7 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 10: { - participants_.AddEntriesFrom(ref input, _repeated_participants_codec); + ParticipantIdentity = input.ReadString(); break; } } @@ -19865,21 +21209,22 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class ParticipantConnected : pb::IMessage + public sealed partial class ParticipantDisconnected : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ParticipantConnected()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ParticipantDisconnected()); private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[53]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[58]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -19890,7 +21235,7 @@ public sealed partial class ParticipantConnected : pb::IMessageField number for the "info" field. - public const int InfoFieldNumber = 1; - private global::LiveKit.Proto.OwnedParticipant info_; + /// Field number for the "participant_identity" field. + public const int ParticipantIdentityFieldNumber = 1; + private readonly static string ParticipantIdentityDefaultValue = ""; + + private string participantIdentity_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::LiveKit.Proto.OwnedParticipant Info { - get { return info_; } + public string ParticipantIdentity { + get { return participantIdentity_ ?? ParticipantIdentityDefaultValue; } set { - info_ = value; + participantIdentity_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + /// Gets whether the "participant_identity" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasParticipantIdentity { + get { return participantIdentity_ != null; } + } + /// Clears the value of the "participant_identity" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearParticipantIdentity() { + participantIdentity_ = null; + } + + /// Field number for the "disconnect_reason" field. + public const int DisconnectReasonFieldNumber = 2; + private readonly static global::LiveKit.Proto.DisconnectReason DisconnectReasonDefaultValue = global::LiveKit.Proto.DisconnectReason.UnknownReason; + + private global::LiveKit.Proto.DisconnectReason disconnectReason_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::LiveKit.Proto.DisconnectReason DisconnectReason { + get { if ((_hasBits0 & 1) != 0) { return disconnectReason_; } else { return DisconnectReasonDefaultValue; } } + set { + _hasBits0 |= 1; + disconnectReason_ = value; } } + /// Gets whether the "disconnect_reason" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasDisconnectReason { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "disconnect_reason" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearDisconnectReason() { + _hasBits0 &= ~1; + } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as ParticipantConnected); + return Equals(other as ParticipantDisconnected); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(ParticipantConnected other) { + public bool Equals(ParticipantDisconnected other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (!object.Equals(Info, other.Info)) return false; + if (ParticipantIdentity != other.ParticipantIdentity) return false; + if (DisconnectReason != other.DisconnectReason) return false; return Equals(_unknownFields, other._unknownFields); } @@ -19944,7 +21333,8 @@ public bool Equals(ParticipantConnected other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (info_ != null) hash ^= Info.GetHashCode(); + if (HasParticipantIdentity) hash ^= ParticipantIdentity.GetHashCode(); + if (HasDisconnectReason) hash ^= DisconnectReason.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -19963,9 +21353,13 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (info_ != null) { + if (HasParticipantIdentity) { output.WriteRawTag(10); - output.WriteMessage(Info); + output.WriteString(ParticipantIdentity); + } + if (HasDisconnectReason) { + output.WriteRawTag(16); + output.WriteEnum((int) DisconnectReason); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -19977,9 +21371,13 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (info_ != null) { + if (HasParticipantIdentity) { output.WriteRawTag(10); - output.WriteMessage(Info); + output.WriteString(ParticipantIdentity); + } + if (HasDisconnectReason) { + output.WriteRawTag(16); + output.WriteEnum((int) DisconnectReason); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -19991,8 +21389,11 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (info_ != null) { - size += 1 + pb::CodedOutputStream.ComputeMessageSize(Info); + if (HasParticipantIdentity) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ParticipantIdentity); + } + if (HasDisconnectReason) { + size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) DisconnectReason); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -20002,15 +21403,15 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(ParticipantConnected other) { + public void MergeFrom(ParticipantDisconnected other) { if (other == null) { return; } - if (other.info_ != null) { - if (info_ == null) { - Info = new global::LiveKit.Proto.OwnedParticipant(); - } - Info.MergeFrom(other.Info); + if (other.HasParticipantIdentity) { + ParticipantIdentity = other.ParticipantIdentity; + } + if (other.HasDisconnectReason) { + DisconnectReason = other.DisconnectReason; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -20032,10 +21433,11 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { - if (info_ == null) { - Info = new global::LiveKit.Proto.OwnedParticipant(); - } - input.ReadMessage(Info); + ParticipantIdentity = input.ReadString(); + break; + } + case 16: { + DisconnectReason = (global::LiveKit.Proto.DisconnectReason) input.ReadEnum(); break; } } @@ -20058,10 +21460,11 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 10: { - if (info_ == null) { - Info = new global::LiveKit.Proto.OwnedParticipant(); - } - input.ReadMessage(Info); + ParticipantIdentity = input.ReadString(); + break; + } + case 16: { + DisconnectReason = (global::LiveKit.Proto.DisconnectReason) input.ReadEnum(); break; } } @@ -20072,21 +21475,21 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class ParticipantActive : pb::IMessage + public sealed partial class LocalTrackPublished : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ParticipantActive()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new LocalTrackPublished()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[54]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[59]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -20097,7 +21500,7 @@ public sealed partial class ParticipantActive : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ParticipantActive() { + public LocalTrackPublished() { OnConstruction(); } @@ -20105,59 +21508,63 @@ public ParticipantActive() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ParticipantActive(ParticipantActive other) : this() { - participantIdentity_ = other.participantIdentity_; + public LocalTrackPublished(LocalTrackPublished other) : this() { + trackSid_ = other.trackSid_; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public ParticipantActive Clone() { - return new ParticipantActive(this); + public LocalTrackPublished Clone() { + return new LocalTrackPublished(this); } - /// Field number for the "participant_identity" field. - public const int ParticipantIdentityFieldNumber = 1; - private readonly static string ParticipantIdentityDefaultValue = ""; + /// Field number for the "track_sid" field. + public const int TrackSidFieldNumber = 1; + private readonly static string TrackSidDefaultValue = ""; - private string participantIdentity_; + private string trackSid_; + /// + /// The TrackPublicationInfo comes from the PublishTrack response + /// and the FfiClient musts wait for it before firing this event + /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ParticipantIdentity { - get { return participantIdentity_ ?? ParticipantIdentityDefaultValue; } + public string TrackSid { + get { return trackSid_ ?? TrackSidDefaultValue; } set { - participantIdentity_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + trackSid_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Gets whether the "participant_identity" field is set + /// Gets whether the "track_sid" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasParticipantIdentity { - get { return participantIdentity_ != null; } + public bool HasTrackSid { + get { return trackSid_ != null; } } - /// Clears the value of the "participant_identity" field + /// Clears the value of the "track_sid" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearParticipantIdentity() { - participantIdentity_ = null; + public void ClearTrackSid() { + trackSid_ = null; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as ParticipantActive); + return Equals(other as LocalTrackPublished); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(ParticipantActive other) { + public bool Equals(LocalTrackPublished other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (ParticipantIdentity != other.ParticipantIdentity) return false; + if (TrackSid != other.TrackSid) return false; return Equals(_unknownFields, other._unknownFields); } @@ -20165,7 +21572,7 @@ public bool Equals(ParticipantActive other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (HasParticipantIdentity) hash ^= ParticipantIdentity.GetHashCode(); + if (HasTrackSid) hash ^= TrackSid.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -20184,9 +21591,9 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (HasParticipantIdentity) { + if (HasTrackSid) { output.WriteRawTag(10); - output.WriteString(ParticipantIdentity); + output.WriteString(TrackSid); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -20198,9 +21605,9 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (HasParticipantIdentity) { + if (HasTrackSid) { output.WriteRawTag(10); - output.WriteString(ParticipantIdentity); + output.WriteString(TrackSid); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -20212,8 +21619,8 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (HasParticipantIdentity) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ParticipantIdentity); + if (HasTrackSid) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(TrackSid); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -20223,12 +21630,12 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(ParticipantActive other) { + public void MergeFrom(LocalTrackPublished other) { if (other == null) { return; } - if (other.HasParticipantIdentity) { - ParticipantIdentity = other.ParticipantIdentity; + if (other.HasTrackSid) { + TrackSid = other.TrackSid; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -20250,7 +21657,7 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { - ParticipantIdentity = input.ReadString(); + TrackSid = input.ReadString(); break; } } @@ -20273,7 +21680,7 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 10: { - ParticipantIdentity = input.ReadString(); + TrackSid = input.ReadString(); break; } } @@ -20284,22 +21691,21 @@ public void MergeFrom(pb::CodedInputStream input) { } [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class ParticipantDisconnected : pb::IMessage + public sealed partial class LocalTrackUnpublished : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ParticipantDisconnected()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new LocalTrackUnpublished()); private pb::UnknownFieldSet _unknownFields; - private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[55]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[60]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -20310,7 +21716,7 @@ public sealed partial class ParticipantDisconnected : pb::IMessageField number for the "participant_identity" field. - public const int ParticipantIdentityFieldNumber = 1; - private readonly static string ParticipantIdentityDefaultValue = ""; - - private string participantIdentity_; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string ParticipantIdentity { - get { return participantIdentity_ ?? ParticipantIdentityDefaultValue; } - set { - participantIdentity_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - /// Gets whether the "participant_identity" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasParticipantIdentity { - get { return participantIdentity_ != null; } - } - /// Clears the value of the "participant_identity" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearParticipantIdentity() { - participantIdentity_ = null; + public LocalTrackUnpublished Clone() { + return new LocalTrackUnpublished(this); } - /// Field number for the "disconnect_reason" field. - public const int DisconnectReasonFieldNumber = 2; - private readonly static global::LiveKit.Proto.DisconnectReason DisconnectReasonDefaultValue = global::LiveKit.Proto.DisconnectReason.UnknownReason; + /// Field number for the "publication_sid" field. + public const int PublicationSidFieldNumber = 1; + private readonly static string PublicationSidDefaultValue = ""; - private global::LiveKit.Proto.DisconnectReason disconnectReason_; + private string publicationSid_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public global::LiveKit.Proto.DisconnectReason DisconnectReason { - get { if ((_hasBits0 & 1) != 0) { return disconnectReason_; } else { return DisconnectReasonDefaultValue; } } + public string PublicationSid { + get { return publicationSid_ ?? PublicationSidDefaultValue; } set { - _hasBits0 |= 1; - disconnectReason_ = value; + publicationSid_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } - /// Gets whether the "disconnect_reason" field is set + /// Gets whether the "publication_sid" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasDisconnectReason { - get { return (_hasBits0 & 1) != 0; } + public bool HasPublicationSid { + get { return publicationSid_ != null; } } - /// Clears the value of the "disconnect_reason" field + /// Clears the value of the "publication_sid" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearDisconnectReason() { - _hasBits0 &= ~1; + public void ClearPublicationSid() { + publicationSid_ = null; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as ParticipantDisconnected); + return Equals(other as LocalTrackUnpublished); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(ParticipantDisconnected other) { + public bool Equals(LocalTrackUnpublished other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (ParticipantIdentity != other.ParticipantIdentity) return false; - if (DisconnectReason != other.DisconnectReason) return false; + if (PublicationSid != other.PublicationSid) return false; return Equals(_unknownFields, other._unknownFields); } @@ -20408,8 +21784,7 @@ public bool Equals(ParticipantDisconnected other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (HasParticipantIdentity) hash ^= ParticipantIdentity.GetHashCode(); - if (HasDisconnectReason) hash ^= DisconnectReason.GetHashCode(); + if (HasPublicationSid) hash ^= PublicationSid.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -20428,13 +21803,9 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (HasParticipantIdentity) { + if (HasPublicationSid) { output.WriteRawTag(10); - output.WriteString(ParticipantIdentity); - } - if (HasDisconnectReason) { - output.WriteRawTag(16); - output.WriteEnum((int) DisconnectReason); + output.WriteString(PublicationSid); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -20446,13 +21817,9 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (HasParticipantIdentity) { + if (HasPublicationSid) { output.WriteRawTag(10); - output.WriteString(ParticipantIdentity); - } - if (HasDisconnectReason) { - output.WriteRawTag(16); - output.WriteEnum((int) DisconnectReason); + output.WriteString(PublicationSid); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -20464,11 +21831,8 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (HasParticipantIdentity) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(ParticipantIdentity); - } - if (HasDisconnectReason) { - size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) DisconnectReason); + if (HasPublicationSid) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(PublicationSid); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -20478,15 +21842,12 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(ParticipantDisconnected other) { + public void MergeFrom(LocalTrackUnpublished other) { if (other == null) { return; } - if (other.HasParticipantIdentity) { - ParticipantIdentity = other.ParticipantIdentity; - } - if (other.HasDisconnectReason) { - DisconnectReason = other.DisconnectReason; + if (other.HasPublicationSid) { + PublicationSid = other.PublicationSid; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -20508,11 +21869,7 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { - ParticipantIdentity = input.ReadString(); - break; - } - case 16: { - DisconnectReason = (global::LiveKit.Proto.DisconnectReason) input.ReadEnum(); + PublicationSid = input.ReadString(); break; } } @@ -20535,11 +21892,7 @@ public void MergeFrom(pb::CodedInputStream input) { _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 10: { - ParticipantIdentity = input.ReadString(); - break; - } - case 16: { - DisconnectReason = (global::LiveKit.Proto.DisconnectReason) input.ReadEnum(); + PublicationSid = input.ReadString(); break; } } @@ -20549,22 +21902,32 @@ public void MergeFrom(pb::CodedInputStream input) { } + /// + /// Fired when the SDK auto-republishes a local track during a full + /// reconnect. The FfiPublication handle is preserved across the cycle — + /// language bindings should look up the existing publication object by + /// `previous_sid` (its old SID), update its TrackPublicationInfo in place + /// with `info`, and rekey it under the new SID. Apps holding a cached + /// reference to the publication continue to see a valid object whose + /// reads/writes hit current state. + /// [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class LocalTrackPublished : pb::IMessage + public sealed partial class LocalTrackRepublished : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE , pb::IBufferMessage #endif { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new LocalTrackPublished()); + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new LocalTrackRepublished()); private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } + public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[56]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[61]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -20575,7 +21938,7 @@ public sealed partial class LocalTrackPublished : pb::IMessageField number for the "track_sid" field. - public const int TrackSidFieldNumber = 1; - private readonly static string TrackSidDefaultValue = ""; + /// Field number for the "publication_handle" field. + public const int PublicationHandleFieldNumber = 1; + private readonly static ulong PublicationHandleDefaultValue = 0UL; - private string trackSid_; - /// - /// The TrackPublicationInfo comes from the PublishTrack response - /// and the FfiClient musts wait for it before firing this event - /// + private ulong publicationHandle_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string TrackSid { - get { return trackSid_ ?? TrackSidDefaultValue; } + public ulong PublicationHandle { + get { if ((_hasBits0 & 1) != 0) { return publicationHandle_; } else { return PublicationHandleDefaultValue; } } set { - trackSid_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + _hasBits0 |= 1; + publicationHandle_ = value; } } - /// Gets whether the "track_sid" field is set + /// Gets whether the "publication_handle" field is set [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasTrackSid { - get { return trackSid_ != null; } + public bool HasPublicationHandle { + get { return (_hasBits0 & 1) != 0; } } - /// Clears the value of the "track_sid" field + /// Clears the value of the "publication_handle" field [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearTrackSid() { - trackSid_ = null; + public void ClearPublicationHandle() { + _hasBits0 &= ~1; + } + + /// Field number for the "previous_sid" field. + public const int PreviousSidFieldNumber = 2; + private readonly static string PreviousSidDefaultValue = ""; + + private string previousSid_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string PreviousSid { + get { return previousSid_ ?? PreviousSidDefaultValue; } + set { + previousSid_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + /// Gets whether the "previous_sid" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasPreviousSid { + get { return previousSid_ != null; } + } + /// Clears the value of the "previous_sid" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearPreviousSid() { + previousSid_ = null; + } + + /// Field number for the "info" field. + public const int InfoFieldNumber = 3; + private global::LiveKit.Proto.TrackPublicationInfo info_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::LiveKit.Proto.TrackPublicationInfo Info { + get { return info_; } + set { + info_ = value; + } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { - return Equals(other as LocalTrackPublished); + return Equals(other as LocalTrackRepublished); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(LocalTrackPublished other) { + public bool Equals(LocalTrackRepublished other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } - if (TrackSid != other.TrackSid) return false; + if (PublicationHandle != other.PublicationHandle) return false; + if (PreviousSid != other.PreviousSid) return false; + if (!object.Equals(Info, other.Info)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -20647,7 +22050,9 @@ public bool Equals(LocalTrackPublished other) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override int GetHashCode() { int hash = 1; - if (HasTrackSid) hash ^= TrackSid.GetHashCode(); + if (HasPublicationHandle) hash ^= PublicationHandle.GetHashCode(); + if (HasPreviousSid) hash ^= PreviousSid.GetHashCode(); + if (info_ != null) hash ^= Info.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -20666,9 +22071,17 @@ public void WriteTo(pb::CodedOutputStream output) { #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE output.WriteRawMessage(this); #else - if (HasTrackSid) { - output.WriteRawTag(10); - output.WriteString(TrackSid); + if (HasPublicationHandle) { + output.WriteRawTag(8); + output.WriteUInt64(PublicationHandle); + } + if (HasPreviousSid) { + output.WriteRawTag(18); + output.WriteString(PreviousSid); + } + if (info_ != null) { + output.WriteRawTag(26); + output.WriteMessage(Info); } if (_unknownFields != null) { _unknownFields.WriteTo(output); @@ -20680,9 +22093,17 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (HasTrackSid) { - output.WriteRawTag(10); - output.WriteString(TrackSid); + if (HasPublicationHandle) { + output.WriteRawTag(8); + output.WriteUInt64(PublicationHandle); + } + if (HasPreviousSid) { + output.WriteRawTag(18); + output.WriteString(PreviousSid); + } + if (info_ != null) { + output.WriteRawTag(26); + output.WriteMessage(Info); } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); @@ -20694,8 +22115,14 @@ public void WriteTo(pb::CodedOutputStream output) { [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public int CalculateSize() { int size = 0; - if (HasTrackSid) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(TrackSid); + if (HasPublicationHandle) { + size += 1 + pb::CodedOutputStream.ComputeUInt64Size(PublicationHandle); + } + if (HasPreviousSid) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(PreviousSid); + } + if (info_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(Info); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -20705,12 +22132,21 @@ public int CalculateSize() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(LocalTrackPublished other) { + public void MergeFrom(LocalTrackRepublished other) { if (other == null) { return; } - if (other.HasTrackSid) { - TrackSid = other.TrackSid; + if (other.HasPublicationHandle) { + PublicationHandle = other.PublicationHandle; + } + if (other.HasPreviousSid) { + PreviousSid = other.PreviousSid; + } + if (other.info_ != null) { + if (info_ == null) { + Info = new global::LiveKit.Proto.TrackPublicationInfo(); + } + Info.MergeFrom(other.Info); } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -20731,8 +22167,19 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; - case 10: { - TrackSid = input.ReadString(); + case 8: { + PublicationHandle = input.ReadUInt64(); + break; + } + case 18: { + PreviousSid = input.ReadString(); + break; + } + case 26: { + if (info_ == null) { + Info = new global::LiveKit.Proto.TrackPublicationInfo(); + } + input.ReadMessage(Info); break; } } @@ -20754,220 +22201,19 @@ public void MergeFrom(pb::CodedInputStream input) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; - case 10: { - TrackSid = input.ReadString(); + case 8: { + PublicationHandle = input.ReadUInt64(); break; } - } - } - } - #endif - - } - - [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] - public sealed partial class LocalTrackUnpublished : pb::IMessage - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - , pb::IBufferMessage - #endif - { - private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new LocalTrackUnpublished()); - private pb::UnknownFieldSet _unknownFields; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pb::MessageParser Parser { get { return _parser; } } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[57]; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - pbr::MessageDescriptor pb::IMessage.Descriptor { - get { return Descriptor; } - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public LocalTrackUnpublished() { - OnConstruction(); - } - - partial void OnConstruction(); - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public LocalTrackUnpublished(LocalTrackUnpublished other) : this() { - publicationSid_ = other.publicationSid_; - _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public LocalTrackUnpublished Clone() { - return new LocalTrackUnpublished(this); - } - - /// Field number for the "publication_sid" field. - public const int PublicationSidFieldNumber = 1; - private readonly static string PublicationSidDefaultValue = ""; - - private string publicationSid_; - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public string PublicationSid { - get { return publicationSid_ ?? PublicationSidDefaultValue; } - set { - publicationSid_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); - } - } - /// Gets whether the "publication_sid" field is set - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool HasPublicationSid { - get { return publicationSid_ != null; } - } - /// Clears the value of the "publication_sid" field - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void ClearPublicationSid() { - publicationSid_ = null; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override bool Equals(object other) { - return Equals(other as LocalTrackUnpublished); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public bool Equals(LocalTrackUnpublished other) { - if (ReferenceEquals(other, null)) { - return false; - } - if (ReferenceEquals(other, this)) { - return true; - } - if (PublicationSid != other.PublicationSid) return false; - return Equals(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override int GetHashCode() { - int hash = 1; - if (HasPublicationSid) hash ^= PublicationSid.GetHashCode(); - if (_unknownFields != null) { - hash ^= _unknownFields.GetHashCode(); - } - return hash; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public override string ToString() { - return pb::JsonFormatter.ToDiagnosticString(this); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void WriteTo(pb::CodedOutputStream output) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - output.WriteRawMessage(this); - #else - if (HasPublicationSid) { - output.WriteRawTag(10); - output.WriteString(PublicationSid); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(output); - } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { - if (HasPublicationSid) { - output.WriteRawTag(10); - output.WriteString(PublicationSid); - } - if (_unknownFields != null) { - _unknownFields.WriteTo(ref output); - } - } - #endif - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public int CalculateSize() { - int size = 0; - if (HasPublicationSid) { - size += 1 + pb::CodedOutputStream.ComputeStringSize(PublicationSid); - } - if (_unknownFields != null) { - size += _unknownFields.CalculateSize(); - } - return size; - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(LocalTrackUnpublished other) { - if (other == null) { - return; - } - if (other.HasPublicationSid) { - PublicationSid = other.PublicationSid; - } - _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); - } - - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - public void MergeFrom(pb::CodedInputStream input) { - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - input.ReadRawMessage(this); - #else - uint tag; - while ((tag = input.ReadTag()) != 0) { - if ((tag & 7) == 4) { - // Abort on any end group tag. - return; - } - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); - break; - case 10: { - PublicationSid = input.ReadString(); + case 18: { + PreviousSid = input.ReadString(); break; } - } - } - #endif - } - - #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE - [global::System.Diagnostics.DebuggerNonUserCodeAttribute] - [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] - void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { - uint tag; - while ((tag = input.ReadTag()) != 0) { - if ((tag & 7) == 4) { - // Abort on any end group tag. - return; - } - switch(tag) { - default: - _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); - break; - case 10: { - PublicationSid = input.ReadString(); + case 26: { + if (info_ == null) { + Info = new global::LiveKit.Proto.TrackPublicationInfo(); + } + input.ReadMessage(Info); break; } } @@ -20992,7 +22238,7 @@ public sealed partial class LocalTrackSubscribed : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[59]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[63]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -21462,7 +22708,7 @@ public sealed partial class TrackUnpublished : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[60]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[64]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -21729,7 +22975,7 @@ public sealed partial class TrackSubscribed : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[61]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[65]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -21987,7 +23233,7 @@ public sealed partial class TrackUnsubscribed : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[62]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[66]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -22253,7 +23499,7 @@ public sealed partial class TrackSubscriptionFailed : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[64]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[68]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -22830,7 +24076,7 @@ public sealed partial class TrackUnmuted : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[65]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[69]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -23094,7 +24340,7 @@ public sealed partial class E2eeStateChanged : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[66]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[70]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -23362,7 +24608,7 @@ public sealed partial class ActiveSpeakersChanged : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[69]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[73]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -23973,7 +25219,7 @@ public sealed partial class ParticipantMetadataChanged : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[76]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[80]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -25812,7 +27058,7 @@ public sealed partial class ChatMessage : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[77]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[81]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -26284,7 +27530,7 @@ public sealed partial class ChatMessageReceived : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[79]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[83]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -26809,7 +28055,7 @@ public sealed partial class DataPacketReceived : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[83]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[87]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -27876,7 +29122,7 @@ public sealed partial class Disconnected : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[84]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[88]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -28090,7 +29336,7 @@ public sealed partial class Reconnecting : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[85]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[89]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -28251,7 +29497,7 @@ public sealed partial class Reconnected : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[86]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[90]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -28412,7 +29658,7 @@ public sealed partial class TokenRefreshed : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[87]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[91]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -28624,7 +29870,7 @@ public sealed partial class RoomEOS : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[88]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[92]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -28785,7 +30031,7 @@ public sealed partial class DataStream : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[89]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[93]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -30914,7 +32160,7 @@ public sealed partial class DataStreamHeaderReceived : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[105]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[109]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -35306,7 +36552,7 @@ public sealed partial class TextStreamOpened : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[106]; } + get { return global::LiveKit.Proto.RoomReflection.Descriptor.MessageTypes[110]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -35567,7 +36813,7 @@ public sealed partial class DataTrackPublished : pb::IMessageField number for the "packet_trailer_features" field. + public const int PacketTrailerFeaturesFieldNumber = 13; + private static readonly pb::FieldCodec _repeated_packetTrailerFeatures_codec + = pb::FieldCodec.ForEnum(104, x => (int) x, x => (global::LiveKit.Proto.PacketTrailerFeature) x); + private readonly pbc::RepeatedField packetTrailerFeatures_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField PacketTrailerFeatures { + get { return packetTrailerFeatures_; } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -2417,6 +2437,7 @@ public bool Equals(TrackPublicationInfo other) { if (Remote != other.Remote) return false; if (EncryptionType != other.EncryptionType) return false; if(!audioFeatures_.Equals(other.audioFeatures_)) return false; + if(!packetTrailerFeatures_.Equals(other.packetTrailerFeatures_)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -2436,6 +2457,7 @@ public override int GetHashCode() { if (HasRemote) hash ^= Remote.GetHashCode(); if (HasEncryptionType) hash ^= EncryptionType.GetHashCode(); hash ^= audioFeatures_.GetHashCode(); + hash ^= packetTrailerFeatures_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -2499,6 +2521,7 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteEnum((int) EncryptionType); } audioFeatures_.WriteTo(output, _repeated_audioFeatures_codec); + packetTrailerFeatures_.WriteTo(output, _repeated_packetTrailerFeatures_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -2554,6 +2577,7 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteEnum((int) EncryptionType); } audioFeatures_.WriteTo(ref output, _repeated_audioFeatures_codec); + packetTrailerFeatures_.WriteTo(ref output, _repeated_packetTrailerFeatures_codec); if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -2598,6 +2622,7 @@ public int CalculateSize() { size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) EncryptionType); } size += audioFeatures_.CalculateSize(_repeated_audioFeatures_codec); + size += packetTrailerFeatures_.CalculateSize(_repeated_packetTrailerFeatures_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -2644,6 +2669,7 @@ public void MergeFrom(TrackPublicationInfo other) { EncryptionType = other.EncryptionType; } audioFeatures_.Add(other.audioFeatures_); + packetTrailerFeatures_.Add(other.packetTrailerFeatures_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -2712,6 +2738,11 @@ public void MergeFrom(pb::CodedInputStream input) { audioFeatures_.AddEntriesFrom(input, _repeated_audioFeatures_codec); break; } + case 106: + case 104: { + packetTrailerFeatures_.AddEntriesFrom(input, _repeated_packetTrailerFeatures_codec); + break; + } } } #endif @@ -2780,6 +2811,11 @@ public void MergeFrom(pb::CodedInputStream input) { audioFeatures_.AddEntriesFrom(ref input, _repeated_audioFeatures_codec); break; } + case 106: + case 104: { + packetTrailerFeatures_.AddEntriesFrom(ref input, _repeated_packetTrailerFeatures_codec); + break; + } } } } diff --git a/Runtime/Scripts/Proto/VideoFrame.cs b/Runtime/Scripts/Proto/VideoFrame.cs index b4158fc5..3d7bb9f6 100644 --- a/Runtime/Scripts/Proto/VideoFrame.cs +++ b/Runtime/Scripts/Proto/VideoFrame.cs @@ -44,53 +44,56 @@ static VideoFrameReflection() { "b24YAiACKAsyJC5saXZla2l0LnByb3RvLlZpZGVvU291cmNlUmVzb2x1dGlv", "bhIVCg1pc19zY3JlZW5jYXN0GAMgASgIIkkKFk5ld1ZpZGVvU291cmNlUmVz", "cG9uc2USLwoGc291cmNlGAEgAigLMh8ubGl2ZWtpdC5wcm90by5Pd25lZFZp", - "ZGVvU291cmNlIqcBChhDYXB0dXJlVmlkZW9GcmFtZVJlcXVlc3QSFQoNc291", + "ZGVvU291cmNlItcBChhDYXB0dXJlVmlkZW9GcmFtZVJlcXVlc3QSFQoNc291", "cmNlX2hhbmRsZRgBIAIoBBIuCgZidWZmZXIYAiACKAsyHi5saXZla2l0LnBy", "b3RvLlZpZGVvQnVmZmVySW5mbxIUCgx0aW1lc3RhbXBfdXMYAyACKAMSLgoI", - "cm90YXRpb24YBCACKA4yHC5saXZla2l0LnByb3RvLlZpZGVvUm90YXRpb24i", - "GwoZQ2FwdHVyZVZpZGVvRnJhbWVSZXNwb25zZSKHAQoTVmlkZW9Db252ZXJ0", - "UmVxdWVzdBIOCgZmbGlwX3kYASABKAgSLgoGYnVmZmVyGAIgAigLMh4ubGl2", - "ZWtpdC5wcm90by5WaWRlb0J1ZmZlckluZm8SMAoIZHN0X3R5cGUYAyACKA4y", - "Hi5saXZla2l0LnByb3RvLlZpZGVvQnVmZmVyVHlwZSJlChRWaWRlb0NvbnZl", - "cnRSZXNwb25zZRIPCgVlcnJvchgBIAEoCUgAEjEKBmJ1ZmZlchgCIAEoCzIf", - "LmxpdmVraXQucHJvdG8uT3duZWRWaWRlb0J1ZmZlckgAQgkKB21lc3NhZ2Ui", - "RAoPVmlkZW9SZXNvbHV0aW9uEg0KBXdpZHRoGAEgAigNEg4KBmhlaWdodBgC", - "IAIoDRISCgpmcmFtZV9yYXRlGAMgAigBIoMCCg9WaWRlb0J1ZmZlckluZm8S", - "LAoEdHlwZRgBIAIoDjIeLmxpdmVraXQucHJvdG8uVmlkZW9CdWZmZXJUeXBl", - "Eg0KBXdpZHRoGAIgAigNEg4KBmhlaWdodBgDIAIoDRIQCghkYXRhX3B0chgE", - "IAIoBBIOCgZzdHJpZGUYBiABKA0SQAoKY29tcG9uZW50cxgHIAMoCzIsLmxp", - "dmVraXQucHJvdG8uVmlkZW9CdWZmZXJJbmZvLkNvbXBvbmVudEluZm8aPwoN", - "Q29tcG9uZW50SW5mbxIQCghkYXRhX3B0chgBIAIoBBIOCgZzdHJpZGUYAiAC", - "KA0SDAoEc2l6ZRgDIAIoDSJvChBPd25lZFZpZGVvQnVmZmVyEi0KBmhhbmRs", - "ZRgBIAIoCzIdLmxpdmVraXQucHJvdG8uRmZpT3duZWRIYW5kbGUSLAoEaW5m", - "bxgCIAIoCzIeLmxpdmVraXQucHJvdG8uVmlkZW9CdWZmZXJJbmZvIj8KD1Zp", - "ZGVvU3RyZWFtSW5mbxIsCgR0eXBlGAEgAigOMh4ubGl2ZWtpdC5wcm90by5W", - "aWRlb1N0cmVhbVR5cGUibwoQT3duZWRWaWRlb1N0cmVhbRItCgZoYW5kbGUY", - "ASACKAsyHS5saXZla2l0LnByb3RvLkZmaU93bmVkSGFuZGxlEiwKBGluZm8Y", - "AiACKAsyHi5saXZla2l0LnByb3RvLlZpZGVvU3RyZWFtSW5mbyKfAQoQVmlk", - "ZW9TdHJlYW1FdmVudBIVCg1zdHJlYW1faGFuZGxlGAEgAigEEjsKDmZyYW1l", - "X3JlY2VpdmVkGAIgASgLMiEubGl2ZWtpdC5wcm90by5WaWRlb0ZyYW1lUmVj", - "ZWl2ZWRIABIsCgNlb3MYAyABKAsyHS5saXZla2l0LnByb3RvLlZpZGVvU3Ry", - "ZWFtRU9TSABCCQoHbWVzc2FnZSKLAQoSVmlkZW9GcmFtZVJlY2VpdmVkEi8K", - "BmJ1ZmZlchgBIAIoCzIfLmxpdmVraXQucHJvdG8uT3duZWRWaWRlb0J1ZmZl", - "chIUCgx0aW1lc3RhbXBfdXMYAiACKAMSLgoIcm90YXRpb24YAyACKA4yHC5s", - "aXZla2l0LnByb3RvLlZpZGVvUm90YXRpb24iEAoOVmlkZW9TdHJlYW1FT1Mi", - "NgoVVmlkZW9Tb3VyY2VSZXNvbHV0aW9uEg0KBXdpZHRoGAEgAigNEg4KBmhl", - "aWdodBgCIAIoDSI/Cg9WaWRlb1NvdXJjZUluZm8SLAoEdHlwZRgBIAIoDjIe", - "LmxpdmVraXQucHJvdG8uVmlkZW9Tb3VyY2VUeXBlIm8KEE93bmVkVmlkZW9T", - "b3VyY2USLQoGaGFuZGxlGAEgAigLMh0ubGl2ZWtpdC5wcm90by5GZmlPd25l", - "ZEhhbmRsZRIsCgRpbmZvGAIgAigLMh4ubGl2ZWtpdC5wcm90by5WaWRlb1Nv", - "dXJjZUluZm8qOwoKVmlkZW9Db2RlYxIHCgNWUDgQABIICgRIMjY0EAESBwoD", - "QVYxEAISBwoDVlA5EAMSCAoESDI2NRAEKmwKDVZpZGVvUm90YXRpb24SFAoQ", - "VklERU9fUk9UQVRJT05fMBAAEhUKEVZJREVPX1JPVEFUSU9OXzkwEAESFgoS", - "VklERU9fUk9UQVRJT05fMTgwEAISFgoSVklERU9fUk9UQVRJT05fMjcwEAMq", - "gQEKD1ZpZGVvQnVmZmVyVHlwZRIICgRSR0JBEAASCAoEQUJHUhABEggKBEFS", - "R0IQAhIICgRCR1JBEAMSCQoFUkdCMjQQBBIICgRJNDIwEAUSCQoFSTQyMEEQ", - "BhIICgRJNDIyEAcSCAoESTQ0NBAIEggKBEkwMTAQCRIICgROVjEyEAoqWQoP", - "VmlkZW9TdHJlYW1UeXBlEhcKE1ZJREVPX1NUUkVBTV9OQVRJVkUQABIWChJW", - "SURFT19TVFJFQU1fV0VCR0wQARIVChFWSURFT19TVFJFQU1fSFRNTBACKioK", - "D1ZpZGVvU291cmNlVHlwZRIXChNWSURFT19TT1VSQ0VfTkFUSVZFEABCEKoC", - "DUxpdmVLaXQuUHJvdG8=")); + "cm90YXRpb24YBCACKA4yHC5saXZla2l0LnByb3RvLlZpZGVvUm90YXRpb24S", + "LgoIbWV0YWRhdGEYBSABKAsyHC5saXZla2l0LnByb3RvLkZyYW1lTWV0YWRh", + "dGEiGwoZQ2FwdHVyZVZpZGVvRnJhbWVSZXNwb25zZSKHAQoTVmlkZW9Db252", + "ZXJ0UmVxdWVzdBIOCgZmbGlwX3kYASABKAgSLgoGYnVmZmVyGAIgAigLMh4u", + "bGl2ZWtpdC5wcm90by5WaWRlb0J1ZmZlckluZm8SMAoIZHN0X3R5cGUYAyAC", + "KA4yHi5saXZla2l0LnByb3RvLlZpZGVvQnVmZmVyVHlwZSJlChRWaWRlb0Nv", + "bnZlcnRSZXNwb25zZRIPCgVlcnJvchgBIAEoCUgAEjEKBmJ1ZmZlchgCIAEo", + "CzIfLmxpdmVraXQucHJvdG8uT3duZWRWaWRlb0J1ZmZlckgAQgkKB21lc3Nh", + "Z2UiRAoPVmlkZW9SZXNvbHV0aW9uEg0KBXdpZHRoGAEgAigNEg4KBmhlaWdo", + "dBgCIAIoDRISCgpmcmFtZV9yYXRlGAMgAigBIoMCCg9WaWRlb0J1ZmZlcklu", + "Zm8SLAoEdHlwZRgBIAIoDjIeLmxpdmVraXQucHJvdG8uVmlkZW9CdWZmZXJU", + "eXBlEg0KBXdpZHRoGAIgAigNEg4KBmhlaWdodBgDIAIoDRIQCghkYXRhX3B0", + "chgEIAIoBBIOCgZzdHJpZGUYBiABKA0SQAoKY29tcG9uZW50cxgHIAMoCzIs", + "LmxpdmVraXQucHJvdG8uVmlkZW9CdWZmZXJJbmZvLkNvbXBvbmVudEluZm8a", + "PwoNQ29tcG9uZW50SW5mbxIQCghkYXRhX3B0chgBIAIoBBIOCgZzdHJpZGUY", + "AiACKA0SDAoEc2l6ZRgDIAIoDSJvChBPd25lZFZpZGVvQnVmZmVyEi0KBmhh", + "bmRsZRgBIAIoCzIdLmxpdmVraXQucHJvdG8uRmZpT3duZWRIYW5kbGUSLAoE", + "aW5mbxgCIAIoCzIeLmxpdmVraXQucHJvdG8uVmlkZW9CdWZmZXJJbmZvIjkK", + "DUZyYW1lTWV0YWRhdGESFgoOdXNlcl90aW1lc3RhbXAYASABKAQSEAoIZnJh", + "bWVfaWQYAiABKA0iPwoPVmlkZW9TdHJlYW1JbmZvEiwKBHR5cGUYASACKA4y", + "Hi5saXZla2l0LnByb3RvLlZpZGVvU3RyZWFtVHlwZSJvChBPd25lZFZpZGVv", + "U3RyZWFtEi0KBmhhbmRsZRgBIAIoCzIdLmxpdmVraXQucHJvdG8uRmZpT3du", + "ZWRIYW5kbGUSLAoEaW5mbxgCIAIoCzIeLmxpdmVraXQucHJvdG8uVmlkZW9T", + "dHJlYW1JbmZvIp8BChBWaWRlb1N0cmVhbUV2ZW50EhUKDXN0cmVhbV9oYW5k", + "bGUYASACKAQSOwoOZnJhbWVfcmVjZWl2ZWQYAiABKAsyIS5saXZla2l0LnBy", + "b3RvLlZpZGVvRnJhbWVSZWNlaXZlZEgAEiwKA2VvcxgDIAEoCzIdLmxpdmVr", + "aXQucHJvdG8uVmlkZW9TdHJlYW1FT1NIAEIJCgdtZXNzYWdlIrsBChJWaWRl", + "b0ZyYW1lUmVjZWl2ZWQSLwoGYnVmZmVyGAEgAigLMh8ubGl2ZWtpdC5wcm90", + "by5Pd25lZFZpZGVvQnVmZmVyEhQKDHRpbWVzdGFtcF91cxgCIAIoAxIuCghy", + "b3RhdGlvbhgDIAIoDjIcLmxpdmVraXQucHJvdG8uVmlkZW9Sb3RhdGlvbhIu", + "CghtZXRhZGF0YRgEIAEoCzIcLmxpdmVraXQucHJvdG8uRnJhbWVNZXRhZGF0", + "YSIQCg5WaWRlb1N0cmVhbUVPUyI2ChVWaWRlb1NvdXJjZVJlc29sdXRpb24S", + "DQoFd2lkdGgYASACKA0SDgoGaGVpZ2h0GAIgAigNIj8KD1ZpZGVvU291cmNl", + "SW5mbxIsCgR0eXBlGAEgAigOMh4ubGl2ZWtpdC5wcm90by5WaWRlb1NvdXJj", + "ZVR5cGUibwoQT3duZWRWaWRlb1NvdXJjZRItCgZoYW5kbGUYASACKAsyHS5s", + "aXZla2l0LnByb3RvLkZmaU93bmVkSGFuZGxlEiwKBGluZm8YAiACKAsyHi5s", + "aXZla2l0LnByb3RvLlZpZGVvU291cmNlSW5mbyo7CgpWaWRlb0NvZGVjEgcK", + "A1ZQOBAAEggKBEgyNjQQARIHCgNBVjEQAhIHCgNWUDkQAxIICgRIMjY1EAQq", + "bAoNVmlkZW9Sb3RhdGlvbhIUChBWSURFT19ST1RBVElPTl8wEAASFQoRVklE", + "RU9fUk9UQVRJT05fOTAQARIWChJWSURFT19ST1RBVElPTl8xODAQAhIWChJW", + "SURFT19ST1RBVElPTl8yNzAQAyqBAQoPVmlkZW9CdWZmZXJUeXBlEggKBFJH", + "QkEQABIICgRBQkdSEAESCAoEQVJHQhACEggKBEJHUkEQAxIJCgVSR0IyNBAE", + "EggKBEk0MjAQBRIJCgVJNDIwQRAGEggKBEk0MjIQBxIICgRJNDQ0EAgSCAoE", + "STAxMBAJEggKBE5WMTIQCipZCg9WaWRlb1N0cmVhbVR5cGUSFwoTVklERU9f", + "U1RSRUFNX05BVElWRRAAEhYKElZJREVPX1NUUkVBTV9XRUJHTBABEhUKEVZJ", + "REVPX1NUUkVBTV9IVE1MEAIqKgoPVmlkZW9Tb3VyY2VUeXBlEhcKE1ZJREVP", + "X1NPVVJDRV9OQVRJVkUQAEIQqgINTGl2ZUtpdC5Qcm90bw==")); descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, new pbr::FileDescriptor[] { global::LiveKit.Proto.HandleReflection.Descriptor, global::LiveKit.Proto.TrackReflection.Descriptor, }, new pbr::GeneratedClrTypeInfo(new[] {typeof(global::LiveKit.Proto.VideoCodec), typeof(global::LiveKit.Proto.VideoRotation), typeof(global::LiveKit.Proto.VideoBufferType), typeof(global::LiveKit.Proto.VideoStreamType), typeof(global::LiveKit.Proto.VideoSourceType), }, null, new pbr::GeneratedClrTypeInfo[] { @@ -100,17 +103,18 @@ static VideoFrameReflection() { new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoStreamFromParticipantResponse), global::LiveKit.Proto.VideoStreamFromParticipantResponse.Parser, new[]{ "Stream" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.NewVideoSourceRequest), global::LiveKit.Proto.NewVideoSourceRequest.Parser, new[]{ "Type", "Resolution", "IsScreencast" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.NewVideoSourceResponse), global::LiveKit.Proto.NewVideoSourceResponse.Parser, new[]{ "Source" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.CaptureVideoFrameRequest), global::LiveKit.Proto.CaptureVideoFrameRequest.Parser, new[]{ "SourceHandle", "Buffer", "TimestampUs", "Rotation" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.CaptureVideoFrameRequest), global::LiveKit.Proto.CaptureVideoFrameRequest.Parser, new[]{ "SourceHandle", "Buffer", "TimestampUs", "Rotation", "Metadata" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.CaptureVideoFrameResponse), global::LiveKit.Proto.CaptureVideoFrameResponse.Parser, null, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoConvertRequest), global::LiveKit.Proto.VideoConvertRequest.Parser, new[]{ "FlipY", "Buffer", "DstType" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoConvertResponse), global::LiveKit.Proto.VideoConvertResponse.Parser, new[]{ "Error", "Buffer" }, new[]{ "Message" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoResolution), global::LiveKit.Proto.VideoResolution.Parser, new[]{ "Width", "Height", "FrameRate" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoBufferInfo), global::LiveKit.Proto.VideoBufferInfo.Parser, new[]{ "Type", "Width", "Height", "DataPtr", "Stride", "Components" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoBufferInfo.Types.ComponentInfo), global::LiveKit.Proto.VideoBufferInfo.Types.ComponentInfo.Parser, new[]{ "DataPtr", "Stride", "Size" }, null, null, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.OwnedVideoBuffer), global::LiveKit.Proto.OwnedVideoBuffer.Parser, new[]{ "Handle", "Info" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.FrameMetadata), global::LiveKit.Proto.FrameMetadata.Parser, new[]{ "UserTimestamp", "FrameId" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoStreamInfo), global::LiveKit.Proto.VideoStreamInfo.Parser, new[]{ "Type" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.OwnedVideoStream), global::LiveKit.Proto.OwnedVideoStream.Parser, new[]{ "Handle", "Info" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoStreamEvent), global::LiveKit.Proto.VideoStreamEvent.Parser, new[]{ "StreamHandle", "FrameReceived", "Eos" }, new[]{ "Message" }, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoFrameReceived), global::LiveKit.Proto.VideoFrameReceived.Parser, new[]{ "Buffer", "TimestampUs", "Rotation" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoFrameReceived), global::LiveKit.Proto.VideoFrameReceived.Parser, new[]{ "Buffer", "TimestampUs", "Rotation", "Metadata" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoStreamEOS), global::LiveKit.Proto.VideoStreamEOS.Parser, null, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoSourceResolution), global::LiveKit.Proto.VideoSourceResolution.Parser, new[]{ "Width", "Height" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::LiveKit.Proto.VideoSourceInfo), global::LiveKit.Proto.VideoSourceInfo.Parser, new[]{ "Type" }, null, null, null, null), @@ -2084,6 +2088,7 @@ public CaptureVideoFrameRequest(CaptureVideoFrameRequest other) : this() { buffer_ = other.buffer_ != null ? other.buffer_.Clone() : null; timestampUs_ = other.timestampUs_; rotation_ = other.rotation_; + metadata_ = other.metadata_ != null ? other.metadata_.Clone() : null; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } @@ -2189,6 +2194,18 @@ public void ClearRotation() { _hasBits0 &= ~4; } + /// Field number for the "metadata" field. + public const int MetadataFieldNumber = 5; + private global::LiveKit.Proto.FrameMetadata metadata_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::LiveKit.Proto.FrameMetadata Metadata { + get { return metadata_; } + set { + metadata_ = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -2208,6 +2225,7 @@ public bool Equals(CaptureVideoFrameRequest other) { if (!object.Equals(Buffer, other.Buffer)) return false; if (TimestampUs != other.TimestampUs) return false; if (Rotation != other.Rotation) return false; + if (!object.Equals(Metadata, other.Metadata)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -2219,6 +2237,7 @@ public override int GetHashCode() { if (buffer_ != null) hash ^= Buffer.GetHashCode(); if (HasTimestampUs) hash ^= TimestampUs.GetHashCode(); if (HasRotation) hash ^= Rotation.GetHashCode(); + if (metadata_ != null) hash ^= Metadata.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -2253,6 +2272,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(32); output.WriteEnum((int) Rotation); } + if (metadata_ != null) { + output.WriteRawTag(42); + output.WriteMessage(Metadata); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -2279,6 +2302,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(32); output.WriteEnum((int) Rotation); } + if (metadata_ != null) { + output.WriteRawTag(42); + output.WriteMessage(Metadata); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -2301,6 +2328,9 @@ public int CalculateSize() { if (HasRotation) { size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Rotation); } + if (metadata_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(Metadata); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -2328,6 +2358,12 @@ public void MergeFrom(CaptureVideoFrameRequest other) { if (other.HasRotation) { Rotation = other.Rotation; } + if (other.metadata_ != null) { + if (metadata_ == null) { + Metadata = new global::LiveKit.Proto.FrameMetadata(); + } + Metadata.MergeFrom(other.Metadata); + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -2366,6 +2402,13 @@ public void MergeFrom(pb::CodedInputStream input) { Rotation = (global::LiveKit.Proto.VideoRotation) input.ReadEnum(); break; } + case 42: { + if (metadata_ == null) { + Metadata = new global::LiveKit.Proto.FrameMetadata(); + } + input.ReadMessage(Metadata); + break; + } } } #endif @@ -2404,6 +2447,13 @@ public void MergeFrom(pb::CodedInputStream input) { Rotation = (global::LiveKit.Proto.VideoRotation) input.ReadEnum(); break; } + case 42: { + if (metadata_ == null) { + Metadata = new global::LiveKit.Proto.FrameMetadata(); + } + input.ReadMessage(Metadata); + break; + } } } } @@ -4531,6 +4581,273 @@ public void MergeFrom(pb::CodedInputStream input) { } + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class FrameMetadata : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new FrameMetadata()); + private pb::UnknownFieldSet _unknownFields; + private int _hasBits0; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[13]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public FrameMetadata() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public FrameMetadata(FrameMetadata other) : this() { + _hasBits0 = other._hasBits0; + userTimestamp_ = other.userTimestamp_; + frameId_ = other.frameId_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public FrameMetadata Clone() { + return new FrameMetadata(this); + } + + /// Field number for the "user_timestamp" field. + public const int UserTimestampFieldNumber = 1; + private readonly static ulong UserTimestampDefaultValue = 0UL; + + private ulong userTimestamp_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public ulong UserTimestamp { + get { if ((_hasBits0 & 1) != 0) { return userTimestamp_; } else { return UserTimestampDefaultValue; } } + set { + _hasBits0 |= 1; + userTimestamp_ = value; + } + } + /// Gets whether the "user_timestamp" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasUserTimestamp { + get { return (_hasBits0 & 1) != 0; } + } + /// Clears the value of the "user_timestamp" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearUserTimestamp() { + _hasBits0 &= ~1; + } + + /// Field number for the "frame_id" field. + public const int FrameIdFieldNumber = 2; + private readonly static uint FrameIdDefaultValue = 0; + + private uint frameId_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public uint FrameId { + get { if ((_hasBits0 & 2) != 0) { return frameId_; } else { return FrameIdDefaultValue; } } + set { + _hasBits0 |= 2; + frameId_ = value; + } + } + /// Gets whether the "frame_id" field is set + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool HasFrameId { + get { return (_hasBits0 & 2) != 0; } + } + /// Clears the value of the "frame_id" field + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void ClearFrameId() { + _hasBits0 &= ~2; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as FrameMetadata); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(FrameMetadata other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (UserTimestamp != other.UserTimestamp) return false; + if (FrameId != other.FrameId) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (HasUserTimestamp) hash ^= UserTimestamp.GetHashCode(); + if (HasFrameId) hash ^= FrameId.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (HasUserTimestamp) { + output.WriteRawTag(8); + output.WriteUInt64(UserTimestamp); + } + if (HasFrameId) { + output.WriteRawTag(16); + output.WriteUInt32(FrameId); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (HasUserTimestamp) { + output.WriteRawTag(8); + output.WriteUInt64(UserTimestamp); + } + if (HasFrameId) { + output.WriteRawTag(16); + output.WriteUInt32(FrameId); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (HasUserTimestamp) { + size += 1 + pb::CodedOutputStream.ComputeUInt64Size(UserTimestamp); + } + if (HasFrameId) { + size += 1 + pb::CodedOutputStream.ComputeUInt32Size(FrameId); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(FrameMetadata other) { + if (other == null) { + return; + } + if (other.HasUserTimestamp) { + UserTimestamp = other.UserTimestamp; + } + if (other.HasFrameId) { + FrameId = other.FrameId; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + UserTimestamp = input.ReadUInt64(); + break; + } + case 16: { + FrameId = input.ReadUInt32(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + UserTimestamp = input.ReadUInt64(); + break; + } + case 16: { + FrameId = input.ReadUInt32(); + break; + } + } + } + } + #endif + + } + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] public sealed partial class VideoStreamInfo : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE @@ -4547,7 +4864,7 @@ public sealed partial class VideoStreamInfo : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[13]; } + get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[14]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -4761,7 +5078,7 @@ public sealed partial class OwnedVideoStream : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[14]; } + get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[15]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -5015,7 +5332,7 @@ public sealed partial class VideoStreamEvent : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[15]; } + get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[16]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -5363,7 +5680,7 @@ public sealed partial class VideoFrameReceived : pb::IMessageField number for the "metadata" field. + public const int MetadataFieldNumber = 4; + private global::LiveKit.Proto.FrameMetadata metadata_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::LiveKit.Proto.FrameMetadata Metadata { + get { return metadata_; } + set { + metadata_ = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public override bool Equals(object other) { @@ -5483,6 +5813,7 @@ public bool Equals(VideoFrameReceived other) { if (!object.Equals(Buffer, other.Buffer)) return false; if (TimestampUs != other.TimestampUs) return false; if (Rotation != other.Rotation) return false; + if (!object.Equals(Metadata, other.Metadata)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -5493,6 +5824,7 @@ public override int GetHashCode() { if (buffer_ != null) hash ^= Buffer.GetHashCode(); if (HasTimestampUs) hash ^= TimestampUs.GetHashCode(); if (HasRotation) hash ^= Rotation.GetHashCode(); + if (metadata_ != null) hash ^= Metadata.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } @@ -5523,6 +5855,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(24); output.WriteEnum((int) Rotation); } + if (metadata_ != null) { + output.WriteRawTag(34); + output.WriteMessage(Metadata); + } if (_unknownFields != null) { _unknownFields.WriteTo(output); } @@ -5545,6 +5881,10 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(24); output.WriteEnum((int) Rotation); } + if (metadata_ != null) { + output.WriteRawTag(34); + output.WriteMessage(Metadata); + } if (_unknownFields != null) { _unknownFields.WriteTo(ref output); } @@ -5564,6 +5904,9 @@ public int CalculateSize() { if (HasRotation) { size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Rotation); } + if (metadata_ != null) { + size += 1 + pb::CodedOutputStream.ComputeMessageSize(Metadata); + } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } @@ -5588,6 +5931,12 @@ public void MergeFrom(VideoFrameReceived other) { if (other.HasRotation) { Rotation = other.Rotation; } + if (other.metadata_ != null) { + if (metadata_ == null) { + Metadata = new global::LiveKit.Proto.FrameMetadata(); + } + Metadata.MergeFrom(other.Metadata); + } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } @@ -5622,6 +5971,13 @@ public void MergeFrom(pb::CodedInputStream input) { Rotation = (global::LiveKit.Proto.VideoRotation) input.ReadEnum(); break; } + case 34: { + if (metadata_ == null) { + Metadata = new global::LiveKit.Proto.FrameMetadata(); + } + input.ReadMessage(Metadata); + break; + } } } #endif @@ -5656,6 +6012,13 @@ public void MergeFrom(pb::CodedInputStream input) { Rotation = (global::LiveKit.Proto.VideoRotation) input.ReadEnum(); break; } + case 34: { + if (metadata_ == null) { + Metadata = new global::LiveKit.Proto.FrameMetadata(); + } + input.ReadMessage(Metadata); + break; + } } } } @@ -5678,7 +6041,7 @@ public sealed partial class VideoStreamEOS : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[17]; } + get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[18]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -5840,7 +6203,7 @@ public sealed partial class VideoSourceResolution : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[19]; } + get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[20]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -6321,7 +6684,7 @@ public sealed partial class OwnedVideoSource : pb::IMessage [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[20]; } + get { return global::LiveKit.Proto.VideoFrameReflection.Descriptor.MessageTypes[21]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] diff --git a/client-sdk-rust~ b/client-sdk-rust~ index 45895480..6472bfa9 160000 --- a/client-sdk-rust~ +++ b/client-sdk-rust~ @@ -1 +1 @@ -Subproject commit 4589548085480a52b126fe3e6cd6b5890ba3ce69 +Subproject commit 6472bfa95b18cb7bee6b3f654e3f93a59ee532a2 diff --git a/version.ini b/version.ini index ada06f11..2f588df1 100644 --- a/version.ini +++ b/version.ini @@ -1,4 +1,4 @@ [ffi] -tag = livekit-ffi@v0.12.53 +tag = livekit-ffi@v0.12.55 url = https://github.com/livekit/rust-sdks/releases/download From f6a618ad4176666ea23e766abe200cbb51ce35bd Mon Sep 17 00:00:00 2001 From: Max Heimbrock <43608204+MaxHeimbrock@users.noreply.github.com> Date: Mon, 11 May 2026 13:53:59 +0200 Subject: [PATCH 5/5] Temp fix to data track api change --- Runtime/Scripts/DataTrack.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Runtime/Scripts/DataTrack.cs b/Runtime/Scripts/DataTrack.cs index 7854f2a3..97ded28b 100644 --- a/Runtime/Scripts/DataTrack.cs +++ b/Runtime/Scripts/DataTrack.cs @@ -390,8 +390,8 @@ private void OnSubscriptionEvent(DataTrackStreamEvent callback) break; case DataTrackStreamEvent.DetailOneofCase.Eos: SubscribeDataTrackError error = null; - if (callback.Eos.HasError) - error = new SubscribeDataTrackError(callback.Eos.Error); + if (callback.Eos.Error != null) + error = new SubscribeDataTrackError(callback.Eos.Error.Message); IsEos = true; _currentInstruction?.SetEos(error); Cleanup();