diff --git a/message.proto b/message.proto new file mode 100644 index 0000000..947c874 --- /dev/null +++ b/message.proto @@ -0,0 +1,129 @@ +syntax = "proto3"; + +import "google/protobuf/any.proto"; + +// auth验证请求和应答 + +message AuthRequest { + string uuid = 1; + string username = 2; + string password = 3; + string salt = 4; + string token = 5; + uint32 timestamp = 6; +} + +message AuthReply { + uint32 code = 1; + string message = 2; +} + +// 创建会话 +message SessionRequest { + +} + +message SessionReply { + bool a = 1; +} + +// 定义单个数据项目 +message Field { + uint32 device_uuid = 1; + string key = 2; + google.protobuf.Any value = 3; + int32 unit = 4; + string type = 5; + int32 timestamp = 6; + string name = 7; + string label = 8; +} + +// 数据传输 +message Data { + string device_uuid = 1; + string service_name = 2; + int32 at = 3; + map tags = 4; + repeated Field fields = 5; +} + +//#{<<"adcode">> => 0,<<"boot_time">> => 18256077,<<"city">> => <<>>, +// <<"cpu_core">> => 2, +// <<"cpu_load">> => 0,<<"cpu_temperature">> => 43.75, +// <<"disk">> => #{<<"total">> => 7129,<<"used">> => 6074}, +// <<"efka_version">> => <<"1.0.0">>, +// <<"interfaces">> => [], +// <<"ips">> => [<<"10.68.152.142/22">>,<<"10.20.1.202/24">>], +// <<"kernel_arch">> => <<"Linux openeic 4.4.194 #14 SMP PREEMPT Fri Aug 2 11:31:15 CST 2024 aarch64 GNU/Linux\n">>, +// <<"memory">> => #{<<"total">> => 990,<<"used">> => 80}, +// <<"province">> => <<>>} + +// 定义ping消息格式 + +message Ping { + string adcode = 1; + uint32 boot_time = 2; + string province = 3; + string city = 4; + string efka_version = 5; + string kernel_arch = 6; + repeated string ips = 7; + // cpu + uint32 cpu_core = 8; + uint32 cpu_load = 9; + float cpu_temperature = 10; + // 存储格式为数组: [total, used] + repeated int32 disk = 11; + repeated int32 memory = 12; + // 接口信息的定义: 每个接口的信息, 采用json格式传输,没有办法提前定义 + repeated string interfaces = 13; +} + +// Inform消息 + +message Inform { + message Service { + string name = 1; + string props = 2; + string version = 3; + string version_copy = 4; + uint32 status = 5; + } + + uint32 at = 1; + repeated Service services = 2; +} + +message FeedbackStep { + string task_id = 1; + uint32 code = 2; +} + +message FeedbackResult { + string task_id = 1; + string task_type = 2; + uint32 time = 3; + uint32 code = 4; + string reason = 5; + string error = 6; +} + +message Event { + uint32 event_type = 1; + map params = 2; +} + +message AIEvent { + uint32 event_type = 1; + map params = 2; +} + +// 指令 +message Directive { + string device_uuid = 1; + string version = 2; + uint32 directive_type = 3; + uint32 timeout = 4; + map directive = 5; +} \ No newline at end of file