CMVR-IOT/cmvr-iot-test/src/main/java/com/cmvr/test/enums/ActionEnum.java
lixiaolong 0948d73a62 feat(flow): 添加子流程功能支持和循环迭代追踪
- 新增 SUB_FLOW 类型枚举值用于标识子流程节点
- 实现子流程异步媒体分析协调器管理机制
- 添加循环迭代路径追踪到执行上下文日志
- 增强流程控制服务支持嵌套子流程暂停恢复
- 实现子流程作用域内异步任务等待和取消功能
- 优化循环体多入口独立执行线程调度机制
- 添加节点参数循环引用检测验证机制
- 支持遗留循环参数值解析兼容性处理
- 配置虚拟机器人ID列表绕过在线检查机制
2026-08-21 11:48:52 +08:00

132 lines
5.5 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", "开始循环"),
SUB_FLOW("NONE", "SUB_FLOW", "执行子流程"),
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", "视频智能分析"),
IMAGE_ANALYZE("LLM", "IMAGE_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;
}
}