上一篇我们讲到了EasyDSS视频智能直播点播平台在演示模式下登录5分钟后强制跳转登录页的实现过程,大家也可以去了解一下。EasyDSS视频平台界面可以播放ws-flv、flv、hls三种格式的视频流。

由于ws-flv视频流的播放是近期更新后新增的功能,因此在做EasyDSS视频平台演示模式登录机制的时候,需要格外注意到ws-flv格式的兼容。如何在EasyDSS演示模式下播放ws_flv三分钟之后跳转到登录页面?我们本文和大家分享一下。

在调整之前,如果在EasyDSS内打开ws_flv播放页面的话,会一直播放视频,不会自动关闭,造成了很大的流量浪费。

因为ws_flv是通过websocket进行通信连接的,WebSocket是一种在单个TCP连接上进行全双工通信的协议,所以在三分钟一到往websocket通道里面写入一个前端可以识别的字段,之后前端获得字段信息,进行跳转到登录页面。

if dao.SYSConfig().Demo {
   if demoTime.Before(time.Now()) {
      log.Println("Demo mode timeout")
      err = ws.WriteMessage(websocket.BinaryMessage, []byte("Unauthorized"))
      if err != nil {
         log.Println(err)
         return
      }
      c.AbortWithStatusJSON(http.StatusGone, consts.MsgErrorUnauthorized)
      return
   }
}

在EasyDSS支持ws-flv之前,仅能播放http-flv格式视频流,为了更好的节省服务器资源和带宽,并且能够更实时地进行通讯,我们将WebSocket协议应用了起来,与HTTP不同的是,Websocket需要先创建连接,这就使得其成为一种有状态的协议,之后通信时可以省略部分状态信息。

EasyDSS视频平台作为支持RTMP协议的视频流媒体转码分发服务,功能完备,如果大家想了解更多关于EasyDSS相关的内容,欢迎联系我们或者访问TSINGSEE青犀视频官方网站。

posted on 2020-12-04 17:39  EasyDSS  阅读(204)  评论(0编辑  收藏  举报