Add reboot listener to handle remote reboot commands
This commit is contained in:
@@ -55,4 +55,28 @@ print("")
|
|||||||
print("Starting inventoryWebBridge...")
|
print("Starting inventoryWebBridge...")
|
||||||
sleep(1)
|
sleep(1)
|
||||||
|
|
||||||
shell.run("inventoryWebBridge.lua")
|
-- Reboot listener: reboots this computer on remote command
|
||||||
|
local SYSTEM_CHANNEL = 4205
|
||||||
|
local ROLE = "bridge"
|
||||||
|
|
||||||
|
local function rebootListener()
|
||||||
|
local m = peripheral.find("modem")
|
||||||
|
if not m then return end
|
||||||
|
m.open(SYSTEM_CHANNEL)
|
||||||
|
while true do
|
||||||
|
local _, _, channel, _, message = os.pullEvent("modem_message")
|
||||||
|
if channel == SYSTEM_CHANNEL and type(message) == "table" and message.type == "reboot" then
|
||||||
|
local target = message.target or "all"
|
||||||
|
if target == "all" or target == ROLE or target == tostring(os.getComputerID()) then
|
||||||
|
print("[SYSTEM] Reboot command received. Rebooting...")
|
||||||
|
sleep(0.5)
|
||||||
|
os.reboot()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
parallel.waitForAny(
|
||||||
|
function() shell.run("inventoryWebBridge.lua") end,
|
||||||
|
rebootListener
|
||||||
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user