summaryrefslogtreecommitdiff
path: root/Hsbot/Irc/Config.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Hsbot/Irc/Config.hs')
-rw-r--r--Hsbot/Irc/Config.hs34
1 files changed, 34 insertions, 0 deletions
diff --git a/Hsbot/Irc/Config.hs b/Hsbot/Irc/Config.hs
new file mode 100644
index 0000000..5075c36
--- /dev/null
+++ b/Hsbot/Irc/Config.hs
@@ -0,0 +1,34 @@
+module Hsbot.Irc.Config
+ ( IrcConfig(..)
+ , ircDefaultConfig
+ ) where
+
+import Network
+
+-- | Configuration data type
+data IrcConfig = IrcConfig
+ { ircConfigName :: String -- The configuration name
+ , ircConfigAddress :: String -- the server's address
+ , ircConfigPort :: PortID -- the server's port
+ , ircConfigChannels :: [String] -- the Channels to join on start
+ , ircConfigNickname :: String -- the hsbot's nickname
+ , ircConfigPassword :: String -- the hsbot's password, optional
+ , ircConfigRealname :: String -- the hsbot's real name, optional
+ , ircConfigCommandPrefix :: Char -- the prefix the ircbot will recognize as commands
+ , ircConfigPlugins :: [String] -- the ircPlugins to load
+ }
+
+-- | User configuration
+ircDefaultConfig :: IrcConfig
+ircDefaultConfig = IrcConfig
+ { ircConfigName = "localhost"
+ , ircConfigAddress = "localhost"
+ , ircConfigPort = PortNumber 6667
+ , ircConfigChannels = ["#hsbot"]
+ , ircConfigNickname = "hsbot"
+ , ircConfigPassword = ""
+ , ircConfigRealname = "The One True bot, with it's haskell soul."
+ , ircConfigCommandPrefix = '@'
+ , ircConfigPlugins = ["Ping"]
+ }
+