Top
fishjam/agent_notifications.proto
Defines any type of message passed from agent peer to Fishjam
Request to add a track of the specified type
AgentRequest.AddTrack.CodecParameters
Field
Type
Label
Description
encoding
notifications.TrackEncoding
The format of the input stream, defaults to pcm16
sample_rate
uint32
The sample rate of the input stream, may be omitted for opus
channels
uint32
The number of channels. 1 means mono, 2 means stereo
Request sent by agent, to authenticate to Fishjam server
Field
Type
Label
Description
token
string
AgentRequest.CaptureImage
Field
Type
Label
Description
track_id
string
AgentRequest.InterruptTrack
Interrupts an agent's outgoing track, preventing already queued audio from being played
Field
Type
Label
Description
track_id
string
Removes the given track
Field
Type
Label
Description
track_id
string
Notification containing a chunk of an agent's track's data stream
Field
Type
Label
Description
track_id
string
data
bytes
Defines any type of message passed from Fishjam to agent peer
AgentResponse.Authenticated
Response confirming successful authentication
Notification containing a chunk of a track's data stream
Top
fishjam/media_events/peer/peer.proto
Defines any type of message sent from Peer to Membrane RTC Engine
SCHEMAS
Sent when a peer wants to join WebRTC Endpoint.
Field
Type
Label
Description
metadata_json
string
MediaEvent.DisableTrackVariant
Sent when client disables one of the track variants
Sent when a peer disconnects from WebRTC Endpoint.
MediaEvent.EnableTrackVariant
Sent when client enables one of the track variants
MediaEvent.RenegotiateTracks
Sent when peer wants to renegotiate connection due to adding a track or removing a track
Sent as a response to offerData media event during renegotiation
Maps contain only information about current peer's sendonly tracks.
The "mid" is an identifier used to associate an RTP packet with an MLine from the SDP offer/answer.
MediaEvent.SdpOffer.MidToTrackIdEntry
MediaEvent.SdpOffer.TrackIdToBitratesEntry
MediaEvent.SdpOffer.TrackIdToMetadataJsonEntry
MediaEvent.SetTargetTrackVariant
Sent when Peer wants to update its track's bitrate
Field
Type
Label
Description
track_id
string
variant_bitrates
MediaEvent.VariantBitrate
repeated
Bitrate of each variant. For non-simulcast tracks use VARIANT_UNSPECIFIED.
Field
Type
Label
Description
track_id
string
MediaEvent.UpdateEndpointMetadata
Sent when a peer wants to update its metadata
Field
Type
Label
Description
metadata_json
string
MediaEvent.UpdateTrackMetadata
Sent when a peer wants to update its track's metadata
Field
Type
Label
Description
track_id
string
metadata_json
string
MediaEvent.VariantBitrate
Top
fishjam/media_events/server/server.proto
Defines any type of message sent from Membrane RTC Engine to Peer
Sent to the peer after connecting to the WebRTC Endpoint.
MediaEvent.Connected.EndpointIdToEndpointEntry
MediaEvent.Endpoint.TrackIdToTrackEntry
Sent to all peers in the room after a new endpoint was added.
Field
Type
Label
Description
endpoint_id
string
metadata_json
string
MediaEvent.EndpointRemoved
Sent to all remaining peers in the room after some endpoint was removed.
Field
Type
Label
Description
endpoint_id
string
MediaEvent.EndpointUpdated
Sent when metadata of one of the endpoints was updated
Field
Type
Label
Description
endpoint_id
string
metadata_json
string
Sent to inform that an error occurred on the server providing a message to show
Field
Type
Label
Description
message
string
Sent to inform about the number of audio and video tracks that will be sent from the engine to the peer
MediaEvent.OfferData.TrackTypes
Field
Type
Label
Description
audio
int32
video
int32
Sent after receiving SdpOffer from Peer
MediaEvent.SdpAnswer.MidToTrackIdEntry
SCHEMAS
MediaEvent.Track.SimulcastConfig
Sent when metadata of one of the tracks was updated
MediaEvent.TrackVariantDisabled
Sent when track's variant has been disabled
MediaEvent.TrackVariantEnabled
Sent when track's variant has been enabled
MediaEvent.TrackVariantSwitched
Informs that track's variant has been changed
Sent to informs that one of the peers has added one or more tracks.
MediaEvent.TracksAdded.TrackIdToTrackEntry
Sent to informs that one of the peers has removed one or more tracks.
Field
Type
Label
Description
endpoint_id
string
track_ids
string
repeated
MediaEvent.VadNotification
Sent to inform that the track denoted by trackId has changed their voice activity
For this notification to work, the server must be configured to use VAD extension
and the sender must support it.
MediaEvent.VadNotification.Status
Name
Number
Description
STATUS_UNSPECIFIED
0
STATUS_SILENCE
1
STATUS_SPEECH
2
Top
fishjam/media_events/shared.proto
Contains information about an ICE candidate which will be sent to the peer/server
ChannelMessageBinaryPayload
Field
Type
Label
Description
data
bytes
Name
Number
Description
VARIANT_UNSPECIFIED
0
VARIANT_LOW
1
VARIANT_MEDIUM
2
VARIANT_HIGH
3
Top
fishjam/notifications/shared.proto
Describes a media track
Name
Number
Description
TRACK_ENCODING_UNSPECIFIED
0
TRACK_ENCODING_PCM16
1
TRACK_ENCODING_OPUS
2
Defines types of tracks being published by peers and component
Name
Number
Description
TRACK_TYPE_UNSPECIFIED
0
TRACK_TYPE_VIDEO
1
TRACK_TYPE_AUDIO
2
Top
fishjam/peer_notifications.proto
Defines any type of message sent between FJ and a peer
Request sent by peer, to authenticate to FJ server
Field
Type
Label
Description
token
string
sdk_version
string
PeerMessage.Authenticated
Response sent by FJ, confirming successful authentication
Any type of WebRTC messages passed between FJ and peer
Field
Type
Label
Description
data
string
PeerMessage.RTCStatsReport
PeerConnection stats sent by peer
https://developer.mozilla.org/en-US/docs/Web/API/RTCStatsReport#the_statistic_types
Field
Type
Label
Description
data
string
PeerMessage.SdkDeprecation
Deprecation status for SDK version
Defines types of rooms peers may connect to
Name
Number
Description
ROOM_TYPE_UNSPECIFIED
0
ROOM_TYPE_CONFERENCE
1
ROOM_TYPE_AUDIO_ONLY
2
ROOM_TYPE_LIVESTREAM
3
PeerMessage.SdkDeprecation.Status
Name
Number
Description
STATUS_UNSPECIFIED
0
STATUS_UP_TO_DATE
1
STATUS_DEPRECATED
2
STATUS_UNSUPPORTED
3
Top
fishjam/server_notifications.proto
Defines any type of message passed between FJ and server peer
ServerMessage.AuthRequest
Request sent by peer, to authenticate to FJ server
Field
Type
Label
Description
token
string
ServerMessage.Authenticated
Response sent by FJ, confirming successfull authentication
ServerMessage.ChannelAdded
Notification sent when a peer creates a channel
ServerMessage.ChannelRemoved
Notification sent when a peer deletes a channel
ServerMessage.ComponentCrashed
Notification sent when a component crashes
Field
Type
Label
Description
room_id
string
component_id
string
ServerMessage.HlsPlayable
Notification sent when the HLS stream becomes available in a room
Field
Type
Label
Description
room_id
string
component_id
string
ServerMessage.HlsUploadCrashed
Notification sent when the upload of HLS recording to AWS S3 fails
Field
Type
Label
Description
room_id
string
ServerMessage.HlsUploaded
Notification sent when the HLS recording is successfully uploaded to AWS S3
Field
Type
Label
Description
room_id
string
Notification sent when a peer is added
ServerMessage.PeerConnected
Notification sent when a peer connects
ServerMessage.PeerCrashed
Notification sent when a peer crashes
ServerMessage.PeerDeleted
Notification sent when a peer is removed
ServerMessage.PeerDisconnected
Notification sent when a peer disconnects from FJ
ServerMessage.PeerMetadataUpdated
Notification sent when peer updates its metadata
ServerMessage.RoomCrashed
Notification sent when a room crashes
Field
Type
Label
Description
room_id
string
ServerMessage.RoomCreated
Notification sent when a room is created
Field
Type
Label
Description
room_id
string
ServerMessage.RoomDeleted
Notification sent when a room is deleted
Field
Type
Label
Description
room_id
string
ServerMessage.StreamConnected
Notification sent when streamer successfully connects
Field
Type
Label
Description
stream_id
string
ServerMessage.StreamDisconnected
Notification sent when streamer disconnects
Field
Type
Label
Description
stream_id
string
ServerMessage.StreamerConnected
Field
Type
Label
Description
stream_id
string
streamer_id
string
ServerMessage.StreamerDisconnected
Field
Type
Label
Description
stream_id
string
streamer_id
string
ServerMessage.SubscribeRequest
Request sent by peer to subscribe for certain message type
ServerMessage.SubscribeResponse
Response sent by FJ, confirming subscription for message type
Notification sent when peer or component adds new track
ServerMessage.TrackForwarding
Sent when there is an upsert to track forwardings from Fishjam to Composition
ServerMessage.TrackForwardingRemoved
Sent when track forwarding is removed
ServerMessage.TrackMetadataUpdated
Notification sent when metadata of a multimedia track is updated
ServerMessage.TrackRemoved
Notification sent when a track is removed
ServerMessage.VadNotification
Notification sent when voice activity changes on a track
ServerMessage.ViewerConnected
Notification sent when viewer successfully connects
Field
Type
Label
Description
stream_id
string
viewer_id
string
ServerMessage.ViewerDisconnected
Notification sent when viewer disconnects
Field
Type
Label
Description
stream_id
string
viewer_id
string
Defines message groups for which peer can subscribe
Name
Number
Description
EVENT_TYPE_UNSPECIFIED
0
EVENT_TYPE_SERVER_NOTIFICATION
1
Name
Number
Description
PEER_TYPE_UNSPECIFIED
0
PEER_TYPE_WEBRTC
1
PEER_TYPE_AGENT
2
ServerMessage.VadNotification.Status
Name
Number
Description
STATUS_UNSPECIFIED
0
STATUS_SILENCE
1
STATUS_SPEECH
2
.proto Type
Notes
C++
Java
Python
Go
C#
PHP
Ruby
double
double
double
float
float64
double
float
Float
float
float
float
float
float32
float
float
Float
int32
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead.
int32
int
int
int32
int
integer
Bignum or Fixnum (as required)
int64
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead.
int64
long
int/long
int64
long
integer/string
Bignum
uint32
Uses variable-length encoding.
uint32
int
int/long
uint32
uint
integer
Bignum or Fixnum (as required)
uint64
Uses variable-length encoding.
uint64
long
int/long
uint64
ulong
integer/string
Bignum or Fixnum (as required)
sint32
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s.
int32
int
int
int32
int
integer
Bignum or Fixnum (as required)
sint64
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s.
int64
long
int/long
int64
long
integer/string
Bignum
fixed32
Always four bytes. More efficient than uint32 if values are often greater than 2^28.
uint32
int
int
uint32
uint
integer
Bignum or Fixnum (as required)
fixed64
Always eight bytes. More efficient than uint64 if values are often greater than 2^56.
uint64
long
int/long
uint64
ulong
integer/string
Bignum
sfixed32
Always four bytes.
int32
int
int
int32
int
integer
Bignum or Fixnum (as required)
sfixed64
Always eight bytes.
int64
long
int/long
int64
long
integer/string
Bignum
bool
bool
boolean
boolean
bool
bool
boolean
TrueClass/FalseClass
string
A string must always contain UTF-8 encoded or 7-bit ASCII text.
string
String
str/unicode
string
string
string
String (UTF-8)
bytes
May contain any arbitrary sequence of bytes.
string
ByteString
str
[]byte
ByteString
string
String (ASCII-8BIT)