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/page2image.lua

62 lines
1.8 KiB
Lua
Raw Normal View History

2015-11-12 17:42:03 +01:00
-- This is a proprietary plugin, property of Andreas Bielawski, (c) 2015 <andi (dot) b (at) outlook (dot) de>
-- DO NOT USE WITHOUT PERMISSION
do
local BASE_URL = 'http://api.page2images.com/'
local restkey = cred_data.page2images_restkey
function get_scrot_data (scrot_url)
local url = BASE_URL..'/restfullink?p2i_url='..scrot_url..'&p2i_key='..restkey..'&p2i_imageformat=png&p2i_quality=85&p2i_size=1366x768'
local res,code = http.request(url)
if code ~= 200 then return "HTTP-FEHLER" end
local data = json:decode(res)
return data
end
function send_scrot_data(data, receiver)
if data.status == "processing" then
print('Screenshot wird erstellt. Ungefähre Dauer: '..data.estimated_need_time..' Sekunden')
end
while data.status == "processing" do
sleep(5)
data = get_scrot_data(scrot_url)
if data.estimated_need_time ~= nil then
print('Noch '..data.estimated_need_time..' Sekunden')
end
end
if data.status == "error" then
text = data.ori_url..' konnte nicht fotografiert werden, weil der Fehler "'..data.msg..'" '..data.errno..' auftrat.'
send_msg(receiver, text, ok_cb, false)
end
if data.status == "finished" then
left_calls = data.left_calls
text = data.ori_url..' wurde fotografiert. Verbleibende API-Calls: '..left_calls
image_url = data.image_url
cb_extra = {
receiver=receiver,
url=image_url
}
send_msg(receiver, text, send_photo_from_url_callback, cb_extra)
end
end
function run(msg, matches)
scrot_url = matches[1]
local data = get_scrot_data(scrot_url)
local receiver = get_receiver(msg)
send_scrot_data(data, receiver)
end
return {
description = "Sendet Webseiten-Screenshot.",
usage = {"/scrot2 [URL]"},
patterns = {"^/scrot2 (https?://[%w-_%.%?%.:/%+=&]+)"},
run = run
}
end