diff --git a/doc/docs.md b/doc/docs.md
index 4a61ceb..ad51cca 100644
--- a/doc/docs.md
+++ b/doc/docs.md
@@ -86,6 +86,7 @@
- [ServerMessage.SubscribeResponse](#fishjam-ServerMessage-SubscribeResponse)
- [ServerMessage.Track](#fishjam-ServerMessage-Track)
- [ServerMessage.TrackAdded](#fishjam-ServerMessage-TrackAdded)
+ - [ServerMessage.TrackData](#fishjam-ServerMessage-TrackData)
- [ServerMessage.TrackMetadataUpdated](#fishjam-ServerMessage-TrackMetadataUpdated)
- [ServerMessage.TrackRemoved](#fishjam-ServerMessage-TrackRemoved)
- [ServerMessage.ViewerConnected](#fishjam-ServerMessage-ViewerConnected)
@@ -1003,6 +1004,7 @@ Defines any type of message passed between FJ and server peer
| stream_disconnected | [ServerMessage.StreamDisconnected](#fishjam-ServerMessage-StreamDisconnected) | | |
| viewer_connected | [ServerMessage.ViewerConnected](#fishjam-ServerMessage-ViewerConnected) | | |
| viewer_disconnected | [ServerMessage.ViewerDisconnected](#fishjam-ServerMessage-ViewerDisconnected) | | |
+| track_data | [ServerMessage.TrackData](#fishjam-ServerMessage-TrackData) | | |
@@ -1334,6 +1336,24 @@ Notification sent when peer or component adds new track
+
+
+### ServerMessage.TrackData
+Notification containing a chunk of a track's data stream
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| room_id | [string](#string) | | |
+| peer_id | [string](#string) | | |
+| track | [ServerMessage.Track](#fishjam-ServerMessage-Track) | | |
+| data | [bytes](#bytes) | | |
+
+
+
+
+
+
### ServerMessage.TrackMetadataUpdated
diff --git a/fishjam/server_notifications.proto b/fishjam/server_notifications.proto
index 94ceaf6..385afab 100644
--- a/fishjam/server_notifications.proto
+++ b/fishjam/server_notifications.proto
@@ -148,6 +148,14 @@ message ServerMessage {
Track track = 4;
}
+ // Notification containing a chunk of a track's data stream
+ message TrackData {
+ string room_id = 1;
+ string peer_id = 2;
+ Track track = 3;
+ bytes data = 4;
+ }
+
// Notification sent when streamer successfully connects
message StreamConnected {
string stream_id = 1;
@@ -197,5 +205,6 @@ message ServerMessage {
StreamDisconnected stream_disconnected = 23;
ViewerConnected viewer_connected = 24;
ViewerDisconnected viewer_disconnected = 25;
+ TrackData track_data = 26;
}
}
diff --git a/fishjam_protos/lib/fishjam/server_notifications.pb.ex b/fishjam_protos/lib/fishjam/server_notifications.pb.ex
index 83bc9d6..f0debf7 100644
--- a/fishjam_protos/lib/fishjam/server_notifications.pb.ex
+++ b/fishjam_protos/lib/fishjam/server_notifications.pb.ex
@@ -210,6 +210,17 @@ defmodule Fishjam.ServerMessage.TrackMetadataUpdated do
field :track, 4, type: Fishjam.ServerMessage.Track
end
+defmodule Fishjam.ServerMessage.TrackData do
+ @moduledoc false
+
+ use Protobuf, protoc_gen_elixir_version: "0.15.0", syntax: :proto3
+
+ field :room_id, 1, type: :string, json_name: "roomId"
+ field :peer_id, 2, type: :string, json_name: "peerId"
+ field :track, 3, type: Fishjam.ServerMessage.Track
+ field :data, 4, type: :bytes
+end
+
defmodule Fishjam.ServerMessage.StreamConnected do
@moduledoc false
@@ -364,4 +375,6 @@ defmodule Fishjam.ServerMessage do
type: Fishjam.ServerMessage.ViewerDisconnected,
json_name: "viewerDisconnected",
oneof: 0
+
+ field :track_data, 26, type: Fishjam.ServerMessage.TrackData, json_name: "trackData", oneof: 0
end