87 lines
1.3 KiB
Protocol Buffer
87 lines
1.3 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package receiver.v1;
|
|
|
|
option go_package = "spektr/internal/grpc/pb;pb";
|
|
|
|
|
|
// =========================
|
|
// Service (один stream)
|
|
// =========================
|
|
|
|
service ReceiverService {
|
|
rpc Connect(stream ClientMessage) returns (stream ServerMessage);
|
|
}
|
|
|
|
|
|
// =========================
|
|
// Client -> Daemon
|
|
// =========================
|
|
|
|
message ClientMessage {
|
|
string request_id = 1;
|
|
|
|
oneof payload {
|
|
AvCommand av = 10;
|
|
SetFrequencyCommand set_frequency = 11;
|
|
GetFrequencyCommand get_frequency = 12;
|
|
}
|
|
}
|
|
|
|
|
|
// =========================
|
|
// Server -> Client
|
|
// =========================
|
|
|
|
message ServerMessage {
|
|
string request_id = 1;
|
|
|
|
oneof payload {
|
|
AvResponse av = 10;
|
|
SetFrequencyResponse set_frequency = 11;
|
|
GetFrequencyResponse get_frequency = 12;
|
|
|
|
Error error = 50;
|
|
}
|
|
}
|
|
|
|
|
|
// =========================
|
|
// Commands
|
|
// =========================
|
|
|
|
message AvCommand {}
|
|
|
|
message SetFrequencyCommand {
|
|
uint32 frequency = 1;
|
|
}
|
|
|
|
message GetFrequencyCommand {}
|
|
|
|
|
|
// =========================
|
|
// Responses
|
|
// =========================
|
|
|
|
message AvResponse {
|
|
bool ok = 1;
|
|
string hw = 2;
|
|
string sw = 3;
|
|
}
|
|
|
|
message SetFrequencyResponse {
|
|
bool ok = 1;
|
|
}
|
|
|
|
message GetFrequencyResponse {
|
|
uint32 frequency = 1;
|
|
}
|
|
|
|
|
|
// =========================
|
|
// Error
|
|
// =========================
|
|
|
|
message Error {
|
|
string message = 1;
|
|
} |