-- This file is part of the Telegram Bot "Brawlbot" (telegram.me/Brawlbot) by Andreas Bielawski (telegram.me/Brawl) -- Released unter the MPLv2 do require("./plugins/time") 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ö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 local lat,lng = get_latlong(set_location) local receiver = get_receiver(msg) send_location(receiver, lat, lng, ok_cb, false) 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