2025年05月12日
上周工作回顾
KH2248 项目:WEB 客户端, 客户 redmine 系统中分配给我的任务
- 目标: redmine.intelbras.com.br 上分配的任务处理
- 进度:已完成 100%。计划完成 80%。
KH2248 项目:WEB 客户端, 测试及自测发现的问题
- 目标: 测试及自测发现的问题
- 进度:已完成 100% 达成预期目标。
中心服务平台:1.0.2 版本, 新增功能。
- 目标:新增功能。
- 进度:已完成 100% 非计划内目标。
本周工作计划
中心服务平台:1.0.2 版本, 升级中间件。
- 目标: janus-gatewa 服务从 v1.2.2(2024年4月2日) 升级至 v1.3.1(2025月3月5日), 由于官方仅提供源代码, 因此需手动构建 Docker 镜像。emqx 服务从 v5.6(2024月3月) 升级至 v5.8.6(2025月2月)
- 预期进度:计划完成 100%。
中心服务平台:1.0.2 版本, 测试及自测发现的问题
- 目标: 测试及自测发现的问题
- 预期进度:计划完成 100%。
中心服务平台:1.0.2 版本, 服务端架构升级改造。
- 目标: 优化系统启动速度与内存占用效率, 缩减Docker镜像体积至最小化标准;HTTP/MQTT API接口性能提升:响应延迟降低, 并行处理能力增强。
- 预期进度:计划完成 30%。
日常协作事宜
以下为当前需协作完成的关键任务列表。姚海涛作为主要协助人员, 将全力配合各位同事, 保障项目高效推进。
APP 接口联调与文档优化
- 内容:协助郭工对 APP 的 HTTP API 和 MQTT 信令交互接口进行全面联调。采用专业测试工具与规范测试方法, 严格验证接口功能的正确性、数据传输的准确性与稳定性。同时, 系统梳理相关接口文档, 补充接口参数(如参数类型、取值范围、默认值等)、返回值格式(如数据结构、字段含义等)以及异常处理(如异常类型、错误码、处理方式等)的详细说明, 确保文档符合行业规范、逻辑清晰, 便于后续开发与测试人员参考使用。
KH2248 项目设备 WEB 前端定制开发技术支持
- 内容:为韦工在 KH2248 项目的设备 WEB 前端定制开发中提供全方位技术支持。针对开发过程中可能出现的页面布局合理性、交互效果流畅性、浏览器与设备兼容性等问题, 凭借专业知识和实践经验进行深入分析。与韦工保持高效沟通, 及时了解项目进展与问题反馈, 共同制定可行解决方案, 确保项目按时交付高质量前端页面。
设备对接接口联调与文档优化
- 内容:协助孙工在设备联调过程中, 运用先进的通信监测与数据验证工具, 全面检查设备与服务间的通信状况, 确保数据传输稳定、准确且无丢包。同时, 深度优化对接设备的 MQTT 信令交互接口文档, 详细记录调试经验、问题及解决方案, 为服务的平稳过渡和稳定运行提供坚实的文档支撑, 方便后续维护人员快速解决问题。
数证管理服务器对接接口联调与文档优化
- 内容:协助绍工对数证管理服务器的 HTTP API 和 MQTT 信令交互接口进行联调。运用数据验证算法和模拟测试场景, 严格测试前后端数据交互的准确性与完整性。使用网络监测与性能分析工具, 检查采集站与服务器间的通信和数据采集传输情况。全面优化对接接口文档, 补充联调细节, 如网络配置参数、数据采集频率、异常处理机制及问题解决方案, 确保系统功能完整、运行稳定, 为平台上线做好准备。
平台使用咨询、测试问题排查与文档优化
- 内容:协助王工为中心服务平台提供专业的使用咨询服务。针对用户在平台操作流程、功能使用及系统故障等方面的问题, 及时响应并提供准确、详细的解答与指导。在测试阶段, 利用专业技术和问题定位工具, 深度排查测试问题, 分析问题根源并制定解决方案。同时, 全面优化测试说明文档, 记录问题排查过程与解决方案, 为后续测试工作提供清晰有效的指导, 提升用户使用体验和平台满意度, 为平台优化升级提供支持。
本周工作进度
中心服务平台:1.0.2 版本, 升级中间件。
- 目标: janus-gatewa 服务从 v1.2.2(2024年4月2日) 升级至 v1.3.1(2025月3月5日), 由于官方仅提供源代码, 因此需手动构建 Docker 镜像。emqx 服务从 v5.6(2024月3月) 升级至 v5.8.6(2025月2月)
- 当前进度:已完成 100%。
- 任务清单:
- janus-gatewa 服务从 v1.2.2(2024年4月2日) 升级至 v1.3.1(2025月3月5日), 由于官方仅提供源代码, 因此需手动构建 Docker 镜像:基于官方最新源代码 v1.3.1 编译制作 janus-gateway 服务的 docker 映像。
- 熟悉改进项及升级注意要点
- 搭建编译环境, 同时确保科学上网设置(用于从国外下载源代码等)
https://gitlab.freedesktop.org/libnice/libnice/-/archive/0.1.22/libnice-0.1.22.tar.gzhttps://github.com/cisco/libsrtp/archive/refs/tags/v2.7.0.tar.gzhttps://github.com/sctplab/usrsctp/archive/refs/tags/0.9.5.0.tar.gzhttps://github.com/eclipse-paho/paho.mqtt.c/archive/refs/tags/v1.3.14.tar.gzhttps://github.com/meetecho/janus-gateway/archive/refs/tags/v1.3.1.tar.gz
- 创建映像, 并制作中心服务平台升级安装包
- emqx 服务从 v5.6(2024月3月) 升级至 v5.8.6(2025月2月):
- 部署至 192.168.1.34 进行自测
- janus-gatewa 服务从 v1.2.2(2024年4月2日) 升级至 v1.3.1(2025月3月5日), 由于官方仅提供源代码, 因此需手动构建 Docker 镜像:基于官方最新源代码 v1.3.1 编译制作 janus-gateway 服务的 docker 映像。
中心服务平台:1.0.2 版本, 测试及自测发现的问题
- 目标: 测试及自测发现的问题
- 当前进度:已完成 100%。
- 任务清单:
- 服务端
- 实测:GPS_INFO 中
valid == 1时, latitude 及 longitude 有效。修改服务端逻辑, 缓存更多有效定位数据(仅判 latitude 及 longitude 大于 0, 忽略 valid 判断)。
- 实测:GPS_INFO 中
- Web 客户端
- 主题色细节优化:伴随 Tailwind CSS 从 v3 升级至 v4, 样式定义方式有所变化。其中, 色彩表示方式也从 hsl 模式转变为了 oklch 模式。
- 主界面左下角版本号显示优化:默认仅显示版本号, 鼠标悬停时显示编译打包时间。
- BUG修复:针对GPS数据有效性的判断, 在原有的
valid > 1基础上, 新增了latitude > 0以及longitude > 0的条件。经排查发现, 当valid = 128时, 存在latitude = 0以及longitude = 0的情况。 - 实测:GPS_INFO 中
valid == 1时, latitude 及 longitude 有效。修改 Web 客户端获取 GPS_INFO 后的逻辑(仅判 latitude 及 longitude 大于 0, 忽略 valid 判断)
- 服务端
中心服务平台:1.0.2 版本, 服务端架构升级改造。
- 目标: 优化系统启动速度与内存占用效率, 缩减Docker镜像体积至最小化标准;HTTP/MQTT API接口性能提升:响应延迟降低, 并行处理能力增强。
- 当前进度:已完成 12%。计划完成 30%。
- 任务清单:
- 各模块依赖库优化:
- 将 log4j2 替换为 slf4j。
- 移除对 disruptor, fastjson2 库的引用。
- 启动速度优化:
- 缩小 @MapperScan 及 scanBasePackages 的扫描范围。
- 性能优化
- 将 Spring Boot 默认集成的 Tomcat 替换为 Undertow。Undertow 的优点包括:1)基于 NIO 的异步非阻塞架构, 可支持更高并发连接数;2)内存占用更少(约 Tomcat 的 1/3);3)与 Spring WebFlux 深度集成, 更适合响应式编程场景;4)自带 HTTP/2 和 WebSocket 支持, 可减少协议转换开销;5)轻量级设计(jar 包体积比 Tomcat 小 60%)。
- 打包优化(Spring Boot JAR 缩减 3MB, Docker 镜像优化 205MB):
- 构建过程采用差异化镜像策略:
- 编译阶段使用
eclipse-temurin:21-jdk-alpine镜像 - 镜像构建阶段采用
eclipse-temurin:21-jre-alpine镜像
- 编译阶段使用
- 技术方案说明:
- 通过替换 OpenJDK 为 Eclipse Temurin 官方镜像
- 采用 JDK/ JRE 镜像分离策略(JDK 镜像较 JRE 镜像体积大 66MB)
- 构建过程采用差异化镜像策略:
- 项目构建升级改造
- 完成项目构建工具从 Maven 到 Gradle 的迁移, 以提升构建效率和灵活性。
- 集成 Kotlin 编译与打包功能, 同时配置项目多模块以支持 Java 与 Kotlin 混合编译, 为后续全面过渡到 Kotlin 语言开发做好前期准备。
- 各模块依赖库优化:
KH2248 项目:WEB 客户端, 新增功能、测试及自测发现的问题
- 目标: 新增功能、测试及自测发现的问题
- 当前进度:已完成 100%。
- 任务清单:
- 在
Settings/Users/Adminstrator/Button lock及Settings/Users/Users setup/Button lock界面, 依据DEVICE_INFO.device_type == 104的判断结果调整显示逻辑:- 若判断结果为
true:- 隐藏IR/Flashlight按钮。
- 变更界面文字显示:
- Snap → Snap/Flashlight
- Fn → Fn/PTT
- UP → UP/IR
- 若判断结果为
false:维持原有界面布局。
- 若判断结果为
- 在
Settings/Network/Mobile界面中, 展开apn mode控制项, 并根据apn_mode字段进行相应调整。apn、user和pass这三个字段的字符上限为63位, 且允许为空。 - 在
Settings/Network/WIFI界面中:- Working frequency band 的获取方式由原来的
ap_list['ssid等于根SSID'].frequency调整为直接从根节点读取frequency字段, 并根据其数值判断频段:若frequency > 5000, 则显示"5 GHz", 否则显示"2.4 GHz"。 - Signal 的获取方式由原来的
ap_list['ssid等于根SSID'].signal_level调整为直接从根节点读取signal_db字段。 - Verification 的获取方式由原来的
ap_list['ssid等于根SSID'].flags调整为直接从根节点读取Verification字段。
- Working frequency band 的获取方式由原来的
- 新增
Device Initialization/Network settings界面, 包含Gps、WIFI、Mobile、Server四个子界面。Gps、WIFI、Mobile子界面已根据群内反馈完成优化, 删除了图中标注的冗余内容, 使界面更加简洁清晰。
- 修复了在
Settings/Network/WIFI及Device Initialization/Network settings/WIFI界面中, 从AP模式切换到Wi-Fi模式时缺少等待动画的问题(上周新增了用于定时获取连接状态的等待动画逻辑, 此次将其扩展至模式切换场景, 以保持用户体验一致性)。 - 新增词条, 待翻译确认是否处理正确:
es:- “Network settings”: “Configuraciones Red”
pt:- “Network settings”: “Configurações Rede”
- 修复部分界面 Loading 动画无法消失的问题, 统一移除了所有 ahooks 中
useRequest的loadingDelay配置项(涉及 92 个源代码文件的修改), 详情可参考官网说明:https://ahooks.js.org/zh-CN/hooks/use-request/loading-delay - 在
Settings/Network/Platforms/MQTT界面中, 将 Host(MQTT_INFO.ip)字段的输入字符上限从 15 个调整至 31 个。 - 对
Settings/Network/WIFI界面进行了如下修改:- 仅在
net_connect_status === 1时, 显示Working frequency band、Signal和Verification这三个字段。 - 将
Signal的显示格式调整为-${state.formInitialValues.signal_db} dBm。
- 仅在
- 解决了部分界面接口返回数据无法加载的问题。统一移除了所有 ahooks 库中
useRequest的cacheKey配置项完成修复, 此操作涉及 96 个源代码文件的修改。详细信息可参考官网说明:https://ahooks.js.org/zh-CN/hooks/use-request/cache
- 在
Last updated on