diff options
| author | LLLL Colonq <llll@colonq> | 2025-10-05 19:54:38 -0400 |
|---|---|---|
| committer | LLLL Colonq <llll@colonq> | 2025-10-05 19:54:38 -0400 |
| commit | 3d31c488fb06e9937964041f4d83d0cb1c9699ab (patch) | |
| tree | e20edbd81d98719e77ef2eb08c9f369605bfe6c6 /src | |
| parent | 510608fdbc43947391d82c703370814aa57a454e (diff) | |
Move more events to binary bus
Diffstat (limited to 'src')
| -rw-r--r-- | src/gizmo/wasp-alert-message.el | 1 | ||||
| -rw-r--r-- | src/gizmo/wasp-heartrate.el | 1 | ||||
| -rw-r--r-- | src/gizmo/wasp-telemetry.el | 1 | ||||
| -rw-r--r-- | src/wasp-event-handlers-binary.el | 72 | ||||
| -rw-r--r-- | src/wasp-setup.el | 10 |
5 files changed, 76 insertions, 9 deletions
diff --git a/src/gizmo/wasp-alert-message.el b/src/gizmo/wasp-alert-message.el index fb80f002..c645b01f 100644 --- a/src/gizmo/wasp-alert-message.el +++ b/src/gizmo/wasp-alert-message.el @@ -51,7 +51,6 @@ (setq w/alert-message-timer (run-with-timer 10 nil #'w/run-alert-message-timer))) -(w/run-alert-message-timer) (provide 'wasp-alert-message) ;;; wasp-alert-message.el ends here diff --git a/src/gizmo/wasp-heartrate.el b/src/gizmo/wasp-heartrate.el index a195e0c5..91e758fd 100644 --- a/src/gizmo/wasp-heartrate.el +++ b/src/gizmo/wasp-heartrate.el @@ -78,7 +78,6 @@ (setq w/heartrate-timer (run-with-timer 1 nil #'w/run-heartrate-timer))) -(w/run-heartrate-timer) (provide 'wasp-heartrate) ;;; wasp-heartrate.el ends here diff --git a/src/gizmo/wasp-telemetry.el b/src/gizmo/wasp-telemetry.el index 6625f38b..a0fdcd12 100644 --- a/src/gizmo/wasp-telemetry.el +++ b/src/gizmo/wasp-telemetry.el @@ -53,7 +53,6 @@ (setq w/telemetry-timer (run-with-timer 10 nil #'w/run-telemetry-timer))) -(w/run-telemetry-timer) (provide 'wasp-telemetry) ;;; wasp-telemetry.el ends here diff --git a/src/wasp-event-handlers-binary.el b/src/wasp-event-handlers-binary.el index 09ea3175..b7df863d 100644 --- a/src/wasp-event-handlers-binary.el +++ b/src/wasp-event-handlers-binary.el @@ -6,6 +6,8 @@ (require 's) (require 'wasp-utils) (require 'wasp-twitch) +(require 'wasp-friend) +(require 'wasp-model) (require 'wasp-bus-binary) (setf @@ -13,18 +15,82 @@ (list (cons "monitor twitch chat incoming" (lambda (d) + (message "incoming: %s" d) (-let [(user stags msg) (s-split-up-to " " (w/utf8 d) 2)] (w/twitch-handle-incoming-chat user (--map (s-split "\t" it) (s-split "\n" stags)) msg)))) + (cons "monitor twitch redeem incoming" + (lambda (d) + (-let [(user redeem input) (s-split-up-to " " (w/utf8 d) 2)] + (w/twitch-handle-redeem-helper user redeem input)))) (cons "frontend redeem incoming" (lambda (d) (-let [(user redeem input) (s-split-up-to "\t" (w/utf8 d) 2)] (w/twitch-handle-redeem-helper user redeem input 1000)))) - ;; (cons "test event 2" - ;; (lambda (d) - ;; (message "incoming: %s" d))) + (cons "monitor twitch raid" + (lambda (d) + (let ((user (w/utf8 d))) + (soundboard//play-clip "rampage.mp3") + (w/write-chat-event (format "%s just raided!" user)) + (w/friend-respond (format "%s just came to visit" user)) + (run-with-timer + 15 nil + (lambda () + (w/twitch-get-user-recent-clips + user + (lambda (clips) + (w/model-region-word "hair" (s-concat user "_")) + (w/model-region-word "eyes" "WELCOME") + (if clips + (w/model-region-video "hair" (car clips)) + (w/model-region-user-avatar "hair" user))))))))) + (cons "monitor twitch follow" + (lambda (d) + (let ((user (w/utf8 d))) + (soundboard//play-clip "firstblood.mp3") + (w/model-region-word "skin" (format "welcome_%s_" user)) + (w/friend-respond (format "%s just followed the stream" user)) + (w/write-chat-event (format "New follower: %s" user))))) + (cons "monitor twitch subscribe" + (lambda (d) + (let ((user (w/utf8 d))) + (w/thank-sub user) + (w/model-region-word "skin" (format "thanks_%s_" user)) + (w/friend-respond (format "%s just subscribed to the stream" user)) + (w/write-chat-event (format "New subscriber: %s" user))))) + (cons "monitor twitch gift" + (lambda (d) + (-let [(user subs) (s-split-up-to " " (w/utf8 d) 2)] + (unless (s-equals? user "lcolonq") + (w/model-region-word "skin" (format "thanks_%s_" user)) + (w/friend-respond (format "%s just gifted subscriptions" user)) + (w/write-chat-event (format "%s gifted %d subs" user subs)) + (soundboard//play-monsterkill subs))))) + (cons "monitor twitch poll begin" + (lambda (_) + (w/write-chat-event "Poll started") + (w/friend-respond "The chatters are doing a poll"))) + (cons "monitor twitch poll end" + (lambda (d) + (let* + ( (sp (s-split " " (w/utf8 d))) + (choices (--map (s-split "," it) (cdr sp))) + (winner (car (-max-by (-on #'> #'cadr) choices)))) + (w/write-chat-event (format "Poll finished, winner is: %s" winner)) + (when w/twitch-current-poll-callback + (funcall w/twitch-current-poll-callback winner)) + (setq w/twitch-current-poll-callback nil)))) + (cons "monitor twitch prediction begin" + (lambda (d) + (w/write-chat-event "Gamble started") + (w/friend-respond "The chatters are gambling") + (setq w/twitch-current-prediction-ids (w/utf8 d)))) + (cons "monitor twitch prediction end" + (lambda (_) + (w/write-chat-event "Gamble finished") + (setq w/twitch-current-prediction-ids nil))) )) (provide 'wasp-event-handlers-binary) diff --git a/src/wasp-setup.el b/src/wasp-setup.el index b261607e..53c99765 100644 --- a/src/wasp-setup.el +++ b/src/wasp-setup.el @@ -38,15 +38,19 @@ (w/show-chat-overlay-frame nil) (w/twitch-7tv-update-emotes) (w/twitch-update-title) + (w/populate-bible-table) + ;; (w/user-cache-populate) + + ;; timers (w/twitch-run-shoutout-timer) (w/twitch-run-emote-frame-timer) (w/run-model-timer) (w/run-obs-timer) (w/run-audio-record-end-timer) - (w/populate-bible-table) - ;; (w/user-cache-populate) (w/run-banner-ad-timer) - + (w/run-telemetry-timer) + (w/run-heartrate-timer) + (w/run-alert-message-timer) (w/start-audio-record) (w/start-chatsummary) (w/start-fake-chatters) |
