syntax = "proto3"; package cmvr.api; import "google/protobuf/timestamp.proto"; message DeviceLifecycle { enum Lifecycle { STATE_INIT = 0; STATE_READY = 1; STATE_RUNNING = 2; STATE_ERROR = 3; STATE_ESTOP = 4; STATE_STOP = 5; } Lifecycle state = 1; } message CommandHeader { message Request { string device_id = 1; // 目标设备名称 google.protobuf.Timestamp timestamp = 2; // 请求时间 } message Feedback { bool success = 1; // 是否成功 string error_message = 2; // 错误信息(成功时为空) google.protobuf.Timestamp timestamp = 3; // 回复时间 } } message ConfigParam { string param_name = 1; oneof param_value { int32 int_value = 2; // 整数类型 double double_value = 3; // 浮点数类型 string string_value = 4; // 字符串类型 bool bool_value = 5; // 布尔类型 bytes bytes_value = 6; // 二进制数据类型 } }