From 6294b38806c3f65300dd3f31e24865dce87c40a4 Mon Sep 17 00:00:00 2001 From: Guillaume ARM Date: Tue, 21 May 2024 20:24:00 +0200 Subject: [PATCH] feat(inferium-server): add a warning when computerId is not known by the system --- inferium-server.lua | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/inferium-server.lua b/inferium-server.lua index d5f1072..5009167 100644 --- a/inferium-server.lua +++ b/inferium-server.lua @@ -1,6 +1,6 @@ local inferiumPlans = require('config/inferium-plans') -- temporary default plan -local VERSION = "0.2.1" +local VERSION = "0.3.0" local INFERIUM_QUERY_PORT = 111 local INFERIUM_REPLY_PORT = 112 @@ -12,21 +12,29 @@ local modem = peripheral.find("modem") or error("No modem attached", 0) modem.open(INFERIUM_QUERY_PORT) local function getPlanForComputer(computerId) - return inferiumPlans[tostring(computerId)] or defaultPlan + return inferiumPlans[tostring(computerId)] end local function messageReceived(message) if message.type == 'getplan' then local payload = message.payload or {} + local computerId = payload.computerId - if payload.computerId == nil then + if not computerId == nil then print('getplan error: no computerId found in received payload') return nil end + local plan = getPlanForComputer(computerId) + + if not plan then + print('getplan warning: no plan found for computerID ' .. tostring(computerId)) + plan = defaultPlan + end + return { type = "getplan/response", - payload = getPlanForComputer(payload.computerId) + payload = plan } end end