63 lines
1.7 KiB
Lua
63 lines
1.7 KiB
Lua
|
-- This file is part of the Telegram Bot "Brawlbot" (telegram.me/Brawlbot) by Andreas Bielawski (telegram.me/Brawl)
|
|||
|
-- Released unter the MPLv2
|
|||
|
|
|||
|
do
|
|||
|
|
|||
|
local function set_location(user_id, location)
|
|||
|
local hash = 'user:'..user_id
|
|||
|
local set_location = get_location(user_id)
|
|||
|
if set_location == location then
|
|||
|
return 'Dieser Ort wurde bereits gesetzt'
|
|||
|
else
|
|||
|
print('Setting location in redis hash '..hash..' to location')
|
|||
|
redis:hset(hash, 'location', location)
|
|||
|
return 'Dein Wohnort wurde auf "'..location..'" festgelegt.'
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
local function del_location(user_id)
|
|||
|
local hash = 'user:'..user_id
|
|||
|
local set_location = get_location(user_id)
|
|||
|
if not set_location then
|
|||
|
return 'Du hast keinen Ort gesetzt'
|
|||
|
else
|
|||
|
print('Setting location in redis hash '..hash..' to false')
|
|||
|
-- We set the location to false, because deleting the value blocks redis for a few milliseconds
|
|||
|
redis:hset(hash, 'location', false)
|
|||
|
return 'Dein Wohnort "'..set_location..'" wurde gel<65>scht!'
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
local function run(msg, matches)
|
|||
|
local user_id = msg.from.id
|
|||
|
|
|||
|
if matches[1] == 'set' then
|
|||
|
return set_location(user_id, matches[2])
|
|||
|
elseif matches[1] == 'del' then
|
|||
|
return del_location(user_id)
|
|||
|
else
|
|||
|
local set_location = get_location(user_id)
|
|||
|
if not set_location then
|
|||
|
return 'Du hast keinen Ort gesetzt'
|
|||
|
else
|
|||
|
return 'Gesetzter Wohnort: '..set_location
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
return {
|
|||
|
description = "Orte-Manager",
|
|||
|
usage = {
|
|||
|
"/location: Gibt deinen gesetzten Wohnort aus",
|
|||
|
"/location set (Ort): Setzt deinen Wohnort auf diesen Ort",
|
|||
|
"/location del: L<>scht deinen angegebenen Wohnort"
|
|||
|
},
|
|||
|
patterns = {
|
|||
|
"^/location (set) (.*)$",
|
|||
|
"^/location (del)$",
|
|||
|
"^/location$"
|
|||
|
},
|
|||
|
run = run
|
|||
|
}
|
|||
|
|
|||
|
end
|