当前位置:网站首页>How to handle the abnormal state of easycvr national standard cascading superior display?

How to handle the abnormal state of easycvr national standard cascading superior display?

2022-06-24 02:14:00 Tsingsee green rhino video

EasyCVR The cascade function of is to pass the channel above us through the national standard sip A way to push the agreement to the superior , However, different superior platforms have their own characteristics in docking settings , When we configure , It also needs to be adjusted according to the properties of different platforms .

EasyCVR When the national standard cascades to the upper level , The phenomenon of abnormal cascade state occurs . To solve this problem, we need to make adjustments , So first of all, let's do packet capturing and troubleshooting . The packet capturing file of the registered signaling is as follows :

We can see from the above that Register message sending to There is a splicing error in the field , This error is mainly caused by the misoperation of the last submission point , So we need to optimize the code for this submission , The optimized reference code is as follows :

@@ -260,6 +260,7 @@ func (c *Client) ClientOnline(b bool) {
    //if strings.ToUpper(c.Transport.Protocol) == "UDP" {
    c.Cascade.Online = b
    db.SQLite.Model(c.Cascade).Where("id=?", c.Cascade.ID).Update("online", b)
    log.Printf(" Cascade status update [%d], Online[%d]:", c.Cascade.ID, b)
    //} else {
    //  if b {
    //      c.Cascade.Online = b
    @@ -367,7 +368,7 @@ func (c *Client) MakeRequest(method, to string, tag string, body string) (req *R
        localRealm = c.Cascade.Username[0:10]
    } //c.Client.Cascade.Username,localRealm,
    buf.WriteString(fmt.Sprintf("From: <sip:%[email protected]%s>;tag=%s\r\n", c.Cascade.Username, localRealm, tag))
    buf.WriteString(fmt.Sprintf("To: <sip:%[email protected]%s>;tag=%s\r\n", c.Cascade.Serial, c.Cascade.Realm))
    buf.WriteString(fmt.Sprintf("To: <sip:%[email protected]%s>\r\n", c.Cascade.Serial, c.Cascade.Realm))
    buf.WriteString(fmt.Sprintf("Call-ID: %s\r\n", GenCallID()))
    c.cseq++
    buf.WriteString(fmt.Sprintf("CSeq: %d %s\r\n", c.cseq, strings.ToUpper(method)))

Security video cloud service platform EasyCVR As a mature and stable video distribution platform , There is no need to adjust the existing monitoring architecture , Support CDN Push flow , Flexible to adapt to the original architecture ; And flexible expansion on demand 、 Shrinking resources , No plug-in installation 、 Browser restrictions, etc , No plug-ins are implemented 、 Multi platform free viewing playback .

Besides ,EasyCVR Has been expanding related functions such as intelligent analysis , Among them, face recognition function and traffic statistics function have been applied in some projects , Soon traffic statistics 、 License plate recognition and other functions will also be online . If you still want to know more or do actual deployment testing , Welcome to download .

原网站

版权声明
本文为[Tsingsee green rhino video]所创,转载请带上原文链接,感谢
https://yzsam.com/2021/11/20211103184117226x.html