环境概览
{{ sensorData.timestamp ? formatTime(sensorData.timestamp) : '等待传感器数据' }}{{ card.label }}
{{ card.value }}{{ card.unit }} {{ card.stateText }}最新拍照识别
暂无拍照结果
等待 ESP32-CAM 上传第一张图片
害虫数量{{ photoDetection.pest_count }}
威胁等级{{ photoDetection.threat_level }}
识别时间{{ photoDetection.timestamp || '--' }}
{{ det.pest_name }}
{{ det.severity }}危害
{{ det.representative }}
置信度 {{ det.confidence }}%今日总览
{{ statistics.date ? (statistics.date + ' · ' + statistics.timezone) : '识别统计' }}检测记录
还没有检测历史
系统上线后会自动在这里沉淀识别记录
视频监控
{{ esp32camIP ? ('来源 ' + esp32camIP) : '等待摄像头上报' }}
使用提示
页面统一连接同源视频代理。现场服务器可拉取局域网摄像头;远端云服务器仍需现场 Edge Bridge 主动回传。实时观看需要管理员或只读会话,启动 YOLO 识别仅限管理员。
视频流暂未就绪
请先登录管理员或只读会话,并确保 ESP32-CAM 已联网上报
视频连接{{ videoConnected ? '已连接' : '未连接' }}
中继上游{{ videoRelayStateText(videoRelayStatus.state) }}
最近帧{{ videoFrameAgeText(videoRelayStatus.frame_age_seconds) }}
观看者 / 上限{{ videoRelayStatus.viewer_count || 0 }} / {{ videoRelayStatus.max_viewers || 0 }}
丢帧 / 重连{{ videoRelayStatus.dropped_frame_count || 0 }} / {{ videoRelayStatus.reconnect_count || 0 }}
实际分辨率{{ videoResolutionText(videoRelayStatus) }}
输入 / 输出 FPS{{ videoFpsText(videoRelayStatus) }}
识别状态{{ videoDetecting ? '识别中' : '已暂停' }}
识别次数{{ videoDetectCount }}
发现害虫{{ videoPestCount }}
中继异常
{{ videoRelayStatus.last_error }}
视频识别结果
等待视频识别
点击上方“开始识别”后,这里会展示最新检测帧
害虫数量{{ videoDetection.pest_count }}
威胁等级{{ videoDetection.threat_level }}
识别时间{{ videoDetection.timestamp || '--' }}
{{ det.pest_name }}
{{ det.severity }}危害
{{ det.damage }}
置信度 {{ det.confidence }}%24 小时趋势
{{ sensorHistory.length }} 条样本最近数据点
{{ currentMetricMeta.unit }}
{{ formatTime(item.timestamp) }}
{{ currentMetricMeta.label }}
{{ formatMetricValue(item[currentMetricMeta.key], currentMetricMeta.key) }}{{ currentMetricMeta.unit }}
暂无趋势数据
等待 ESP32-S3 上传传感器采样后即可查看
管理员登录
初始密码由服务器本机管理器设置登录后可以直接在手机端完成远程控制、图片保存策略调整和 ESP32 轮询参数配置。
使用临时只读 Token
只读 Token 由管理员签发,只能查看受保护状态,不能修改配置或控制设备。
管理员中心
设备{{ deviceStatus.online ? '在线' : '离线/未上报' }}
LED 实际{{ deviceStatus.reported_state.led == null ? '未知' : (deviceStatus.reported_state.led ? '开启' : '关闭') }}
蜂鸣器实际{{ deviceStatus.reported_state.buzzer == null ? '未知' : (deviceStatus.reported_state.buzzer ? '开启' : '关闭') }}
待确认命令{{ deviceStatus.pending_command_count || 0 }}
页面分开显示服务器期望状态和硬件心跳/ACK 上报的实际状态,下发成功不代表硬件已执行。
当前是只读会话:可查看受保护数据,所有写入、设备控制和规则执行均由服务器拒绝。