67f7d7e12f
The /reload command no longer has stupid, undocumented behavior (though there is now an opt-in for such stupid, undocumented behavior for those of you who like stupid, undocumented behavior). Slight modification to reactions.lua to prevent accidents. New plugin: rmspic.lua. why
35 lines
998 B
Lua
35 lines
998 B
Lua
local https = require('ssl.https')
|
|
local utilities = require('otouto.utilities')
|
|
local bindings = require('otouto.bindings')
|
|
|
|
local rms = {}
|
|
|
|
function rms:init(config)
|
|
rms.BASE_URL = 'https://rms.sexy/img/'
|
|
rms.LIST = {}
|
|
local s, r = https.request(rms.BASE_URL)
|
|
if r ~= 200 then
|
|
print('Error connecting to rms.sexy.\nrmspic.lua will not be enabled.')
|
|
return
|
|
end
|
|
for link in s:gmatch('<a href=".-%.%a%a%a">(.-)</a>') do
|
|
table.insert(rms.LIST, link)
|
|
end
|
|
rms.triggers = utilities.triggers(self.info.username, config.cmd_pat):t('rms').table
|
|
end
|
|
|
|
function rms:action(msg, config)
|
|
bindings.sendChatAction(self, { chat_id = msg.chat.id, action = 'upload_photo' })
|
|
local choice = rms.LIST[math.random(#rms.LIST)]
|
|
local filename = '/tmp/' .. choice
|
|
local image_file = io.open(filename)
|
|
if image_file then
|
|
image_file:close()
|
|
else
|
|
utilities.download_file(rms.BASE_URL .. choice, filename)
|
|
end
|
|
bindings.sendPhoto(self, { chat_id = msg.chat.id }, { photo = filename })
|
|
end
|
|
|
|
return rms
|