summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fig-monitor-twitch/src/Fig/Monitor/Twitch.hs7
1 files changed, 5 insertions, 2 deletions
diff --git a/fig-monitor-twitch/src/Fig/Monitor/Twitch.hs b/fig-monitor-twitch/src/Fig/Monitor/Twitch.hs
index e72906c..8b11625 100644
--- a/fig-monitor-twitch/src/Fig/Monitor/Twitch.hs
+++ b/fig-monitor-twitch/src/Fig/Monitor/Twitch.hs
@@ -364,11 +364,14 @@ twitchEventClient cfg busAddr = do
let parseEvent o = do
payload <- o .: "payload"
event <- payload .: "event"
- event .: "user_login"
+ login <- event .: "user_login"
+ gift <- event .: "is_gift"
+ pure (login, gift)
case Aeson.parseMaybe parseEvent res of
- Just nm -> do
+ Just (nm, False) -> do
log $ "New subscriber: " <> nm
cmds.publish [sexp|(monitor twitch subscribe)|] [SExprString nm]
+ Just _ -> log "Skipping gifted subscription"
_ -> log "Failed to extract user from subscribe event"
Just ("channel.cheer" :: Text) -> do
let parseEvent o = do