Erster privater commit
This commit is contained in:
49
plugins/pluginsold/get.lua
Normal file
49
plugins/pluginsold/get.lua
Normal file
@ -0,0 +1,49 @@
|
||||
local function get_variables_hash(msg)
|
||||
if msg.to.type == 'chat' then
|
||||
return 'chat:'..msg.to.id..':variables'
|
||||
end
|
||||
if msg.to.type == 'user' then
|
||||
return 'user:'..msg.from.id..':variables'
|
||||
end
|
||||
end
|
||||
|
||||
local function list_variables(msg)
|
||||
local hash = get_variables_hash(msg)
|
||||
|
||||
if hash then
|
||||
local names = redis:hkeys(hash)
|
||||
local text = ''
|
||||
for i=1, #names do
|
||||
text = text..names[i]..'\n'
|
||||
end
|
||||
return text
|
||||
end
|
||||
end
|
||||
|
||||
local function get_value(msg, var_name)
|
||||
local hash = get_variables_hash(msg)
|
||||
if hash then
|
||||
local value = redis:hget(hash, var_name)
|
||||
if not value then
|
||||
return'Not found, use "/get" to list variables'
|
||||
else
|
||||
return var_name..' => '..value
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local function run(msg, matches)
|
||||
if matches[2] then
|
||||
return get_value(msg, matches[2])
|
||||
else
|
||||
return list_variables(msg)
|
||||
end
|
||||
end
|
||||
|
||||
return {
|
||||
description = "Bekommt Variable, die mit /set gesetzt wurde",
|
||||
usage = {"/get (Variable)"},
|
||||
patterns = {"^/get (%a+)$","^/get$"},
|
||||
run = run,
|
||||
pre_process = lex
|
||||
}
|
Reference in New Issue
Block a user