summaryrefslogtreecommitdiff
path: root/fig-monitor-irc
diff options
context:
space:
mode:
Diffstat (limited to 'fig-monitor-irc')
-rw-r--r--fig-monitor-irc/src/Fig/Monitor/IRC.hs5
1 files changed, 4 insertions, 1 deletions
diff --git a/fig-monitor-irc/src/Fig/Monitor/IRC.hs b/fig-monitor-irc/src/Fig/Monitor/IRC.hs
index 116a490..67554b3 100644
--- a/fig-monitor-irc/src/Fig/Monitor/IRC.hs
+++ b/fig-monitor-irc/src/Fig/Monitor/IRC.hs
@@ -4,6 +4,8 @@ module Fig.Monitor.IRC where
import Fig.Prelude
+import Control.Monad (unless)
+
import Data.Functor ((<&>))
import qualified Data.Text as Text
import qualified Data.ByteString.Base64 as BS.Base64
@@ -89,7 +91,8 @@ ircBot cfg busAddr = do
| ev == [sexp|(monitor irc chat outgoing)|]
, Right user <- decodeUtf8 <$> BS.Base64.decodeBase64 (encodeUtf8 euser)
, Right msg <- decodeUtf8 <$> BS.Base64.decodeBase64 (encodeUtf8 emsg) -> do
- Chan.writeChan outgoing OutgoingMessage { chan, user, msg = msg }
+ unless (user `elem` (["fabius"] :: [Text])) do
+ Chan.writeChan outgoing OutgoingMessage { chan, user, msg = msg }
_ -> log $ "Invalid outgoing message: " <> tshow d
)
(pure ())