Skip to content

动作库管理

涉及子系统:工控机(执行)、云端 API(存储/下发)、管理后台(配置) 核心业务:预定义硬件动作集合,支持条件触发与组合编排,降低硬件控制复杂度


系统概述

动作库是对工控机硬件控制指令的高层抽象。管理员在后台定义"动作"(单个指令)和"动作组"(多指令组合),工控机按名称执行,无需硬编码具体控制逻辑。


动作类型

动作类型说明示例
单设备指令控制单个硬件的开/关/调节开启1号灯光继电器
延时指令等待指定时间后继续等待 5 秒
条件指令根据传感器值决定执行路径若温度 > 28℃ 则开空调
语音播报触发工控机本地 TTS 或音频播放播放「欢迎进入」
动作组多个动作按顺序执行进场动作组:开灯+开空调+播欢迎语

动作数据模型

Action {
  id          String    # 动作唯一标识
  storeId     String?   # 所属门店(null = 全局通用)
  name        String    # 动作名称(管理员可读)
  type        Enum      # single / delay / condition / tts / group
  payload     JsonObject # 具体参数(设备ID、值、延时ms、音频key等)
  createdAt   DateTime
  updatedAt   DateTime
}

ActionGroup {
  id          String
  storeId     String?
  name        String    # 动作组名称
  steps       Array     # 有序动作列表(含延时)
}

内置触发场景

触发场景建议动作组
用户进场(B 门开启)欢迎语音 + 灯光全开 + 空调调节
用户离场(A 门出)离场语音 + 最后一人关灯
淋浴启动开启淋浴阀 + 计时
淋浴超时关闭淋浴阀 + 语音提醒
设备报警声光报警 + 推送通知
定时开店全开灯光 + 开启背景音乐
定时关店渐关灯光 + 关闭空调 + 关闭音乐

管理后台功能

  • 动作列表:查看所有动作与动作组,按门店筛选
  • 新建/编辑动作:可视化配置动作参数
  • 动作组编排:拖拽排序多个动作,设置步骤间延时
  • 手动触发:在管理后台一键测试执行某个动作
  • 下发工控机:动作配置变更后自动推送到对应门店工控机

待确认事项

  • [ ] 动作条件触发是否需要支持「AND / OR」复合条件
  • [ ] 是否支持定时(cron)触发动作组
  • [ ] 工控机端动作队列的并发处理策略

飞创 Fitron 内部规划文档