Add reboot listener to handle remote reboot commands

This commit is contained in:
MayaTheShy
2026-03-22 03:16:04 -04:00
parent 67a1148e85
commit 899606b5c0

View File

@@ -69,7 +69,29 @@ print("")
print("Starting inventoryClient + dropperController...")
sleep(1)
-- Reboot listener: reboots this computer on remote command
local SYSTEM_CHANNEL = 4205
local ROLE = "client"
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("inventoryClient.lua") end,
function() shell.run("dropperController.lua") end
function() shell.run("dropperController.lua") end,
rebootListener
)