随笔 - 936  文章 - 0  评论 - 3  阅读 - 30万

【开发记录】国标GB28181协议国标视频平台EasyGBS云端录像批量设置功能开发

目前EasyGBS云端录像功能都是单个通道分开设置,在通道数多的情况的下,操作非常繁琐不便,因此我们决定对该处功能进行升级调整。(关于EasyGBS云端录像的其他内容,可以点击如何修改云端录像的存储位置云端录像与按需直播是否可以同时开启国标通道录像云端存储查询功能。)

在进行了不同形式的调整测试之后,我们打算添加批量设置云端录像的功能,并且可以对录像的时间段进行控制。

添加如下批量设置录像计划代码:

for _, v := range bodyMap {
        device := models.GetDevice(v.GetString("DeviceId"))

        if device == nil {
            c.AbortWithStatusJSON(400, fmt.Sprintf("device[%s] not found", v.GetString("DeviceId")))
            return
        }
        channelInfo := models.GetChannel(v.GetString("ChannelId"), v.GetString("DeviceId"))
        if channelInfo == nil {
            c.AbortWithStatusJSON(400, fmt.Sprintf("channel[%s] not found", v.GetString("ChannelId")))
            return
        }
        var updateMap = map[string]interface{}{"record": recordDay,
            "record_plan_switch": v.GetBool("RecordPlanSwitch")} //, "record_plan": string(weekJson.ToJSON())
        if v.GetString("RecordPlan") != "" {
            recordPlan := v.GetString("RecordPlan")
            recordPlanmap, err := values.NewValuesFromJSON([]byte(recordPlan))
            if err != nil {
                c.AbortWithStatusJSON(400, err.Error())
                return
            }
            //判断录像计划数据中每日的字段是否存在
            if !checkMap(recordPlanmap) {
                c.AbortWithStatusJSON(400, errors.New("请传入有效的数据"))
            }
            updateMap["record_plan"] = recordPlan
        }
        db.SQLite.Model(models.Channel{}).Where("id = ? and device_id=?",

修改代码后,EasyGBS云端录像可以配合前端页面对多个通道进行批量设置录像计划:

用户在界面点击批量设置过后,录像时间能够正常的按照设置的录像时间段来进行录像,最终达到要求。

EasyGBS视频平台已经运用到多个不同的领域及场景,比如:应急管理综合应用平台安保行业日常巡查视频监控系统,大家有兴趣可以去了解一下。同时,EasyGBS平台提供测试版本,欢迎大家的试用。

posted on   EasyGBS  阅读(145)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示