@tianqing123
2017-09-20T03:48:15.000000Z
字数 1222
阅读 874
boss
1.激活
2.签到,此时运行定时任务
3.建立长连接
4.前端接收到服务端的数据(发布的频道),并通知app端更新。
5.app端根据(频道数据?康和沈定数据格式)去下载、更新资源,处理完成后通知前端
6.前端接收到app通知,告诉服务端已完成该次处理。
7.前端过滤出符合播放的频道和节目(同一时间有且只有一个频道和一个节目,定时节目优先于普通节目播放)
8.前端处理数据发送给app端,开始播放
其他:
定时任务执行,前端重新过滤数据,发送给app端,重新播放
APP端接收到播放的数据{id:'频道ID',name:'频道名字',timing:[ // 定时节目{name:'节目名称',id:'节目id',startTime:'开始时间',endTime:'失效时间',cron:'定时触发',time:'播放时长',layout:{ // 画布width:'宽',height:'高',background:'背景'},plugins:[ // 控件{ // 视频控件id:'控件唯一标识GUID', // 前端生成type:'video', // 控件类型: 视频w:'宽',h:'高',x:'左偏移',y:'上偏移',zIndex:'层级',text:'视频控件',bg:'控件背景色',css:'后台页面展示css', // 终端忽略curr:'是否当前操作',// 终端忽略res:[ // 资源{name:'资源名称',url:'资源下载路径',size:'资源大小',id:'资源唯一标识GUID', // 前端生成time:'播放时长,默认8s',qrcode:{w:'宽',h:'高',x:'左偏移',y:'上偏移',img:'二维码中的图片',url:'扫码路径'}}]},{ // 图片控件 同视频控件type:'pic',text:'图片控件'},{ // 直播控件 同视频控件type:'live_stream',text:'直播控件',opts:{url:'直播链接'},res:null // 没有资源这个东西},{ // 文本控件 同视频控件type:'text',text:'文本控件',opts:{"color": "#fff", // 文字颜色"fontsize": "16",// 文字大小"bg": "rgba(0, 0, 0, 0.3)",// 文本背景"fontweight": "常规",// 字体粗细"font": "微软雅黑",// 字体类型"time": "1",// 间隔时间"direction": "自左向右"// 跑马灯方向},res:[{没有qrcode}]},{ // 应用控件 同视频控件type:'app',text:'应用控件',opts:{type:'应用类型', //[在线,离线][online,offline]url:'在线链接、离线包链接'},res:null // 没有资源这个东西}]}],default:[ // 常规节目 同定时节目{没有cron 定时触发这一项}]}