livekit_rpc_internal.proto

 1syntax = "proto3";
 2
 3package livekit;
 4option go_package = "github.com/livekit/protocol/livekit";
 5option csharp_namespace = "LiveKit.Proto";
 6option ruby_package = "LiveKit::Proto";
 7
 8import "livekit_egress.proto";
 9import "livekit_ingress.proto";
10
11message StartEgressRequest {
12  // request metadata
13  string egress_id = 1;
14  string request_id = 2;
15  string sender_id = 10;
16  int64 sent_at = 4;
17
18  // request
19  oneof request {
20    RoomCompositeEgressRequest room_composite = 5;
21    TrackCompositeEgressRequest track_composite = 6;
22    TrackEgressRequest track = 7;
23  }
24
25  // connection info
26  string room_id = 3;
27  string token = 8;
28  string ws_url = 9;
29}
30
31message EgressRequest {
32  // request metadata
33  string egress_id = 1;
34  string request_id = 2;
35  string sender_id = 5;
36
37  // request
38  oneof request {
39    UpdateStreamRequest update_stream = 3;
40    StopEgressRequest stop = 4;
41  }
42}
43
44message EgressResponse {
45  EgressInfo info = 1;
46  string error = 2;
47  string request_id = 3;
48}
49
50message IngressRequest {
51  // request metadata
52  string ingress_id = 1;
53  string request_id = 2;
54  string sender_id = 3;
55
56  oneof request {
57    UpdateIngressRequest update = 4;
58    DeleteIngressRequest delete = 5;
59  }
60}
61
62// Query an ingress info from an ingress ID or stream key
63message GetIngressInfoRequest {
64  string ingress_id = 1;
65  string stream_key = 2;
66  string request_id = 3;
67  string sender_id = 4;
68  int64 sent_at = 5;
69}
70
71message IngressResponse {
72  IngressInfo info = 1;
73  string error = 2;
74  string request_id = 3;
75}
76
77message GetIngressInfoResponse {
78  IngressInfo info = 1;
79  string token = 2;
80  string ws_url = 3;
81  string error = 4;
82  string request_id = 5;
83}