飞书小程序:主动整备交互设计需求 (Active Prep Card v4 - Final)
1. 背景与目标
在“主动整备 (Active Prep)”场景下,系统需向预定人推送即时卡片。设计需符合“人未到,环境已就绪”的愿景,同时提供手动调节入口。
2. 消息下发与链路策略 (Notification & Routing)
2.1 链路术语定义
- 外层通知 (Outer Notification):指在飞书消息列表、服务号或企业微信中下发的“消息卡片”。其作用是主动触达用户。
- 直达路径 (Direct Path):指用户通过点击“外层通知”中的按钮或链接,通过 AppLink 唤起小程序,并直接定位到 智能助手 (Chatbox) 的过程。
2.2 推送渠道
- 服务号/企业微信推送:系统通过专属服务号发送整备通知卡片。
- 消息交互流:用户进入小程序 Chatbox 后,该通知卡片会自动呈现在对话流的最新位置。
3. 视觉规范
- Header: 统一为 “智能空间助手”。
- 操作项顺序: 统一采用 “ [ 正向操作 ] [ 负向/纠偏操作 ] ”(例如: “ [ 🛠️ 深度调节 ] [ 🚫 取消备场 ] ”)。
- 字体规范: 调节页内的分段标题(风速、模式、扫风等预留项)统一采用粗体 (Bold)。
- 动态交互: 确认型卡片点击后需支持原位状态转换。
4. 场景原型 (Prototypes)
场景 A:自动执行告知 (AUTO_EXECUTE)
触发逻辑:
text
+-------------------------------------------+
| [🤖 智能空间助手] [••• | ◎] |
+-------------------------------------------+
| |
| ✨ **环境已为您提前备场** |
| |
| ------------------------------------- |
| **A-101 大会议室** (4F) |
| 🕒 10:00 - 11:30 (**15 min后开始**) |
| ------------------------------------- |
| |
| 🌡️ 环境:**制冷运行中** (目标 24℃) |
| 当前室温 28℃,整备预计需 15 分钟 |
| |
| [ 🛠️ 深度调节 ] [ 🚫 取消备场 ] |
| |
+-------------------------------------------+场景 B:待确认开启 (PRE_CONFIRM)
触发逻辑:
text
(1) 初始态:等待确认
+-------------------------------------------+
| ❓ **建议为您提前调节环境** |
| ------------------------------------- |
| **B-202 研讨室** (2F) |
| 🕒 14:00 - 15:00 (**12 min后开始**) |
| ------------------------------------- |
| ❄️ 开启空调并冷至 **24℃**? |
| [ ✅ 立即开启 ] [ 取消备场 ] |
+-------------------------------------------+
(2) 点击“立即开启”后:原位转换
+-------------------------------------------+
| ✅ **整备指令已下发** |
| ------------------------------------- |
| **B-202 研讨室** (2F) |
| 🕒 14:00 - 15:00 |
| ------------------------------------- |
| 🌡️ 环境:**正在调节中...** |
| [ 🛠️ 深度调节* ] [ 🚫 取消备场 ] |
+-------------------------------------------+
*说明:点击“立即开启”后,按钮原位转为“深度调节”,并保持与 AUTO 模式一致的按钮顺序。NOTE
关于环境状态展示的说明: 卡片中展示的“当前室温”与“预估整备时长”为触发瞬间的快照数据 (Snapshot Reference),旨在建立用户心理预期。由于算法偏差或物理设备状态波动(如:到达不了目标值),前端不强制要求实时更新该数值,以减少因数值反复波动带来的干扰。
5. 深度调节页设计 (Deep Adjustment Page)
核心原则:本阶段聚焦温度调节,其他参数置灰预留。 视觉注意: “运行模式”、“风速调节”、“扫风控制”等分段标题需采用粗体加黑。
text
+-------------------------------------------+
| [ < | A-101 温度调节 ] [••• | ◎] |
+-------------------------------------------+
| |
| [[ 🌡️ 24℃ ]] |
| 目标温度 (滑动或点击 +/-) |
| |
| [ — ] ————————⬤———————— [ + ] |
| |
| **运行模式** (预留) |
| +--------+ +--------+ +--------+ |
| | 制冷 | | 制热 | | 自动 | |
| | (置灰) | | (置灰) | | (置灰) | |
| +--------+ +--------+ +--------+ |
| |
| **风速调节** (预留) |
| [ 低 ] [ 中 ] [ 高 ] [ 自动 ] |
| (全量置灰) |
| |
| +---------------------------------+ |
| | 保存并应用到现场 | |
| +---------------------------------+ |
+-------------------------------------------+6. 对话反馈逻辑 (Bot Feedback Logic)
为确保用户操作有明确回响,需根据场景下发即时文本消息:
- 取消备场 (场景 A-自动型): “已为您取消 [房间名] 的环境预整备,关联设备已关闭。”
- 取消备场 (场景 B-确认型): “已为您取消 [房间名] 的环境预整备计划。”
- 深度调节保存:
- 逻辑说明: 仅当用户实际修改了温度数值(当前值
进入页面时的初始值)并点击“保存应用”时,触发反馈。 - 话术内容: “目标温度已更新为 [数值]℃,正在同步至现场设备。”
- 不触发场景: 用户进入页面后未改动数值直接保存,或点击“返回/取消”,不发送任何新消息。
- 逻辑说明: 仅当用户实际修改了温度数值(当前值
7. 开发对接说明
- 日志留痕: 用户点击所有按钮均需记录
Action_Log。 - AppLink 参数: 通知卡片中的 [查看详情] 按钮需携带
room_id和action_type,确保直达后能准确渲染对应卡片或页面。
