lesavka/common/proto/lesavka.proto
2025-06-30 19:35:38 -05:00

23 lines
911 B
Protocol Buffer

syntax = "proto3";
package lesavka;
message KeyboardReport { bytes data = 1; }
message MouseReport { bytes data = 1; }
message MonitorRequest { uint32 id = 1; uint32 max_bitrate = 2; }
message VideoPacket { uint32 id = 1; uint64 pts = 2; bytes data = 3; }
message AudioPacket { uint32 id = 1; uint64 pts = 2; bytes data = 3; }
message ResetUsbReply { bool ok = 1; } // true = success
message Empty {}
service Relay {
rpc StreamKeyboard (stream KeyboardReport) returns (stream KeyboardReport);
rpc StreamMouse (stream MouseReport) returns (stream MouseReport);
rpc CaptureVideo (MonitorRequest) returns (stream VideoPacket);
rpc CaptureAudio (MonitorRequest) returns (stream AudioPacket);
rpc StreamMicrophone (stream AudioPacket) returns (stream Empty) {}
rpc ResetUsb (Empty) returns (ResetUsbReply);
}