diff options
Diffstat (limited to '')
-rw-r--r-- | HsbotIrcBot/Hsbot/Irc/Plugin/Ping.hs | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/HsbotIrcBot/Hsbot/Irc/Plugin/Ping.hs b/HsbotIrcBot/Hsbot/Irc/Plugin/Ping.hs deleted file mode 100644 index 57418b3..0000000 --- a/HsbotIrcBot/Hsbot/Irc/Plugin/Ping.hs +++ /dev/null @@ -1,33 +0,0 @@ -module Hsbot.Irc.Plugin.Ping - ( ircBotPluginPing - ) where - -import Control.Concurrent.Chan -import Control.Exception -import Control.Monad.State -import Prelude hiding (catch) - -import Hsbot.Irc.Message -import Hsbot.Irc.Plugin.Utils - --- | The plugin's main entry point -ircBotPluginPing :: Chan IrcBotMsg -> Chan IrcBotMsg -> IO () -ircBotPluginPing myChan masterChan = do - let plugin = IrcPluginState { ircPluginName = "Ping" - , ircPluginChan = myChan - , ircPluginMasterChan = masterChan } - _ <- (execStateT run plugin) `catch` (\(_ :: AsyncException) -> return plugin) - return () - --- | The IrcPlugin monad main function -run :: IrcPlugin () -run = forever $ do - msg <- readMsg - eval msg - where - eval :: IrcBotMsg -> IrcPlugin () - eval (InIrcMsg msg) - | (ircMsgCommand msg) == "PING" = writeMsg . OutIrcMsg $ IrcMsg Nothing "PONG" (ircMsgParameters msg) - | otherwise = return () - eval _ = return () - |