diff options
-rw-r--r-- | controllerfw.lua | 4 | ||||
-rw-r--r-- | mesecons.lua | 45 |
2 files changed, 49 insertions, 0 deletions
diff --git a/controllerfw.lua b/controllerfw.lua index 73c352f..f4c5b07 100644 --- a/controllerfw.lua +++ b/controllerfw.lua @@ -761,6 +761,10 @@ elseif event.type == "remotemsg" then mem.groupdncalls[event.msg] = nil elseif event.channel == "carcall" and mem.carstate == "normal" then mem.carcalls[event.msg] = true + elseif event.channel == "security" and type(event.msg.floor) == "number" then + if mem.params.floornames[event.msg.floor] and event.msg.floor ~= (mem.params.mainlanding or 1) then + mem.params.carcallsecurity[event.msg.floor] = event.msg.mode + end end elseif event.type == "lightcurtain" and not mem.nudging then if mem.carstate == "normal" or mem.carstate == "indep" then diff --git a/mesecons.lua b/mesecons.lua index bc00185..7064821 100644 --- a/mesecons.lua +++ b/mesecons.lua @@ -348,6 +348,51 @@ local inputoptions = { end, needsfloor = false, }, + { + id = "secdeny", + desc = "Lock Car Calls at Landing:", + func_on = function(controllerpos,floor) + celevator.controller.run(controllerpos,{ + type = "remotemsg", + channel = "security", + msg = { + floor = floor, + mode = "deny", + }, + }) + end, + needsfloor = true, + }, + { + id = "secauth", + desc = "Require Auth for Car Calls at Landing:", + func_on = function(controllerpos,floor) + celevator.controller.run(controllerpos,{ + type = "remotemsg", + channel = "security", + msg = { + floor = floor, + mode = "auth", + }, + }) + end, + needsfloor = true, + }, + { + id = "secallow", + desc = "Unlock Car Calls at Landing:", + func_on = function(controllerpos,floor) + celevator.controller.run(controllerpos,{ + type = "remotemsg", + channel = "security", + msg = { + floor = floor, + mode = nil, + }, + }) + end, + needsfloor = true, + }, } local dinputoptions = { |