Skip to Content

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.gz
        • https://github.com/cisco/libsrtp/archive/refs/tags/v2.7.0.tar.gz
        • https://github.com/sctplab/usrsctp/archive/refs/tags/0.9.5.0.tar.gz
        • https://github.com/eclipse-paho/paho.mqtt.c/archive/refs/tags/v1.3.14.tar.gz
        • https://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 进行自测

中心服务平台:1.0.2 版本, 测试及自测发现的问题

  • 目标: 测试及自测发现的问题
  • 当前进度:已完成 100%。
  • 任务清单
    • 服务端
      • 实测:GPS_INFO 中 valid == 1 时, latitude 及 longitude 有效。修改服务端逻辑, 缓存更多有效定位数据(仅判 latitude 及 longitude 大于 0, 忽略 valid 判断)。
    • 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 lockSettings/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 字段进行相应调整。apnuserpass 这三个字段的字符上限为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 字段。
    • 新增 Device Initialization/Network settings 界面, 包含 GpsWIFIMobileServer 四个子界面。
      • GpsWIFIMobile 子界面已根据群内反馈完成优化, 删除了图中标注的冗余内容, 使界面更加简洁清晰。
    • 修复了在 Settings/Network/WIFIDevice Initialization/Network settings/WIFI 界面中, 从 AP 模式切换到 Wi-Fi 模式时缺少等待动画的问题(上周新增了用于定时获取连接状态的等待动画逻辑, 此次将其扩展至模式切换场景, 以保持用户体验一致性)。
    • 新增词条, 待翻译确认是否处理正确:
      • es:
        • “Network settings”: “Configuraciones Red”
      • pt:
        • “Network settings”: “Configurações Rede”
    • 修复部分界面 Loading 动画无法消失的问题, 统一移除了所有 ahooks 中 useRequestloadingDelay 配置项(涉及 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 bandSignalVerification 这三个字段。
      • Signal 的显示格式调整为 -${state.formInitialValues.signal_db} dBm
    • 解决了部分界面接口返回数据无法加载的问题。统一移除了所有 ahooks 库中 useRequestcacheKey 配置项完成修复, 此操作涉及 96 个源代码文件的修改。详细信息可参考官网说明:https://ahooks.js.org/zh-CN/hooks/use-request/cache 
Last updated on