add nexus_lua_error for unified LUA_ERR* -> ERR_LUA_* mapping, and lua configuration support
local conf = {
log_level = "DEBUG",
name = {
nickname = "SpBotDev",
username = "spbot-dev",
realname = "SpBot (development version)"
},
networks = {
PVLNet = {
hostname = "irc.fixme.fi",
channels = {
"#test"
}
},
},
modules = {
irc_log = {
path = "src/modules/mod_irc_log.so",
conf = {
db_info = "dbname=spbot",
channel = "PVLNet/#test",
}
}
},
}
-- apply general
log_level(conf.log_level)
-- apply conf_name
client:set_defaults(conf.name.nickname, conf.name.username, conf.name.realname)
-- apply conf_networks
for network, settings in pairs(conf.networks) do
-- establish the irc_net
net = client:connect(network, settings.hostname)
-- join each channel
for i, channel in ipairs(settings.channels) do
net:join(channel)
end
end
-- apply conf_modules
for name, settings in pairs(conf.modules) do
-- load the module
module = modules:load(name, settings.path)
-- apply confs
for key, value in pairs(settings.conf) do
module:conf(key, value)
end
end