• RTSP协议视频智能分析平台EasyNVR如何通过国标GB28181协议接入浪潮上级平台?


    浪潮平台具有政务、企业、行业信息化软件、终端产品和解决方案,由于浪潮平台支持国标GB28181协议,不少企业在选择浪潮平台时都需要通过国标GB28181协议与其他平台级联。

    EasyNVR具备良好的开放性,并且支持二次开发,很多用户都会选择EasyNVR作为浪潮平台的下级平台。但是TSINGSEE青犀视频开发人员在将EasyNVR接入浪潮平台时,发现偶尔无法接入的问题。

    我们详细看下图,最左边的图是EasyNVR使用GB28181协议接入浪潮上级平台的抓包图,从抓包可以看出实际是接入不进去的;右边两张图可以看出使用其他下级平台和海康摄像头接入浪潮上级平台,是可以接入的。

    观察抓包图,对比最左的图和右边两张图,发现左图EasyNVR内少了@ip:端口。对此我们需要找到发送sip信息的地方进行修改。

    修改如下:

    func (c *Client) MakeRequest(method, to string, body string) (req *Request, err error) {
       buf := bytes.NewBufferString("")
       sip := c.Cascade.Serial + "@" + c.Cascade.Realm
       buf.WriteString(fmt.Sprintf("%s sip:%s %s
    ", strings.ToUpper(method), sip, SIP_VERSION))
       buf.WriteString(fmt.Sprintf("Via: %s/%s %s:%d;rport;branch=%s
    ", SIP_VERSION, strings.ToUpper(c.Cascade.CommandTransport), c.LocalHost, c.LocalPort, GenBranch()))
       buf.WriteString(fmt.Sprintf("From: <sip:%s@%s>;tag=%s
    ", c.LocalSerial, c.Cascade.Realm, GenTag()))
       buf.WriteString(fmt.Sprintf("To: <sip:%s>
    ", to))
       buf.WriteString(fmt.Sprintf("Call-ID: %s
    ", GenCallID()))
       c.cseq++
       buf.WriteString(fmt.Sprintf("CSeq: %d %s
    ", c.cseq, strings.ToUpper(method)))
       buf.WriteString(fmt.Sprintf("Max-Forwards: 70
    "))
       buf.WriteString(fmt.Sprintf("User-Agent: EasyGBS
    "))
       req, err = UnmarshalRequest(buf.String(), "")
       if err != nil {
          return
       }
       req.SetBody(body)
       return
    }
    
    

    修改后重新抓包检查,返回200,则代表接入成功,至此该问题成功解决。

    一般只要上级平台支持国标协议,都可与TSINGSEE青犀视频EasyNVR视频平台进行级联,我们之前就讲过EasyNVR级联EasyGBS的方式,大家可以了解一下:RTSP协议视频平台EasyNVR通过GB28181级联国标平台EasyGBS操作步骤介绍

    如果还想了解更多视频平台的级联或者操作的相关内容,可以关注我们的博客,如需直接测试,也可联系我们获取测试账号,我们欢迎大家的咨询了解。

  • 相关阅读:
    企业微信api接口调用-触发推送企业微信微信好友
    企业微信api接口调用-触发推送企业微信微信好友
    企业微信api接口调用-企业微信好友收发消息
    抖音api接口调用-同步抖音推荐的好友
    <转载>医学图像存储与传输系统(PACS)
    <转载>RESTful API 最佳实践
    <转载>DICOMweb——将DICOM影像接入互联网
    API设计规范---RESTful架构详解
    开源医学影像平台---Cornerstonejs开发指南
    开源医学影像平台---Cornerstonejs学习笔记<5>
  • 原文地址:https://www.cnblogs.com/EasyNVR/p/14189945.html
Copyright © 2020-2023  润新知