Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ To run the `fishjam_protos/compile_proto.sh` one needs to install the proto plug
To install the plugin:

```bash
mix escript.install hex protobuf 0.15.0 # or any other version
mix escript.install hex protobuf 0.16.0 # or any other version
```

## How to update docs
Expand Down
66 changes: 54 additions & 12 deletions doc/docs.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,8 @@
- [ServerMessage.SubscribeRequest](#fishjam-ServerMessage-SubscribeRequest)
- [ServerMessage.SubscribeResponse](#fishjam-ServerMessage-SubscribeResponse)
- [ServerMessage.TrackAdded](#fishjam-ServerMessage-TrackAdded)
- [ServerMessage.TrackForwarding](#fishjam-ServerMessage-TrackForwarding)
- [ServerMessage.TrackForwardingRemoved](#fishjam-ServerMessage-TrackForwardingRemoved)
- [ServerMessage.TrackMetadataUpdated](#fishjam-ServerMessage-TrackMetadataUpdated)
- [ServerMessage.TrackRemoved](#fishjam-ServerMessage-TrackRemoved)
- [ServerMessage.ViewerConnected](#fishjam-ServerMessage-ViewerConnected)
Expand Down Expand Up @@ -1334,34 +1336,36 @@ Defines any type of message passed between FJ and server peer

| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| room_crashed | [ServerMessage.RoomCrashed](#fishjam-ServerMessage-RoomCrashed) | | |
| peer_connected | [ServerMessage.PeerConnected](#fishjam-ServerMessage-PeerConnected) | | |
| peer_disconnected | [ServerMessage.PeerDisconnected](#fishjam-ServerMessage-PeerDisconnected) | | |
| peer_crashed | [ServerMessage.PeerCrashed](#fishjam-ServerMessage-PeerCrashed) | | |
| component_crashed | [ServerMessage.ComponentCrashed](#fishjam-ServerMessage-ComponentCrashed) | | |
| authenticated | [ServerMessage.Authenticated](#fishjam-ServerMessage-Authenticated) | | |
| auth_request | [ServerMessage.AuthRequest](#fishjam-ServerMessage-AuthRequest) | | |
| subscribe_request | [ServerMessage.SubscribeRequest](#fishjam-ServerMessage-SubscribeRequest) | | |
| subscribe_response | [ServerMessage.SubscribeResponse](#fishjam-ServerMessage-SubscribeResponse) | | |
| room_created | [ServerMessage.RoomCreated](#fishjam-ServerMessage-RoomCreated) | | |
| room_deleted | [ServerMessage.RoomDeleted](#fishjam-ServerMessage-RoomDeleted) | | |
| hls_playable | [ServerMessage.HlsPlayable](#fishjam-ServerMessage-HlsPlayable) | | |
| hls_uploaded | [ServerMessage.HlsUploaded](#fishjam-ServerMessage-HlsUploaded) | | |
| hls_upload_crashed | [ServerMessage.HlsUploadCrashed](#fishjam-ServerMessage-HlsUploadCrashed) | | |
| room_crashed | [ServerMessage.RoomCrashed](#fishjam-ServerMessage-RoomCrashed) | | |
| peer_connected | [ServerMessage.PeerConnected](#fishjam-ServerMessage-PeerConnected) | | |
| peer_disconnected | [ServerMessage.PeerDisconnected](#fishjam-ServerMessage-PeerDisconnected) | | |
| peer_crashed | [ServerMessage.PeerCrashed](#fishjam-ServerMessage-PeerCrashed) | | |
| peer_metadata_updated | [ServerMessage.PeerMetadataUpdated](#fishjam-ServerMessage-PeerMetadataUpdated) | | |
| track_added | [ServerMessage.TrackAdded](#fishjam-ServerMessage-TrackAdded) | | |
| track_removed | [ServerMessage.TrackRemoved](#fishjam-ServerMessage-TrackRemoved) | | |
| track_metadata_updated | [ServerMessage.TrackMetadataUpdated](#fishjam-ServerMessage-TrackMetadataUpdated) | | |
| peer_added | [ServerMessage.PeerAdded](#fishjam-ServerMessage-PeerAdded) | | |
| peer_deleted | [ServerMessage.PeerDeleted](#fishjam-ServerMessage-PeerDeleted) | | |
| stream_connected | [ServerMessage.StreamConnected](#fishjam-ServerMessage-StreamConnected) | | **Deprecated.** |
| stream_disconnected | [ServerMessage.StreamDisconnected](#fishjam-ServerMessage-StreamDisconnected) | | **Deprecated.** |
| channel_added | [ServerMessage.ChannelAdded](#fishjam-ServerMessage-ChannelAdded) | | |
| channel_removed | [ServerMessage.ChannelRemoved](#fishjam-ServerMessage-ChannelRemoved) | | |
| track_forwarding | [ServerMessage.TrackForwarding](#fishjam-ServerMessage-TrackForwarding) | | |
| track_forwarding_removed | [ServerMessage.TrackForwardingRemoved](#fishjam-ServerMessage-TrackForwardingRemoved) | | |
| viewer_connected | [ServerMessage.ViewerConnected](#fishjam-ServerMessage-ViewerConnected) | | |
| viewer_disconnected | [ServerMessage.ViewerDisconnected](#fishjam-ServerMessage-ViewerDisconnected) | | |
| streamer_connected | [ServerMessage.StreamerConnected](#fishjam-ServerMessage-StreamerConnected) | | |
| streamer_disconnected | [ServerMessage.StreamerDisconnected](#fishjam-ServerMessage-StreamerDisconnected) | | |
| channel_added | [ServerMessage.ChannelAdded](#fishjam-ServerMessage-ChannelAdded) | | |
| channel_removed | [ServerMessage.ChannelRemoved](#fishjam-ServerMessage-ChannelRemoved) | | |
| stream_connected | [ServerMessage.StreamConnected](#fishjam-ServerMessage-StreamConnected) | | **Deprecated.** |
| stream_disconnected | [ServerMessage.StreamDisconnected](#fishjam-ServerMessage-StreamDisconnected) | | **Deprecated.** |
| hls_playable | [ServerMessage.HlsPlayable](#fishjam-ServerMessage-HlsPlayable) | | **Deprecated.** |
| hls_uploaded | [ServerMessage.HlsUploaded](#fishjam-ServerMessage-HlsUploaded) | | **Deprecated.** |
| hls_upload_crashed | [ServerMessage.HlsUploadCrashed](#fishjam-ServerMessage-HlsUploadCrashed) | | **Deprecated.** |
| component_crashed | [ServerMessage.ComponentCrashed](#fishjam-ServerMessage-ComponentCrashed) | | **Deprecated.** |



Expand Down Expand Up @@ -1750,6 +1754,44 @@ Notification sent when peer or component adds new track



<a name="fishjam-ServerMessage-TrackForwarding"></a>

### ServerMessage.TrackForwarding
Sent when there is an upsert to track forwardings from Fishjam to Foundry


| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| room_id | [string](#string) | | |
| peer_id | [string](#string) | | |
| composition_url | [string](#string) | | |
| input_id | [string](#string) | | |
| audio_track | [notifications.Track](#fishjam-notifications-Track) | optional | Track has id, type, and metadata |
| video_track | [notifications.Track](#fishjam-notifications-Track) | optional | |






<a name="fishjam-ServerMessage-TrackForwardingRemoved"></a>

### ServerMessage.TrackForwardingRemoved
Sent when track forwarding is removed


| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| room_id | [string](#string) | | |
| peer_id | [string](#string) | | |
| composition_url | [string](#string) | | |
| input_id | [string](#string) | | |






<a name="fishjam-ServerMessage-TrackMetadataUpdated"></a>

### ServerMessage.TrackMetadataUpdated
Expand Down
58 changes: 46 additions & 12 deletions fishjam/server_notifications.proto
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,24 @@ message ServerMessage {
string channel_id = 4;
}

// Sent when there is an upsert to track forwardings from Fishjam to Foundry
message TrackForwarding {
string room_id = 1;
string peer_id = 2;
string composition_url = 3;
string input_id = 4;
optional notifications.Track audio_track = 5; // Track has id, type, and metadata
optional notifications.Track video_track = 6;
}

// Sent when track forwarding is removed
message TrackForwardingRemoved {
string room_id = 1;
string peer_id = 2;
string composition_url = 3;
string input_id = 4;
}

// Notification sent when streamer successfully connects
message StreamConnected {
string stream_id = 1;
Expand Down Expand Up @@ -203,33 +221,49 @@ message ServerMessage {
reserved 12;

oneof content {
RoomCrashed room_crashed = 1;
PeerConnected peer_connected = 2;
PeerDisconnected peer_disconnected = 3;
PeerCrashed peer_crashed = 4;
ComponentCrashed component_crashed = 5;
// Auth

Authenticated authenticated = 6;
AuthRequest auth_request = 7;
SubscribeRequest subscribe_request = 8;
SubscribeResponse subscribe_response = 9;

// Common

RoomCreated room_created = 10;
RoomDeleted room_deleted = 11;
HlsPlayable hls_playable = 13;
HlsUploaded hls_uploaded = 14;
HlsUploadCrashed hls_upload_crashed = 15;
RoomCrashed room_crashed = 1;

// Conferencing

PeerConnected peer_connected = 2;
PeerDisconnected peer_disconnected = 3;
PeerCrashed peer_crashed = 4;
PeerMetadataUpdated peer_metadata_updated = 16;
TrackAdded track_added = 17;
TrackRemoved track_removed = 18;
TrackMetadataUpdated track_metadata_updated = 19;
PeerAdded peer_added = 20;
PeerDeleted peer_deleted = 21;
StreamConnected stream_connected = 22 [deprecated = true];
StreamDisconnected stream_disconnected = 23 [deprecated = true];
ChannelAdded channel_added = 28;
ChannelRemoved channel_removed = 29;
TrackForwarding track_forwarding = 30;
TrackForwardingRemoved track_forwarding_removed = 31;

// Streaming

ViewerConnected viewer_connected = 24;
ViewerDisconnected viewer_disconnected = 25;
StreamerConnected streamer_connected = 26;
StreamerDisconnected streamer_disconnected = 27;
ChannelAdded channel_added = 28;
ChannelRemoved channel_removed = 29;

// Deprecated

StreamConnected stream_connected = 22 [deprecated = true];
StreamDisconnected stream_disconnected = 23 [deprecated = true];
HlsPlayable hls_playable = 13 [deprecated = true];
HlsUploaded hls_uploaded = 14 [deprecated = true];
HlsUploadCrashed hls_upload_crashed = 15 [deprecated = true];
ComponentCrashed component_crashed = 5 [deprecated = true];
}
}
156 changes: 104 additions & 52 deletions fishjam_protos/lib/fishjam/server_notifications.pb.ex
Original file line number Diff line number Diff line change
Expand Up @@ -306,6 +306,44 @@ defmodule Fishjam.ServerMessage.ChannelRemoved do
field :channel_id, 4, type: :string, json_name: "channelId"
end

defmodule Fishjam.ServerMessage.TrackForwarding do
@moduledoc false

use Protobuf,
full_name: "fishjam.ServerMessage.TrackForwarding",
protoc_gen_elixir_version: "0.16.0",
syntax: :proto3

field :room_id, 1, type: :string, json_name: "roomId"
field :peer_id, 2, type: :string, json_name: "peerId"
field :composition_url, 3, type: :string, json_name: "compositionUrl"
field :input_id, 4, type: :string, json_name: "inputId"

field :audio_track, 5,
proto3_optional: true,
type: Fishjam.Notifications.Track,
json_name: "audioTrack"

field :video_track, 6,
proto3_optional: true,
type: Fishjam.Notifications.Track,
json_name: "videoTrack"
end

defmodule Fishjam.ServerMessage.TrackForwardingRemoved do
@moduledoc false

use Protobuf,
full_name: "fishjam.ServerMessage.TrackForwardingRemoved",
protoc_gen_elixir_version: "0.16.0",
syntax: :proto3

field :room_id, 1, type: :string, json_name: "roomId"
field :peer_id, 2, type: :string, json_name: "peerId"
field :composition_url, 3, type: :string, json_name: "compositionUrl"
field :input_id, 4, type: :string, json_name: "inputId"
end

defmodule Fishjam.ServerMessage.StreamConnected do
@moduledoc false

Expand Down Expand Up @@ -386,31 +424,6 @@ defmodule Fishjam.ServerMessage do

oneof :content, 0

field :room_crashed, 1,
type: Fishjam.ServerMessage.RoomCrashed,
json_name: "roomCrashed",
oneof: 0

field :peer_connected, 2,
type: Fishjam.ServerMessage.PeerConnected,
json_name: "peerConnected",
oneof: 0

field :peer_disconnected, 3,
type: Fishjam.ServerMessage.PeerDisconnected,
json_name: "peerDisconnected",
oneof: 0

field :peer_crashed, 4,
type: Fishjam.ServerMessage.PeerCrashed,
json_name: "peerCrashed",
oneof: 0

field :component_crashed, 5,
type: Fishjam.ServerMessage.ComponentCrashed,
json_name: "componentCrashed",
oneof: 0

field :authenticated, 6, type: Fishjam.ServerMessage.Authenticated, oneof: 0

field :auth_request, 7,
Expand Down Expand Up @@ -438,19 +451,24 @@ defmodule Fishjam.ServerMessage do
json_name: "roomDeleted",
oneof: 0

field :hls_playable, 13,
type: Fishjam.ServerMessage.HlsPlayable,
json_name: "hlsPlayable",
field :room_crashed, 1,
type: Fishjam.ServerMessage.RoomCrashed,
json_name: "roomCrashed",
oneof: 0

field :hls_uploaded, 14,
type: Fishjam.ServerMessage.HlsUploaded,
json_name: "hlsUploaded",
field :peer_connected, 2,
type: Fishjam.ServerMessage.PeerConnected,
json_name: "peerConnected",
oneof: 0

field :hls_upload_crashed, 15,
type: Fishjam.ServerMessage.HlsUploadCrashed,
json_name: "hlsUploadCrashed",
field :peer_disconnected, 3,
type: Fishjam.ServerMessage.PeerDisconnected,
json_name: "peerDisconnected",
oneof: 0

field :peer_crashed, 4,
type: Fishjam.ServerMessage.PeerCrashed,
json_name: "peerCrashed",
oneof: 0

field :peer_metadata_updated, 16,
Expand Down Expand Up @@ -480,17 +498,25 @@ defmodule Fishjam.ServerMessage do
json_name: "peerDeleted",
oneof: 0

field :stream_connected, 22,
type: Fishjam.ServerMessage.StreamConnected,
json_name: "streamConnected",
oneof: 0,
deprecated: true
field :channel_added, 28,
type: Fishjam.ServerMessage.ChannelAdded,
json_name: "channelAdded",
oneof: 0

field :stream_disconnected, 23,
type: Fishjam.ServerMessage.StreamDisconnected,
json_name: "streamDisconnected",
oneof: 0,
deprecated: true
field :channel_removed, 29,
type: Fishjam.ServerMessage.ChannelRemoved,
json_name: "channelRemoved",
oneof: 0

field :track_forwarding, 30,
type: Fishjam.ServerMessage.TrackForwarding,
json_name: "trackForwarding",
oneof: 0

field :track_forwarding_removed, 31,
type: Fishjam.ServerMessage.TrackForwardingRemoved,
json_name: "trackForwardingRemoved",
oneof: 0

field :viewer_connected, 24,
type: Fishjam.ServerMessage.ViewerConnected,
Expand All @@ -512,13 +538,39 @@ defmodule Fishjam.ServerMessage do
json_name: "streamerDisconnected",
oneof: 0

field :channel_added, 28,
type: Fishjam.ServerMessage.ChannelAdded,
json_name: "channelAdded",
oneof: 0
field :stream_connected, 22,
type: Fishjam.ServerMessage.StreamConnected,
json_name: "streamConnected",
oneof: 0,
deprecated: true

field :channel_removed, 29,
type: Fishjam.ServerMessage.ChannelRemoved,
json_name: "channelRemoved",
oneof: 0
field :stream_disconnected, 23,
type: Fishjam.ServerMessage.StreamDisconnected,
json_name: "streamDisconnected",
oneof: 0,
deprecated: true

field :hls_playable, 13,
type: Fishjam.ServerMessage.HlsPlayable,
json_name: "hlsPlayable",
oneof: 0,
deprecated: true

field :hls_uploaded, 14,
type: Fishjam.ServerMessage.HlsUploaded,
json_name: "hlsUploaded",
oneof: 0,
deprecated: true

field :hls_upload_crashed, 15,
type: Fishjam.ServerMessage.HlsUploadCrashed,
json_name: "hlsUploadCrashed",
oneof: 0,
deprecated: true

field :component_crashed, 5,
type: Fishjam.ServerMessage.ComponentCrashed,
json_name: "componentCrashed",
oneof: 0,
deprecated: true
end
Loading
Loading