Commit Graph

76 Commits

Author SHA1 Message Date
a1e1fca650 Merge pull request 'Use yavin to fetch the random movies for votes' (#26) from feat/yavin_movie_select into master
All checks were successful
Build a docker image for node-jellyfin-role-bot / build-docker-image (push) Successful in 12s
Reviewed-on: #26
2023-06-15 23:00:12 +02:00
2fae61fc1f change announcement message to specify MOVIE watchparties
All checks were successful
Build a docker image for node-jellyfin-role-bot / build-docker-image (push) Successful in 1m16s
2023-06-15 22:33:42 +02:00
71ffc6ba50 use yavin to get random movies 2023-06-15 22:33:22 +02:00
8caf80f54e Merge pull request 'announcements' (#18) from feat/announce into master
All checks were successful
Build a docker image for node-jellyfin-role-bot / build-docker-image (push) Successful in 10s
Reviewed-on: #18
2023-06-15 22:05:20 +02:00
1ccb1a7cae Merge branch 'feat/announce' of ssh://gitea.brudi.xyz:222/kenobi/jellyfin-discord-bot into feat/announce
All checks were successful
Build a docker image for node-jellyfin-role-bot / build-docker-image (push) Successful in 1m26s
2023-06-15 22:02:49 +02:00
d22e38efbf fix build 2023-06-15 22:02:37 +02:00
68662e72ad Merge branch 'master' into feat/announce
Some checks failed
Build a docker image for node-jellyfin-role-bot / build-docker-image (push) Failing after 1m1s
2023-06-15 21:59:25 +02:00
5b99c843b4 Fix PR and linting issues 2023-06-15 21:56:15 +02:00
251756c622 feat/cicd (#22)
All checks were successful
Build a docker image for node-jellyfin-role-bot / build-docker-image (push) Successful in 14s
Co-authored-by: magnetotail <magnetotail@posteo.net>
Reviewed-on: #22
Co-authored-by: mightypanders <mighty.panders@posteo.de>
Co-committed-by: mightypanders <mighty.panders@posteo.de>
2023-06-14 22:43:37 +02:00
9420eb4366 Change announcements
All announcements but initial will be deleted upon event end.
Vote announcement will be deleted upon vote end
Vote and vote end announcement now contain date and time
2023-06-14 22:24:39 +02:00
220f9dc8ef undo fetching role to get roleID
We already have the role id?!?!?
2023-06-14 19:45:33 +02:00
198a25d145 ping watch role when voting starts and closes 2023-06-13 23:15:03 +02:00
baefcf9bb9 add options for announcements 2023-06-13 21:12:32 +02:00
a5eab2f7be fix bug that reactions are not loaded after restart
the message needed to be fetched again. Probably something with caches..
2023-06-13 20:13:13 +02:00
e774474a55 Put role handling in background task scheduled at startup 2023-06-13 18:58:41 +02:00
24754decf4 implement announcement role management by reaction 2023-06-13 18:18:26 +02:00
a2c55ad676 restrict announcements to admins 2023-06-12 22:34:39 +02:00
e50cb10c5b implement slash command for announcement 2023-06-12 22:21:10 +02:00
acc38fdcb0 Merge pull request 'Add automatic creation of vote message with random movies' (#16) from feat/voting into master
Reviewed-on: #16
2023-06-12 21:00:16 +02:00
fdc0fc47b5 removed unnecessary guildId: from logger calls 2023-06-12 20:36:05 +02:00
f3669ec34f move collection id of movies into configurations 2023-06-12 20:31:52 +02:00
c0369fcb49 Fetch announcement channel at server start 2023-06-12 20:27:54 +02:00
40d220ed7b refactor: use date-fns for date comparison 2023-06-12 19:43:33 +02:00
117ff23a0c remove typecast to unknown
Somehow I thought it was necessary because the compiler said it at some point
2023-06-11 15:42:31 +02:00
550aa53188 make closepoll return when no channel found 2023-06-11 09:12:14 +02:00
1ee55f995c minor resilience improvement and formatting
in closepoll.ts was an unsafe arrays usage without checking the bounds
2023-06-11 09:01:25 +02:00
0d5c3d30a9 Fix loggers
Some logger messages were missing requestId and guildId
2023-06-10 22:58:00 +02:00
c2d8838cf8 polls will be closed automatically 2 days before event start 2023-06-10 22:53:11 +02:00
c8fa89ae63 Add command to close the poll and update the event 2023-06-10 17:27:59 +02:00
2707f7d73b Add automatic creation of vote message with random movies
When a !nextwp event is created the bot will fetch random movies and create a message that people can vote on
2023-06-10 14:23:10 +02:00
2c5bf1272e Merge pull request 'Fix edgecases for automatic user creation' (#15) from fix/user_accounts into master
Reviewed-on: #15
2023-06-10 00:04:43 +02:00
1e1ab93667 Fix edgecases for automatic user creation
- make eventdescription !wp case insensitive

- Create accounts for users in channel without subscription when event starts

- Make sent messages caused by VoiceState event dependant on creation result (created, enabled)

- Create tmp user if normal user exists but is disabled
2023-06-09 23:56:45 +02:00
8f1c6e10fa Merge pull request 'add guides' (#14) from buttons into master
Reviewed-on: #14
2023-06-09 22:23:51 +02:00
c0b24ee3ad restructuring 2023-06-09 22:01:38 +02:00
3e152864fd complete guides 2023-06-09 21:30:24 +02:00
24c120a890 add /guides interaction with buttons 2023-06-09 16:16:23 +02:00
8ae5fd2c1b Merge pull request 'add 'mitgucken' guide on how to join JF Syncplay group' (#12) from feat/guide into master
Reviewed-on: #12
2023-06-08 20:02:59 +02:00
0aef525994 initialize attachmentImages ahead of time, to be reused 2023-06-08 19:34:48 +02:00
0ba867b23a add 'mitgucken' guide on how to join JF Syncplay group 2023-06-08 19:11:00 +02:00
3294d9ca77 make jf roles configurable via env vars 2023-06-08 17:10:06 +02:00
e234e9f68f Merge pull request 'Logging and ephemeral messages' (#11) from dev into master
Reviewed-on: #11
2023-06-08 00:19:14 +02:00
84a0d7bbe1 turn all slash command replies into an ephemeral message
Setting ephemeral has to happen in an initial reply (reply() or
deferReply()) to set the mode for all replies in this 'thread'. Once the
ephemeral state of a message has been set it can not be changed. If you
want to send a visible message after an ephemeral message it has to be
new message. See https://discordjs.guide/slash-commands/response-methods.html#ephemeral-responses
2023-06-06 23:27:41 +02:00
efd4d69c74 add ids to logging 2023-06-06 23:27:07 +02:00
64c5874249 further handling of automatic user adding/deleting 2023-06-04 16:35:43 +02:00
892562cd0b Automatically create and disable users based on watch event 2023-06-04 15:02:03 +02:00
d3fff38e36 implemented handling of password resets 2023-06-04 03:14:45 +02:00
11dac10a07 Added handler for password reset command 2023-06-04 03:10:33 +02:00
7e37641e0b finally use request id 2023-06-04 01:09:24 +02:00
5db37b0e95 handler now creates and disables/enables users 2023-06-04 01:09:24 +02:00
2a03cd7589 add event to handle incoming interaction creation events
every fired slash command is actually an event which needs to be handled
and deferred to the correct command interaction handler.
2023-06-04 01:00:04 +02:00