This repository has been archived on 2021-04-24. You can view files and clone it, but cannot push or open issues or pull requests.
Mikubot/plugins/urban_dictionary.lua

50 lines
1.3 KiB
Lua

do
local function getUrbanDictionary(term)
local url = 'http://api.urbandictionary.com/v0/define?term='..term
local res,code = http.request(url)
local data = json:decode(res)
if code ~= 200 then return "HTTP-Fehler" end
if data.result_type == 'no_results' then return "Nichts gefunden!" end
local word = data.list[1].word
local dev = data.list[1].definition
local exam = data.list[1].example
local url = data.list[1].permalink
if data.sounds[1] then
sound = data.sounds[1]
end
local text = unescape(word..'\n'..dev..string.gsub('\n\nBeispiel: "'..exam..'"\n', '""', '"'))..url
if data.sounds[1] then
return text, sound
else
return text
end
end
local function run(msg, matches)
local term = string.gsub(matches[1], ' ', '%%20')
local text, sound = getUrbanDictionary(term)
local receiver = get_receiver(msg)
if sound then
local file = download_to_file(sound, term..'.mp3')
send_audio(receiver, file, ok_cb, false)
end
return text
end
return {
description = "Zeigt eine Urban Dictionary Definition",
usage = {"#ud [Begriff]"},
patterns = {"^#[Uu][Dd] (.*)$",
"^http://([A-Za-z0-9-_-]+).urbanup.com/",
"^http://www.urbandictionary.com/define.php%?term=([A-Za-z0-9-_-]+)"
},
run = run
}
--by Akamaru [https://ponywave.de]
end