CMVR-IOT/cmvr-iot-test/src/main/java/com/cmvr/test/enums/ActionEnum.java
lixiaolong 0b05438712 feat(flow): 添加流程失败清理服务和机械臂使能枚举
- 新增 FlowFailureCleanupService 用于清理设备端和后端媒体状态
- 添加 ARM_ENABLE 和 ARM_DISABLE 枚举值支持机械臂使能控制
- 在 TaskInstHolder 中集成失败清理逻辑
- 实现机器人录音、录像和系统状态的异常清理功能
- 添加 FlowFailureCleanupService 单元测试验证清理逻辑
- 注入 FlowFailureCleanupService 并在任务失败时执行清理操作
2026-08-18 10:19:25 +08:00

130 lines
5.4 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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 {
SYSTEM_EXECUTE_ACTION_QUEUE("EDGE", "SYSTEM_EXECUTE_ACTION_QUEUE", "Execute edge action queue"),
SPEAKER_PLAYAUDIO("EDGE", "SPEAKER_PLAYAUDIO", "Play audio"),
// 平台控制类
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", "结束循环"),
BRANCH("NONE", "BRANCH", "分支"),
SUB_END("NONE", "SUB_END", "子流程结束"),
SLEEP("NONE", "SLEEP", "延迟节点"),
HTTP("NONE", "HTTP", "HTTP调用"),
CODE("NONE", "CODE", "代码执行"),
GET_CURRENT_OBJECT("NONE", "GET_CURRENT_OBJECT", "获取当前循环对象"),
// AI评估
AI_EVALUATION_PRE("AE", "AI_EVALUATION_PRE", "AI评估预处理"),
// AI评估
AI_EVALUATION_EXECUTE("AE", "AI_EVALUATION_END", "AI评估执行"),
// 系统行为
NONE("NONE", "NONE", "无操作"),
// 设备行为
DEVICE_EXECUTE_JSON_COMMAND("EDGE", "DEVICE_EXECUTE_JSON_COMMAND", "执行设备通用指令"),
// ---------------相机---------------
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", "停止麦克风"),
// ---------------扬声器(人工嘴)---------------
// ---------------语料---------------
VI_CORPUS_WAKE("EDGE", "VI_CORPUS_WAKE", "唤醒语料处理"),
VI_CORPUS_SINGLE("EDGE", "VI_CORPUS_SINGLE", "测试语料-单次对话语料处理"),
VI_CORPUS_CONTINUOUS("EDGE", "VI_CORPUS_CONTINUOUS", "测试语料-连续对话语料处理"),
VI_PLAY_CORPUS("EDGE", "VI_PLAY_CORPUS", "播放语料"),
// ---------------方案---------------
VI_SCHEME("EDGE", "VI_SCHEME", "语音交互-方案处理"),
// ---------------机械臂---------------
TOUCH("EDGE", "TOUCH", "触控"),
// 末端运动
ARM_MOVE_TO_POINT("EDGE", "ARM_MOVE_TO_POINT", "运动到指定点"),
ARM_MOVE_TO_J("EDGE", "ARM_MOVE_TO_J", "关节空间运动"),
// 开始使能
ARM_ENABLE("EDGE", "ARM_ENABLE", "使能"),
// 停止使能
ARM_DISABLE("EDGE", "ARM_DISABLE", "停止使能"),
// --------------- 头部 ---------------
BIO_HEAD_SPEAK_START("EDGE", "BIO_HEAD_SPEAK_START", "开始说话"),
BIO_HEAD_SPEAK_STOP("EDGE", "BIO_HEAD_SPEAK_STOP", "停止说话"),
BIO_HEAD_SPECIAL_EXPRESSION("EDGE", "BIO_HEAD_SPECIAL_EXPRESSION", "表情,1:高兴,2:惊讶,3:疲惫"),
// --------------- agv ---------------
AGV_MOVE_TO_POINT("EDGE", "AGV_MOVE_TO_POINT", "移动到指定点"),
AGV_MOVE_TO_STATION("EDGE", "AGV_MOVE_TO_STATION", "移动到指定站点"),
// 大模型行为
// ---------------获取触控坐标---------------
TOUCH_COORDINATES("LLM", "TOUCH_COORDINATES", "获取触控坐标"),
INTENT_RECOGNITION("LLM", "INTENT_RECOGNITION", "意图识别"),
GENERATE_ADVANCED_AUDIO("LLM", "GENERATE_ADVANCED_AUDIO", "tts语音合成"),
AI_AGENT_PLATFORM("LLM", "AI_AGENT_PLATFORM", "商道智能体"),
INSPECTION_METER_RECOGNIZE("LLM", "INSPECTION_METER_RECOGNIZE", "巡检仪表读数识别"),
AI_TTS("LLM", "AI_TTS", "tts语音播放"),
GET_CURRENT_PAGE("LLM", "GET_CURRENT_PAGE", "获取当前页面名称"),
AUDIO_EVENT_CLASSIFY("LLM", "AUDIO_EVENT_CLASSIFY", "声音事件识别"),
VIDEO_ANALYZE("LLM", "VIDEO_ANALYZE", "视频智能分析"),
// 触控交互
TI_PATH_SEARCH("EDGE", "TI_PATH_SEARCH", "路径搜索"),
TI_TOUCH_COORDINATES("EDGE", "TI_TOUCH_COORDINATES", "获取触控二维坐标"),
// 巡检报警
INSPECTION_ALERT_LISTEN_START("EDGE", "INSPECTION_ALERT_LISTEN_START", "开始监听报警事件"),
INSPECTION_ALERT_LISTEN_STOP("EDGE", "INSPECTION_ALERT_LISTEN_STOP", "结束监听报警事件"),
INSPECTION_MANUAL_REVIEW_CREATE("EDGE", "INSPECTION_MANUAL_REVIEW_CREATE", "创建人工巡检判断任务")
;
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;
}
}