LuaMeat/plugin/twitch.lua
2015-10-24 03:47:44 +02:00

31 lines
1 KiB
Lua

-- Getting information out of Twitch
local json = require("json")
local https = require("ssl.https")
local ltn12 = require("ltn12")
local msc = require("misc")
local function fetch_data (endpoint)
local response = {}
local r,c,h = https.request{url = "https://api.twitch.tv/kraken/"..endpoint,
headers = { accept = "application/vnd.twitchtv.v3+json"},
sink = ltn12.sink.table(response)}
return json.decode(table.concat(response))
end
plugin.uptime = function (target, from, arg)
local channel = string.sub(target, 2)
if arg and arg ~= "" then
channel = arg
end
local j = fetch_data("streams/"..channel)
if j.stream then
if j.stream ~= json.decode("null") then
irc.say(target, j.stream.channel.display_name.." is streaming ["..j.stream.game.."] for "..elapsed(j.stream.created_at)..".")
else
irc.say(target, channel.." is not streaming anything right now.")
end
else
irc.say(target, "Stream "..channel.." not found.")
end
end