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-2/otouto/plugins/hackernews.lua
Andreas Bielawski c484023791 - Portierung folgender Plugins:
+ Games
+ GDrive
+ Gfycat
+ Googl
+ GPS
+ Hackernews
+ Hello
+ Instagram
+ IP_info
+ GMaps so angepasst, dass es wie Location funktioniert
- Bugfixes, Pattern-Fixes, etc.
2016-06-19 19:25:24 +02:00

46 lines
1.0 KiB
Lua

local hackernews = {}
local https = require('ssl.https')
local json = require('dkjson')
local URL = require('socket.url')
local utilities = require('otouto.utilities')
hackernews.triggers = {
"news.ycombinator.com/item%?id=(%d+)"
}
local BASE_URL = 'https://hacker-news.firebaseio.com/v0'
function hackernews:send_hackernews_post (hn_code)
local url = BASE_URL..'/item/'..hn_code..'.json'
local res,code = https.request(url)
if code ~= 200 then return "HTTP-FEHLER" end
local data = json.decode(res)
local by = data.by
local title = data.title
if data.url then
url = '\n[Link besuchen]('..data.url..')'
else
url = ''
end
if data.text then
post = '\n'..unescape_html(data.text)
post = string.gsub(post, '<p>', ' ')
else
post = ''
end
local text = '*'..title..'* von _'..by..'_'..post..url
return text
end
function hackernews:action(msg, config, matches)
local hn_code = matches[1]
utilities.send_reply(self, msg, hackernews:send_hackernews_post(hn_code), true)
end
return hackernews