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 ResetUsbRequest {} // empty body message ResetUsbReply { bool ok = 1; } // true = success service Relay { rpc StreamKeyboard (stream KeyboardReport) returns (stream KeyboardReport); rpc StreamMouse (stream MouseReport) returns (stream MouseReport); rpc CaptureVideo (MonitorRequest) returns (stream VideoPacket); rpc ResetUsb (ResetUsbRequest) returns (ResetUsbReply); }