;!(function () { let _content = $("" + "
\n" + ""); $("#jessibucaContainerHistory").append(_content); var stream_path; var hourTimestamp = 3600 * 1000; var dayTimestamp = hourTimestamp * 24; var currentTimer; let decoder = queryParam('decoder') || 'ff'; var container = document.getElementById("container"); var h5lc; var ffurl; var elem; function Historypler(opt) { if (typeof option.elem === 'string') { opt.elem = document.getElementById(opt.elem); } if (!option.elem) { throw new Error('需要容器'); return; } elem = opt.elem; ffurl = opt.ffurl; } $("#progressTime").ProgressTime({ container: "progressTime", startTime: new Date(formatDate(new Date(new Date().getTime() - dayTimestamp * 3), "YYYY/MM/DD 00:00:00")), endTime: new Date(formatDate(new Date(), "YYYY/MM/DD 00:00:00")), currentTime: new Date(formatDate(new Date(new Date().getTime() - dayTimestamp * 2), "YYYY/MM/DD 12:00:00")), interval: 300, delay: 2000, isNow: false, // 是否显示右侧回到当前时间 toPlay: false, // 渲染是否完成 animateFinish: false, // 动画是否完成 callback: function (config) { console.log(config); currentTimer = config.time; }, animateCallback: function (config) { // 假如动画完成之后请求数据需要两秒 var timer = setTimeout(function () { progressTime.options.toPlay = false; // 两秒之后再继续走播放条 clearTimeout(timer); }, 0); } }); Historypler.prototype.playVideo = function (video_id, starttime) { $.ajax({ type: "get", url: "../../webapi/media/live?param=" + video_id + "&startTime=" + starttime, timeout: 5000, async: false, success: function (result) { stream_path = result.streamPath; $play.style.display = 'none'; $stop.style.display = 'inline'; h5lc.onLoad = function () { h5lc = new Jessibuca({container, decoder: ffurl, videoBuffer: 1000}); this.play() this.play(result.jessicaURL); } } }); } Historypler.prototype.closeVideo = function (streamPath) { this.h5lc.destroy(); if (streamPath && typeof streamPath === "String") { $.ajax({ type: "get", url: "../../webapi/media/stop?param=" + streamPath, async: false, success: function (result) { this.elem.style.display = 'none'; } }); } } function queryParam(name, url) { var search = window.location.search; var qArr = ''; var key = {}; if (url) { qArr = url.split("?")[1].split("&") } else { if (!window.location.search) { return } qArr = search.substr(1).split("&") } for (var i = 0; i < qArr.length; i++) { var firstPos = qArr[i].indexOf('='); key[qArr[i].slice(0, firstPos)] = qArr[i].slice(firstPos + 1) } if (name) { return key[name] } else { if (url) { return key[name] } else { return key } } } window.Historypler = Historypler; })()