module Config (Server(..),Config(..),config) where -- a datatype describing a particular IRC Server data Server = Server { address :: String, -- what server to connect to port :: Int, -- what port channels :: [String], -- what channels to enter nickname :: String, -- bot nick password :: String, -- bot password, can be empty realname :: String, -- bot's real name administrators :: [String] -- bot admins } -- the actual config datatype, defines global config -- options as well as a list of servers to connect to data Config = Config { commandPrefixes :: String, -- command prefixes servers :: [Server], -- list of servers to connect to logFile :: FilePath -- where to log to } -- define your servers to connect to here freenode = Server { address = "irc.freenode.org", port = 6667, channels = ["#bot-battle-royale"], nickname = "infinitybot", password = "", realname = "time copper", administrators = ["thoughtpolice"] } -- your config options config :: Config config = Config { commandPrefixes = ['?','@','>'], servers = [freenode], logFile = "Log/infinity.log" }