# 设备感知语音反馈场景

与用户主动发起的语音控制或对话场景不同，这里的交互由设备主动发起。设备感知到环境变化或事件后，触发 AI 生成语音内容并播报给用户，实现从「人找设备」到「设备找人」的转变。

**技术实现**：设备端的传感器（温度、烟雾、摄像头 AI 等）检测到事件后，通过 MQTT 将事件数据上报到云端。AI Agent 分析事件并生成自然语言播报内容，再通过火山引擎 UpdateVoiceChat API 的 `ExternalTextToSpeech` 命令，将文本推送到 RTC 房间进行 TTS 播报。

**架构组件**：

- **设备传感器**：感知环境变化（标准硬件）
- **EMQX**：事件数据上报通道（标准产品）
- **AI Agent**：事件分析和播报内容生成（需定制开发）
- **火山引擎 RTC + TTS**：语音播报通道（标准产品）

## 流程图

![设备感知语音反馈流程](./device-triggered-voice.png)

**流程说明**：

1. 设备传感器检测到事件（如温度异常、烟雾告警等）
2. 通过 MQTT 上报事件数据到云端
3. AI Agent 分析事件，生成自然语言播报内容
4. 调用 UpdateVoiceChat API 的 `ExternalTextToSpeech` 命令
5. 火山引擎通过 RTC 通道将 TTS 音频推送到设备播放

## 典型场景

### 工业监控 —— 异常即时告警

凌晨 3 点，工厂无人值守：

> *（温度传感器检测到 3 号锅炉温度异常）*
>
> **广播系统**："警告！3 号锅炉温度已达 285 度，超出安全阈值。已自动降低功率，请值班人员立即前往检查。"
>
> *（同时电话通知值班主管）*
>
> ---
>
> *（检测到异常振动）*
>
> **系统**："注意：5 号电机振动数据异常，可能存在轴承磨损。已记录数据并生成维修工单。"

设备异常时第一时间播报，减少巡检压力，避免事故损失。

### 儿童看护 —— 安全与陪伴

妈妈在厨房做饭，3 岁的宝宝在客厅玩耍：

> *（摄像头检测到宝宝靠近电源插座）*
>
> **音箱**："宝贝，插座很危险哦，不要碰它。来，我们一起玩积木好不好？"
>
> ---
>
> *（检测到宝宝哭泣声）*
>
> **音箱**："宝贝怎么啦？是不是摔倒了？妈妈马上就来。"
>
> *（同时发送通知到妈妈手机）*
>
> ---
>
> *（夏天，车内温度传感器检测到异常升温，摄像头识别到儿童独自在车内）*
>
> **车机**（向家长手机推送语音通知）："紧急提醒！检测到车内有儿童，当前温度 42 度且持续上升。已自动开启空调降温，请立即返回车辆！"
>
> *（同时自动开启双闪提醒周围行人）*

设备主动感知危险并及时提醒，守护儿童安全。

## 技术要点

| 要点 | 说明 |
|------|------|
| 事件驱动 | 传感器数据触发，无需用户主动询问 |
| 智能播报 | AI 生成自然语言，而非机械式提示音 |
| 优先级控制 | 紧急告警可打断当前对话 |
| 多通道通知 | 语音 + App 推送 + 短信多渠道触达 |

## AI Agent 的灵活性

AI Agent 是整个方案中可定制的核心组件，开发者可以根据具体场景调整：

- **播报风格**：严肃的工业告警、温柔的儿童陪伴、专业的医疗提醒
- **判断逻辑**：结合多传感器数据综合分析，而非单一阈值触发
- **响应策略**：根据事件紧急程度选择不同的通知方式和播报优先级
- **上下文关联**：结合历史数据、时间、用户习惯等因素生成更贴切的播报内容

## 与传统规则方案对比

| 对比项 | 传统规则方案 | AI Agent 方案 |
|--------|-------------|---------------|
| 触发条件 | 固定阈值（如温度 > 50°C） | 综合判断（温度 + 上升速率 + 环境因素） |
| 播报内容 | 预设模板（"温度异常，请注意"） | 动态生成（包含具体数值、建议措施、上下文） |
| 新场景支持 | 需要开发新规则 | 通过 prompt 调整即可适配 |
| 误报处理 | 难以区分（阈值触发即告警） | 可结合多因素判断，减少无效告警 |
| 维护成本 | 规则越多越难维护 | 统一的 Agent 逻辑，易于迭代 |

## 适用设备

- 智能音箱 / 中控屏
- 健康监测手环 / 手表
- 儿童手表 / 陪伴机器人
- 车载系统
- 工业监控终端
- 商业导购屏 / 迎宾机器人
