From bef232376bcb7d6dc848d223aa776da21c12b972 Mon Sep 17 00:00:00 2001 From: MrZ626 <1046101471@qq.com> Date: Sun, 6 Jun 2021 17:34:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9Ews-manage=E7=94=A8=E4=BA=8E?= =?UTF-8?q?=E7=AE=80=E5=8D=95=E6=9C=8D=E5=8A=A1=E5=99=A8=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Zframework/init.lua | 18 +++++++++--------- parts/scenes/app_console.lua | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+), 9 deletions(-) diff --git a/Zframework/init.lua b/Zframework/init.lua index 6b3675ec..6b925f70 100644 --- a/Zframework/init.lua +++ b/Zframework/init.lua @@ -474,7 +474,7 @@ local devColor={ COLOR.lB, } local WS=WS -local WSnames={'app','user','play','stream','chat'} +local WSnames={'app','user','play','stream','chat','manage'} local wsBottomImage do local L={78,18, {'clear',1,1,1,0}, @@ -639,22 +639,22 @@ function love.run() gc_replaceTransform(SCR.xOy_dr) --Websocket status - for i=1,5 do + for i=1,6 do local status=WS.status(WSnames[i]) gc_setColor(1,1,1) - gc.draw(wsBottomImage,-79,20*i-119) + gc.draw(wsBottomImage,-79,20*i-139) if status=='dead'then - gc_draw(ws_deadImg,-20,20*i-120) + gc_draw(ws_deadImg,-20,20*i-140) elseif status=='connecting'then gc_setColor(1,1,1,.5+.3*sin(time*6.26)) - gc_draw(ws_connectingImg,-20,20*i-120) + gc_draw(ws_connectingImg,-20,20*i-140) elseif status=='running'then - gc_draw(ws_runningImg,-20,20*i-120) + gc_draw(ws_runningImg,-20,20*i-140) end local t1,t2,t3=WS.getTimers(WSnames[i]) - gc_setColor(1,1,1,t1)gc.rectangle('fill',-60,20*i-100,-20,-20) - gc_setColor(0,1,0,t2)gc.rectangle('fill',-40,20*i-100,-20,-20) - gc_setColor(1,0,0,t3)gc.rectangle('fill',-20,20*i-100,-20,-20) + gc_setColor(1,1,1,t1)gc.rectangle('fill',-60,20*i-120,-20,-20) + gc_setColor(0,1,0,t2)gc.rectangle('fill',-40,20*i-120,-20,-20) + gc_setColor(1,0,0,t3)gc.rectangle('fill',-20,20*i-120,-20,-20) end end gc_present() diff --git a/parts/scenes/app_console.lua b/parts/scenes/app_console.lua index ce6ca140..b1930bf4 100644 --- a/parts/scenes/app_console.lua +++ b/parts/scenes/app_console.lua @@ -650,6 +650,40 @@ do--commands.applet(name) commands.app=commands.applet end +--Manage commands (not public) +function commands.manage() + if WS.status('manage')=='running'then + WS.close('manage') + log{C.Y,"Disconnected"} + else + if({[1]=0,[2]=0,[26]=0})[USER.uid]then + NET.wsconn_manage() + log{C.Y,"Connecting"} + else + log{C.R,"Permission denied"} + end + end +end +function commands.mng_broadcast(str) + if #str>0 then + WS.send('manage','{"action":0,"data":'..JSON.encode{message=str}..'}') + log{C.Y,"Request sent"} + else + log{C.R,"format error"} + end +end +function commands.mng_shutdown(sec) + sec=tonumber(sec) + if sec and sec>0 and sec~=math.floor(sec) then + WS.send('manage','{"action":9,"data":'..JSON.encode{countdown=tonumber(sec)}..'}') + log{C.Y,"Request sent"} + else + log{C.R,"format error"} + end +end +function commands.mng_connInfo()WS.send('manage','{"action":10}')end +function commands.mng_playMgrInfo()WS.send('manage','{"action":11}')end +function commands.mng_streamMgrInfo()WS.send('manage','{"action":12}')end local combKey={}