-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathled.proto
164 lines (156 loc) · 2.83 KB
/
led.proto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
syntax = "proto3";
package lebai.led;
import "google/protobuf/empty.proto";
import "system.proto";
import "db.proto";
// LED工作模式
enum LedMode {
// 无动作
HOLD_LED = 0;
// 关闭
CLOSE_LED = 1;
// 常亮
OPEN_LED = 2;
// 呼吸
BREATH = 3;
// 四块流水
FOUR = 4;
// 同色流水
WATER = 5;
// 闪烁
BLINK = 6;
}
// LED运行速度
enum LedSpeed {
// 无动作
HOLD_LED_SPEED = 0;
// 快速
FAST = 1;
// 中速
NORMAL = 2;
// 慢速
SLOW = 3;
}
// LED颜色
enum LedColor {
// #FF0000
RED = 0;
// #00FF00
GREEN = 1;
// #0000FF
BLUE = 2;
// #FF00FF
PINK = 3;
// #FFFF00
YELLOW = 4;
// #00FFF
CYAN = 5;
// #808080
GRAY = 6;
// #A52A2A
BROWN = 7;
// #FFA500
ORANGE = 8;
// #FFD700
GOLD = 9;
// #4B0082
INDIGO = 10;
// #87CEFA
LIGHT_SKY_BLUE = 11;
// #9400D3
DARK_VIOLET = 12;
// #D2691E
CHOCOLATE = 13;
// #FF9E9A
LIGHT_RED = 14;
// #FFFFFF
WHITE = 15;
}
// LED样式
message LedData {
LedMode mode = 1;
LedSpeed speed = 2;
repeated LedColor colors = 3;
}
// 风扇工作模式
enum FanMode {
// 无动作
HOLD_FAN = 0;
// 关闭
CLOSE_FAN = 1;
// 打开
OPEN_FAN = 2;
}
message FanData {
FanMode mode = 1;
}
// 语音ID
enum VoiceKind {
OFF = 0;
BOOTING = 1;
STOPING = 2;
COLLISION_DETECTED = 3;
UPGRADE = 4;
TEACH_MODE_ON = 5;
TEACH_MODE_OFF = 6;
FINE_TUNNING_ON = 7;
FINE_TUNNING_OFF = 8;
FINE_TUNNING_CHANGE = 9;
BORING = 10;
CUSTOM1 = 11;
CUSTOM2 = 12;
CUSTOM3 = 13;
CUSTOM4 = 14;
CUSTOM5 = 15;
}
// 语音音量
enum Volume {
// 静音
MUTE = 0;
// 低
LOW = 1;
// 中
MID = 2;
// 高
HIGH = 3;
}
// 声音样式
message VoiceData {
VoiceKind voice = 2;
Volume volume = 3;
}
// 声光交互样式
message LedStyle {
LedData led = 1;
VoiceKind voice = 2;
Volume volume = 3;
}
message SaveLedStyleRequest {
string name = 1;
LedStyle data = 2;
string dir = 11;
}
// 机器人状态对应的声光交互样式
message LedStyleItem {
system.RobotState state = 1;
LedStyle style = 2;
}
// 声光交互样式集
message LedStyles {
map<int32, LedStyle> styles = 1;
}
// 灯板声光风扇相关服务
service LedService {
// 保存/修改/删除声光样式
rpc SaveLedStyle(SaveLedStyleRequest) returns (google.protobuf.Empty);
// 查询声光样式
rpc LoadLedStyle(db.LoadRequest) returns (LedStyle);
// 查询声光样式列表
rpc LoadLedStyleList(db.LoadListRequest) returns (db.LoadListResponse);
rpc SetLedStyle(LedStyleItem) returns (google.protobuf.Empty);
rpc SetLedStyles(LedStyles) returns (google.protobuf.Empty);
rpc GetLedStyles(google.protobuf.Empty) returns (LedStyles);
rpc SetLed(LedData) returns (google.protobuf.Empty);
rpc SetVoice(VoiceData) returns (google.protobuf.Empty);
rpc SetFan(FanData) returns (google.protobuf.Empty);
}