视频联网云平台EasyCVR把传统安防技术、视频智能分析、多媒体通信、分布式存储、告警联动等关键技术很好融合在一起,充分整合、利用视频安防信息资源,为用户提供统一高效的服务,加快数字化、智能化的视频网络监控发展,引领安防软件平台技术架构新方向。
EasyCVR级联通道前端不显示设备国标编号问题
EasyCVR能够对上级平台进行级联,包括国标GB28181协议设备以及RTSP协议设备。本文讲的是EasyCVR级联国标设备,级联通道选择通道列表时,前端显示设备的国标编号为空。
我们按F12调出开发者模式,调试排除前端问题,发现后端返回的DeviceID为空。
RTSP、hksdk通道级联时通道所在的国标设备编号,应与当前级联对象中的Sip认证用户一致,如果为空则和ini配置文件中的SIP服务serial一致。
针对此问题,我们修改下前端代码,如下所示:
//Oscar:rtsp,sdk通道级联
serial := utils.Conf().Section("sip").Key("serial").MustString("34020000002000000001")
cascade := make([]*models.Cascade, 0)
q := db.SQLite.Model(models.Cascade{}).Where("[id]=?",id)
q.Find(&cascade)
if len(cascade) == 1{
serial = cascade[0].Username
}
随后修改下后端代码,如下所示:
//Oscar:rtsp,sdk通道级联
serial := utils.Conf().Section("sip").Key("serial").MustString("34020000002000000001")
cascade := make([]*models.Cascade, 0)
q = db.SQLite.Model(models.Cascade{}).Where("[id]=?",id)
q.Find(&cascade)
if len(cascade) == 1{
if cascade[0].Username != ""{
serial = cascade[0].Username
}
}
修改完成后则问题解决。
注:此代码仅为测试代码,开发者可参考,也可根据自身需求另写代码。