diff --git a/bot/bot.lua b/bot/bot.lua index 07fa42e..cb9dd85 100644 --- a/bot/bot.lua +++ b/bot/bot.lua @@ -145,7 +145,7 @@ function create_config( ) "9gag", "echo", "get", - "help" + "help", "images", "img_google", "location", diff --git a/plugins/google.lua b/plugins/google.lua new file mode 100644 index 0000000..d3b22de --- /dev/null +++ b/plugins/google.lua @@ -0,0 +1,38 @@ +function googlethat(query) + local api = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&" + local parameters = "q=".. (URL.escape(query) or "") + + -- Do the request + local res, code = https.request(api..parameters) + if code ~=200 then return nil end + local data = json:decode(res) + local results={} + for key,result in ipairs(data.responseData.results) do + table.insert(results,{result.titleNoFormatting, result.url}) + end + return results +end + +function stringlinks(results) + local stringresults="" + for key,val in ipairs(results) do + stringresults=stringresults..val[1].." - "..val[2].."\n" + end + return stringresults +end + +function run(msg, matches) + vardump(matches) + local results = googlethat(matches[1]) + return stringlinks(results) +end + +return { + description = "Searches Google", + usage = "!google terms", + patterns = { + "^!google (.*)$", + "^%.[g|G]oogle (.*)$" + }, + run = run +}