Files
LedD-protobuf/ledd.proto

43 lines
1.2 KiB
Protocol Buffer

syntax = "proto3";
package ledd;
import "led.proto";
import "client.proto";
import "google/protobuf/any.proto";
import "google/protobuf/empty.proto";
service LEDInterface {
rpc GetLED (LED) returns (RPCResponse) {}
rpc ListLED (google.protobuf.Empty) returns (stream LED) {}
rpc AddLED (LED) returns (RPCResponse) {}
rpc AddLEDGroup (LEDGroup) returns (RPCResponse) {}
rpc ListLEDGroup (google.protobuf.Empty) returns (stream LEDGroup) {}
rpc RemoveLED(LED) returns (RPCResponse) {}
rpc RemoveLEDGroup(LEDGroup) returns (RPCResponse) {}
rpc AddClient(Client) returns (RPCResponse) {}
rpc RemoveClient(Client) returns (RPCResponse) {}
rpc Init(Client) returns (LedD) {}
rpc UpdateClient(Client) returns (RPCResponse) {}
rpc UpdateLED(stream LED) returns (stream LED) {}
rpc UpdateLEDGroup(stream LEDGroup) returns (stream LEDGroup) {}
}
message LedD {
string hostname = 1;
string version = 2;
string unique = 3;
}
message RPCResponse {
enum ResponseType {
OK = 0;
ERROR = 1;
INVALID_REQUEST = 2;
}
ResponseType status = 1;
string msg = 2;
repeated google.protobuf.Any payload = 3;
}