在EasyGBS的平臺級聯功能測驗中,我們發現一個問題,就是當EasyGBS向多個上級平臺級聯的時候,會出現選擇前后一個平臺的通道,影響到前一個平臺的設備選擇的情況,


經過排查分析,發現是在級聯選擇通道的時候,沒有指定級聯資訊的id,
else if opt == "del" {
for i, v := range ids {
ids := strings.Split(v, ",")
if len(ids) != 2 {
break
}
if i == 0 {
sql = fmt.Sprintf(`(channel_id = '%s' and device_id = '%s' )`, ids[0], ids[1])
} else {
sql = fmt.Sprintf(` %s or (channel_id = '%s' and device_id = '%s')`, sql, ids[0], ids[1])
}
}
if len(ids) > 0 {
if err := db.SQLite.Delete(models.CascadeChannel{}, sql).Error; err != nil {
c.AbortWithStatusJSON(400, err.Error())
return
}
}
}
需要添加以下代碼
for i, v := range ids {
ids := strings.Split(v, ",")
if len(ids) != 2 {
break
}
if i == 0 {
sql = fmt.Sprintf(`(channel_id = '%s' and device_id = '%s' and cascade_id = '%d')`, ids[0], ids[1], cascade_id)
} else {
sql = fmt.Sprintf(` %s or (channel_id = '%s' and device_id = '%s' and cascade_id = '%d')`, sql, ids[0], ids[1], cascade_id)
}
}
if len(ids) > 0 {
if err := db.SQLite.Delete(models.CascadeChannel{}, sql).Error; err != nil {
c.AbortWithStatusJSON(400, err.Error())
return
}
}
前端修改后一切正常,也不會影響到別的級聯資訊,

TSINGSEE青犀視頻團隊曾經介紹過不少平臺對接EasyGBS的方法,比如:EasyGBS客戶端作為上級平臺如何跟下級海康8700平臺對接,EasyGBS如何對接英飛拓視頻服務平臺,國標流媒體服務器對接中興力維平臺,大家可以了解一下,
目前我們也已經推出國標GB28181視頻平臺EasyGBS推流軟體EasyGBD,在使用手機等移動設備進行執法或者戶外監控的時候,能夠實作戶外移動監控的網頁無插件直播(EasyGBD在移動執法中的應用),

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/140530.html
標籤:其他
