RTSP網路攝像頭網頁無外掛直播視訊平臺EasyNVR自定義標題和CopyRight步驟

EasyNVR發表於2020-09-28

由於EasyNVR視訊平臺能夠直接整合到其他的平臺定製專屬於自己企業的視訊監控方案,所以很多專案團隊都會選擇變更EasyNVR的標題以及CopyRight,換成專案相關的內容,這個需求EasyNVR也是可以實現的,下面就來講一下實現方法。

84.png

之前的方式是從前端程式碼裡面搜尋相關名字直接修改,但是這種方法要呼叫程式碼並找到該引數,操作起來比較麻煩,所以我們選擇了一種更為簡便的方法,先將這個引數從後端獲取,前端就很方便可以修改標題和CopyRight。

/**
 * @api {get} /api/v1/getserverinfo 獲取平臺執行資訊
 * @apiGroup sys
 *
 * @apiUse ack
 * @apiSuccess (200) {String} EasyDarwin.Body.Authorization 授權物件
 * @apiSuccess (200) {String} EasyDarwin.Body.Hardware 硬體資訊
 * @apiSuccess (200) {String} EasyDarwin.Body.InterfaceVersion 介面版本
 * @apiSuccess (200) {Boolean} EasyDarwin.Body.IsDemo 演示版本
 * @apiSuccess (200) {Boolean} EasyDarwin.Body.LiveSteamAuth 直播頁面鑑權
 * @apiSuccess (200) {Number} EasyDarwin.Body.RemainDays 剩餘授權時間(天)
 * @apiSuccess (200) {String} EasyDarwin.Body.RunningTime 執行時間
 * @apiSuccess (200) {String} EasyDarwin.Body.ServerTime 系統時間
 * @apiSuccess (200) {String} EasyDarwin.Body.StartUpTime 啟動時間
 * @apiSuccess (200) {String} EasyDarwin.Body.Server 軟體資訊
 * @apiSuccess (200) {Number} EasyDarwin.Body.ChannelCount 通道數
 * @apiSuccess (200) {String} EasyDarwin.Body.VersionType 版本型別
 * @apiSuccess (200) {String} EasyDarwin.Body.LogoText 標題
 * @apiSuccess (200) {String} EasyDarwin.Body.CopyRight CopyRight
 */
func (h *APIHandler) GetServerInfo(c *gin.Context) {
   ack := NewMsgAck()
   ack.EasyDarwin.Header.MessageType = MSG_SC_SERVER_INFO_ACK
   sec := utils.Conf().Section("base_config")
   ack.EasyDarwin.Body = map[string]interface{}{
      "Authorization":    license.Authorization,
      "VersionType":      fmt.Sprintf("%v", license.VersionType),
      "Hardware":         strings.ToUpper(runtime.GOARCH),
      "InterfaceVersion": InterfaceVersion,
      "IsDemo":           sec.Key("demo").MustBool(false),
      "IsRtsp":           sec.Key("enable_rtsp").MustBool(false),
      "LiveStreamAuth":   sec.Key("live_streaming_auth").MustBool(false),
      "ChannelCount":     license.ChannelCount,
      "RemainDays":       license.RemainDays(),
      "ActiveOnline":     license.ActiveOnline,
      "RunningTime":      utils.UpTimeString(),
      "ServerTime":       utils.DateTime(time.Now()),
      "StartUpTime":      utils.DateTime(utils.StartTime),
      "Server":           fmt.Sprintf("%s/%s (Build/%s; Platform/%s;)", "EasyNVR", global.BuildVersion, BuildTime.Format(utils.BuildTimeLayout), strings.Title(runtime.GOOS)),
      "LogoText":         sec.Key("logoText").MustString("EasyNVR"),
      "CopyRight":        sec.Key("copyRight").MustString("EasyNVR"),
   }
   c.IndentedJSON(http.StatusOK, ack)
}

注:這些引數是從配置檔案讀取的。

85.png

至此後端就返回了相關引數。然後前端在相關地方將引數改為從後端獲取的值。

    updateServerInfo(state, serverInfo) {
      state.serverInfo = serverInfo;
      state.logoText = serverInfo.LogoText;
    },

可以看到標題已經修改成了任意字元,如果有使用者有此方面的需要,可以聯絡我們協助更改。

86.png

EasyNVR視訊平臺經過多年的積累,已經是一套成熟且完善的視訊平臺了,使用者可以通過網頁直接訪問視訊監控,也可以通過呼叫二次開發介面進行二次開發或者整合。

如果還想了解更多視訊相關解決方案,歡迎進入TSINGSEE青犀視訊查閱,我們的視訊平臺都有演示方案可瀏覽,同時也支援下載試用版本自行測試。

相關文章