EasyCVR視頻平臺是TSINGSEE青犀視頻今年開發的新平臺,經過不斷測驗后才上線,不過目前EasyCVR的功能也在更新中,我們最近就在測驗EasyCVR的分組功能,測驗完畢后會將該功能更新至最新版本中,
在我們測驗EasyCVR分組功能時,給分組添加GB28181和Ehome協議的設備后,呼叫介面卻沒有回傳對應的通道,但是資料庫國標設備和Ehome設備卻已經顯示添加成功了,
資料庫資料如下表,其中label_id是分組id;channel_id是通道id;channel_device_id是設備id,從表中可以看出分組12是擁有4,5,6三個設備的,
但是在呼叫介面回傳資料只顯示了一個,
以下是回傳通道的代碼:
func Getchannel(data interface{}) ([]map[string]interface{}, error) {
channels, ok := data.(*[]result)
rows := make([]map[string]interface{}, 0)
if !ok {
return rows, errors.New("資料格式錯誤")
}
fmt.Println(channels)
for _, value := range *channels {
if value.ChannelType == "GB" {
gbschannels := make([]*models.Channel, 0)
q := db.SQLite.Model(models.Channel{}).Where("index = ?", value.DeviceId)
q.Find(&gbschannels)
if len(gbschannels) != 1 {
continue
}
//設備下通道[名稱][啟用][在線][錄像][音頻][按需]欄位轉換
//[在線]
if gbschannels[0].Online() {
value.ChannelOnline = 1
} else {
value.ChannelOnline = 0
}
將列印出來的sql陳述句在資料庫中執行,發現也是報錯的:
SELECT * FROM “t_channels” WHERE (index = ‘6’)
經過查閱資料,我們了解到,index是資料庫中的關鍵字,不能夠當做列名直接查詢,資料庫關鍵字參考需要攜帶反引號,
修改后的代碼如下:
修改后查詢如下:
呼叫介面后通道回傳成功,目前的EasyCVR版本中暫時沒有該功能,不過在不久將會上線,如果大家需要測驗EasyCVR,歡迎聯系我們獲取測驗賬號進行測驗,更多視頻相關解決方案,也可以聯系我們了解,
EasyCVR視頻播放:
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/240120.html
標籤:其他
上一篇:12.19-12.26任務總結
下一篇:智能車小白學習日記
