Repository navigation
Releases
v1.1.22
1.1.22
发布日期:2026-11-12
这一版新增「心跳记录」,让设备掉线能直接看出断在哪一段;另外集中修了一批「设备明明在线却一直显示离线」「页面 403」「Windows 服务升级页不能用」这类问题,并重做了通道配置弹窗的排版。
新增
- 运行监控新增「心跳记录」:列出平台实际收到的每一条心跳(收到时间、平台判定、应答耗时、心跳间隔、来源地址、传输方式、客户端),并按时间画成一条连续性条带 —— 哪段有线、哪段断了,看一眼就知道,不用再逐条翻表。表头给出已加载条数、异常条数、平均间隔和最近一次心跳。
- 心跳记录会主动说明「为什么这里没有数据」:如果当前时间范围内一条心跳都没有,会自动往前 7 天找最后一次心跳,并提示「最后一条心跳在什么时间、距今已经多久没有心跳」,避免把「设备昨天就掉了」误读成「记录被清了」。
- 部署时自动填写对讲的候选地址:对讲走 WebRTC,浏览器拿到的候选地址取自 ZLM 的 rtc.externIP,出厂为空时浏览器与平台不在同一网段就会「点了没反应」。现在启动前自动探测并写入(云主机取弹性公网 IP,局域网取默认出口网卡地址),也可以用 config.env 里的 UVP_ZLM_EXTERN_IP 固定;探测不到就保持原样,不乱猜。
- 广播跨网段时会提示音频大概率到不了设备:广播用什么传输方式由设备决定,其中 udp 与 tcp_active 两种跨网段都过不去,只有 tcp_passive 能穿 NAT。现在设备选了前两种、且媒体地址与信令来源不在同一网段时,播放器在「正在广播」期间常驻提示。只提示,不阻断。
修复
- 设备 NAT 重绑定后会永久卡在离线:设备不再续注册、只保留心跳,而平台对它的每条心跳都回 200,设备因此认为注册一直有效、永远不重新注册,双方互相等待。现在「注册已过期」的心跳改回 403(Registration Expired),设备会重新注册;来源不可信的心跳仍然静默丢弃并回 200,不给探测者反馈。
- 设备列表页报 403 打不开:存量数据库缺少接口权限登记,已补齐。
- 报警列表里堆着一批空白记录:设备对报警的应答(Result OK)被当成新报警存了下来,级别、方式、类型全空。现在只把真正的报警通知入库;另外按标准不携带报警类型的方式(1/3/4/7)显示「—」而不是「未知」,不再看起来像平台丢了字段。
- Windows 单机版「服务升级」页一直提示不可用(503):解压目录太深时,升级助手与后台通信用的套接字文件路径超过系统上限,两端都连不上。现在路径超限会自动换到固定的短路径,并在助手启动与后台连接两侧提前校验。
- Windows 单机版装好之后第二次启动服务起不来:启动脚本收紧目录权限时,把授权锁文件的权限也一并清空了,后台因此拒绝启动。现在单独恢复锁文件的继承授权,锁文件本身不删。
- 从设备进入地图再返回,视角莫名变成全网设备列表;从设备列表看一眼地图再回来又变成通道视角。现在都按进入地图前的视角还原。
- 设备/通道列表的加载反馈不对:首次进入和翻页没有任何提示(一片空白),而 10 秒自动刷新时又整块盖住遮罩。现在只在该有的时候盖遮罩,自动刷新只转一下刷新按钮;点进设备通道时左侧目录树莫名闪一下的问题也一并修好。
- 云台控制与设备配置的下发改为「先确认设备应答、再继续处理」,避免同一件事被重复处理;云台操作的过期判定改为按主键精确处理,不会再误伤别的操作。
变更
- 通道配置弹窗排版重做:基本参数页的滑杆不再横贯整行,加减按钮恢复成正常小方块,数值框能完整显示数字(不再被清除按钮压住);设备名称等输入框与滑杆的右边界对齐;报警上报页的标签不再被截断(以前正好截掉括号里的标准元素名);整页字号与行高放大一档,更易读。
- 首页:把卡片拉高时,曲线图会长高吃掉多余空白,不再把一大片空白堆在下方;图表仍保底 90 像素,不会把坐标轴和基线挤掉。
升级提示
- 升级前请备份 data/ 与 config/ 目录。
- 从 1.1.20 升级请使用在线升级、增量升级包或全量包;低于 1.1.20 的版本请直接用全量包。
- Windows 用户如果此前因「服务升级页一直不可用」没能完成升级,建议这次用全量包覆盖安装;装好后请再确认一次「服务升级」页能正常打开。
- 对讲跨网段的现场升级后会自动填好候选地址,无需手工配置;已手工设置过 rtc.externIP 的以现场配置为准。
- Linux 与容器版按常规方式升级即可,本次无额外操作要求。
v1.1.21
1.1.21
发布日期:2026-11-10
这一版集中修 Windows 全新安装和首次配置时遇到的一连串问题,另外让设备在批量上报目录时更稳定。
新增
- 本版为安装与稳定性维护版本,无新增功能。
修复
- Windows 全新安装后一启动就报「RTP 端口段格式无效」:安装包里的端口配置文件把端口名和数字写成了上下两行,读出来是空值。现在写在同一行,遇到空值也会自动回退出厂默认端口,不会再拒启。
- Windows 端口预检不准:端口被系统临时占用或被系统保留时,以前可能显示「预检通过」,实际服务却绑不上端口。现在能区分「被别的程序占用」「被系统临时连接占用」「被系统保留」三类,分别给出处理建议;检查本身失败时也不再把没检查说成通过。
- 全新安装后在地图左栏「范围」里选中设备,会连续弹出「目录筛选参数错误」:设备被当成目录条件发给后台,五个接口一起报错、每两秒刷一次。现在后台能正确识别设备,范围下拉不再把设备列成筛选项,同一条错误也不会反复弹窗。
- Windows 首次配置引导一完成就报 SIP 启动失败:引导页预填的是另一套平台用的端口 51064,正好落在 Windows 系统保留段里,一定绑不上。现在引导页统一使用正确端口 15564,出包时也会校验,端口串味直接中止出包;服务没真正起来时不再弹「已成功启动」,而是把真实原因显示出来。
- 设备批量上报目录时更稳:先确认消息再入库、批量写入,订阅窗口先保存再发首次通知,减少高并发下的目录丢失和重复处理。
变更
- Windows 首次配置引导的默认 SIP 端口改为 15564。已经用旧包完成引导的用户,请在「平台接入配置」里把端口改成 15564 后保存一次。
- 端口预检的结论文案改为显示实际检查的端口数量与端口段,不再把没检查的项目算作通过。
升级提示
- 升级前请备份 data/ 与 config/ 目录。
- 建议正在用 1.1.20 Windows 全量包全新安装的用户直接下载 1.1.21 全量包重装;已经装好的机器可以在「服务升级」页在线升级,或用增量升级包。
- 首次配置引导时,请确认 SIP 端口显示为 15564。
- Linux 与容器版不受上述 Windows 问题影响,按常规方式升级即可。
v1.1.20
1.1.20
发布日期:2026-11-10
这次升级主要是把平台对外开放给第三方系统的接口(OpenAPI)整体重做了一遍:设备、通道、点播、云台、报警、订阅、配置、位置和云录像等能力统一成 106 个动作接口,请求参数和返回字段更完整,随包也补上了完整的接口契约和调用示例。另外「检查在线更新」变及时了,容器版装机的端口预检也修掉了两个会让安装卡住的问题。
新增
- OpenAPI 按「动作 + 参数绑定」重新组织,共 106 个接口,覆盖设备与通道查询、直播点播、录像与存储卡、云台控制、报警与事件订阅、设备配置与视频参数、位置轨迹、云端录像目录等场景。
- 设备与通道的返回信息更完整:一次可以拿到基本信息、在线状态、通道能力集、控制状态、存储卡等,不用再为每类信息单独调用。
- 云台补齐预置位、巡航、轨迹、精确位置、扩展控制等成套接口;报警与事件补齐列表、订阅创建、查询、续期与取消。
- 设备配置与视频参数支持查询、下发、刷新,并能查询下发结果;新增通道能力刷新、目录刷新、维护操作等接口。
- 接口契约文档与 Java 签名示例同步更新,第三方系统可以按文档直接对接。
修复
- 手动点「检查在线更新」的结果以前不写入升级提示缓存,侧边栏可能迟迟不显示已经发现的新版本。现在检查结果会立即记录。
- 后台自动检查由每 6 小时一次改为每 15 分钟一次,页面取回结果的轮询由 30 分钟改为 2 分钟,新版本提示更及时。
- 容器版(docker compose)装机的端口预检原先只检查有没有服务在监听,会漏掉被系统出站连接占住的端口,往往安装到启动阶段才报「端口已被占用」并让容器反复重启。现在把「监听占用」和「连接占用」分开判断,分别给出换端口段、等待重试或整段预留的处置建议。
- 容器版样例配置里的版本号写死成旧值,照样例建配置会去拉取不存在的旧镜像。现在打包时按当前版本自动写入。
- 增量升级包的文件名对齐官网下载清单的命名约定,下载与校验不再对不上号。
变更
⚠️ OpenAPI 接口地址全部调整:原来按设备层级展开的路径(例如/openapi/v1/devices/{设备ID}/channels/{通道ID}/live)改为按动作命名的扁平路径(例如/openapi/v1/live/start、/openapi/v1/channel/list),请求参数与返回结构也一并调整。已对接的第三方系统需要按随包的新契约文档更新调用。- 签名方式与请求头保持不变(HMAC-SHA256 与五个
X-UVP-*请求头),访问密钥不需要重新申请。
升级提示
- 升级前请备份
data/与config/目录。 - 使用 OpenAPI 对接的系统,请先在测试环境按新版契约改好接口地址和字段解析,再升级平台,否则升级后调用会报「接口不存在」或取不到数据。
- Linux 与 Windows 单机版可在「服务升级」页在线升级,也可以使用本版的增量升级包,只下载变化的文件。
- 容器版请使用本版重新生成的离线安装包;从旧版沿用
.env时,把里面的版本号改成 1.1.20。
v1.1.19
1.1.19
发布日期:2026-11-09
这次升级主要解决「设备多了就看不见摄像头」这一类规模问题:万级设备同时注册时,
MySQL 上目录入库和通道写入不再把数据库连接池打满,配置下发与能力刷新也不会再
因为一次写回失败卡死整条流水线。另外修掉了新装机改端口不生效的老问题,
点播新增 TCP 主动收流模式。
新增
- 点播支持 TCP 主动收流。通道选 TCP 主动模式时,平台在收到设备应答后主动回连设备取流,
适合设备在 NAT 后面、只能自己往外连的场景。设备同时也要求主动时会明确提示冲突,
不会表现为「一直转圈然后超时」。单端口复用模式的节点不具备外连能力,会直接给出提示。 - 国标配置页新增「设备校时」开关,默认关闭。打开后平台在设备对时请求的应答里补上日期头,
设备据此校准自己的时钟;关闭时与老版本行为完全一致,报文不改动。 - SIP 的 UDP 接收缓冲由系统默认值提高到 4MB,上千台设备同时注册时不再因为缓冲区过小被内核丢包。
修复
- 全新安装的包改端口不生效:以前首次装机也会被按默认端口段拉起,配置里写的端口被忽略;
现在首次装机直接按配置生效,老包升级仍沿用原有端口,不会莫名漂移。 - 端口预检现在能报出被系统临时连接占用的端口。之前只检查有没有服务在监听,
实际上设备的出站连接也会占住本地端口,导致启动时才失败。端口段落在系统临时端口范围内时
会给出警告和两条处置建议(预留端口或换段)。 - Linux 启动脚本在端口被占用时,报错信息会被打成「端口: No such file or directory」,
真正的失败原因被冲掉,现在能正常显示。 - MySQL 上大批设备同时注册时,页面「设备在线但看不到摄像头」。原因是通道挂载用的
先查后插写法在高并发下互相死锁,现在数据库隔离级别默认改为读已提交,
写通道、写设备订阅也改成一条语句交给唯一键判重,压测中通道覆盖率从 8.4% 恢复为全量。 - 万级压测时目录入库把数据库连接占满,导致全平台查询卡住。目录入库现在限制并发,
并给每次入库加了超时,连接占用有上限,单批再大也不会拖垮整个平台。 - 设备配置下发与能力刷新会永久卡住:单条结果写回失败后整条流水线停摆,后续配置一直排队。
现在单条失败不影响同批其它设备落库,连续失败会记错误日志并自动收敛;
停机时仍然保证结果必须写回。 - SQLite 下千路压测吞吐被压死,补上了 WAL 模式下缺失的同步级别设置。
- 侧边栏出现两条滚动条(一条自绘、一条系统原生),已收成一条。
- 侧边栏菜单在条目较多时被裁切,已修。
变更
- Linux 与 Windows 单机版对「首次安装」的判定口径统一,两个平台改端口的行为一致。
- 对外开放接口的接入套件(Java/Python/Go 客户端、Postman 与 Apifox 调试集合、签名规范)
已独立成仓,不再随平台安装包交付。README 的「对外开放接口」一节同时给出 GitHub 与
Gitee 两个仓库地址,国内访问更稳定。
升级提示
- 升级前请备份
data/与config/目录。 - 从 1.1.18 升级时,数据库隔离级别会自动切到读已提交。如果现场有特殊要求,
可在 MySQL 配置项里显式指定transactionisolation;不填即为读已提交。 - 已经在用 MySQL 且设备量较大的环境,建议升级后观察一次「设备通道」页的通道数量,
确认与设备实际上报一致。 - 端口配置在首次装机时才允许直接生效;老环境要改端口,请先停服务、改
config/config.env
后再启动,脚本会按新端口重新拉起。
v1.1.18
1.1.18
发布日期:2026-11-09
这次升级的重点是国产化环境:平台现在可以直接跑在人大金仓、阿里 PolarDB 和达梦这三种国产数据库上,
配置里换一行数据库类型即可,不用再改代码。另外录像计划的时段可以直接在时间轴上拖着调,
在线升级的两处硬伤(升级完升级助手消失、换目录升级后服务起不来)也一并修掉了。
新增
- 支持人大金仓(KingbaseES)、阿里 PolarDB、达梦(DM8)三种国产化数据库。在配置文件里选数据库类型即可,
三种库都附带完整的建库脚本与后续升级脚本,装完不需要人工补表。 - 录像计划的时间轴支持拖拽:拖色块中间是整段平移,拖左右两端是改开始/结束时间,自动吸附到 15 分钟刻度。
点空白处仍然是新增一段,单击色块仍然定位到下面的时间输入框。 - 增量升级包支持 Windows:只下载变化的那部分文件即可升级,不必每次拉整个安装包。
- 随包的 nginx 升级到 1.30.6 稳定版。
修复
- 在线升级收尾时会把升级助手自己一起结束掉,导致升级完成后「服务升级」页面一直报「升级助手不可用」,
必须到机器上手工拉起。已修,升级完成后助手会自动重启并继续可用。 - 把安装包解到新目录升级(旧版本常见的做法)后,服务启动即退出,日志里只留一行「进程授权状态不可用」。
原因是配置里的授权目录还指向旧安装位置,现在启动时会自动钉到当前安装目录。 - 达梦数据库上发布 OpenAPI 能力时会莫名回滚:库里把文本补齐成定长,比较时多出尾部空格。
现在比较前两侧都会去掉首尾空白。 - PolarDB 环境下服务启动即失败,已关闭该类型数据库不兼容的客户端预编译。
- 部分 PolarDB 发行版上数据库身份探测直接报错,已改用兼容写法。
- 升级基线上漏了 OpenAPI 的一行安全状态初始数据,新装环境首次打开 OpenAPI 会缺省值。
- 设备管理页头部的「离线」标记原来是灰色,和「在线」的区分度不够,改为红色。
- 「在线用户」页的刷新按钮是灰白底、鼠标悬浮才变蓝,和平台其他刷新按钮不一致,已恢复青绿色。
- 若干页面的「重置」按钮颜色是蓝色,看起来像主操作,统一改成中性灰。
- 报警消息存储开关的说明写的是「默认开启」,实际默认是关闭,容易误判告警管理为什么没有记录。
提示已按实际口径改正。 - 录像计划时间轴的空白区域点了没反应,现在点空白处可以正常新增时段。
变更
- 侧边栏版本徽标点开的升级卡片统一成平台的浮层配色,暗色主题下不再是偏暖的灰色面板。
- 新增的「升级提示」区块统一为琥珀色系,亮色与暗色主题下都清晰可读。
升级提示
- 升级前请备份
data/与config/目录。 - 使用国产数据库时,按
config/config.example.yml里新增的三段示例填写连接信息:
人大金仓默认端口 54321、PolarDB 3306、达梦 5236。达梦的连接串必须带模式名(schema),
否则会出现「建表成功但查不到表」。 - 本版新增达梦的全量建库脚本与升级脚本,升级启动时按所选数据库自动执行,无需人工干预。
- 增量升级包现在 Linux 与 Windows 都可用,只包含变化的文件;升级过程会自动备份被覆盖的文件。
- Linux 与 Windows 单机版均可在「服务升级」页在线升级。
v1.1.17
1.1.17
发布日期:2026-11-04
这次升级把全站界面收拾了一遍:按钮第一次有了统一的配色规则(新增是绿、刷新是青、删除是红、
导出是蓝绿),所有删除确认改成同一种小气泡,并把图像库存取权限拆成了查看、下载、删除三档。
另外补上了几处运维一直在问的能力:定时任务日志一键清理、操作日志能看到接口回了什么、
设备可以用自己的密码参与注册鉴权。
新增
- 图像库权限拆成「查看 / 下载 / 删除」三档,可以按人分配。原来只有一档,
给某人开了图像库就等于让他能删。升级时会按角色现有权限自动补齐,不用手工重配。 - 图像库批量下载改由服务端打包成一个 zip 直接下载,不再逐个文件排队触发浏览器多次弹窗。
- 定时任务日志支持一键清理:可以一次清空当前筛选范围内的执行记录,不必逐条删。
- 操作日志详情现在能看到接口的响应内容(超过 4KB 截断),排查「页面报错了但日志里只有请求」时有用。
- 设备可以配置独立密码参与注册鉴权:不同设备不必再共用一套 SIP 口令。
- 「网络会话」与「媒体观看者」页面支持每 10 秒自动刷新,带倒计时显示,排查会话状态不用手点刷新。
- 设备管理左侧目录栏可以收起,把宽度让给右边的表格;收起再展开时目录展开状态、选中项、
滚动位置都保留。 - 菜单类型的三个页签补上了类型图标,一眼能分清目录、菜单、按钮。
- 升级助手随平台一起升级,助手的改进不再只惠及新装的机器。
修复
- 暗色模式下删除确认气泡是灰底、文字发闷:气泡改用平台统一的浮层底色与描边。
- 删除确认的「确定」按钮原来是普通蓝色,与保存类操作分不清;现在统一是实心红。
- 操作日志详情的「请求参数」永远是空的、「响应数据」从未记录:写操作详情不再丢字段。
- 图像库批量下载接口必然返回 401:下载链接补进免登录白名单后可以正常打包下载。
- 「停用节点」原来点一下就生效,现在会先问一句,避免误停正在承载会话的节点。
- 页面顶部的刷新按钮只有鼠标悬浮时才变青绿,静止时还是白底:页面自己写死的配色副本已清掉。
- 窗口较窄时设备表的操作列被固定住,中间的信息列被压得看不见。
- 首页「信令脉搏」曲线在没有信令时断成两截。
- 系统管理里大量「次级按钮」看着还是默认白底——修掉了 Arco 默认样式盖住平台配色的老问题。
- 空组织、上级平台等表格在窄容器下最后的操作按钮会溢出。
- 自动封禁页去掉了一个点了没用的「调整策略」按钮。
- 安全台账三个页面的筛选改由服务端执行,翻页和统计口径一致。
- 上级平台表的「启用」开关尺寸改回与其他状态列一致。
变更
- 全站按钮统一到一套语义配色:新增绿、刷新青、编辑紫、删除红、导出蓝绿、次级浅蓝,
同一个动作在所有页面一个颜色。按钮尺寸也收敛为三档,原来零散的小尺寸已合并。 - 所有删除确认统一成小气泡:点「删除」在按钮旁弹出,气泡里保留后果说明(如"删除后不可恢复"),
确定按钮是红色。不再出现有的页面弹居中大窗、有的页面弹气泡。 - 系统管理各页的开关统一为圆形、默认尺寸、行间距 10px。
- 上级平台列表把「上级平台」与「上级地址」合并成一列展示,表格少一列、窄屏不再横向滚动。
- 权限工作台把设备编码与名称合并成一列,说明区默认收起,表格可用宽度更大。
- 「调用记录」「OpenAPI 客户端」等页面顶部只保留一颗刷新,按钮按动作重新分色。
升级提示
- 升级前请备份
data/与config/目录。 - 本版新增两组数据库迁移(图像库存档下载、图像库三档权限)与相应的菜单、接口权限种子数据,
升级启动时自动执行,无需人工干预。存量角色会按原有接口权限自动补齐,不需要重新配置权限。 - 图像库权限细分后,原先拥有图像库权限的账号默认同时具备查看、下载、删除,行为与升级前一致;
要收紧时再到角色里逐个改成「只读」或「可下载不可删」。 - 删除确认改成气泡后,删除失败时气泡会关闭,重新点一次「删除」即可重试(权限校验与防重复提交都还在)。
- 设备列表「更多」菜单里的删除、业务目录树右键菜单里的删除仍在弹窗中确认:
下拉菜单点开就会关闭,气泡没有地方显示。其余入口已全部改为气泡。 - Linux 与 Windows 单机版均可在「服务升级」页在线升级。
v1.1.16
1.1.16
发布日期:2026-11-03
本次升级的重点是把「通道配置」重做成一个能一屏看完的工作台,并补上两个运维最常问的事实:
这台设备到底按哪个字符集上报、这次点播请求的是主码流还是子码流。
另有对讲稳定性、云台指令回写和一批界面细节的修复。
新增
- 通道可以指定实时点播的主/子码流:按设备兼容方式分成四组(stream、streamnumber、大华、水星/TP-LINK),
默认「设备默认」即不改动设备原有行为。保存不会打断正在看的画面,界面会明确说明
「当前这场直播是否已经用上所选配置」——新配置从下一次新建直播开始生效。 - 通道配置改成分区工作台(录像 / 报警 / 抓拍 / 状态与维护),不用再在几个页签之间来回猜。
改到一半关窗、翻到上一条/下一条通道、离开页面或刷新浏览器,都会先问一句再走,避免白配一遍。 - 设备详情新增「字符集」一栏:同时显示设备自己声明的字符集和平台实际按哪个解。
两者不一致时会直接标明「声明不可信」——遇到设备名、通道名乱码时,第一眼就能定位原因。 - 设备列表的目录树把在线设备排在最上面,离线和故障的往下沉。
- 侧边栏发现新版本时会提示;「服务升级」页提供定时检查开关,可以自己决定多久查一次。
- 一个离线升级包同时覆盖绿色包与 systemd 两种部署方式,现场不用再分辨该拿哪一个。
- 容器部署支持在页面内完成离线升级。
修复
- 设备名、通道名乱码:部分设备在报文里声明的编码与实际字节不符,平台以前信声明,现在按内容优先判定,
这类设备的中文名可以正常显示。 - 对讲/广播不再因为切标签页或窗口失焦而中断;麦克风被占用或采集途中掉线时会给出可操作的提示。
- 云台与设备配置指令在跨机房链路上偶发「指令发出去了、状态却卡住不动」。现在把「准备」与「发送」拆成两段,
结果回写有独立的处理时间,链路抖动不会被误判成失败。 - 升级到新版本后进地图报「无权限」:补上了地图视图接口的权限迁移。
- 容器部署升级时升级助手起不来的几处目录与默认值错位。
- 视频小窗右侧被裁掉一截。
- 多屏播放页定时刷新会让展开的设备树先折叠再展开。
- SIP 消息时序图里同一毫秒内的请求与应答顺序颠倒。
- 设备卡片视图默认每页改为 12,四列屏不再出现单独一个卡片的空行。
- 发布清单不再把 Linux 绿色包误标成容器部署。
变更
- 「自动升级策略」已移除,改为可在服务升级页开关的定时检查——不再由平台单方面决定什么时候升级。
- 设备目录树的「在线优先」排序改由接口侧完成,翻页与排序在全量范围内一致。
- SIP 追踪的会话列表改为滚动分页,不再一次返回全部;查询取消条数上限,改为按时间窗取全量。
- 全局滚动条颜色改用主题变量,暗色模式下不再是一条亮色横杠。
升级提示
- 升级前请备份
data/与config/目录。 - 本版新增两组数据库迁移(通道播放码流配置、设备上报字符集),启动时自动执行,无需人工干预。
- 通道的「播放码流」默认是「设备默认」,升级后点播行为与升级前完全一致,需要时再逐个通道调整。
- Linux 与 Windows 单机版均可在「服务升级」页在线升级;Windows 版首次升级前请确认当前版本不低于 1.1.15。
v1.1.15
1.1.15
发布日期:2026-10-29
本次升级的重点是让 Windows 单机版也能在线升级,并修掉一批只在新机器上才会暴露的启动问题;
另有录像计划、对讲和界面细节的修复。
新增
- Windows 单机版支持在线升级:安装后可在「服务升级」页直接换到新版本,不再提示"当前平台不支持"。
升级过程带容量预检与失败回滚,换版本失败会按快照自动还原到升级前的状态。
修复
- Windows 机器首次启动时,录像查询初始化的报错被显示成"端口被占用、监听 IP 不可达",
实际是系统缺少时区数据。已把时区数据内置到程序中,新机器不再需要额外环境。 - Windows 上执行在线升级必定失败(同步目录时被系统拒绝),已按平台分开处理。
- 升级换版本后旧进程停不干净:界面提示"已停止",端口却仍被占用,紧接着重启会卡在端口检查。
现在按安装目录精确识别进程,并等端口真正释放后再启动。 - 全新部署(MySQL)启动阶段可能失败:数据库里各表排序规则不统一,权限注册联表查询时报错。已统一排序规则。
- 公网 / NAT 环境下对讲连不上或连接很慢:修正了私有地址被当成可达目标的判断,
并缩短了音频通道的建立等待。 - 录像计划停用后,之前拉起的视频流仍挂在服务器上不释放(重启服务后尤其明显),现在会正确回收。
- 通道列表按在线状态排序,在线设备排在最前。
- 界面细节统一:弹窗与抽屉的"取消"按钮改为平面样式;录像计划删除改用标准警示框(可重试、防重复点击);
图像库的批量操作样式对齐;暗色模式下排班表格的选中格对比度提高。
变更
- 「国标服务配置」中的「设备接入地址」两项(扫码配网地址、抓拍回传地址)已移除。
这两个地址现在由平台按实际访问路径自动推导,不需要再手工填写。
旧配置文件里遗留的这两段会被忽略,不影响启动,建议顺便删除。
升级提示
- 升级前请备份
data/与config/目录。 - Windows 单机版从 1.1.14 及更早版本升级,请先用全量安装包覆盖安装一次;
装好本版之后,「服务升级」页才能正常使用。 - Linux 版本不受影响,可直接使用在线升级。
v1.1.14
1.1.14
发布日期:2026-10-27
本次升级的重点是「能和别人的平台对上」和「装好就能自己升级」:国标级联与 LiveGBS、EasyGBS、WVP 等主流平台做了双向实测对接,把订阅只活一分钟、语音广播没声音、回放十秒必失败这些问题逐条修掉;在线升级从这一版起出厂即可用,不用再手工填更新地址;同时新增一批设备控制接口和 Java 开发包,设备列表也加了一份上手引导。
新增
- 在线升级出厂可用:更新地址与发布方签名公钥随程序一起下发,装好打开「检查更新」就能用。自建的更新服务仍可另行配置,两边签名并存、不会互相挤掉。
- 国标级联正式支持与主流平台双向对接:我方作下级可向上级注册、报目录、送实时流、发录像与报警;作上级可接收下级平台注册并下发控制。目录下发时带上云台类型,上级平台里的云台入口不再是「类型未知」。
- 新增 Java 开发包(SDK)与接口契约校验:第三方系统用 Java 接入时不必再手写 HTTP 与签名逻辑,随包附可直接运行的示例。
- 设备操控类接口补充一批:设备与通道的抓图、云台控制、录像与布防等操作都可通过接口调用,并随 OpenAPI 文档给出参数说明。
- 设备列表加入上手引导:首次进入按「列表 / 卡片 / 地图 → 设备 / 通道 → 目录树 → 每行按钮 → 双击穿透」逐步高亮讲解,工具栏上的问号可随时重看。
- 业务分组视图改为按通道展示:该视图的目录树里只有目录和通道,选中目录直接列出通道;离开该视图后自动回到你原来在看的内容。
修复
- 修复级联目录订阅「只活一个周期」的问题:回执里补上事件标识,订阅到期后自动重建,不再出现上级平台过一分钟就看不到设备。
- 修复级联语音广播与对讲在部分上级平台完全没声音的问题:兼容对方不同的地址与主题写法。
- 修复级联回放、下载被拒的问题:兼容上级查询里不带文件路径、时间写成零点的写法,录像查询结果不完整时不再整批丢弃。
- 修复级联回放「十秒必失败」:收流等待改为固定上限并可靠清理,暂停中的会话不会被拆掉;点播邀请被拒绝时立即给出对方的原因,不再空等。
- 修复级联控制消息被回 403、停止与暂停拖动失效的问题:会话身份改为按来源地址与平台编码识别,端口变化不再被误判成陌生对端。
- 修复应答与结束消息发到本地地址而非对端真实地址的问题,避免上级平台收不到确认、回放只能等超时。
- 修复下载与更新文件在跳转到内容分发地址时被拒绝的问题,安装包可从官方地址正常下载。
- 修复云录像在上级平台拉流、设备主动推流时不录制的问题:现在只要有流就开始录,不再只认浏览器点播这一个入口。
- 修复媒体节点重启后云端录像被判失败、必须人工重开的问题:节点暂时不可达改为「等待」,恢复后自动继续。
- 修复停播收尾报错被当成「参数错误」返回、导致前端要等十几秒才能重播的问题。
- 修复播放器失败实例被重复使用、以及云台操作报错弹两条的问题。
- 修复手动刷新目录后残留已删除通道、设备树叶子节点看不到通道数的问题。
- 修复下级平台上报 8 位行政区划码、注册不带域信息时整批目录被回滚或注册失败的问题。
- 修复告警被静默丢弃时无任何记录的问题,现在会留下原因和处理方向。
- 修复登录页在手机上一屏放不下、登录按钮看不到的问题。
- 修复首页信令曲线断成几段、定时任务页与录像计划表的多余滚动条等界面问题。
变更
- 云录像判定口径调整:媒体节点不可用不再算「录像失败」,通道进入等待状态,节点恢复后自动续录;对账时「媒体已停」视为清理成功。
- 录像查询的时间跨度不再作为拒绝条件,只做常规长度提示。
- 视频流无人观看的回收判断改为读取真实观看人数,避免还在播放时被回收。
- 对讲会话相关数据表补齐接口所需字段与索引,升级启动时自动完成,无需手工执行脚本。
升级提示
- 升级前请停止服务,并备份
data与config目录。 - 从 1.1.13 升级不需要修改配置文件;数据库字段由启动流程自动补齐。
- 在线升级从本版起才内置官方更新地址,1.1.13 及更早版本仍需用安装包升级一次,之后即可在页面里检查更新。
- 若使用过自建的更新服务,原有配置会继续生效,与官方源并存。
- 安装包内置的 ffmpeg 仍为精简版(只保留抓拍与转推用到的编解码),功能与上一版一致。
v1.1.13
1.1.13
发布日期:2026-10-22
本次升级把「设备地图」做成了真正能用的找人找点位工具:左栏换成只列有位置的通道树,点位卡片直接起直播、看轨迹、改位置;同时修掉登录后整站打不开、能力授权保存失败、20 位国标编码被抹位、抓拍图归属显示主键等几个现场反馈的问题,并把交付包的流媒体目录浏览从出厂就关掉。
新增
- 地图左栏改为「可定位通道树」:只列出设置了位置的通道,按设备分组,点通道直接定位到点位并弹出卡片,点设备一次看全该设备的通道;顶部可按部门或业务分组限定范围,底部提示还有多少通道没设位置。
- 地图点位卡片动作重排:播放视频、查看轨迹、设置位置、通道详情四颗按钮各用一色,一眼分清「播 / 看 / 改 / 跳」。
- 地图上的播放改为贴着地图的小窗,不再整页弹窗;小窗里可以一键进入播放控制台,通道离线时播放按钮直接置灰。
- 「设为默认中心」改为两步操作:先点按钮进入选点状态,在地图上点一下确认位置,再保存。取消或按 Esc 不写任何数据。
- 设备地图支持按时间播放移动轨迹,可看速度与轨迹点,支持一键回到默认中心。
- 媒体节点支持在页面上直接修改 WebRTC 端口,并写回部署端口规划,不用再手工改配置文件。
修复
- 修复登录后整站打不开的问题:接口基址结尾多一个斜杠时会拼出
//api/...,浏览器把api当成主机名,页面所有请求失败。现在基址统一去掉结尾斜杠。 - 修复录像查询与回放失败时只弹一串英文报错的问题,改为中文原因提示。
- 修复回放通道参数被当成数字解析、20 位国标编码末位被抹成 0 导致回放找不到通道的问题。
- 修复能力授权保存偶发失败(返回 503)的问题:权限校验移出事务,避免单连接数据库自锁,新建的第三方客户端现在能正常授权。
- 修复抓拍图的设备与通道归属显示成数据库主键的问题,改为按编码与名称双路回退。
- 修复点播首帧判定过早、画面还没到就认为已出图的问题;播放器资源改为按内容版本化,升级后不会再残留旧播放器缓存。
- 修复服务升级页首屏探测失败时反复弹出同一个全局提示的问题。
变更
- 交付包内的流媒体服务出厂即关闭目录浏览,并在每次启动时强制保持关闭,避免同网段用户在未登录状态下浏览、下载录像与截图目录。
- 存量环境升级会补齐「固件仓库」菜单与对应权限,此前升级上来的环境该页面会提示找不到。
- 许可证与第三方组件声明整理为根目录的第三方声明文件,README 不再保留上游具体团队署名。
升级提示
- 升级前请停止服务,并备份
data与config目录。 - 从 1.1.12 升级不需要改
config/config.env;WebRTC 端口如在页面上改过,会同步写回端口规划文件。 - 地图「设为默认中心」的用法变了:先进入选点、在地图上点位置,再保存。
- 安装包内置的 ffmpeg 仍为精简版(只保留抓拍与转推用到的编解码),功能与上一版一致。