跳到主要内容

软件端划分与特征定义

1. 端划分总览

端名称终端形态目标用户角色核心职责访问权限边界
Family App(儿女端)移动 App(iOS / Android)成年子女(照护者)查看父母状态、接收告警、发送提醒与留言仅家庭内数据
Luma App(老人端)智能音箱内置系统(Android)老年人(被照护者)语音交互、紧急求助、跌倒检测响应仅本人数据
Admin 管理后台PC Web运营团队监控设备状态、处理告警、合规审计全平台数据(运营视角)
API 服务(后端)REST API / MQTT / WebSocketFamily App / Luma App / Admin / 硬件设备业务逻辑、数据存储、设备接入、AI 处理多租户隔离(以家庭为单位)

2. 各端详细说明

2.1 Family App(儿女端)

  • 终端类型:移动 App(iOS 14+、Android 10+)
  • 技术实现:UniApp + Vue 3 + TypeScript,一套代码编译至 iOS / Android 双端
  • 包名health.reflekt.app
  • 构建/部署说明:UniApp 一套代码编译打包,安装至 iOS App Store / Google Play,无需服务端部署
  • 输出格式:iOS .ipa(TestFlight/App Store)、Android .apk / .aab(Google Play / 直接安装)
  • 目标用户:成年子女(照护者),35~55 岁,在职
  • 功能模块清单
    • 账号认证模块(注册、登录、密码重置、验证码)
    • 家庭管理模块(创建/加入家庭、切换家庭、家庭成员管理)
    • 状态概览模块(六状态颜色语言:CALM / REMINDER / FAMILY / ALERT / HELP / OFFLINE)
    • 告警通知模块(推送订阅、iOS APNs 推送 + Android FCM 推送、短信告警、红色告警静默穿透)
    • 告警响应模块(确认告警中断升级链路、直接拨打老人)
    • 提醒管理模块(预设提醒列表 + 自定义、推送至 Luma 音箱)
    • 语音留言模块(录制并发送语音留言至音箱)
    • 设备管理模块(查看雷达/手表/音箱在线状态、心跳)
    • 照护人权限模块(管理员/查看员权限分级、紧急联系人排序)
    • 设置模块(通知偏好、个人资料)
  • 权限模型说明:基于 Token 的认证,以家庭为租户隔离数据;管理员可添加/移除成员、设置紧急联系顺序;查看员仅可查看状态,不可管理。
  • 适老化要求:无(面向中年子女);字号 ≥ 16pt;核心操作 ≤3 步完成。

2.2 Luma App(老人端)

  • 终端类型:智能音箱内置系统(触摸屏 + 语音),独立硬件设备
  • 技术实现:原生 Android(Java + Kotlin),Luma 智能音箱(小黄蜂定制)深度定制系统
  • 包名health.reflekt.luma
  • 构建/部署说明:原生 Android 固件构建,刷入 Luma 智能音箱硬件,无需云端部署
  • 设备屏幕:1280 × 800 px(触摸屏)
  • 目标用户:老年人(被照护者),65~85 岁
  • 功能模块清单
    • 语音唤醒模块(本地离线唤醒词检测,集成 OpenAI Whisper)
    • 语音交互模块(OpenAI GPT + TTS,语音对话)
    • 紧急求助模块(SOS 按钮、语音触发求助、联系紧急联系人)
    • 跌倒响应模块(雷达检测跌倒后触发语音询问,用户应答或超时触发告警)
    • 提醒播报模块(接收后端推送的用药/就医等提醒,语音 + 屏幕双通道播报)
    • 语音留言播放模块(接收 Family App 发来的家人语音留言)
    • 状态展示模块(六状态屏幕展示,与 Family App 联动)
    • 隐私模式模块(允许关闭检测功能,尊重隐私)
    • 设备心跳模块(定期向服务端上报心跳,离线告警触发)
  • 权限模型说明:无多用户概念,以家庭为单位的设备绑定;老年人无需登录账号。
  • 适老化要求:字号 ≥ 18 pt,按钮高度 ≥ 56 dp,触控区域 ≥ 44 dp,色彩对比度 ≥ 4.5:1;大地色系(琥珀色主调),避免科技蓝。

