CMVR-IOT/cmvr-iot-test/src/main/java/com/cmvr/test/enums/ActionEnum.java

93 lines
3.2 KiB
Java
Raw Normal View History

2025-08-21 14:39:54 +08:00
package com.cmvr.test.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Getter
@AllArgsConstructor
public enum ActionEnum {
// 平台控制类
STOPPED("NONE", "STOP", "强制终止"),
PAUSED("NONE", "PAUSED", "暂停"),
RESUME("NONE", "RESUME", "继续"),
START("NONE", "START", "开始"),
SUB_START("NONE", "SUB_START", "循环开始(子流程开始)"),
END("NONE", "END", "结束"),
START_LOOP("NONE", "START_LOOP", "开始循环"),
STOP_LOOP("NONE", "STOP_LOOP", "结束循环"),
2025-08-21 14:39:54 +08:00
BRANCH("NONE", "BRANCH", "分支"),
SUB_END("NONE", "SUB_END", "子流程结束"),
2025-08-21 14:39:54 +08:00
SLEEP("NONE", "SLEEP", "延迟节点"),
// 系统行为
NONE("NONE", "NONE", "无操作"),
// 设备行为
// ---------------相机---------------
CAMERA_START("EDGE", "CAMERA_START", "启动相机"),
CAMERA_STOP("EDGE", "CAMERA_STOP", "停止相机"),
CAMERA_GETRGBIMAGE("EDGE", "CAMERA_GETRGBIMAGE", "获取RGB图像"),
CAMERA_RECORDING_START("EDGE", "CAMERA_RECORDING_START", "开始录像"),
CAMERA_RECORDING_STOP("EDGE", "CAMERA_RECORDING_STOP", "结束录像"),
// ---------------麦克风---------------
MICROPHONE_START("EDGE", "MICROPHONE_START", "启动麦克风"),
MICROPHONE_STOP("EDGE", "MICROPHONE_STOP", "停止麦克风"),
// ---------------扬声器(人工嘴)---------------
SPEAKER_PLAYAUDIO("EDGE", "SPEAKER_PLAYAUDIO", "播放音频"),
2025-09-23 12:35:27 +08:00
CORPUS_PLAY("EDGE", "CORPUS_PLAY", "播放语料"),
2025-08-21 14:39:54 +08:00
2025-11-12 09:07:16 +08:00
// ---------------机械臂---------------
TOUCH("EDGE", "TOUCH", "触控"),
2025-08-21 14:39:54 +08:00
// 大模型行为
// ---------------获取触控坐标---------------
TOUCH_COORDINATES("LLM", "TOUCH_COORDINATES", "获取触控坐标"),
INTENT_RECOGNITION("LLM", "INTENT_RECOGNITION", "意图识别"),
2025-09-26 17:15:53 +08:00
GENERATE_ADVANCED_AUDIO("LLM", "GENERATE_ADVANCED_AUDIO", "tts语音合成"),
2025-09-23 12:35:27 +08:00
// 语音交互
// ---------------语料---------------
VI_CORPUS_WAKE("VI", "VI_CORPUS_WAKE", "唤醒语料处理"),
VI_CORPUS_SINGLE("VI", "VI_CORPUS_SINGLE", "测试语料-单次对话语料处理"),
VI_CORPUS_CONTINUOUS("VI", "VI_CORPUS_CONTINUOUS", "测试语料-连续对话语料处理"),
VI_PLAY_CORPUS("VI", "VI_PLAY_CORPUS", "播放语料"),
// ---------------方案---------------
VI_SCHEME("VI", "VI_SCHEME", "语音交互-方案处理"),
2025-08-21 14:39:54 +08:00
;
private final String operate;
private final String action;
private final String description;
// 根据action值获取对应的枚举
public static ActionEnum fromAction(String action) {
for (ActionEnum actionEnum : values()) {
if (actionEnum.getAction().equalsIgnoreCase(action)) {
return actionEnum;
}
}
return null;
}
public static List<Map<String, String>> toList() {
List<Map<String, String>> list = new ArrayList<>();
for (ActionEnum e : values()) {
Map<String, String> map = new HashMap<>();
map.put("action", e.getAction());
map.put("description", e.getDescription());
list.add(map);
}
return list;
}
}