irce = require "irce" socket = require "socket" config = server: os.getenv("IRC_HOST") or "127.0.0.1" sname: os.getenv("KETRACEL_SNAME") or "ketracel.akua" spass: os.getenv("KETRACEL_SPASS") or error("need KETRACEL_SPASS") sreal: os.getenv("KETRACEL_SREAL") or "The favorite of the Jem'Hadar" debug: os.getenv("KETRACEL_DEBUG") nicklen: os.getenv("KETRACEL_NICKLEN") or "31" irc = irce.new! running = true -- load IRC modules assert irc\load_module require "irce.modules.ngircd" assert irc\load_module require "bots.ketracel" client = socket.tcp! client\settimeout 1 irc\set_send_func (message) => client\send message if config.debug irc\set_callback irce.RAW, (send, message) => print string.format "%s %s", (send and ">" or "<"), message print "Ketracel loaded using " .. irce._VERSION .. " running on " .. _VERSION -- connect to irc server assert client\connect config.server, 6667 assert irc\REGISTER config.spass, "ketracel", "0.0.1", config.sname, config.sreal, config.nicklen if config.oper irc\OPER config.nick, config.oper print "IRC operator status requested for " .. config.nick while running irc\process client\receive! client\close!