Get desktop application:
View/edit binary Protocol Buffers messages
Used in:
AndroidThermalState is reported by the Android API. The full list of values is documented here https://developer.android.com/reference/android/os/PowerManager.html#getCurrentThermalStatus()
Used in:
Used in:
https://developer.apple.com/documentation/foundation/processinfo/1617047-islowpowermodeenabled
AppleThermalState is the thermal state as reported by Apple devices when available or applicable to the platform. The full list of states (enum) is available here: https://developer.apple.com/documentation/foundation/processinfo/thermalstate
Used in:
Used in:
the call type
the call id
the id of the user that created this call
the id of the current host for this call
CallEndedReason represents the reason for the call to end.
Used in:
CallGrants represents the set of permissions given to the user for the current call.
Used in:
CallState is the current state of the call as seen by an SFU.
Used in:
participants is the list of participants in the call. In large calls, the list could be truncated in which case, the list of participants contains fewer participants than the counts returned in participant_count. Anonymous participants are **NOT** included in the list.
started_at is the time the call session actually started.
participant_count contains the summary of the counts.
the list of pins in the call. Pins are ordered in descending order (most important first).
Used in:
Used in:
, , , , ,Used in:
,Used in:
Used in:
, , , , , , , , ,Used in:
GoAwayReason represents the reason for the SFU to disconnect the client.
Used in:
Used as request type in: signal.SignalServer.IceTrickle
Used as field type in:
Used in:
Used in:
those who are online in the call
Used in:
, , , , ,map of track id to track type
Used in:
,Total number of participants in the call including the anonymous participants.
Total number of anonymous participants in the call.
Used in:
, , , ,todo fix me (marcelo)
Used in:
,the user to pin
the user sesion_id to pin, if not provided, applies to all sessions
PublishOption represents the configuration options for publishing a track.
Used in:
, ,The type of the track being published (e.g., video, screenshare).
The codec to be used for encoding the track (e.g., VP8, VP9, H264).
The target bitrate for the published track, in bits per second.
The target frames per second (FPS) for video encoding.
The maximum number of spatial layers to send. - For SVC (e.g., VP9), spatial layers downscale by a factor of 2: - 1 layer: full resolution - 2 layers: full resolution + half resolution - 3 layers: full resolution + half resolution + quarter resolution - For non-SVC codecs (e.g., VP8/H264), this determines the number of encoded resolutions (e.g., quarter, half, full) sent for simulcast.
The maximum number of temporal layers for scalable video coding (SVC). Temporal layers allow varying frame rates for different bandwidths.
The dimensions of the video (e.g., width and height in pixels). Spatial layers are based on this base resolution. For example, if the base resolution is 1280x720: - Full resolution (1 layer) = 1280x720 - Half resolution (2 layers) = 640x360 - Quarter resolution (3 layers) = 320x180
The unique identifier for the publish request. - This `id` is assigned exclusively by the SFU. Any `id` set by the client in the `PublishOption` will be ignored and overwritten by the SFU. - The primary purpose of this `id` is to uniquely identify each publish request, even in scenarios where multiple publish requests for the same `track_type` and `codec` are active simultaneously. For example: - A user may publish two tracks of the same type (e.g., video) and codec (e.g., VP9) concurrently. - This uniqueness ensures that individual requests can be managed independently. For instance, an `id` is critical when stopping a specific publish request without affecting others.
Used in:
Used in:
SubscribeOption represents the configuration options for subscribing to a track.
Used in:
The type of the track being subscribed (e.g., video, screenshare).
The codecs supported by the subscriber for decoding tracks.
Used in:
, ,for audio tracks
Used in:
, , , , , , , , ,Used in:
Default value which is used when the specific reason for muting the track is not known.
Represents user muting their tracks.
Represents muting the track because the permission to publish the track has been revoked.
Represents muting the track due to moderation actions. This is different from permission revoked because the participant can unmute themselves here whereas in case of "permission revoke" it is not possible until the call permissions are updated.
Used in:
, ,Used in:
for tracks with a single layer, this should be HIGH
target bitrate, server will measure actual
Used in:
,WebsocketReconnectStrategy defines the ws strategies available for handling reconnections.
Used in:
, ,Sent after reaching the maximum reconnection attempts, or any other unrecoverable error leading to permanent disconnect.
SDK should maintaining existing publisher/subscriber pc instances and establish a new WebSocket connection.
SDK should obtain new credentials from the coordinator, drops existing pc instances, set a new session_id and initializes a completely new WebSocket connection, ensuring a comprehensive reset.
SDK should migrate to a new SFU instance