Skip to content

Instantly share code, notes, and snippets.

View andsve's full-sized avatar
🍎
Coding

Sven Andersson andsve

🍎
Coding
View GitHub Profile
@andsve
andsve / bot.lua
Created August 16, 2010 21:58
Auto updating IRC Bot written in Lua (using luasockets)
local socket = require("socket")
function create_bot(nick, channels)
local bot = {nick = nick, -- nickname of bot
firstresponse = false, -- got any data?
connection_ok = false,
channels = channels
}
function bot:connect(serv, port)
local socket = require("socket")
function create_bot(nick, channels)
local bot = {nick = nick, -- nickname of bot
firstresponse = false, -- got any data?
connection_ok = false,
channels = channels
}
function bot:connect(serv, port)
module("modules/define/define")
function parse_message(bot, msg)
local i,j,sender,chan,q = string.find(msg, ":(.-)!.- PRIVMSG (.-) :" .. tostring(bot.config.triggerprefix) .. "define (.+)")
if not (i == nil) then
if not (string.sub(chan, 1, 1) == "#") then
chan = sender
end
module("modules/title/title")
function parse_message(bot, msg)
local i,j,chan,s = string.find(msg, ":.-!.- PRIVMSG (.-) :(.+)")
if not (i == nil) then
function get_title(url, block_hosts, loop_control)
if (loop_control <= 0) then
return nil
module("modules/tr/tr")
function parse_message(bot, msg)
local i,j,sender,chan,q = string.find(msg, ":(.-)!.- PRIVMSG (.-) :" .. tostring(bot.config.triggerprefix) .. "tr(.*)")
if not (i == nil) then
if not (string.sub(chan, 1, 1) == "#") then
chan = sender
end
Afrikaans -> af
Albanian -> sq
Arabic -> ar
Armenian -> hy
Azerbaijani -> az
Basque -> eu
Belarusian -> be
Bulgarian -> bg
Catalan -> ca
Chinese (Simplified) -> zh-CN
module("modules/wp/wp")
function parse_message(bot, msg)
local i,j,sender,chan,q = string.find(msg, ":(.-)!.- PRIVMSG (.-) :" .. bot.config.triggerprefix .. "wp (.+)")
if not (i == nil) then
if not (string.sub(chan, 1, 1) == "#") then
chan = sender
end
module("modules/xb/xb")
function parse_message(bot, msg)
local i,j,chan,n = string.find(msg, ":.-!.- PRIVMSG (.-) ::xb (.+)")
if not (i == nil) then
local http = require("socket.http")
local b, c, h = http.request("http://profile.mygamercard.net/" .. tostring(n))
if not (b == nil) then
module("modules/imgcache/imgcache")
function get_image(url)
local socket = require("socket")
-- get host and path
local socketurl = require("socket.url")
local parsedurl = socketurl.parse(url)
local host = parsedurl.host
module("modules/imgcache2/imgcache2")
function parse_message(bot, msg)
local i,j,chan,s = string.find(msg, ":.-!.- PRIVMSG (.-) :(.+)")
if not (i == nil) then
function db_connect()
local luasql = require("luasql.sqlite3")
local env = luasql.sqlite3()
local conn = env:connect("imgcache2.sqlite")