2.3 Admin 管理后台(PC Web)

  • 终端类型:PC Web(响应式,最小宽度 1024 px)
  • 技术实现:Vue 3 + TypeScript + ElementPlus(前端项目,无包名概念)
  • 构建命令pnpm build:admin
  • 输出目录dist/admin/
  • 目标用户:运营团队,试点期 3~5 人
  • 部署服务名reflekt-health-admin
  • 功能模块清单
    • 设备监控模块(所有试点家庭设备在线状态、心跳成功率)
    • 告警管理模块(告警列表、告警升级链路跟踪)
    • 家庭管理模块(试点家庭信息、设备绑定、安装进度)
    • 审计日志模块(HIPAA 合规,12 个月日志查询)
    • 数据统计模块(告警误报率、30 天留存率)
    • 用户权限模块(运营人员账号与权限分配)
  • 权限模型说明:RBAC,运营人员按角色分配权限,区分数据查看权限与操作权限。

2.4 API 服务(后端)

  • 终端类型:REST API + MQTT + WebSocket
  • 技术实现:Dromara RuoYi-Vue-Plus(Spring Boot 3 + JDK 17 + MyBatis-Plus + Sa-Token)
  • 包名health.reflekt.api
  • 部署区域:AWS US East(美东)
  • 部署服务名reflekt-health-api
  • 核心模块清单
    • 账号认证模块(注册、登录、Token 管理、验证码)
    • 家庭管理模块(创建/加入家庭、多租户数据隔离)
    • 照护人管理模块(管理员/查看员、紧急联系人排序、权限控制)
    • 告警引擎模块(告警触发、升级链路 T=30s/50s/70s/90s、SMS + 推送双通道)
    • 设备接入模块(雷达 MQTT 消费、手表 HTTP、手表实时测量指令下发、音箱 HTTP/WebSocket)
    • 心跳监控模块(设备心跳入库、离线检测 >12h 黄色提醒、>48h 高风险标记)
    • 提醒管理模块(Family App 设置提醒 → Luma App 播报)
    • 语音留言模块(Family App 录音上传 → Luma App 下载播放)
    • AI 交互模块(OpenAI GPT-4o + TTS,语音转文字 + 对话生成 + 语音回复)
    • 审计日志模块(HIPAA 合规,敏感操作全记录,12 个月保留)
    • 通知推送模块(APNs 推送 iOS + FCM 推送 Android + Twilio SMS,红色告警静默穿透)
  • 权限模型说明
    • 多租户:以家庭为隔离单位,禁止跨家庭访问
    • 数据加密:MyBatis 拦截器自动加解密(AES-256)
    • 分布式缓存:Redisson 分布式锁、限流、延迟队列
    • WebSocket:支持 Token 鉴权与分布式集群消息同步

3. 设备端(非应用端)

3.1 毫米波雷达(云帆)

  • 通信方式:MQTT(Amazon MQ)
  • 协议:雷达主动推送跌倒事件、睡眠数据、活动轨迹;后端消费入库
  • 部署服务:Amazon MQ(RabbitMQ),MQTT 协议
  • 数据流:雷达设备 → MQTT Topic → 后端 MQTT Consumer → 数据库

3.2 智能手表(埃微)

  • 通信方式:HTTP
  • 协议
    • 正常模式:手表定时(15~30 分钟)推送心率、血氧、运动数据至后端 HTTP 接口
    • 实时测量模式:后端下发 HTTP 测量指令 → 手表启动实时测量 → 完成后通过 HTTP 接口回传数据
  • 部署服务:API Service HTTP Endpoint
  • 数据流:手表设备 → HTTP POST → 后端 HTTP Controller → 数据库

3.3 Luma 智能音箱(小黄蜂定制)

  • 通信方式:HTTP + WebSocket
  • 协议
    • HTTP:音箱主动查询或响应(状态上报、语音对话请求)
    • WebSocket:后端主动推送(提醒播报、告警事件、语音留言)
  • 部署服务:API Service + WebSocket Gateway
  • 数据流:Luma 设备 ↔ (HTTP/WebSocket) ↔ 后端设备接入层 → 业务处理

4. 六状态与端联动

状态英文Family App 首页主 CTALuma 屏幕
平静CALM查看今日摘要温暖问候
提醒REMINDER查看今天的提醒提醒内容
家人FAMILY播放消息播放语音
关注ALERT立即联系老人确认按钮
求助HELP立即联系老人求助界面
离线OFFLINE绕过 Luma 直接呼叫离线提示