From b11ce18ac9bade6310398186d9dd0b2f0861e893 Mon Sep 17 00:00:00 2001 From: Sven Heidemann Date: Thu, 19 Jan 2023 18:25:38 +0100 Subject: [PATCH 1/5] Fixed switch channel handling --- kdb-bot/dockerfile | 1 + kdb-bot/src/bot/__init__.py | 4 ++-- kdb-bot/src/bot/bot.json | 2 +- kdb-bot/src/bot/config | 2 +- kdb-bot/src/bot/extension/__init__.py | 4 ++-- kdb-bot/src/bot_api/__init__.py | 4 ++-- kdb-bot/src/bot_api/abc/__init__.py | 4 ++-- kdb-bot/src/bot_api/bot-api.json | 2 +- kdb-bot/src/bot_api/configuration/__init__.py | 4 ++-- kdb-bot/src/bot_api/controller/__init__.py | 4 ++-- .../src/bot_api/controller/discord/__init__.py | 4 ++-- kdb-bot/src/bot_api/event/__init__.py | 4 ++-- kdb-bot/src/bot_api/exception/__init__.py | 4 ++-- kdb-bot/src/bot_api/filter/__init__.py | 4 ++-- kdb-bot/src/bot_api/filter/discord/__init__.py | 4 ++-- kdb-bot/src/bot_api/logging/__init__.py | 4 ++-- kdb-bot/src/bot_api/model/__init__.py | 4 ++-- kdb-bot/src/bot_api/model/discord/__init__.py | 4 ++-- kdb-bot/src/bot_api/route/__init__.py | 4 ++-- kdb-bot/src/bot_api/service/__init__.py | 4 ++-- kdb-bot/src/bot_api/transformer/__init__.py | 4 ++-- kdb-bot/src/bot_core/__init__.py | 4 ++-- kdb-bot/src/bot_core/abc/__init__.py | 4 ++-- kdb-bot/src/bot_core/bot-core.json | 2 +- kdb-bot/src/bot_core/configuration/__init__.py | 4 ++-- kdb-bot/src/bot_core/core_extension/__init__.py | 4 ++-- kdb-bot/src/bot_core/events/__init__.py | 4 ++-- kdb-bot/src/bot_core/exception/__init__.py | 4 ++-- kdb-bot/src/bot_core/helper/__init__.py | 4 ++-- kdb-bot/src/bot_core/logging/__init__.py | 4 ++-- kdb-bot/src/bot_core/pipes/__init__.py | 4 ++-- kdb-bot/src/bot_core/service/__init__.py | 4 ++-- kdb-bot/src/bot_data/__init__.py | 4 ++-- kdb-bot/src/bot_data/abc/__init__.py | 4 ++-- kdb-bot/src/bot_data/bot-data.json | 2 +- kdb-bot/src/bot_data/migration/__init__.py | 4 ++-- kdb-bot/src/bot_data/model/__init__.py | 4 ++-- kdb-bot/src/bot_data/service/__init__.py | 4 ++-- kdb-bot/src/modules/auto_role/__init__.py | 4 ++-- kdb-bot/src/modules/auto_role/auto-role.json | 2 +- .../src/modules/auto_role/command/__init__.py | 4 ++-- kdb-bot/src/modules/auto_role/events/__init__.py | 4 ++-- kdb-bot/src/modules/auto_role/helper/__init__.py | 4 ++-- kdb-bot/src/modules/base/__init__.py | 4 ++-- kdb-bot/src/modules/base/abc/__init__.py | 4 ++-- kdb-bot/src/modules/base/base.json | 2 +- kdb-bot/src/modules/base/command/__init__.py | 4 ++-- .../src/modules/base/configuration/__init__.py | 4 ++-- kdb-bot/src/modules/base/events/__init__.py | 4 ++-- .../events/base_on_voice_state_update_event.py | 16 ++++++++++------ kdb-bot/src/modules/base/helper/__init__.py | 4 ++-- .../modules/base/helper/base_reaction_handler.py | 4 ++-- kdb-bot/src/modules/base/service/__init__.py | 4 ++-- kdb-bot/src/modules/base/thread/__init__.py | 4 ++-- kdb-bot/src/modules/boot_log/__init__.py | 4 ++-- kdb-bot/src/modules/boot_log/boot-log.json | 2 +- .../modules/boot_log/configuration/__init__.py | 4 ++-- kdb-bot/src/modules/database/__init__.py | 4 ++-- kdb-bot/src/modules/database/database.json | 2 +- kdb-bot/src/modules/level/__init__.py | 4 ++-- kdb-bot/src/modules/level/command/__init__.py | 4 ++-- .../src/modules/level/configuration/__init__.py | 4 ++-- kdb-bot/src/modules/level/events/__init__.py | 4 ++-- kdb-bot/src/modules/level/level.json | 2 +- kdb-bot/src/modules/level/service/__init__.py | 4 ++-- kdb-bot/src/modules/permission/__init__.py | 4 ++-- kdb-bot/src/modules/permission/abc/__init__.py | 4 ++-- .../modules/permission/configuration/__init__.py | 4 ++-- .../src/modules/permission/events/__init__.py | 4 ++-- kdb-bot/src/modules/permission/permission.json | 2 +- .../src/modules/permission/service/__init__.py | 4 ++-- kdb-bot/src/modules/stats/__init__.py | 4 ++-- kdb-bot/src/modules/stats/command/__init__.py | 4 ++-- kdb-bot/src/modules/stats/model/__init__.py | 4 ++-- kdb-bot/src/modules/stats/service/__init__.py | 4 ++-- kdb-bot/src/modules/stats/stats.json | 2 +- kdb-bot/src/modules/stats/ui/__init__.py | 4 ++-- kdb-bot/src/modules/technician/__init__.py | 4 ++-- .../src/modules/technician/command/__init__.py | 4 ++-- kdb-bot/src/modules/technician/technician.json | 2 +- kdb-bot/tools/get_version/get-version.json | 2 +- kdb-bot/tools/post_build/post-build.json | 2 +- kdb-bot/tools/set_version/set-version.json | 2 +- 83 files changed, 157 insertions(+), 152 deletions(-) diff --git a/kdb-bot/dockerfile b/kdb-bot/dockerfile index 282eb8c6..62360746 100644 --- a/kdb-bot/dockerfile +++ b/kdb-bot/dockerfile @@ -14,5 +14,6 @@ RUN apk add nano RUN pip install -r requirements.txt --extra-index-url https://pip.sh-edraft.de RUN pip install flask[async] +RUN pip install dnspython==2.2.1 # https://stackoverflow.com/questions/75137717/eventlet-dns-python-attribute-error-module-dns-rdtypes-has-no-attribute-any CMD [ "bash", "/app/bot/bot"] diff --git a/kdb-bot/src/bot/__init__.py b/kdb-bot/src/bot/__init__.py index 687db4c3..35309ad1 100644 --- a/kdb-bot/src/bot/__init__.py +++ b/kdb-bot/src/bot/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot/bot.json b/kdb-bot/src/bot/bot.json index 8d20c966..8d0b44a1 100644 --- a/kdb-bot/src/bot/bot.json +++ b/kdb-bot/src/bot/bot.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "Sven Heidemann", "AuthorEmail": "sven.heidemann@sh-edraft.de", diff --git a/kdb-bot/src/bot/config b/kdb-bot/src/bot/config index 54b1b386..b0ae8762 160000 --- a/kdb-bot/src/bot/config +++ b/kdb-bot/src/bot/config @@ -1 +1 @@ -Subproject commit 54b1b3860cb570d29c8ba2590dd082a1fa744265 +Subproject commit b0ae87621bbe54fd9c5650071ec8c1c9ec32df48 diff --git a/kdb-bot/src/bot/extension/__init__.py b/kdb-bot/src/bot/extension/__init__.py index 04fcb1e5..b6da1362 100644 --- a/kdb-bot/src/bot/extension/__init__.py +++ b/kdb-bot/src/bot/extension/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot.extension" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/__init__.py b/kdb-bot/src/bot_api/__init__.py index 00db07e4..3428ee5e 100644 --- a/kdb-bot/src/bot_api/__init__.py +++ b/kdb-bot/src/bot_api/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/abc/__init__.py b/kdb-bot/src/bot_api/abc/__init__.py index 24fd1765..9cb606dd 100644 --- a/kdb-bot/src/bot_api/abc/__init__.py +++ b/kdb-bot/src/bot_api/abc/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.abc" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/bot-api.json b/kdb-bot/src/bot_api/bot-api.json index 320bb331..ede5d405 100644 --- a/kdb-bot/src/bot_api/bot-api.json +++ b/kdb-bot/src/bot_api/bot-api.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "", "AuthorEmail": "", diff --git a/kdb-bot/src/bot_api/configuration/__init__.py b/kdb-bot/src/bot_api/configuration/__init__.py index 93d26788..a0b51ead 100644 --- a/kdb-bot/src/bot_api/configuration/__init__.py +++ b/kdb-bot/src/bot_api/configuration/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.configuration" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/controller/__init__.py b/kdb-bot/src/bot_api/controller/__init__.py index 1f2ea8f7..05c377e5 100644 --- a/kdb-bot/src/bot_api/controller/__init__.py +++ b/kdb-bot/src/bot_api/controller/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.controller" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/controller/discord/__init__.py b/kdb-bot/src/bot_api/controller/discord/__init__.py index 8d647bc4..f5741907 100644 --- a/kdb-bot/src/bot_api/controller/discord/__init__.py +++ b/kdb-bot/src/bot_api/controller/discord/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.controller.discord" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/event/__init__.py b/kdb-bot/src/bot_api/event/__init__.py index 32906644..32b4550f 100644 --- a/kdb-bot/src/bot_api/event/__init__.py +++ b/kdb-bot/src/bot_api/event/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.event" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/exception/__init__.py b/kdb-bot/src/bot_api/exception/__init__.py index 55a69991..489cbd68 100644 --- a/kdb-bot/src/bot_api/exception/__init__.py +++ b/kdb-bot/src/bot_api/exception/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.exception" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/filter/__init__.py b/kdb-bot/src/bot_api/filter/__init__.py index 7ea12cf3..d8c8e234 100644 --- a/kdb-bot/src/bot_api/filter/__init__.py +++ b/kdb-bot/src/bot_api/filter/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.filter" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/filter/discord/__init__.py b/kdb-bot/src/bot_api/filter/discord/__init__.py index 95eddd93..65e59d93 100644 --- a/kdb-bot/src/bot_api/filter/discord/__init__.py +++ b/kdb-bot/src/bot_api/filter/discord/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.filter.discord" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/logging/__init__.py b/kdb-bot/src/bot_api/logging/__init__.py index 986732c8..91c72c2f 100644 --- a/kdb-bot/src/bot_api/logging/__init__.py +++ b/kdb-bot/src/bot_api/logging/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.logging" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/model/__init__.py b/kdb-bot/src/bot_api/model/__init__.py index 9657727c..cbe353f7 100644 --- a/kdb-bot/src/bot_api/model/__init__.py +++ b/kdb-bot/src/bot_api/model/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.model" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/model/discord/__init__.py b/kdb-bot/src/bot_api/model/discord/__init__.py index 90dd66c0..39043a01 100644 --- a/kdb-bot/src/bot_api/model/discord/__init__.py +++ b/kdb-bot/src/bot_api/model/discord/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.model.discord" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/route/__init__.py b/kdb-bot/src/bot_api/route/__init__.py index 3df22820..ee94830a 100644 --- a/kdb-bot/src/bot_api/route/__init__.py +++ b/kdb-bot/src/bot_api/route/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.route" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/service/__init__.py b/kdb-bot/src/bot_api/service/__init__.py index 9c33b510..915fae33 100644 --- a/kdb-bot/src/bot_api/service/__init__.py +++ b/kdb-bot/src/bot_api/service/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.service" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_api/transformer/__init__.py b/kdb-bot/src/bot_api/transformer/__init__.py index 3cde8386..bb9d1aba 100644 --- a/kdb-bot/src/bot_api/transformer/__init__.py +++ b/kdb-bot/src/bot_api/transformer/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_api.transformer" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_core/__init__.py b/kdb-bot/src/bot_core/__init__.py index 790bd362..ae80e11c 100644 --- a/kdb-bot/src/bot_core/__init__.py +++ b/kdb-bot/src/bot_core/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_core" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_core/abc/__init__.py b/kdb-bot/src/bot_core/abc/__init__.py index c28bc6f3..f4e94fab 100644 --- a/kdb-bot/src/bot_core/abc/__init__.py +++ b/kdb-bot/src/bot_core/abc/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_core.abc" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_core/bot-core.json b/kdb-bot/src/bot_core/bot-core.json index fc6849ec..2dfa0fdd 100644 --- a/kdb-bot/src/bot_core/bot-core.json +++ b/kdb-bot/src/bot_core/bot-core.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "Sven Heidemann", "AuthorEmail": "sven.heidemann@sh-edraft.de", diff --git a/kdb-bot/src/bot_core/configuration/__init__.py b/kdb-bot/src/bot_core/configuration/__init__.py index 29bc8a60..44e18912 100644 --- a/kdb-bot/src/bot_core/configuration/__init__.py +++ b/kdb-bot/src/bot_core/configuration/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_core.configuration" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_core/core_extension/__init__.py b/kdb-bot/src/bot_core/core_extension/__init__.py index 23dc223f..f0b64462 100644 --- a/kdb-bot/src/bot_core/core_extension/__init__.py +++ b/kdb-bot/src/bot_core/core_extension/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_core.core_extension" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_core/events/__init__.py b/kdb-bot/src/bot_core/events/__init__.py index 8d776c9b..6dfe3aa6 100644 --- a/kdb-bot/src/bot_core/events/__init__.py +++ b/kdb-bot/src/bot_core/events/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_core.events" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_core/exception/__init__.py b/kdb-bot/src/bot_core/exception/__init__.py index 8fc6b6f8..ba8991ba 100644 --- a/kdb-bot/src/bot_core/exception/__init__.py +++ b/kdb-bot/src/bot_core/exception/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_core.exception" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_core/helper/__init__.py b/kdb-bot/src/bot_core/helper/__init__.py index 86d269b5..1a4def5d 100644 --- a/kdb-bot/src/bot_core/helper/__init__.py +++ b/kdb-bot/src/bot_core/helper/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_core.helper" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_core/logging/__init__.py b/kdb-bot/src/bot_core/logging/__init__.py index c5cc6143..83907227 100644 --- a/kdb-bot/src/bot_core/logging/__init__.py +++ b/kdb-bot/src/bot_core/logging/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_core.logging" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_core/pipes/__init__.py b/kdb-bot/src/bot_core/pipes/__init__.py index da20a4b1..6f925684 100644 --- a/kdb-bot/src/bot_core/pipes/__init__.py +++ b/kdb-bot/src/bot_core/pipes/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_core.pipes" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_core/service/__init__.py b/kdb-bot/src/bot_core/service/__init__.py index 9341d634..30a597d0 100644 --- a/kdb-bot/src/bot_core/service/__init__.py +++ b/kdb-bot/src/bot_core/service/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_core.service" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_data/__init__.py b/kdb-bot/src/bot_data/__init__.py index 56258bc2..62c66f89 100644 --- a/kdb-bot/src/bot_data/__init__.py +++ b/kdb-bot/src/bot_data/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_data" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_data/abc/__init__.py b/kdb-bot/src/bot_data/abc/__init__.py index d8521aab..2991e1e7 100644 --- a/kdb-bot/src/bot_data/abc/__init__.py +++ b/kdb-bot/src/bot_data/abc/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_data.abc" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_data/bot-data.json b/kdb-bot/src/bot_data/bot-data.json index 4cfedaf6..5fd0d0e1 100644 --- a/kdb-bot/src/bot_data/bot-data.json +++ b/kdb-bot/src/bot_data/bot-data.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "Sven Heidemann", "AuthorEmail": "sven.heidemann@sh-edraft.de", diff --git a/kdb-bot/src/bot_data/migration/__init__.py b/kdb-bot/src/bot_data/migration/__init__.py index fd2eb41f..0bc7eecc 100644 --- a/kdb-bot/src/bot_data/migration/__init__.py +++ b/kdb-bot/src/bot_data/migration/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_data.migration" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_data/model/__init__.py b/kdb-bot/src/bot_data/model/__init__.py index 51f3b8a6..6172522e 100644 --- a/kdb-bot/src/bot_data/model/__init__.py +++ b/kdb-bot/src/bot_data/model/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_data.model" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/bot_data/service/__init__.py b/kdb-bot/src/bot_data/service/__init__.py index 73214e20..9fdedbe6 100644 --- a/kdb-bot/src/bot_data/service/__init__.py +++ b/kdb-bot/src/bot_data/service/__init__.py @@ -15,7 +15,7 @@ __title__ = "bot_data.service" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/auto_role/__init__.py b/kdb-bot/src/modules/auto_role/__init__.py index 26774771..225a5ad8 100644 --- a/kdb-bot/src/modules/auto_role/__init__.py +++ b/kdb-bot/src/modules/auto_role/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.auto_role" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/auto_role/auto-role.json b/kdb-bot/src/modules/auto_role/auto-role.json index ef61114c..9e9d6600 100644 --- a/kdb-bot/src/modules/auto_role/auto-role.json +++ b/kdb-bot/src/modules/auto_role/auto-role.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "", "AuthorEmail": "", diff --git a/kdb-bot/src/modules/auto_role/command/__init__.py b/kdb-bot/src/modules/auto_role/command/__init__.py index b43b61ee..7f5d14fa 100644 --- a/kdb-bot/src/modules/auto_role/command/__init__.py +++ b/kdb-bot/src/modules/auto_role/command/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.auto_role.command" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/auto_role/events/__init__.py b/kdb-bot/src/modules/auto_role/events/__init__.py index e6346405..1631cdbc 100644 --- a/kdb-bot/src/modules/auto_role/events/__init__.py +++ b/kdb-bot/src/modules/auto_role/events/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.auto_role.events" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/auto_role/helper/__init__.py b/kdb-bot/src/modules/auto_role/helper/__init__.py index 80f08582..7acb3eaf 100644 --- a/kdb-bot/src/modules/auto_role/helper/__init__.py +++ b/kdb-bot/src/modules/auto_role/helper/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.auto_role.helper" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/base/__init__.py b/kdb-bot/src/modules/base/__init__.py index 5cc8b12a..fe173a55 100644 --- a/kdb-bot/src/modules/base/__init__.py +++ b/kdb-bot/src/modules/base/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.base" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/base/abc/__init__.py b/kdb-bot/src/modules/base/abc/__init__.py index 99963885..7730864a 100644 --- a/kdb-bot/src/modules/base/abc/__init__.py +++ b/kdb-bot/src/modules/base/abc/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.base.abc" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/base/base.json b/kdb-bot/src/modules/base/base.json index 217fb702..845c05a7 100644 --- a/kdb-bot/src/modules/base/base.json +++ b/kdb-bot/src/modules/base/base.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "", "AuthorEmail": "", diff --git a/kdb-bot/src/modules/base/command/__init__.py b/kdb-bot/src/modules/base/command/__init__.py index f6c4fd0a..1aa1acbd 100644 --- a/kdb-bot/src/modules/base/command/__init__.py +++ b/kdb-bot/src/modules/base/command/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.base.command" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/base/configuration/__init__.py b/kdb-bot/src/modules/base/configuration/__init__.py index 6178ed32..157e31db 100644 --- a/kdb-bot/src/modules/base/configuration/__init__.py +++ b/kdb-bot/src/modules/base/configuration/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.base.configuration" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/base/events/__init__.py b/kdb-bot/src/modules/base/events/__init__.py index 9e355bd8..e6276fe1 100644 --- a/kdb-bot/src/modules/base/events/__init__.py +++ b/kdb-bot/src/modules/base/events/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.base.events" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/base/events/base_on_voice_state_update_event.py b/kdb-bot/src/modules/base/events/base_on_voice_state_update_event.py index 30d8439e..e1eb75b1 100644 --- a/kdb-bot/src/modules/base/events/base_on_voice_state_update_event.py +++ b/kdb-bot/src/modules/base/events/base_on_voice_state_update_event.py @@ -48,7 +48,7 @@ class BaseOnVoiceStateUpdateEvent(OnVoiceStateUpdateABC): self._logger.info(__name__, f"Module {type(self)} loaded") - def _update_voice_state(self, joined: bool, dc_user_id: int, dc_channel_id: int, server: Server): + def _update_voice_state(self, joined: bool, dc_user_id: int, dc_channel_id: int, server: Server, switch=False): user: Optional[User] = None try: user = self._users.get_user_by_discord_id_and_server_id(dc_user_id, server.server_id) @@ -61,16 +61,21 @@ class BaseOnVoiceStateUpdateEvent(OnVoiceStateUpdateABC): return try: - if joined: - join = UserJoinedVoiceChannel(user, dc_channel_id, datetime.now()) + end_date = datetime.now() + if joined and not switch: + join = UserJoinedVoiceChannel(user, dc_channel_id, end_date) self._user_joins_vc.add_user_joined_voice_channel(join) self._db.save_changes() return + elif joined and switch: + join = UserJoinedVoiceChannel(user, dc_channel_id, end_date) + self._user_joins_vc.add_user_joined_voice_channel(join) + settings: BaseServerSettings = self._base_helper.get_config(server.discord_server_id) join = self._user_joins_vc.get_active_user_joined_voice_channel_by_user_id(user.user_id) - join.leaved_on = datetime.now() + join.leaved_on = end_date # ontime as hours ontime = round((join.leaved_on - join.joined_on).total_seconds() / 3600, 2) @@ -136,7 +141,6 @@ class BaseOnVoiceStateUpdateEvent(OnVoiceStateUpdateABC): else: self._logger.trace(__name__, f"User {member.id} switched to {after.channel}") - self._update_voice_state(False, member.id, before.channel.id, server) - self._update_voice_state(True, member.id, after.channel.id, server) + self._update_voice_state(True, member.id, before.channel.id, server, True) except Exception as e: self._logger.error(__name__, f"Cannot handle voice state for user {member.id}", e) diff --git a/kdb-bot/src/modules/base/helper/__init__.py b/kdb-bot/src/modules/base/helper/__init__.py index 28f77684..a30d1bf3 100644 --- a/kdb-bot/src/modules/base/helper/__init__.py +++ b/kdb-bot/src/modules/base/helper/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.base.helper" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/base/helper/base_reaction_handler.py b/kdb-bot/src/modules/base/helper/base_reaction_handler.py index 407c1ece..3bb06cdc 100644 --- a/kdb-bot/src/modules/base/helper/base_reaction_handler.py +++ b/kdb-bot/src/modules/base/helper/base_reaction_handler.py @@ -1,12 +1,12 @@ from datetime import datetime from cpl_core.database.context import DatabaseContextABC -from cpl_core.logging import LoggerABC from cpl_discord.service import DiscordBotServiceABC from discord import RawReactionActionEvent from bot_core.abc.client_utils_abc import ClientUtilsABC from bot_core.helper.log_message_helper import LogMessageHelper +from bot_core.logging.message_logger import MessageLogger from bot_data.abc.server_repository_abc import ServerRepositoryABC from bot_data.abc.user_repository_abc import UserRepositoryABC from modules.base.abc.base_helper_abc import BaseHelperABC @@ -16,7 +16,7 @@ from modules.base.configuration.base_server_settings import BaseServerSettings class BaseReactionHandler: def __init__( self, - logger: LoggerABC, + logger: MessageLogger, bot: DiscordBotServiceABC, servers: ServerRepositoryABC, users: UserRepositoryABC, diff --git a/kdb-bot/src/modules/base/service/__init__.py b/kdb-bot/src/modules/base/service/__init__.py index 719b7314..7b569a64 100644 --- a/kdb-bot/src/modules/base/service/__init__.py +++ b/kdb-bot/src/modules/base/service/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.base.service" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/base/thread/__init__.py b/kdb-bot/src/modules/base/thread/__init__.py index 20cd2f0c..f85b1e37 100644 --- a/kdb-bot/src/modules/base/thread/__init__.py +++ b/kdb-bot/src/modules/base/thread/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.base.thread" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/boot_log/__init__.py b/kdb-bot/src/modules/boot_log/__init__.py index b24415e8..5696e43a 100644 --- a/kdb-bot/src/modules/boot_log/__init__.py +++ b/kdb-bot/src/modules/boot_log/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.boot_log" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/boot_log/boot-log.json b/kdb-bot/src/modules/boot_log/boot-log.json index 00610d31..29921d48 100644 --- a/kdb-bot/src/modules/boot_log/boot-log.json +++ b/kdb-bot/src/modules/boot_log/boot-log.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "", "AuthorEmail": "", diff --git a/kdb-bot/src/modules/boot_log/configuration/__init__.py b/kdb-bot/src/modules/boot_log/configuration/__init__.py index c373fc0e..3a3d3d8e 100644 --- a/kdb-bot/src/modules/boot_log/configuration/__init__.py +++ b/kdb-bot/src/modules/boot_log/configuration/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.boot_log.configuration" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/database/__init__.py b/kdb-bot/src/modules/database/__init__.py index 218c25f4..ecdc13f0 100644 --- a/kdb-bot/src/modules/database/__init__.py +++ b/kdb-bot/src/modules/database/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.database" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/database/database.json b/kdb-bot/src/modules/database/database.json index bcbe621d..52033376 100644 --- a/kdb-bot/src/modules/database/database.json +++ b/kdb-bot/src/modules/database/database.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "Sven Heidemann", "AuthorEmail": "sven.heidemann@sh-edraft.de", diff --git a/kdb-bot/src/modules/level/__init__.py b/kdb-bot/src/modules/level/__init__.py index 3fef254a..aa3b114d 100644 --- a/kdb-bot/src/modules/level/__init__.py +++ b/kdb-bot/src/modules/level/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.level" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/level/command/__init__.py b/kdb-bot/src/modules/level/command/__init__.py index 02a2c096..70055185 100644 --- a/kdb-bot/src/modules/level/command/__init__.py +++ b/kdb-bot/src/modules/level/command/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.level.command" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/level/configuration/__init__.py b/kdb-bot/src/modules/level/configuration/__init__.py index 0891b568..6ba3abb5 100644 --- a/kdb-bot/src/modules/level/configuration/__init__.py +++ b/kdb-bot/src/modules/level/configuration/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.level.configuration" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/level/events/__init__.py b/kdb-bot/src/modules/level/events/__init__.py index 71554fc3..ba781410 100644 --- a/kdb-bot/src/modules/level/events/__init__.py +++ b/kdb-bot/src/modules/level/events/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.level.events" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/level/level.json b/kdb-bot/src/modules/level/level.json index 6a9137dc..bbacdedc 100644 --- a/kdb-bot/src/modules/level/level.json +++ b/kdb-bot/src/modules/level/level.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "", "AuthorEmail": "", diff --git a/kdb-bot/src/modules/level/service/__init__.py b/kdb-bot/src/modules/level/service/__init__.py index b8b6ca28..02b6de83 100644 --- a/kdb-bot/src/modules/level/service/__init__.py +++ b/kdb-bot/src/modules/level/service/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.level.service" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/permission/__init__.py b/kdb-bot/src/modules/permission/__init__.py index dfc4fab3..6b084d9a 100644 --- a/kdb-bot/src/modules/permission/__init__.py +++ b/kdb-bot/src/modules/permission/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.permission" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/permission/abc/__init__.py b/kdb-bot/src/modules/permission/abc/__init__.py index 2d83e842..11021cdb 100644 --- a/kdb-bot/src/modules/permission/abc/__init__.py +++ b/kdb-bot/src/modules/permission/abc/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.permission.abc" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/permission/configuration/__init__.py b/kdb-bot/src/modules/permission/configuration/__init__.py index d88644c7..8d659f2a 100644 --- a/kdb-bot/src/modules/permission/configuration/__init__.py +++ b/kdb-bot/src/modules/permission/configuration/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.permission.configuration" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/permission/events/__init__.py b/kdb-bot/src/modules/permission/events/__init__.py index 988712ce..d67c3853 100644 --- a/kdb-bot/src/modules/permission/events/__init__.py +++ b/kdb-bot/src/modules/permission/events/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.permission.events" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/permission/permission.json b/kdb-bot/src/modules/permission/permission.json index 15ddb76d..0a8acaaa 100644 --- a/kdb-bot/src/modules/permission/permission.json +++ b/kdb-bot/src/modules/permission/permission.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "", "AuthorEmail": "", diff --git a/kdb-bot/src/modules/permission/service/__init__.py b/kdb-bot/src/modules/permission/service/__init__.py index b139e331..07c51a23 100644 --- a/kdb-bot/src/modules/permission/service/__init__.py +++ b/kdb-bot/src/modules/permission/service/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.permission.service" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/stats/__init__.py b/kdb-bot/src/modules/stats/__init__.py index 0c26311e..bfa8b9da 100644 --- a/kdb-bot/src/modules/stats/__init__.py +++ b/kdb-bot/src/modules/stats/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.stats" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/stats/command/__init__.py b/kdb-bot/src/modules/stats/command/__init__.py index f5346950..abbec8b4 100644 --- a/kdb-bot/src/modules/stats/command/__init__.py +++ b/kdb-bot/src/modules/stats/command/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.stats.command" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/stats/model/__init__.py b/kdb-bot/src/modules/stats/model/__init__.py index ce2d9618..6e59683c 100644 --- a/kdb-bot/src/modules/stats/model/__init__.py +++ b/kdb-bot/src/modules/stats/model/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.stats.model" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/stats/service/__init__.py b/kdb-bot/src/modules/stats/service/__init__.py index 74fb38e5..0fe51ae2 100644 --- a/kdb-bot/src/modules/stats/service/__init__.py +++ b/kdb-bot/src/modules/stats/service/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.stats.service" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/stats/stats.json b/kdb-bot/src/modules/stats/stats.json index d063c651..009b92e2 100644 --- a/kdb-bot/src/modules/stats/stats.json +++ b/kdb-bot/src/modules/stats/stats.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "", "AuthorEmail": "", diff --git a/kdb-bot/src/modules/stats/ui/__init__.py b/kdb-bot/src/modules/stats/ui/__init__.py index 8e71e850..2440a6d3 100644 --- a/kdb-bot/src/modules/stats/ui/__init__.py +++ b/kdb-bot/src/modules/stats/ui/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.stats.ui" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/technician/__init__.py b/kdb-bot/src/modules/technician/__init__.py index 70439bd1..f5c1313e 100644 --- a/kdb-bot/src/modules/technician/__init__.py +++ b/kdb-bot/src/modules/technician/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.technician" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/technician/command/__init__.py b/kdb-bot/src/modules/technician/command/__init__.py index 6326d824..32e38a84 100644 --- a/kdb-bot/src/modules/technician/command/__init__.py +++ b/kdb-bot/src/modules/technician/command/__init__.py @@ -15,7 +15,7 @@ __title__ = "modules.technician.command" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" -__version__ = "0.3.1" +__version__ = "0.3.1.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="0", minor="3", micro="1") +version_info = VersionInfo(major="0", minor="3", micro="1.post1") diff --git a/kdb-bot/src/modules/technician/technician.json b/kdb-bot/src/modules/technician/technician.json index 4f69b972..fb5d9e67 100644 --- a/kdb-bot/src/modules/technician/technician.json +++ b/kdb-bot/src/modules/technician/technician.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "", "AuthorEmail": "", diff --git a/kdb-bot/tools/get_version/get-version.json b/kdb-bot/tools/get_version/get-version.json index 5a988b8b..99773f27 100644 --- a/kdb-bot/tools/get_version/get-version.json +++ b/kdb-bot/tools/get_version/get-version.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "Sven Heidemann", "AuthorEmail": "sven.heidemann@sh-edraft.de", diff --git a/kdb-bot/tools/post_build/post-build.json b/kdb-bot/tools/post_build/post-build.json index 9f9f2af7..ddbfa727 100644 --- a/kdb-bot/tools/post_build/post-build.json +++ b/kdb-bot/tools/post_build/post-build.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "Sven Heidemann", "AuthorEmail": "sven.heidemann@sh-edraft.de", diff --git a/kdb-bot/tools/set_version/set-version.json b/kdb-bot/tools/set_version/set-version.json index e70fbdbf..1932cf25 100644 --- a/kdb-bot/tools/set_version/set-version.json +++ b/kdb-bot/tools/set_version/set-version.json @@ -4,7 +4,7 @@ "Version": { "Major": "0", "Minor": "3", - "Micro": "1" + "Micro": "1.post1" }, "Author": "Sven Heidemann", "AuthorEmail": "sven.heidemann@sh-edraft.de", From 53cdaf3fa0d8c01fb28a1c0c0b8d764aefd749cf Mon Sep 17 00:00:00 2001 From: Sven Heidemann Date: Thu, 19 Jan 2023 19:34:03 +0100 Subject: [PATCH 2/5] Added get_ontime_overlaps script --- kdb-bot/cpl-workspace.json | 10 +- .../tools/checks/UserJoinedVoiceChannel.json | 4088 +++++++++++++++++ kdb-bot/tools/checks/__init__.py | 1 + kdb-bot/tools/checks/checks.json | 46 + kdb-bot/tools/checks/get_ontime_overlaps.py | 81 + 5 files changed, 4218 insertions(+), 8 deletions(-) create mode 100644 kdb-bot/tools/checks/UserJoinedVoiceChannel.json create mode 100644 kdb-bot/tools/checks/__init__.py create mode 100644 kdb-bot/tools/checks/checks.json create mode 100644 kdb-bot/tools/checks/get_ontime_overlaps.py diff --git a/kdb-bot/cpl-workspace.json b/kdb-bot/cpl-workspace.json index 5a5654f3..5e7dd6ea 100644 --- a/kdb-bot/cpl-workspace.json +++ b/kdb-bot/cpl-workspace.json @@ -16,29 +16,23 @@ "technician": "src/modules/technician/technician.json", "get-version": "tools/get_version/get-version.json", "post-build": "tools/post_build/post-build.json", - "set-version": "tools/set_version/set-version.json" + "set-version": "tools/set_version/set-version.json", + "tools/checks": "tools/tools/checks/tools/checks.json" }, "Scripts": { "format": "black ./", - "sv": "cpl set-version $ARGS", "set-version": "cpl run set-version $ARGS --dev; echo '';", - "gv": "cpl get-version", "get-version": "export VERSION=$(cpl run get-version --dev); echo $VERSION;", - "pre-build": "cpl set-version $ARGS; black ./;", "post-build": "cpl run post-build --dev; black ./;", - "pre-prod": "cpl build", "prod": "export KDB_ENVIRONMENT=production; export KDB_NAME=KDB-Prod; cpl start;", - "pre-stage": "cpl build", "stage": "export KDB_ENVIRONMENT=staging; export KDB_NAME=KDB-Stage; cpl start;", - "pre-dev": "cpl build", "dev": "export KDB_ENVIRONMENT=development; export KDB_NAME=KDB-Dev; cpl start;", - "docker-build": "cpl build $ARGS; docker build -t kdb-bot/kdb-bot:$(cpl gv) .;", "dc-up": "docker-compose up -d", "dc-down": "docker-compose down", diff --git a/kdb-bot/tools/checks/UserJoinedVoiceChannel.json b/kdb-bot/tools/checks/UserJoinedVoiceChannel.json new file mode 100644 index 00000000..0a85fb57 --- /dev/null +++ b/kdb-bot/tools/checks/UserJoinedVoiceChannel.json @@ -0,0 +1,4088 @@ +[ + { + "JoinId": 443, + "UserId": 20, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:09:51.916945", + "LeavedOn": "2023-01-19 17:06:54.217709", + "CreatedAt": "2023-01-19 16:09:51.916950", + "LastModifiedAt": "2023-01-19 16:09:51.916953" + }, + { + "JoinId": 448, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:28:21.048841", + "LeavedOn": "2023-01-19 17:06:54.217709", + "CreatedAt": "2023-01-19 16:28:21.048847", + "LastModifiedAt": "2023-01-19 16:28:21.048852" + }, + { + "JoinId": 455, + "UserId": 36, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:59:26.234076", + "LeavedOn": "2023-01-19 17:06:54.217709", + "CreatedAt": "2023-01-19 16:59:26.234079", + "LastModifiedAt": "2023-01-19 16:59:26.234082" + }, + { + "JoinId": 458, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-19 17:04:47.258179", + "LeavedOn": "2023-01-19 17:06:54.217709", + "CreatedAt": "2023-01-19 17:04:47.258183", + "LastModifiedAt": "2023-01-19 17:04:47.258186" + }, + { + "JoinId": 459, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 17:05:28.352856", + "LeavedOn": "2023-01-19 17:06:54.217709", + "CreatedAt": "2023-01-19 17:05:28.352861", + "LastModifiedAt": "2023-01-19 17:06:54.217711" + }, + { + "JoinId": 454, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:58:31.589582", + "LeavedOn": "2023-01-19 17:06:52.695149", + "CreatedAt": "2023-01-19 16:58:31.589585", + "LastModifiedAt": "2023-01-19 17:06:52.695150" + }, + { + "JoinId": 453, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:57:52.584694", + "LeavedOn": "2023-01-19 17:05:28.347663", + "CreatedAt": "2023-01-19 16:57:52.584697", + "LastModifiedAt": "2023-01-19 17:05:28.347665" + }, + { + "JoinId": 457, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 17:03:48.805980", + "LeavedOn": "2023-01-19 17:04:47.253210", + "CreatedAt": "2023-01-19 17:03:48.805985", + "LastModifiedAt": "2023-01-19 17:04:47.253212" + }, + { + "JoinId": 456, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 17:03:47.290622", + "LeavedOn": "2023-01-19 17:03:48.799631", + "CreatedAt": "2023-01-19 17:03:47.290626", + "LastModifiedAt": "2023-01-19 17:03:48.799633" + }, + { + "JoinId": 441, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-19 15:39:07.961760", + "LeavedOn": "2023-01-19 17:03:47.283277", + "CreatedAt": "2023-01-19 15:39:07.961764", + "LastModifiedAt": "2023-01-19 17:03:47.283278" + }, + { + "JoinId": 433, + "UserId": 36, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 15:35:38.359241", + "LeavedOn": "2023-01-19 16:59:26.229999", + "CreatedAt": "2023-01-19 15:35:38.359244", + "LastModifiedAt": "2023-01-19 16:59:26.230001" + }, + { + "JoinId": 452, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:50:34.670244", + "LeavedOn": "2023-01-19 16:58:31.584264", + "CreatedAt": "2023-01-19 16:50:34.670247", + "LastModifiedAt": "2023-01-19 16:58:31.584265" + }, + { + "JoinId": 451, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:47:44.271652", + "LeavedOn": "2023-01-19 16:57:52.580036", + "CreatedAt": "2023-01-19 16:47:44.271658", + "LastModifiedAt": "2023-01-19 16:57:52.580038" + }, + { + "JoinId": 450, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:45:21.137230", + "LeavedOn": "2023-01-19 16:50:34.665775", + "CreatedAt": "2023-01-19 16:45:21.137234", + "LastModifiedAt": "2023-01-19 16:50:34.665776" + }, + { + "JoinId": 449, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:45:18.919783", + "LeavedOn": "2023-01-19 16:47:44.266225", + "CreatedAt": "2023-01-19 16:45:18.919787", + "LastModifiedAt": "2023-01-19 16:47:44.266227" + }, + { + "JoinId": 447, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:26:32.252695", + "LeavedOn": "2023-01-19 16:45:21.131293", + "CreatedAt": "2023-01-19 16:26:32.252699", + "LastModifiedAt": "2023-01-19 16:45:21.131295" + }, + { + "JoinId": 446, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:23:03.712211", + "LeavedOn": "2023-01-19 16:45:18.915746", + "CreatedAt": "2023-01-19 16:23:03.712214", + "LastModifiedAt": "2023-01-19 16:45:18.915748" + }, + { + "JoinId": 439, + "UserId": 32, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 15:39:03.792611", + "LeavedOn": "2023-01-19 16:30:19.782664", + "CreatedAt": "2023-01-19 15:39:03.792634", + "LastModifiedAt": "2023-01-19 16:30:19.782665" + }, + { + "JoinId": 445, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:22:15.856481", + "LeavedOn": "2023-01-19 16:26:32.246589", + "CreatedAt": "2023-01-19 16:22:15.856485", + "LastModifiedAt": "2023-01-19 16:26:32.246591" + }, + { + "JoinId": 444, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 16:22:09.072592", + "LeavedOn": "2023-01-19 16:23:03.707387", + "CreatedAt": "2023-01-19 16:22:09.072597", + "LastModifiedAt": "2023-01-19 16:23:03.707389" + }, + { + "JoinId": 430, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 15:18:01.584719", + "LeavedOn": "2023-01-19 16:22:15.848954", + "CreatedAt": "2023-01-19 15:18:01.584724", + "LastModifiedAt": "2023-01-19 16:22:15.848955" + }, + { + "JoinId": 361, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-17 20:52:12.664152", + "LeavedOn": "2023-01-19 16:22:09.065981", + "CreatedAt": "2023-01-17 20:52:12.664157", + "LastModifiedAt": "2023-01-19 16:22:09.065983" + }, + { + "JoinId": 442, + "UserId": 20, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 15:50:35.417300", + "LeavedOn": "2023-01-19 16:09:43.516070", + "CreatedAt": "2023-01-19 15:50:35.417304", + "LastModifiedAt": "2023-01-19 16:09:43.516072" + }, + { + "JoinId": 435, + "UserId": 20, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 15:36:19.510620", + "LeavedOn": "2023-01-19 15:50:31.367730", + "CreatedAt": "2023-01-19 15:36:19.510626", + "LastModifiedAt": "2023-01-19 15:50:31.367731" + }, + { + "JoinId": 440, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-19 15:39:06.772032", + "LeavedOn": "2023-01-19 15:39:07.956512", + "CreatedAt": "2023-01-19 15:39:06.772035", + "LastModifiedAt": "2023-01-19 15:39:07.956514" + }, + { + "JoinId": 438, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-19 15:38:18.231705", + "LeavedOn": "2023-01-19 15:39:06.766706", + "CreatedAt": "2023-01-19 15:38:18.231710", + "LastModifiedAt": "2023-01-19 15:39:06.766707" + }, + { + "JoinId": 437, + "UserId": 32, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-19 15:38:17.366333", + "LeavedOn": "2023-01-19 15:39:03.785763", + "CreatedAt": "2023-01-19 15:38:17.366336", + "LastModifiedAt": "2023-01-19 15:39:03.785765" + }, + { + "JoinId": 432, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 15:28:54.253940", + "LeavedOn": "2023-01-19 15:38:18.225898", + "CreatedAt": "2023-01-19 15:28:54.253944", + "LastModifiedAt": "2023-01-19 15:38:18.225899" + }, + { + "JoinId": 436, + "UserId": 32, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 15:37:19.055574", + "LeavedOn": "2023-01-19 15:38:17.362166", + "CreatedAt": "2023-01-19 15:37:19.055578", + "LastModifiedAt": "2023-01-19 15:38:17.362169" + }, + { + "JoinId": 434, + "UserId": 20, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-19 15:36:18.336084", + "LeavedOn": "2023-01-19 15:36:19.504624", + "CreatedAt": "2023-01-19 15:36:18.336088", + "LastModifiedAt": "2023-01-19 15:36:19.504625" + }, + { + "JoinId": 431, + "UserId": 20, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-19 15:25:46.276896", + "LeavedOn": "2023-01-19 15:36:18.330684", + "CreatedAt": "2023-01-19 15:25:46.276899", + "LastModifiedAt": "2023-01-19 15:36:18.330686" + }, + { + "JoinId": 429, + "UserId": 20, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-19 11:46:12.219306", + "LeavedOn": "2023-01-19 12:11:57.731188", + "CreatedAt": "2023-01-19 11:46:12.219309", + "LastModifiedAt": "2023-01-19 12:11:57.731190" + }, + { + "JoinId": 427, + "UserId": 36, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-19 09:36:17.677616", + "LeavedOn": "2023-01-19 11:12:59.099196", + "CreatedAt": "2023-01-19 09:36:17.677619", + "LastModifiedAt": "2023-01-19 11:12:59.099198" + }, + { + "JoinId": 428, + "UserId": 34, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-19 10:07:47.194421", + "LeavedOn": "2023-01-19 10:09:06.497426", + "CreatedAt": "2023-01-19 10:07:47.194426", + "LastModifiedAt": "2023-01-19 10:09:06.497428" + }, + { + "JoinId": 426, + "UserId": 34, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-19 09:02:21.714747", + "LeavedOn": "2023-01-19 10:07:47.189976", + "CreatedAt": "2023-01-19 09:02:21.714753", + "LastModifiedAt": "2023-01-19 10:07:47.189978" + }, + { + "JoinId": 423, + "UserId": 20, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-19 08:53:56.171675", + "LeavedOn": "2023-01-19 10:03:42.434291", + "CreatedAt": "2023-01-19 08:53:56.171680", + "LastModifiedAt": "2023-01-19 10:03:42.434293" + }, + { + "JoinId": 421, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-19 08:38:08.072767", + "LeavedOn": "2023-01-19 09:36:17.671328", + "CreatedAt": "2023-01-19 08:38:08.072772", + "LastModifiedAt": "2023-01-19 09:36:17.671330" + }, + { + "JoinId": 425, + "UserId": 26, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-19 09:01:41.753053", + "LeavedOn": "2023-01-19 09:06:41.285056", + "CreatedAt": "2023-01-19 09:01:41.753057", + "LastModifiedAt": "2023-01-19 09:06:41.285059" + }, + { + "JoinId": 422, + "UserId": 34, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-19 08:52:34.552564", + "LeavedOn": "2023-01-19 09:02:21.709764", + "CreatedAt": "2023-01-19 08:52:34.552568", + "LastModifiedAt": "2023-01-19 09:02:21.709766" + }, + { + "JoinId": 424, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-19 08:55:45.461442", + "LeavedOn": "2023-01-19 09:01:41.747023", + "CreatedAt": "2023-01-19 08:55:45.461445", + "LastModifiedAt": "2023-01-19 09:01:41.747025" + }, + { + "JoinId": 400, + "UserId": 48, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 18:49:42.719808", + "LeavedOn": "2023-01-19 00:19:38.713416", + "CreatedAt": "2023-01-18 18:49:42.719812", + "LastModifiedAt": "2023-01-19 00:19:38.713418" + }, + { + "JoinId": 417, + "UserId": 20, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 20:27:08.525076", + "LeavedOn": "2023-01-18 22:28:54.562234", + "CreatedAt": "2023-01-18 20:27:08.525079", + "LastModifiedAt": "2023-01-18 22:28:54.562237" + }, + { + "JoinId": 420, + "UserId": 7, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 21:51:27.671910", + "LeavedOn": "2023-01-18 21:54:08.056928", + "CreatedAt": "2023-01-18 21:51:27.671915", + "LastModifiedAt": "2023-01-18 21:54:08.056930" + }, + { + "JoinId": 419, + "UserId": 7, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 21:51:25.417026", + "LeavedOn": "2023-01-18 21:51:27.666952", + "CreatedAt": "2023-01-18 21:51:25.417030", + "LastModifiedAt": "2023-01-18 21:51:27.666953" + }, + { + "JoinId": 418, + "UserId": 7, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 21:51:22.359842", + "LeavedOn": "2023-01-18 21:51:25.412439", + "CreatedAt": "2023-01-18 21:51:22.359848", + "LastModifiedAt": "2023-01-18 21:51:25.412441" + }, + { + "JoinId": 411, + "UserId": 36, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 19:33:55.665966", + "LeavedOn": "2023-01-18 20:49:47.039892", + "CreatedAt": "2023-01-18 19:33:55.665970", + "LastModifiedAt": "2023-01-18 20:49:47.039893" + }, + { + "JoinId": 414, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 19:36:46.847338", + "LeavedOn": "2023-01-18 20:48:58.913143", + "CreatedAt": "2023-01-18 19:36:46.847381", + "LastModifiedAt": "2023-01-18 20:48:58.913144" + }, + { + "JoinId": 410, + "UserId": 20, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 19:25:27.230659", + "LeavedOn": "2023-01-18 20:27:08.519449", + "CreatedAt": "2023-01-18 19:25:27.230662", + "LastModifiedAt": "2023-01-18 20:27:08.519451" + }, + { + "JoinId": 416, + "UserId": 62, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 19:47:29.716757", + "LeavedOn": "2023-01-18 19:48:28.051477", + "CreatedAt": "2023-01-18 19:47:29.716761", + "LastModifiedAt": "2023-01-18 19:48:28.051479" + }, + { + "JoinId": 415, + "UserId": 62, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 19:44:38.972913", + "LeavedOn": "2023-01-18 19:47:29.712607", + "CreatedAt": "2023-01-18 19:44:38.972917", + "LastModifiedAt": "2023-01-18 19:47:29.712608" + }, + { + "JoinId": 395, + "UserId": 62, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 18:07:28.180623", + "LeavedOn": "2023-01-18 19:44:38.967574", + "CreatedAt": "2023-01-18 18:07:28.180628", + "LastModifiedAt": "2023-01-18 19:44:38.967576" + }, + { + "JoinId": 413, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 19:34:10.024757", + "LeavedOn": "2023-01-18 19:36:46.842058", + "CreatedAt": "2023-01-18 19:34:10.024761", + "LastModifiedAt": "2023-01-18 19:36:46.842060" + }, + { + "JoinId": 412, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 19:33:59.156963", + "LeavedOn": "2023-01-18 19:34:10.020383", + "CreatedAt": "2023-01-18 19:33:59.156966", + "LastModifiedAt": "2023-01-18 19:34:10.020384" + }, + { + "JoinId": 402, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-18 19:02:37.980865", + "LeavedOn": "2023-01-18 19:33:59.151971", + "CreatedAt": "2023-01-18 19:02:37.980869", + "LastModifiedAt": "2023-01-18 19:33:59.151972" + }, + { + "JoinId": 403, + "UserId": 36, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-18 19:02:39.172991", + "LeavedOn": "2023-01-18 19:33:55.660296", + "CreatedAt": "2023-01-18 19:02:39.172996", + "LastModifiedAt": "2023-01-18 19:33:55.660298" + }, + { + "JoinId": 409, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 19:24:49.930357", + "LeavedOn": "2023-01-18 19:29:37.015193", + "CreatedAt": "2023-01-18 19:24:49.930361", + "LastModifiedAt": "2023-01-18 19:29:37.015195" + }, + { + "JoinId": 408, + "UserId": 32, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 19:24:49.362963", + "LeavedOn": "2023-01-18 19:26:12.923021", + "CreatedAt": "2023-01-18 19:24:49.362967", + "LastModifiedAt": "2023-01-18 19:26:12.923023" + }, + { + "JoinId": 401, + "UserId": 20, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 18:51:47.247300", + "LeavedOn": "2023-01-18 19:25:27.226247", + "CreatedAt": "2023-01-18 18:51:47.247304", + "LastModifiedAt": "2023-01-18 19:25:27.226249" + }, + { + "JoinId": 405, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-18 19:13:14.563100", + "LeavedOn": "2023-01-18 19:24:49.926391", + "CreatedAt": "2023-01-18 19:13:14.563104", + "LastModifiedAt": "2023-01-18 19:24:49.926392" + }, + { + "JoinId": 407, + "UserId": 32, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-18 19:18:36.135778", + "LeavedOn": "2023-01-18 19:24:49.357783", + "CreatedAt": "2023-01-18 19:18:36.135782", + "LastModifiedAt": "2023-01-18 19:24:49.357784" + }, + { + "JoinId": 406, + "UserId": 32, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-18 19:16:02.631194", + "LeavedOn": "2023-01-18 19:18:36.129383", + "CreatedAt": "2023-01-18 19:16:02.631197", + "LastModifiedAt": "2023-01-18 19:18:36.129385" + }, + { + "JoinId": 404, + "UserId": 32, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-18 19:13:13.715413", + "LeavedOn": "2023-01-18 19:16:02.626189", + "CreatedAt": "2023-01-18 19:13:13.715416", + "LastModifiedAt": "2023-01-18 19:16:02.626191" + }, + { + "JoinId": 399, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 18:40:41.999128", + "LeavedOn": "2023-01-18 19:13:14.556894", + "CreatedAt": "2023-01-18 18:40:41.999132", + "LastModifiedAt": "2023-01-18 19:13:14.556897" + }, + { + "JoinId": 394, + "UserId": 32, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 17:39:07.617630", + "LeavedOn": "2023-01-18 19:13:13.710953", + "CreatedAt": "2023-01-18 17:39:07.617634", + "LastModifiedAt": "2023-01-18 19:13:13.710955" + }, + { + "JoinId": 390, + "UserId": 36, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 17:10:47.771498", + "LeavedOn": "2023-01-18 19:02:39.166997", + "CreatedAt": "2023-01-18 17:10:47.771502", + "LastModifiedAt": "2023-01-18 19:02:39.166999" + }, + { + "JoinId": 398, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 18:33:17.350877", + "LeavedOn": "2023-01-18 19:02:37.976209", + "CreatedAt": "2023-01-18 18:33:17.350879", + "LastModifiedAt": "2023-01-18 19:02:37.976210" + }, + { + "JoinId": 397, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 18:27:15.339635", + "LeavedOn": "2023-01-18 18:33:17.344918", + "CreatedAt": "2023-01-18 18:27:15.339639", + "LastModifiedAt": "2023-01-18 18:33:17.344919" + }, + { + "JoinId": 396, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 18:26:59.331794", + "LeavedOn": "2023-01-18 18:27:15.334835", + "CreatedAt": "2023-01-18 18:26:59.331800", + "LastModifiedAt": "2023-01-18 18:27:15.334836" + }, + { + "JoinId": 386, + "UserId": 32, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-18 16:13:56.828622", + "LeavedOn": "2023-01-18 17:39:07.612674", + "CreatedAt": "2023-01-18 16:13:56.828626", + "LastModifiedAt": "2023-01-18 17:39:07.612675" + }, + { + "JoinId": 393, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-18 17:29:57.560748", + "LeavedOn": "2023-01-18 17:30:04.946420", + "CreatedAt": "2023-01-18 17:29:57.560752", + "LastModifiedAt": "2023-01-18 17:30:04.946422" + }, + { + "JoinId": 392, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 17:27:01.949911", + "LeavedOn": "2023-01-18 17:29:57.555406", + "CreatedAt": "2023-01-18 17:27:01.949914", + "LastModifiedAt": "2023-01-18 17:29:57.555409" + }, + { + "JoinId": 391, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-18 17:26:45.308788", + "LeavedOn": "2023-01-18 17:27:01.945185", + "CreatedAt": "2023-01-18 17:26:45.308793", + "LastModifiedAt": "2023-01-18 17:27:01.945187" + }, + { + "JoinId": 385, + "UserId": 62, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 14:47:29.767767", + "LeavedOn": "2023-01-18 17:24:37.788740", + "CreatedAt": "2023-01-18 14:47:29.767772", + "LastModifiedAt": "2023-01-18 17:24:37.788742" + }, + { + "JoinId": 387, + "UserId": 52, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 16:30:34.667022", + "LeavedOn": "2023-01-18 17:11:46.168528", + "CreatedAt": "2023-01-18 16:30:34.667026", + "LastModifiedAt": "2023-01-18 17:11:46.168530" + }, + { + "JoinId": 389, + "UserId": 36, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 17:10:45.910947", + "LeavedOn": "2023-01-18 17:10:47.766244", + "CreatedAt": "2023-01-18 17:10:45.910953", + "LastModifiedAt": "2023-01-18 17:10:47.766246" + }, + { + "JoinId": 388, + "UserId": 36, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 16:44:23.933686", + "LeavedOn": "2023-01-18 16:59:25.753048", + "CreatedAt": "2023-01-18 16:44:23.933691", + "LastModifiedAt": "2023-01-18 16:59:25.753050" + }, + { + "JoinId": 382, + "UserId": 36, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 14:45:24.542286", + "LeavedOn": "2023-01-18 16:44:23.928588", + "CreatedAt": "2023-01-18 14:45:24.542291", + "LastModifiedAt": "2023-01-18 16:44:23.928590" + }, + { + "JoinId": 384, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 14:45:33.263191", + "LeavedOn": "2023-01-18 14:58:34.309847", + "CreatedAt": "2023-01-18 14:45:33.263196", + "LastModifiedAt": "2023-01-18 14:58:34.309849" + }, + { + "JoinId": 383, + "UserId": 20, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 14:45:32.366663", + "LeavedOn": "2023-01-18 14:54:44.889154", + "CreatedAt": "2023-01-18 14:45:32.366669", + "LastModifiedAt": "2023-01-18 14:54:44.889155" + }, + { + "JoinId": 379, + "UserId": 62, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 14:25:04.068877", + "LeavedOn": "2023-01-18 14:47:29.762187", + "CreatedAt": "2023-01-18 14:25:04.068882", + "LastModifiedAt": "2023-01-18 14:47:29.762189" + }, + { + "JoinId": 381, + "UserId": 36, + "DiscordChannelId": 1026266281600614411, + "JoinedOn": "2023-01-18 14:45:20.413451", + "LeavedOn": "2023-01-18 14:45:24.537621", + "CreatedAt": "2023-01-18 14:45:20.413454", + "LastModifiedAt": "2023-01-18 14:45:24.537623" + }, + { + "JoinId": 380, + "UserId": 36, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 14:44:59.320510", + "LeavedOn": "2023-01-18 14:45:20.409086", + "CreatedAt": "2023-01-18 14:44:59.320515", + "LastModifiedAt": "2023-01-18 14:45:20.409087" + }, + { + "JoinId": 378, + "UserId": 62, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 14:19:32.102761", + "LeavedOn": "2023-01-18 14:25:04.063265", + "CreatedAt": "2023-01-18 14:19:32.102765", + "LastModifiedAt": "2023-01-18 14:25:04.063267" + }, + { + "JoinId": 377, + "UserId": 62, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-18 14:18:23.229641", + "LeavedOn": "2023-01-18 14:19:32.097379", + "CreatedAt": "2023-01-18 14:18:23.229645", + "LastModifiedAt": "2023-01-18 14:19:32.097382" + }, + { + "JoinId": 376, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 10:38:32.718256", + "LeavedOn": "2023-01-18 11:22:51.644169", + "CreatedAt": "2023-01-18 10:38:32.718259", + "LastModifiedAt": "2023-01-18 11:22:51.644171" + }, + { + "JoinId": 364, + "UserId": 62, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 09:15:19.223755", + "LeavedOn": "2023-01-18 11:07:36.642890", + "CreatedAt": "2023-01-18 09:15:19.223759", + "LastModifiedAt": "2023-01-18 11:07:36.642891" + }, + { + "JoinId": 375, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 10:37:08.396707", + "LeavedOn": "2023-01-18 10:38:32.713598", + "CreatedAt": "2023-01-18 10:37:08.396713", + "LastModifiedAt": "2023-01-18 10:38:32.713600" + }, + { + "JoinId": 374, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 10:03:13.816796", + "LeavedOn": "2023-01-18 10:37:08.391502", + "CreatedAt": "2023-01-18 10:03:13.816801", + "LastModifiedAt": "2023-01-18 10:37:08.391503" + }, + { + "JoinId": 372, + "UserId": 20, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 09:55:17.175200", + "LeavedOn": "2023-01-18 10:14:44.848970", + "CreatedAt": "2023-01-18 09:55:17.175205", + "LastModifiedAt": "2023-01-18 10:14:44.848972" + }, + { + "JoinId": 373, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 10:02:19.027616", + "LeavedOn": "2023-01-18 10:03:13.811745", + "CreatedAt": "2023-01-18 10:02:19.027619", + "LastModifiedAt": "2023-01-18 10:03:13.811746" + }, + { + "JoinId": 371, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 09:54:13.472602", + "LeavedOn": "2023-01-18 10:02:19.023469", + "CreatedAt": "2023-01-18 09:54:13.472606", + "LastModifiedAt": "2023-01-18 10:02:19.023470" + }, + { + "JoinId": 370, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 09:54:02.702252", + "LeavedOn": "2023-01-18 09:54:13.466930", + "CreatedAt": "2023-01-18 09:54:02.702258", + "LastModifiedAt": "2023-01-18 09:54:13.466932" + }, + { + "JoinId": 369, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 09:29:54.443740", + "LeavedOn": "2023-01-18 09:54:02.693939", + "CreatedAt": "2023-01-18 09:29:54.443744", + "LastModifiedAt": "2023-01-18 09:54:02.693941" + }, + { + "JoinId": 368, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 09:29:36.709955", + "LeavedOn": "2023-01-18 09:29:54.437184", + "CreatedAt": "2023-01-18 09:29:36.709960", + "LastModifiedAt": "2023-01-18 09:29:54.437185" + }, + { + "JoinId": 367, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 09:29:35.248344", + "LeavedOn": "2023-01-18 09:29:36.704309", + "CreatedAt": "2023-01-18 09:29:35.248351", + "LastModifiedAt": "2023-01-18 09:29:36.704312" + }, + { + "JoinId": 366, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 09:29:32.418840", + "LeavedOn": "2023-01-18 09:29:35.241392", + "CreatedAt": "2023-01-18 09:29:32.418845", + "LastModifiedAt": "2023-01-18 09:29:35.241394" + }, + { + "JoinId": 365, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 09:21:01.089532", + "LeavedOn": "2023-01-18 09:29:32.412522", + "CreatedAt": "2023-01-18 09:21:01.089535", + "LastModifiedAt": "2023-01-18 09:29:32.412524" + }, + { + "JoinId": 363, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 08:50:13.581544", + "LeavedOn": "2023-01-18 09:21:01.085462", + "CreatedAt": "2023-01-18 08:50:13.581548", + "LastModifiedAt": "2023-01-18 09:21:01.085463" + }, + { + "JoinId": 362, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-18 08:49:18.782312", + "LeavedOn": "2023-01-18 08:50:13.576252", + "CreatedAt": "2023-01-18 08:49:18.782317", + "LastModifiedAt": "2023-01-18 08:50:13.576254" + }, + { + "JoinId": 332, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-17 17:36:22.961878", + "LeavedOn": "2023-01-17 21:46:06.372573", + "CreatedAt": "2023-01-17 17:36:22.961884", + "LastModifiedAt": "2023-01-17 21:46:06.372575" + }, + { + "JoinId": 349, + "UserId": 64, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 19:12:50.882640", + "LeavedOn": "2023-01-17 21:44:49.429668", + "CreatedAt": "2023-01-17 19:12:50.882644", + "LastModifiedAt": "2023-01-17 21:44:49.429669" + }, + { + "JoinId": 353, + "UserId": 69, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 19:30:22.255475", + "LeavedOn": "2023-01-17 21:44:49.212591", + "CreatedAt": "2023-01-17 19:30:22.255479", + "LastModifiedAt": "2023-01-17 21:44:49.212592" + }, + { + "JoinId": 359, + "UserId": 32, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 20:21:31.531782", + "LeavedOn": "2023-01-17 20:43:52.830471", + "CreatedAt": "2023-01-17 20:21:31.531786", + "LastModifiedAt": "2023-01-17 20:43:52.830473" + }, + { + "JoinId": 360, + "UserId": 26, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 20:34:25.354505", + "LeavedOn": "2023-01-17 20:41:21.787280", + "CreatedAt": "2023-01-17 20:34:25.354511", + "LastModifiedAt": "2023-01-17 20:41:21.787282" + }, + { + "JoinId": 346, + "UserId": 26, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 19:02:07.488681", + "LeavedOn": "2023-01-17 20:33:42.178203", + "CreatedAt": "2023-01-17 19:02:07.488686", + "LastModifiedAt": "2023-01-17 20:33:42.178204" + }, + { + "JoinId": 357, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-17 19:44:09.455660", + "LeavedOn": "2023-01-17 20:19:12.788998", + "CreatedAt": "2023-01-17 19:44:09.455664", + "LastModifiedAt": "2023-01-17 20:19:12.789000" + }, + { + "JoinId": 336, + "UserId": 36, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-17 18:05:45.408606", + "LeavedOn": "2023-01-17 20:19:08.971874", + "CreatedAt": "2023-01-17 18:05:45.408611", + "LastModifiedAt": "2023-01-17 20:19:08.971876" + }, + { + "JoinId": 352, + "UserId": 27, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 19:18:01.265091", + "LeavedOn": "2023-01-17 20:17:56.319374", + "CreatedAt": "2023-01-17 19:18:01.265096", + "LastModifiedAt": "2023-01-17 20:17:56.319375" + }, + { + "JoinId": 347, + "UserId": 65, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 19:04:05.131142", + "LeavedOn": "2023-01-17 20:17:55.597924", + "CreatedAt": "2023-01-17 19:04:05.131146", + "LastModifiedAt": "2023-01-17 20:17:55.597925" + }, + { + "JoinId": 358, + "UserId": 89, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 20:08:48.757013", + "LeavedOn": "2023-01-17 20:12:32.123063", + "CreatedAt": "2023-01-17 20:08:48.757017", + "LastModifiedAt": "2023-01-17 20:12:32.123064" + }, + { + "JoinId": 355, + "UserId": 89, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 19:35:05.731133", + "LeavedOn": "2023-01-17 20:08:48.751284", + "CreatedAt": "2023-01-17 19:35:05.731137", + "LastModifiedAt": "2023-01-17 20:08:48.751286" + }, + { + "JoinId": 356, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-17 19:40:05.343733", + "LeavedOn": "2023-01-17 19:44:09.449901", + "CreatedAt": "2023-01-17 19:40:05.343739", + "LastModifiedAt": "2023-01-17 19:44:09.449903" + }, + { + "JoinId": 338, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-17 18:11:00.482826", + "LeavedOn": "2023-01-17 19:40:05.331004", + "CreatedAt": "2023-01-17 18:11:00.482832", + "LastModifiedAt": "2023-01-17 19:40:05.331006" + }, + { + "JoinId": 354, + "UserId": 89, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 19:32:24.660891", + "LeavedOn": "2023-01-17 19:35:05.725792", + "CreatedAt": "2023-01-17 19:32:24.660897", + "LastModifiedAt": "2023-01-17 19:35:05.725793" + }, + { + "JoinId": 351, + "UserId": 27, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 19:13:44.895701", + "LeavedOn": "2023-01-17 19:18:01.259478", + "CreatedAt": "2023-01-17 19:13:44.895707", + "LastModifiedAt": "2023-01-17 19:18:01.259480" + }, + { + "JoinId": 350, + "UserId": 27, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 19:13:11.105404", + "LeavedOn": "2023-01-17 19:13:44.891019", + "CreatedAt": "2023-01-17 19:13:11.105406", + "LastModifiedAt": "2023-01-17 19:13:44.891021" + }, + { + "JoinId": 348, + "UserId": 27, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 19:06:22.496463", + "LeavedOn": "2023-01-17 19:13:11.101390", + "CreatedAt": "2023-01-17 19:06:22.496470", + "LastModifiedAt": "2023-01-17 19:13:11.101391" + }, + { + "JoinId": 345, + "UserId": 65, + "DiscordChannelId": 987718490188316714, + "JoinedOn": "2023-01-17 19:02:07.392895", + "LeavedOn": "2023-01-17 19:04:05.126796", + "CreatedAt": "2023-01-17 19:02:07.392900", + "LastModifiedAt": "2023-01-17 19:04:05.126798" + }, + { + "JoinId": 344, + "UserId": 26, + "DiscordChannelId": 987718612435492896, + "JoinedOn": "2023-01-17 19:00:04.315063", + "LeavedOn": "2023-01-17 19:02:07.482282", + "CreatedAt": "2023-01-17 19:00:04.315067", + "LastModifiedAt": "2023-01-17 19:02:07.482285" + }, + { + "JoinId": 342, + "UserId": 65, + "DiscordChannelId": 987718612435492896, + "JoinedOn": "2023-01-17 18:56:49.614470", + "LeavedOn": "2023-01-17 19:02:07.386804", + "CreatedAt": "2023-01-17 18:56:49.614474", + "LastModifiedAt": "2023-01-17 19:02:07.386806" + }, + { + "JoinId": 343, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-17 18:58:30.759296", + "LeavedOn": "2023-01-17 19:00:04.310760", + "CreatedAt": "2023-01-17 18:58:30.759302", + "LastModifiedAt": "2023-01-17 19:00:04.310762" + }, + { + "JoinId": 340, + "UserId": 26, + "DiscordChannelId": 987718612435492896, + "JoinedOn": "2023-01-17 18:56:27.412037", + "LeavedOn": "2023-01-17 18:58:30.752725", + "CreatedAt": "2023-01-17 18:56:27.412041", + "LastModifiedAt": "2023-01-17 18:58:30.752727" + }, + { + "JoinId": 341, + "UserId": 65, + "DiscordChannelId": 987718612435492896, + "JoinedOn": "2023-01-17 18:56:37.085214", + "LeavedOn": "2023-01-17 18:56:49.608774", + "CreatedAt": "2023-01-17 18:56:37.085220", + "LastModifiedAt": "2023-01-17 18:56:49.608776" + }, + { + "JoinId": 339, + "UserId": 65, + "DiscordChannelId": 987718612435492896, + "JoinedOn": "2023-01-17 18:47:32.838041", + "LeavedOn": "2023-01-17 18:56:37.079282", + "CreatedAt": "2023-01-17 18:47:32.838046", + "LastModifiedAt": "2023-01-17 18:56:37.079284" + }, + { + "JoinId": 334, + "UserId": 88, + "DiscordChannelId": 987718612435492896, + "JoinedOn": "2023-01-17 17:39:42.862052", + "LeavedOn": "2023-01-17 18:47:33.474655", + "CreatedAt": "2023-01-17 17:39:42.862058", + "LastModifiedAt": "2023-01-17 18:47:33.474657" + }, + { + "JoinId": 333, + "UserId": 65, + "DiscordChannelId": 987718612435492896, + "JoinedOn": "2023-01-17 17:39:40.879912", + "LeavedOn": "2023-01-17 18:47:32.831881", + "CreatedAt": "2023-01-17 17:39:40.879917", + "LastModifiedAt": "2023-01-17 18:47:32.831883" + }, + { + "JoinId": 307, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 21:33:43.991939", + "LeavedOn": "2023-01-17 18:39:01.931614", + "CreatedAt": "2023-01-16 21:33:43.991944", + "LastModifiedAt": "2023-01-17 18:39:01.931616" + }, + { + "JoinId": 337, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-17 18:08:50.665116", + "LeavedOn": "2023-01-17 18:11:00.476615", + "CreatedAt": "2023-01-17 18:08:50.665119", + "LastModifiedAt": "2023-01-17 18:11:00.476617" + }, + { + "JoinId": 335, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-17 17:58:52.573140", + "LeavedOn": "2023-01-17 18:08:50.660046", + "CreatedAt": "2023-01-17 17:58:52.573144", + "LastModifiedAt": "2023-01-17 18:08:50.660047" + }, + { + "JoinId": 331, + "UserId": 88, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-17 17:22:22.989023", + "LeavedOn": "2023-01-17 17:39:42.855508", + "CreatedAt": "2023-01-17 17:22:22.989027", + "LastModifiedAt": "2023-01-17 17:39:42.855510" + }, + { + "JoinId": 327, + "UserId": 65, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-17 17:20:18.546743", + "LeavedOn": "2023-01-17 17:39:40.873949", + "CreatedAt": "2023-01-17 17:20:18.546750", + "LastModifiedAt": "2023-01-17 17:39:40.873950" + }, + { + "JoinId": 326, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-17 17:13:33.814904", + "LeavedOn": "2023-01-17 17:39:31.769842", + "CreatedAt": "2023-01-17 17:13:33.814909", + "LastModifiedAt": "2023-01-17 17:39:31.769844" + }, + { + "JoinId": 330, + "UserId": 88, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-17 17:22:05.610050", + "LeavedOn": "2023-01-17 17:22:22.983859", + "CreatedAt": "2023-01-17 17:22:05.610053", + "LastModifiedAt": "2023-01-17 17:22:22.983860" + }, + { + "JoinId": 329, + "UserId": 88, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-17 17:22:04.829540", + "LeavedOn": "2023-01-17 17:22:05.605753", + "CreatedAt": "2023-01-17 17:22:04.829544", + "LastModifiedAt": "2023-01-17 17:22:05.605754" + }, + { + "JoinId": 328, + "UserId": 88, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-17 17:21:58.533715", + "LeavedOn": "2023-01-17 17:22:04.821471", + "CreatedAt": "2023-01-17 17:21:58.533719", + "LastModifiedAt": "2023-01-17 17:22:04.821472" + }, + { + "JoinId": 322, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-17 15:24:00.595946", + "LeavedOn": "2023-01-17 16:57:57.398425", + "CreatedAt": "2023-01-17 15:24:00.595952", + "LastModifiedAt": "2023-01-17 16:57:57.398427" + }, + { + "JoinId": 325, + "UserId": 26, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-17 16:41:51.810002", + "LeavedOn": "2023-01-17 16:50:52.674973", + "CreatedAt": "2023-01-17 16:41:51.810006", + "LastModifiedAt": "2023-01-17 16:50:52.674974" + }, + { + "JoinId": 324, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-17 16:41:51.265135", + "LeavedOn": "2023-01-17 16:41:51.804206", + "CreatedAt": "2023-01-17 16:41:51.265140", + "LastModifiedAt": "2023-01-17 16:41:51.804207" + }, + { + "JoinId": 323, + "UserId": 26, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-17 15:24:08.440208", + "LeavedOn": "2023-01-17 16:41:51.254982", + "CreatedAt": "2023-01-17 15:24:08.440212", + "LastModifiedAt": "2023-01-17 16:41:51.254984" + }, + { + "JoinId": 321, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-17 15:08:03.970539", + "LeavedOn": "2023-01-17 15:24:08.433300", + "CreatedAt": "2023-01-17 15:08:03.970546", + "LastModifiedAt": "2023-01-17 15:24:08.433302" + }, + { + "JoinId": 320, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-17 13:05:25.181349", + "LeavedOn": "2023-01-17 13:39:23.134637", + "CreatedAt": "2023-01-17 13:05:25.181357", + "LastModifiedAt": "2023-01-17 13:39:23.134640" + }, + { + "JoinId": 318, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-17 09:20:43.621390", + "LeavedOn": "2023-01-17 10:53:55.320787", + "CreatedAt": "2023-01-17 09:20:43.621396", + "LastModifiedAt": "2023-01-17 10:53:55.320789" + }, + { + "JoinId": 319, + "UserId": 26, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-17 09:41:20.115167", + "LeavedOn": "2023-01-17 09:47:54.338655", + "CreatedAt": "2023-01-17 09:41:20.115171", + "LastModifiedAt": "2023-01-17 09:47:54.338656" + }, + { + "JoinId": 317, + "UserId": 20, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-17 00:15:25.016800", + "LeavedOn": "2023-01-17 01:20:46.850332", + "CreatedAt": "2023-01-17 00:15:25.016804", + "LastModifiedAt": "2023-01-17 01:20:46.850334" + }, + { + "JoinId": 315, + "UserId": 48, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 22:41:26.222759", + "LeavedOn": "2023-01-17 00:35:37.922134", + "CreatedAt": "2023-01-16 22:41:26.222762", + "LastModifiedAt": "2023-01-17 00:35:37.922136" + }, + { + "JoinId": 316, + "UserId": 7, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 23:36:40.656726", + "LeavedOn": "2023-01-16 23:39:05.995386", + "CreatedAt": "2023-01-16 23:36:40.656731", + "LastModifiedAt": "2023-01-16 23:39:05.995387" + }, + { + "JoinId": 294, + "UserId": 64, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 19:09:57.772115", + "LeavedOn": "2023-01-16 23:21:52.347786", + "CreatedAt": "2023-01-16 19:09:57.772118", + "LastModifiedAt": "2023-01-16 23:21:52.347788" + }, + { + "JoinId": 311, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 22:00:21.403661", + "LeavedOn": "2023-01-16 23:21:51.673515", + "CreatedAt": "2023-01-16 22:00:21.403663", + "LastModifiedAt": "2023-01-16 23:21:51.673517" + }, + { + "JoinId": 297, + "UserId": 65, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 19:42:48.298654", + "LeavedOn": "2023-01-16 23:20:55.596930", + "CreatedAt": "2023-01-16 19:42:48.298659", + "LastModifiedAt": "2023-01-16 23:20:55.596932" + }, + { + "JoinId": 314, + "UserId": 48, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 22:41:26.193023", + "LeavedOn": "2023-01-16 22:41:26.218761", + "CreatedAt": "2023-01-16 22:41:26.193026", + "LastModifiedAt": "2023-01-16 22:41:26.218763" + }, + { + "JoinId": 313, + "UserId": 48, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 22:15:21.593808", + "LeavedOn": "2023-01-16 22:41:26.188695", + "CreatedAt": "2023-01-16 22:15:21.593812", + "LastModifiedAt": "2023-01-16 22:41:26.188697" + }, + { + "JoinId": 312, + "UserId": 52, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 22:10:02.305474", + "LeavedOn": "2023-01-16 22:41:17.850637", + "CreatedAt": "2023-01-16 22:10:02.305480", + "LastModifiedAt": "2023-01-16 22:41:17.850638" + }, + { + "JoinId": 309, + "UserId": 34, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 21:35:56.918528", + "LeavedOn": "2023-01-16 22:17:05.997411", + "CreatedAt": "2023-01-16 21:35:56.918532", + "LastModifiedAt": "2023-01-16 22:17:05.997413" + }, + { + "JoinId": 310, + "UserId": 48, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 21:36:04.935645", + "LeavedOn": "2023-01-16 22:15:21.588603", + "CreatedAt": "2023-01-16 21:36:04.935648", + "LastModifiedAt": "2023-01-16 22:15:21.588604" + }, + { + "JoinId": 277, + "UserId": 69, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 18:37:55.673688", + "LeavedOn": "2023-01-16 22:03:20.685230", + "CreatedAt": "2023-01-16 18:37:55.673692", + "LastModifiedAt": "2023-01-16 22:03:20.685232" + }, + { + "JoinId": 308, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 21:33:59.958083", + "LeavedOn": "2023-01-16 22:00:21.398969", + "CreatedAt": "2023-01-16 21:33:59.958088", + "LastModifiedAt": "2023-01-16 22:00:21.398970" + }, + { + "JoinId": 285, + "UserId": 48, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 18:58:29.905973", + "LeavedOn": "2023-01-16 21:36:04.930761", + "CreatedAt": "2023-01-16 18:58:29.905979", + "LastModifiedAt": "2023-01-16 21:36:04.930763" + }, + { + "JoinId": 301, + "UserId": 34, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 20:53:04.031351", + "LeavedOn": "2023-01-16 21:35:56.914118", + "CreatedAt": "2023-01-16 20:53:04.031356", + "LastModifiedAt": "2023-01-16 21:35:56.914119" + }, + { + "JoinId": 306, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 21:15:47.576486", + "LeavedOn": "2023-01-16 21:33:59.952646", + "CreatedAt": "2023-01-16 21:15:47.576490", + "LastModifiedAt": "2023-01-16 21:33:59.952648" + }, + { + "JoinId": 292, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 19:02:23.857349", + "LeavedOn": "2023-01-16 21:33:54.098544", + "CreatedAt": "2023-01-16 19:02:23.857354", + "LastModifiedAt": "2023-01-16 21:33:54.098545" + }, + { + "JoinId": 291, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 19:02:23.383245", + "LeavedOn": "2023-01-16 21:30:32.480684", + "CreatedAt": "2023-01-16 19:02:23.383249", + "LastModifiedAt": "2023-01-16 21:30:32.480685" + }, + { + "JoinId": 305, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 21:15:46.534225", + "LeavedOn": "2023-01-16 21:15:47.569813", + "CreatedAt": "2023-01-16 21:15:46.534228", + "LastModifiedAt": "2023-01-16 21:15:47.569815" + }, + { + "JoinId": 304, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 21:15:45.778774", + "LeavedOn": "2023-01-16 21:15:46.529299", + "CreatedAt": "2023-01-16 21:15:45.778779", + "LastModifiedAt": "2023-01-16 21:15:46.529300" + }, + { + "JoinId": 296, + "UserId": 43, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 19:40:19.006312", + "LeavedOn": "2023-01-16 21:09:57.761687", + "CreatedAt": "2023-01-16 19:40:19.006316", + "LastModifiedAt": "2023-01-16 21:09:57.761689" + }, + { + "JoinId": 270, + "UserId": 36, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 18:17:23.271715", + "LeavedOn": "2023-01-16 20:57:45.551663", + "CreatedAt": "2023-01-16 18:17:23.271719", + "LastModifiedAt": "2023-01-16 20:57:45.551665" + }, + { + "JoinId": 303, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 20:56:50.952382", + "LeavedOn": "2023-01-16 20:57:07.084135", + "CreatedAt": "2023-01-16 20:56:50.952387", + "LastModifiedAt": "2023-01-16 20:57:07.084137" + }, + { + "JoinId": 302, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 20:54:06.066081", + "LeavedOn": "2023-01-16 20:56:50.947187", + "CreatedAt": "2023-01-16 20:54:06.066086", + "LastModifiedAt": "2023-01-16 20:56:50.947189" + }, + { + "JoinId": 300, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 20:06:12.506327", + "LeavedOn": "2023-01-16 20:54:06.058131", + "CreatedAt": "2023-01-16 20:06:12.506331", + "LastModifiedAt": "2023-01-16 20:54:06.058132" + }, + { + "JoinId": 298, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 19:45:25.403152", + "LeavedOn": "2023-01-16 20:42:45.267054", + "CreatedAt": "2023-01-16 19:45:25.403156", + "LastModifiedAt": "2023-01-16 20:42:45.267055" + }, + { + "JoinId": 272, + "UserId": 60, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 18:17:52.672985", + "LeavedOn": "2023-01-16 20:18:32.547260", + "CreatedAt": "2023-01-16 18:17:52.672989", + "LastModifiedAt": "2023-01-16 20:18:32.547261" + }, + { + "JoinId": 299, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 20:04:42.930430", + "LeavedOn": "2023-01-16 20:06:12.501138", + "CreatedAt": "2023-01-16 20:04:42.930432", + "LastModifiedAt": "2023-01-16 20:06:12.501140" + }, + { + "JoinId": 288, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 19:01:57.735300", + "LeavedOn": "2023-01-16 20:04:42.926193", + "CreatedAt": "2023-01-16 19:01:57.735303", + "LastModifiedAt": "2023-01-16 20:04:42.926195" + }, + { + "JoinId": 295, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 19:38:42.987843", + "LeavedOn": "2023-01-16 19:45:25.397513", + "CreatedAt": "2023-01-16 19:38:42.987846", + "LastModifiedAt": "2023-01-16 19:45:25.397514" + }, + { + "JoinId": 282, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 18:46:38.987109", + "LeavedOn": "2023-01-16 19:38:42.982055", + "CreatedAt": "2023-01-16 18:46:38.987113", + "LastModifiedAt": "2023-01-16 19:38:42.982057" + }, + { + "JoinId": 293, + "UserId": 63, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 19:02:42.460312", + "LeavedOn": "2023-01-16 19:30:51.156598", + "CreatedAt": "2023-01-16 19:02:42.460315", + "LastModifiedAt": "2023-01-16 19:30:51.156599" + }, + { + "JoinId": 287, + "UserId": 63, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 19:01:10.405812", + "LeavedOn": "2023-01-16 19:02:42.455897", + "CreatedAt": "2023-01-16 19:01:10.405815", + "LastModifiedAt": "2023-01-16 19:02:42.455898" + }, + { + "JoinId": 290, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 19:02:15.097535", + "LeavedOn": "2023-01-16 19:02:23.851287", + "CreatedAt": "2023-01-16 19:02:15.097539", + "LastModifiedAt": "2023-01-16 19:02:23.851289" + }, + { + "JoinId": 289, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 19:02:14.560058", + "LeavedOn": "2023-01-16 19:02:23.377609", + "CreatedAt": "2023-01-16 19:02:14.560061", + "LastModifiedAt": "2023-01-16 19:02:23.377611" + }, + { + "JoinId": 280, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 18:46:18.904597", + "LeavedOn": "2023-01-16 19:02:15.091270", + "CreatedAt": "2023-01-16 18:46:18.904603", + "LastModifiedAt": "2023-01-16 19:02:15.091273" + }, + { + "JoinId": 268, + "UserId": 8, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 18:17:23.204544", + "LeavedOn": "2023-01-16 19:02:14.544365", + "CreatedAt": "2023-01-16 18:17:23.204548", + "LastModifiedAt": "2023-01-16 19:02:14.544366" + }, + { + "JoinId": 286, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 18:58:36.112297", + "LeavedOn": "2023-01-16 19:01:57.730320", + "CreatedAt": "2023-01-16 18:58:36.112299", + "LastModifiedAt": "2023-01-16 19:01:57.730321" + }, + { + "JoinId": 271, + "UserId": 63, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 18:17:23.317754", + "LeavedOn": "2023-01-16 19:01:10.400150", + "CreatedAt": "2023-01-16 18:17:23.317759", + "LastModifiedAt": "2023-01-16 19:01:10.400152" + }, + { + "JoinId": 284, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 18:47:17.125577", + "LeavedOn": "2023-01-16 18:58:36.108593", + "CreatedAt": "2023-01-16 18:47:17.125583", + "LastModifiedAt": "2023-01-16 18:58:36.108595" + }, + { + "JoinId": 276, + "UserId": 53, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 18:28:47.159504", + "LeavedOn": "2023-01-16 18:47:43.730135", + "CreatedAt": "2023-01-16 18:28:47.159509", + "LastModifiedAt": "2023-01-16 18:47:43.730137" + }, + { + "JoinId": 283, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 18:46:41.624621", + "LeavedOn": "2023-01-16 18:47:17.118050", + "CreatedAt": "2023-01-16 18:46:41.624623", + "LastModifiedAt": "2023-01-16 18:47:17.118076" + }, + { + "JoinId": 275, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 18:18:43.358492", + "LeavedOn": "2023-01-16 18:46:41.618177", + "CreatedAt": "2023-01-16 18:18:43.358498", + "LastModifiedAt": "2023-01-16 18:46:41.618179" + }, + { + "JoinId": 281, + "UserId": 80, + "DiscordChannelId": 1026266281600614411, + "JoinedOn": "2023-01-16 18:46:34.031233", + "LeavedOn": "2023-01-16 18:46:38.969967", + "CreatedAt": "2023-01-16 18:46:34.031235", + "LastModifiedAt": "2023-01-16 18:46:38.969968" + }, + { + "JoinId": 279, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 18:46:16.596528", + "LeavedOn": "2023-01-16 18:46:34.026531", + "CreatedAt": "2023-01-16 18:46:16.596533", + "LastModifiedAt": "2023-01-16 18:46:34.026533" + }, + { + "JoinId": 265, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 18:14:03.279771", + "LeavedOn": "2023-01-16 18:46:18.897283", + "CreatedAt": "2023-01-16 18:14:03.279775", + "LastModifiedAt": "2023-01-16 18:46:18.897285" + }, + { + "JoinId": 278, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 18:44:21.523223", + "LeavedOn": "2023-01-16 18:46:16.589018", + "CreatedAt": "2023-01-16 18:44:21.523226", + "LastModifiedAt": "2023-01-16 18:46:16.589020" + }, + { + "JoinId": 274, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 18:18:21.628411", + "LeavedOn": "2023-01-16 18:18:41.220722", + "CreatedAt": "2023-01-16 18:18:21.628415", + "LastModifiedAt": "2023-01-16 18:18:41.220723" + }, + { + "JoinId": 273, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 18:18:19.789661", + "LeavedOn": "2023-01-16 18:18:21.623392", + "CreatedAt": "2023-01-16 18:18:19.789664", + "LastModifiedAt": "2023-01-16 18:18:21.623393" + }, + { + "JoinId": 269, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-16 18:17:23.234917", + "LeavedOn": "2023-01-16 18:18:19.785004", + "CreatedAt": "2023-01-16 18:17:23.234921", + "LastModifiedAt": "2023-01-16 18:18:19.785005" + }, + { + "JoinId": 263, + "UserId": 63, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 18:13:49.214625", + "LeavedOn": "2023-01-16 18:17:23.313635", + "CreatedAt": "2023-01-16 18:13:49.214630", + "LastModifiedAt": "2023-01-16 18:17:23.313637" + }, + { + "JoinId": 262, + "UserId": 36, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 18:13:02.286335", + "LeavedOn": "2023-01-16 18:17:23.266792", + "CreatedAt": "2023-01-16 18:13:02.286343", + "LastModifiedAt": "2023-01-16 18:17:23.266794" + }, + { + "JoinId": 267, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 18:15:12.419889", + "LeavedOn": "2023-01-16 18:17:23.229851", + "CreatedAt": "2023-01-16 18:15:12.419893", + "LastModifiedAt": "2023-01-16 18:17:23.229852" + }, + { + "JoinId": 264, + "UserId": 8, + "DiscordChannelId": 1026266281600614411, + "JoinedOn": "2023-01-16 18:14:00.105931", + "LeavedOn": "2023-01-16 18:17:23.199340", + "CreatedAt": "2023-01-16 18:14:00.105934", + "LastModifiedAt": "2023-01-16 18:17:23.199341" + }, + { + "JoinId": 266, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 18:14:13.821976", + "LeavedOn": "2023-01-16 18:14:30.736800", + "CreatedAt": "2023-01-16 18:14:13.821980", + "LastModifiedAt": "2023-01-16 18:14:30.736802" + }, + { + "JoinId": 261, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-16 16:41:48.273199", + "LeavedOn": "2023-01-16 18:14:03.275575", + "CreatedAt": "2023-01-16 16:41:48.273204", + "LastModifiedAt": "2023-01-16 18:14:03.275576" + }, + { + "JoinId": 244, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 20:35:21.399716", + "LeavedOn": "2023-01-16 18:14:00.101377", + "CreatedAt": "2023-01-15 20:35:21.399720", + "LastModifiedAt": "2023-01-16 18:14:00.101379" + }, + { + "JoinId": 256, + "UserId": 62, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 14:52:11.486316", + "LeavedOn": "2023-01-16 16:29:31.950783", + "CreatedAt": "2023-01-16 14:52:11.486321", + "LastModifiedAt": "2023-01-16 16:29:31.950785" + }, + { + "JoinId": 260, + "UserId": 36, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 15:33:54.235432", + "LeavedOn": "2023-01-16 16:29:27.822767", + "CreatedAt": "2023-01-16 15:33:54.235438", + "LastModifiedAt": "2023-01-16 16:29:27.822769" + }, + { + "JoinId": 258, + "UserId": 36, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 15:21:17.580271", + "LeavedOn": "2023-01-16 15:33:54.228886", + "CreatedAt": "2023-01-16 15:21:17.580277", + "LastModifiedAt": "2023-01-16 15:33:54.228888" + }, + { + "JoinId": 259, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 15:22:32.541109", + "LeavedOn": "2023-01-16 15:24:45.672637", + "CreatedAt": "2023-01-16 15:22:32.541113", + "LastModifiedAt": "2023-01-16 15:24:45.672639" + }, + { + "JoinId": 257, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 14:57:38.205117", + "LeavedOn": "2023-01-16 15:22:31.251235", + "CreatedAt": "2023-01-16 14:57:38.205121", + "LastModifiedAt": "2023-01-16 15:22:31.251236" + }, + { + "JoinId": 253, + "UserId": 36, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 14:38:59.940942", + "LeavedOn": "2023-01-16 15:21:17.572900", + "CreatedAt": "2023-01-16 14:38:59.940946", + "LastModifiedAt": "2023-01-16 15:21:17.572902" + }, + { + "JoinId": 250, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 14:14:25.649749", + "LeavedOn": "2023-01-16 14:57:38.198996", + "CreatedAt": "2023-01-16 14:14:25.649782", + "LastModifiedAt": "2023-01-16 14:57:38.198998" + }, + { + "JoinId": 255, + "UserId": 67, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 14:47:28.615659", + "LeavedOn": "2023-01-16 14:47:37.529528", + "CreatedAt": "2023-01-16 14:47:28.615663", + "LastModifiedAt": "2023-01-16 14:47:37.529530" + }, + { + "JoinId": 254, + "UserId": 67, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 14:42:26.654304", + "LeavedOn": "2023-01-16 14:47:28.611136", + "CreatedAt": "2023-01-16 14:42:26.654309", + "LastModifiedAt": "2023-01-16 14:47:28.611138" + }, + { + "JoinId": 252, + "UserId": 67, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 14:22:43.451084", + "LeavedOn": "2023-01-16 14:42:26.647743", + "CreatedAt": "2023-01-16 14:22:43.451088", + "LastModifiedAt": "2023-01-16 14:42:26.647745" + }, + { + "JoinId": 251, + "UserId": 67, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 14:22:41.064980", + "LeavedOn": "2023-01-16 14:22:43.445051", + "CreatedAt": "2023-01-16 14:22:41.064985", + "LastModifiedAt": "2023-01-16 14:22:43.445053" + }, + { + "JoinId": 246, + "UserId": 36, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 09:06:19.690798", + "LeavedOn": "2023-01-16 11:58:07.010157", + "CreatedAt": "2023-01-16 09:06:19.690802", + "LastModifiedAt": "2023-01-16 11:58:07.010159" + }, + { + "JoinId": 249, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 11:37:45.743724", + "LeavedOn": "2023-01-16 11:40:20.972105", + "CreatedAt": "2023-01-16 11:37:45.743729", + "LastModifiedAt": "2023-01-16 11:40:20.972107" + }, + { + "JoinId": 248, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 11:33:59.360954", + "LeavedOn": "2023-01-16 11:37:45.737704", + "CreatedAt": "2023-01-16 11:33:59.360958", + "LastModifiedAt": "2023-01-16 11:37:45.737705" + }, + { + "JoinId": 247, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-16 10:58:14.673932", + "LeavedOn": "2023-01-16 11:33:59.355880", + "CreatedAt": "2023-01-16 10:58:14.673939", + "LastModifiedAt": "2023-01-16 11:33:59.355882" + }, + { + "JoinId": 245, + "UserId": 34, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 20:39:09.987806", + "LeavedOn": "2023-01-15 21:45:37.108062", + "CreatedAt": "2023-01-15 20:39:09.987810", + "LastModifiedAt": "2023-01-15 21:45:37.108063" + }, + { + "JoinId": 242, + "UserId": 20, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 20:35:02.924284", + "LeavedOn": "2023-01-15 21:27:54.377678", + "CreatedAt": "2023-01-15 20:35:02.924287", + "LastModifiedAt": "2023-01-15 21:27:54.377680" + }, + { + "JoinId": 239, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 20:34:34.848391", + "LeavedOn": "2023-01-15 20:50:27.645922", + "CreatedAt": "2023-01-15 20:34:34.848396", + "LastModifiedAt": "2023-01-15 20:50:27.645924" + }, + { + "JoinId": 238, + "UserId": 64, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 20:34:34.800088", + "LeavedOn": "2023-01-15 20:50:26.524199", + "CreatedAt": "2023-01-15 20:34:34.800093", + "LastModifiedAt": "2023-01-15 20:50:26.524201" + }, + { + "JoinId": 243, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-15 20:35:17.646596", + "LeavedOn": "2023-01-15 20:35:23.266651", + "CreatedAt": "2023-01-15 20:35:17.646599", + "LastModifiedAt": "2023-01-15 20:35:23.266653" + }, + { + "JoinId": 228, + "UserId": 8, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:25:47.914266", + "LeavedOn": "2023-01-15 20:35:21.394743", + "CreatedAt": "2023-01-15 18:25:47.914269", + "LastModifiedAt": "2023-01-15 20:35:21.394745" + }, + { + "JoinId": 241, + "UserId": 20, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 20:34:59.049839", + "LeavedOn": "2023-01-15 20:35:02.919038", + "CreatedAt": "2023-01-15 20:34:59.049843", + "LastModifiedAt": "2023-01-15 20:35:02.919039" + }, + { + "JoinId": 240, + "UserId": 20, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 20:34:34.879901", + "LeavedOn": "2023-01-15 20:34:59.041170", + "CreatedAt": "2023-01-15 20:34:34.879906", + "LastModifiedAt": "2023-01-15 20:34:59.041172" + }, + { + "JoinId": 223, + "UserId": 20, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:07:43.753265", + "LeavedOn": "2023-01-15 20:34:34.874505", + "CreatedAt": "2023-01-15 18:07:43.753271", + "LastModifiedAt": "2023-01-15 20:34:34.874506" + }, + { + "JoinId": 222, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 17:59:15.058954", + "LeavedOn": "2023-01-15 20:34:34.842264", + "CreatedAt": "2023-01-15 17:59:15.058958", + "LastModifiedAt": "2023-01-15 20:34:34.842267" + }, + { + "JoinId": 236, + "UserId": 64, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:55:00.923798", + "LeavedOn": "2023-01-15 20:34:34.794999", + "CreatedAt": "2023-01-15 18:55:00.923805", + "LastModifiedAt": "2023-01-15 20:34:34.795001" + }, + { + "JoinId": 196, + "UserId": 8, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 13:21:05.875544", + "LeavedOn": "2023-01-15 20:34:25.176998", + "CreatedAt": "2023-01-15 13:21:05.875547", + "LastModifiedAt": "2023-01-15 20:34:25.177000" + }, + { + "JoinId": 220, + "UserId": 36, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 17:09:23.528075", + "LeavedOn": "2023-01-15 20:34:21.196412", + "CreatedAt": "2023-01-15 17:09:23.528078", + "LastModifiedAt": "2023-01-15 20:34:21.196413" + }, + { + "JoinId": 234, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:32:40.782541", + "LeavedOn": "2023-01-15 20:21:38.442219", + "CreatedAt": "2023-01-15 18:32:40.782544", + "LastModifiedAt": "2023-01-15 20:21:38.442221" + }, + { + "JoinId": 237, + "UserId": 34, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:58:15.125756", + "LeavedOn": "2023-01-15 20:12:11.382781", + "CreatedAt": "2023-01-15 18:58:15.125761", + "LastModifiedAt": "2023-01-15 20:12:11.382782" + }, + { + "JoinId": 233, + "UserId": 52, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:29:37.862396", + "LeavedOn": "2023-01-15 19:54:52.373464", + "CreatedAt": "2023-01-15 18:29:37.862399", + "LastModifiedAt": "2023-01-15 19:54:52.373465" + }, + { + "JoinId": 235, + "UserId": 87, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:45:15.273844", + "LeavedOn": "2023-01-15 18:45:25.655587", + "CreatedAt": "2023-01-15 18:45:15.273870", + "LastModifiedAt": "2023-01-15 18:45:25.655588" + }, + { + "JoinId": 232, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:29:02.322832", + "LeavedOn": "2023-01-15 18:32:40.777469", + "CreatedAt": "2023-01-15 18:29:02.322836", + "LastModifiedAt": "2023-01-15 18:32:40.777471" + }, + { + "JoinId": 229, + "UserId": 52, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:28:13.852226", + "LeavedOn": "2023-01-15 18:29:37.857474", + "CreatedAt": "2023-01-15 18:28:13.852229", + "LastModifiedAt": "2023-01-15 18:29:37.857476" + }, + { + "JoinId": 231, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:28:42.379859", + "LeavedOn": "2023-01-15 18:29:02.316753", + "CreatedAt": "2023-01-15 18:28:42.379864", + "LastModifiedAt": "2023-01-15 18:29:02.316755" + }, + { + "JoinId": 230, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:28:41.829357", + "LeavedOn": "2023-01-15 18:28:42.374996", + "CreatedAt": "2023-01-15 18:28:41.829360", + "LastModifiedAt": "2023-01-15 18:28:42.374998" + }, + { + "JoinId": 227, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:11:54.880081", + "LeavedOn": "2023-01-15 18:28:41.824506", + "CreatedAt": "2023-01-15 18:11:54.880148", + "LastModifiedAt": "2023-01-15 18:28:41.824507" + }, + { + "JoinId": 221, + "UserId": 52, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 17:19:25.516469", + "LeavedOn": "2023-01-15 18:28:09.941185", + "CreatedAt": "2023-01-15 17:19:25.516472", + "LastModifiedAt": "2023-01-15 18:28:09.941186" + }, + { + "JoinId": 226, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:09:00.585684", + "LeavedOn": "2023-01-15 18:11:54.874809", + "CreatedAt": "2023-01-15 18:09:00.585687", + "LastModifiedAt": "2023-01-15 18:11:54.874810" + }, + { + "JoinId": 225, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:08:59.397747", + "LeavedOn": "2023-01-15 18:09:00.578581", + "CreatedAt": "2023-01-15 18:08:59.397751", + "LastModifiedAt": "2023-01-15 18:09:00.578583" + }, + { + "JoinId": 224, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 18:08:58.801656", + "LeavedOn": "2023-01-15 18:08:59.393140", + "CreatedAt": "2023-01-15 18:08:58.801659", + "LastModifiedAt": "2023-01-15 18:08:59.393141" + }, + { + "JoinId": 218, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 16:01:11.075032", + "LeavedOn": "2023-01-15 18:08:58.796578", + "CreatedAt": "2023-01-15 16:01:11.075035", + "LastModifiedAt": "2023-01-15 18:08:58.796579" + }, + { + "JoinId": 216, + "UserId": 20, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 15:34:41.131248", + "LeavedOn": "2023-01-15 18:07:43.747287", + "CreatedAt": "2023-01-15 15:34:41.131252", + "LastModifiedAt": "2023-01-15 18:07:43.747288" + }, + { + "JoinId": 195, + "UserId": 8, + "DiscordChannelId": 784530469290246145, + "JoinedOn": "2023-01-15 13:21:04.227770", + "LeavedOn": "2023-01-15 18:00:49.512777", + "CreatedAt": "2023-01-15 13:21:04.227775", + "LastModifiedAt": "2023-01-15 18:00:49.512779" + }, + { + "JoinId": 219, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 16:07:31.490961", + "LeavedOn": "2023-01-15 16:23:12.261906", + "CreatedAt": "2023-01-15 16:07:31.490965", + "LastModifiedAt": "2023-01-15 16:23:12.261908" + }, + { + "JoinId": 217, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 15:42:28.611683", + "LeavedOn": "2023-01-15 16:01:11.070186", + "CreatedAt": "2023-01-15 15:42:28.611687", + "LastModifiedAt": "2023-01-15 16:01:11.070187" + }, + { + "JoinId": 212, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 15:02:16.314125", + "LeavedOn": "2023-01-15 15:42:28.605482", + "CreatedAt": "2023-01-15 15:02:16.314129", + "LastModifiedAt": "2023-01-15 15:42:28.605484" + }, + { + "JoinId": 215, + "UserId": 20, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 15:16:49.776599", + "LeavedOn": "2023-01-15 15:34:41.125620", + "CreatedAt": "2023-01-15 15:16:49.776602", + "LastModifiedAt": "2023-01-15 15:34:41.125622" + }, + { + "JoinId": 204, + "UserId": 34, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 14:23:31.533087", + "LeavedOn": "2023-01-15 15:29:45.109745", + "CreatedAt": "2023-01-15 14:23:31.533091", + "LastModifiedAt": "2023-01-15 15:29:45.109746" + }, + { + "JoinId": 214, + "UserId": 20, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 15:12:58.223208", + "LeavedOn": "2023-01-15 15:16:49.770796", + "CreatedAt": "2023-01-15 15:12:58.223211", + "LastModifiedAt": "2023-01-15 15:16:49.770798" + }, + { + "JoinId": 205, + "UserId": 20, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 14:23:31.587649", + "LeavedOn": "2023-01-15 15:12:58.219176", + "CreatedAt": "2023-01-15 14:23:31.587653", + "LastModifiedAt": "2023-01-15 15:12:58.219177" + }, + { + "JoinId": 213, + "UserId": 69, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 15:09:11.058689", + "LeavedOn": "2023-01-15 15:11:08.264965", + "CreatedAt": "2023-01-15 15:09:11.058693", + "LastModifiedAt": "2023-01-15 15:11:08.264966" + }, + { + "JoinId": 211, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 15:00:32.518564", + "LeavedOn": "2023-01-15 15:02:16.308618", + "CreatedAt": "2023-01-15 15:00:32.518567", + "LastModifiedAt": "2023-01-15 15:02:16.308620" + }, + { + "JoinId": 210, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 15:00:07.181123", + "LeavedOn": "2023-01-15 15:00:32.513863", + "CreatedAt": "2023-01-15 15:00:07.181127", + "LastModifiedAt": "2023-01-15 15:00:32.513864" + }, + { + "JoinId": 209, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 15:00:05.137298", + "LeavedOn": "2023-01-15 15:00:07.175297", + "CreatedAt": "2023-01-15 15:00:05.137302", + "LastModifiedAt": "2023-01-15 15:00:07.175298" + }, + { + "JoinId": 208, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 15:00:00.742356", + "LeavedOn": "2023-01-15 15:00:05.131857", + "CreatedAt": "2023-01-15 15:00:00.742360", + "LastModifiedAt": "2023-01-15 15:00:05.131859" + }, + { + "JoinId": 207, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 14:54:01.803601", + "LeavedOn": "2023-01-15 15:00:00.737185", + "CreatedAt": "2023-01-15 14:54:01.803604", + "LastModifiedAt": "2023-01-15 15:00:00.737187" + }, + { + "JoinId": 202, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 14:23:24.771335", + "LeavedOn": "2023-01-15 14:54:01.798788", + "CreatedAt": "2023-01-15 14:23:24.771340", + "LastModifiedAt": "2023-01-15 14:54:01.798790" + }, + { + "JoinId": 206, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-15 14:38:23.938338", + "LeavedOn": "2023-01-15 14:38:32.785629", + "CreatedAt": "2023-01-15 14:38:23.938342", + "LastModifiedAt": "2023-01-15 14:38:32.785630" + }, + { + "JoinId": 200, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 14:19:25.655684", + "LeavedOn": "2023-01-15 14:38:23.932165", + "CreatedAt": "2023-01-15 14:19:25.655688", + "LastModifiedAt": "2023-01-15 14:38:23.932166" + }, + { + "JoinId": 203, + "UserId": 34, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-15 14:23:29.641962", + "LeavedOn": "2023-01-15 14:23:31.528639", + "CreatedAt": "2023-01-15 14:23:29.641965", + "LastModifiedAt": "2023-01-15 14:23:31.528640" + }, + { + "JoinId": 198, + "UserId": 34, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 13:31:58.826114", + "LeavedOn": "2023-01-15 14:23:29.637324", + "CreatedAt": "2023-01-15 13:31:58.826118", + "LastModifiedAt": "2023-01-15 14:23:29.637325" + }, + { + "JoinId": 179, + "UserId": 20, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 11:57:14.503774", + "LeavedOn": "2023-01-15 14:23:28.576770", + "CreatedAt": "2023-01-15 11:57:14.503780", + "LastModifiedAt": "2023-01-15 14:23:28.576772" + }, + { + "JoinId": 201, + "UserId": 80, + "DiscordChannelId": 1026266281600614411, + "JoinedOn": "2023-01-15 14:23:22.299611", + "LeavedOn": "2023-01-15 14:23:24.763257", + "CreatedAt": "2023-01-15 14:23:22.299613", + "LastModifiedAt": "2023-01-15 14:23:24.763259" + }, + { + "JoinId": 197, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 13:21:11.500816", + "LeavedOn": "2023-01-15 14:23:22.295360", + "CreatedAt": "2023-01-15 13:21:11.500822", + "LastModifiedAt": "2023-01-15 14:23:22.295362" + }, + { + "JoinId": 199, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 13:35:12.116511", + "LeavedOn": "2023-01-15 14:17:40.893275", + "CreatedAt": "2023-01-15 13:35:12.116515", + "LastModifiedAt": "2023-01-15 14:17:40.893276" + }, + { + "JoinId": 192, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 12:58:03.702948", + "LeavedOn": "2023-01-15 13:35:12.111559", + "CreatedAt": "2023-01-15 12:58:03.702953", + "LastModifiedAt": "2023-01-15 13:35:12.111560" + }, + { + "JoinId": 186, + "UserId": 32, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 12:10:30.907290", + "LeavedOn": "2023-01-15 13:32:40.125421", + "CreatedAt": "2023-01-15 12:10:30.907292", + "LastModifiedAt": "2023-01-15 13:32:40.125422" + }, + { + "JoinId": 172, + "UserId": 60, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 11:34:55.446087", + "LeavedOn": "2023-01-15 13:28:25.621007", + "CreatedAt": "2023-01-15 11:34:55.446091", + "LastModifiedAt": "2023-01-15 13:28:25.621008" + }, + { + "JoinId": 194, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 13:01:18.686279", + "LeavedOn": "2023-01-15 13:21:11.492852", + "CreatedAt": "2023-01-15 13:01:18.686282", + "LastModifiedAt": "2023-01-15 13:21:11.492854" + }, + { + "JoinId": 193, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 13:01:18.313683", + "LeavedOn": "2023-01-15 13:01:18.681551", + "CreatedAt": "2023-01-15 13:01:18.313687", + "LastModifiedAt": "2023-01-15 13:01:18.681553" + }, + { + "JoinId": 190, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 12:57:38.539470", + "LeavedOn": "2023-01-15 13:01:18.308565", + "CreatedAt": "2023-01-15 12:57:38.539475", + "LastModifiedAt": "2023-01-15 13:01:18.308567" + }, + { + "JoinId": 191, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-15 12:58:02.953663", + "LeavedOn": "2023-01-15 12:58:03.695799", + "CreatedAt": "2023-01-15 12:58:02.953669", + "LastModifiedAt": "2023-01-15 12:58:03.695800" + }, + { + "JoinId": 176, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 11:54:51.465316", + "LeavedOn": "2023-01-15 12:58:02.948146", + "CreatedAt": "2023-01-15 11:54:51.465320", + "LastModifiedAt": "2023-01-15 12:58:02.948148" + }, + { + "JoinId": 189, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 12:57:37.970419", + "LeavedOn": "2023-01-15 12:57:38.534049", + "CreatedAt": "2023-01-15 12:57:37.970425", + "LastModifiedAt": "2023-01-15 12:57:38.534079" + }, + { + "JoinId": 188, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 12:39:29.355059", + "LeavedOn": "2023-01-15 12:57:37.966134", + "CreatedAt": "2023-01-15 12:39:29.355063", + "LastModifiedAt": "2023-01-15 12:57:37.966135" + }, + { + "JoinId": 187, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 12:15:21.315152", + "LeavedOn": "2023-01-15 12:39:29.349017", + "CreatedAt": "2023-01-15 12:15:21.315155", + "LastModifiedAt": "2023-01-15 12:39:29.349019" + }, + { + "JoinId": 184, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 12:09:16.979494", + "LeavedOn": "2023-01-15 12:15:21.311188", + "CreatedAt": "2023-01-15 12:09:16.979497", + "LastModifiedAt": "2023-01-15 12:15:21.311189" + }, + { + "JoinId": 185, + "UserId": 32, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 12:10:07.355037", + "LeavedOn": "2023-01-15 12:10:30.903586", + "CreatedAt": "2023-01-15 12:10:07.355042", + "LastModifiedAt": "2023-01-15 12:10:30.903587" + }, + { + "JoinId": 171, + "UserId": 32, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 11:34:55.401868", + "LeavedOn": "2023-01-15 12:10:07.349406", + "CreatedAt": "2023-01-15 11:34:55.401871", + "LastModifiedAt": "2023-01-15 12:10:07.349407" + }, + { + "JoinId": 183, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 12:05:46.737720", + "LeavedOn": "2023-01-15 12:09:16.974837", + "CreatedAt": "2023-01-15 12:05:46.737725", + "LastModifiedAt": "2023-01-15 12:09:16.974839" + }, + { + "JoinId": 182, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 12:05:37.210668", + "LeavedOn": "2023-01-15 12:05:46.732178", + "CreatedAt": "2023-01-15 12:05:37.210672", + "LastModifiedAt": "2023-01-15 12:05:46.732179" + }, + { + "JoinId": 181, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 12:00:00.170376", + "LeavedOn": "2023-01-15 12:05:37.205366", + "CreatedAt": "2023-01-15 12:00:00.170380", + "LastModifiedAt": "2023-01-15 12:05:37.205368" + }, + { + "JoinId": 178, + "UserId": 8, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 11:57:14.254820", + "LeavedOn": "2023-01-15 12:00:18.702211", + "CreatedAt": "2023-01-15 11:57:14.254823", + "LastModifiedAt": "2023-01-15 12:00:18.702212" + }, + { + "JoinId": 180, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 11:57:14.540747", + "LeavedOn": "2023-01-15 12:00:00.163768", + "CreatedAt": "2023-01-15 11:57:14.540751", + "LastModifiedAt": "2023-01-15 12:00:00.163769" + }, + { + "JoinId": 174, + "UserId": 80, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 11:45:43.541002", + "LeavedOn": "2023-01-15 11:57:14.536043", + "CreatedAt": "2023-01-15 11:45:43.541009", + "LastModifiedAt": "2023-01-15 11:57:14.536045" + }, + { + "JoinId": 177, + "UserId": 20, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 11:55:50.148058", + "LeavedOn": "2023-01-15 11:57:14.498509", + "CreatedAt": "2023-01-15 11:55:50.148065", + "LastModifiedAt": "2023-01-15 11:57:14.498511" + }, + { + "JoinId": 173, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 11:42:19.113785", + "LeavedOn": "2023-01-15 11:57:14.250663", + "CreatedAt": "2023-01-15 11:42:19.113788", + "LastModifiedAt": "2023-01-15 11:57:14.250664" + }, + { + "JoinId": 175, + "UserId": 26, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-15 11:54:50.779125", + "LeavedOn": "2023-01-15 11:54:51.457966", + "CreatedAt": "2023-01-15 11:54:50.779128", + "LastModifiedAt": "2023-01-15 11:54:51.457968" + }, + { + "JoinId": 170, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-15 11:34:55.164781", + "LeavedOn": "2023-01-15 11:54:50.772608", + "CreatedAt": "2023-01-15 11:34:55.164786", + "LastModifiedAt": "2023-01-15 11:54:50.772610" + }, + { + "JoinId": 167, + "UserId": 80, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 10:55:49.890734", + "LeavedOn": "2023-01-15 11:45:43.535071", + "CreatedAt": "2023-01-15 10:55:49.890738", + "LastModifiedAt": "2023-01-15 11:45:43.535073" + }, + { + "JoinId": 161, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 09:24:08.063741", + "LeavedOn": "2023-01-15 11:42:19.108712", + "CreatedAt": "2023-01-15 09:24:08.063751", + "LastModifiedAt": "2023-01-15 11:42:19.108715" + }, + { + "JoinId": 169, + "UserId": 60, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-15 11:03:44.693010", + "LeavedOn": "2023-01-15 11:34:55.441080", + "CreatedAt": "2023-01-15 11:03:44.693014", + "LastModifiedAt": "2023-01-15 11:34:55.441082" + }, + { + "JoinId": 168, + "UserId": 32, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-15 11:02:29.267185", + "LeavedOn": "2023-01-15 11:34:55.395900", + "CreatedAt": "2023-01-15 11:02:29.267189", + "LastModifiedAt": "2023-01-15 11:34:55.395902" + }, + { + "JoinId": 164, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-15 10:29:12.120052", + "LeavedOn": "2023-01-15 11:34:55.158878", + "CreatedAt": "2023-01-15 10:29:12.120055", + "LastModifiedAt": "2023-01-15 11:34:55.158879" + }, + { + "JoinId": 166, + "UserId": 80, + "DiscordChannelId": 1026266281600614411, + "JoinedOn": "2023-01-15 10:55:44.550780", + "LeavedOn": "2023-01-15 10:55:49.886110", + "CreatedAt": "2023-01-15 10:55:44.550784", + "LastModifiedAt": "2023-01-15 10:55:49.886112" + }, + { + "JoinId": 165, + "UserId": 80, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 10:39:30.359137", + "LeavedOn": "2023-01-15 10:55:44.546091", + "CreatedAt": "2023-01-15 10:39:30.359141", + "LastModifiedAt": "2023-01-15 10:55:44.546093" + }, + { + "JoinId": 163, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-15 09:30:12.751991", + "LeavedOn": "2023-01-15 10:13:11.111137", + "CreatedAt": "2023-01-15 09:30:12.751996", + "LastModifiedAt": "2023-01-15 10:13:11.111139" + }, + { + "JoinId": 162, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 09:24:20.188605", + "LeavedOn": "2023-01-15 09:30:12.745911", + "CreatedAt": "2023-01-15 09:24:20.188609", + "LastModifiedAt": "2023-01-15 09:30:12.745913" + }, + { + "JoinId": 158, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-15 08:39:56.231888", + "LeavedOn": "2023-01-15 09:24:20.183282", + "CreatedAt": "2023-01-15 08:39:56.231891", + "LastModifiedAt": "2023-01-15 09:24:20.183284" + }, + { + "JoinId": 160, + "UserId": 8, + "DiscordChannelId": 1026266281600614411, + "JoinedOn": "2023-01-15 09:24:04.989418", + "LeavedOn": "2023-01-15 09:24:08.057974", + "CreatedAt": "2023-01-15 09:24:04.989423", + "LastModifiedAt": "2023-01-15 09:24:08.057975" + }, + { + "JoinId": 159, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-15 09:23:59.103048", + "LeavedOn": "2023-01-15 09:24:04.983288", + "CreatedAt": "2023-01-15 09:23:59.103080", + "LastModifiedAt": "2023-01-15 09:24:04.983289" + }, + { + "JoinId": 157, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-15 08:39:53.002453", + "LeavedOn": "2023-01-15 08:39:54.786690", + "CreatedAt": "2023-01-15 08:39:53.002457", + "LastModifiedAt": "2023-01-15 08:39:54.786692" + }, + { + "JoinId": 156, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-15 08:39:51.388767", + "LeavedOn": "2023-01-15 08:39:52.997763", + "CreatedAt": "2023-01-15 08:39:51.388770", + "LastModifiedAt": "2023-01-15 08:39:52.997764" + }, + { + "JoinId": 155, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-15 08:39:42.319955", + "LeavedOn": "2023-01-15 08:39:51.383865", + "CreatedAt": "2023-01-15 08:39:42.319959", + "LastModifiedAt": "2023-01-15 08:39:51.383866" + }, + { + "JoinId": 150, + "UserId": 64, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-14 23:14:48.168948", + "LeavedOn": "2023-01-15 00:19:30.749673", + "CreatedAt": "2023-01-14 23:14:48.168953", + "LastModifiedAt": "2023-01-15 00:19:30.749675" + }, + { + "JoinId": 154, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-15 00:06:59.530280", + "LeavedOn": "2023-01-15 00:19:23.970251", + "CreatedAt": "2023-01-15 00:06:59.530282", + "LastModifiedAt": "2023-01-15 00:19:23.970253" + }, + { + "JoinId": 153, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-14 23:51:12.858602", + "LeavedOn": "2023-01-15 00:06:59.526385", + "CreatedAt": "2023-01-14 23:51:12.858605", + "LastModifiedAt": "2023-01-15 00:06:59.526386" + }, + { + "JoinId": 152, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-14 23:51:06.055561", + "LeavedOn": "2023-01-14 23:51:12.853831", + "CreatedAt": "2023-01-14 23:51:06.055564", + "LastModifiedAt": "2023-01-14 23:51:12.853833" + }, + { + "JoinId": 151, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-14 23:19:40.156908", + "LeavedOn": "2023-01-14 23:51:06.051277", + "CreatedAt": "2023-01-14 23:19:40.156910", + "LastModifiedAt": "2023-01-14 23:51:06.051278" + }, + { + "JoinId": 149, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-14 23:13:22.625055", + "LeavedOn": "2023-01-14 23:19:40.152361", + "CreatedAt": "2023-01-14 23:13:22.625057", + "LastModifiedAt": "2023-01-14 23:19:40.152363" + }, + { + "JoinId": 148, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 22:47:36.005274", + "LeavedOn": "2023-01-14 23:13:22.619942", + "CreatedAt": "2023-01-14 22:47:36.005278", + "LastModifiedAt": "2023-01-14 23:13:22.619945" + }, + { + "JoinId": 147, + "UserId": 69, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 19:35:45.513502", + "LeavedOn": "2023-01-14 23:13:15.753568", + "CreatedAt": "2023-01-14 19:35:45.513505", + "LastModifiedAt": "2023-01-14 23:13:15.753569" + }, + { + "JoinId": 145, + "UserId": 60, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 19:13:10.940883", + "LeavedOn": "2023-01-14 22:53:50.099334", + "CreatedAt": "2023-01-14 19:13:10.940887", + "LastModifiedAt": "2023-01-14 22:53:50.099336" + }, + { + "JoinId": 134, + "UserId": 8, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 17:56:29.986834", + "LeavedOn": "2023-01-14 20:25:51.028814", + "CreatedAt": "2023-01-14 17:56:29.986837", + "LastModifiedAt": "2023-01-14 20:25:51.028816" + }, + { + "JoinId": 144, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 19:12:21.255399", + "LeavedOn": "2023-01-14 20:06:29.726039", + "CreatedAt": "2023-01-14 19:12:21.255404", + "LastModifiedAt": "2023-01-14 20:06:29.726041" + }, + { + "JoinId": 138, + "UserId": 32, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 18:27:11.359232", + "LeavedOn": "2023-01-14 20:06:25.047249", + "CreatedAt": "2023-01-14 18:27:11.359235", + "LastModifiedAt": "2023-01-14 20:06:25.047251" + }, + { + "JoinId": 146, + "UserId": 69, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 19:35:44.641864", + "LeavedOn": "2023-01-14 19:35:45.508360", + "CreatedAt": "2023-01-14 19:35:44.641869", + "LastModifiedAt": "2023-01-14 19:35:45.508362" + }, + { + "JoinId": 143, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 18:32:18.824706", + "LeavedOn": "2023-01-14 19:27:02.559448", + "CreatedAt": "2023-01-14 18:32:18.824711", + "LastModifiedAt": "2023-01-14 19:27:02.559450" + }, + { + "JoinId": 142, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 18:31:01.680003", + "LeavedOn": "2023-01-14 18:32:18.819683", + "CreatedAt": "2023-01-14 18:31:01.680019", + "LastModifiedAt": "2023-01-14 18:32:18.819685" + }, + { + "JoinId": 131, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 17:02:19.293011", + "LeavedOn": "2023-01-14 18:31:01.673630", + "CreatedAt": "2023-01-14 17:02:19.293017", + "LastModifiedAt": "2023-01-14 18:31:01.673631" + }, + { + "JoinId": 141, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 18:28:48.763072", + "LeavedOn": "2023-01-14 18:29:29.300246", + "CreatedAt": "2023-01-14 18:28:48.763076", + "LastModifiedAt": "2023-01-14 18:29:29.300247" + }, + { + "JoinId": 140, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 18:27:16.523543", + "LeavedOn": "2023-01-14 18:28:48.757989", + "CreatedAt": "2023-01-14 18:27:16.523546", + "LastModifiedAt": "2023-01-14 18:28:48.757991" + }, + { + "JoinId": 139, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 18:27:11.741688", + "LeavedOn": "2023-01-14 18:27:16.519133", + "CreatedAt": "2023-01-14 18:27:11.741692", + "LastModifiedAt": "2023-01-14 18:27:16.519134" + }, + { + "JoinId": 136, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 18:08:13.872777", + "LeavedOn": "2023-01-14 18:27:11.736923", + "CreatedAt": "2023-01-14 18:08:13.872781", + "LastModifiedAt": "2023-01-14 18:27:11.736925" + }, + { + "JoinId": 137, + "UserId": 32, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 18:21:00.681431", + "LeavedOn": "2023-01-14 18:27:11.354316", + "CreatedAt": "2023-01-14 18:21:00.681437", + "LastModifiedAt": "2023-01-14 18:27:11.354317" + }, + { + "JoinId": 135, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 18:01:37.821807", + "LeavedOn": "2023-01-14 18:08:13.867667", + "CreatedAt": "2023-01-14 18:01:37.821811", + "LastModifiedAt": "2023-01-14 18:08:13.867668" + }, + { + "JoinId": 132, + "UserId": 26, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 17:56:10.660536", + "LeavedOn": "2023-01-14 18:01:37.816837", + "CreatedAt": "2023-01-14 17:56:10.660541", + "LastModifiedAt": "2023-01-14 18:01:37.816838" + }, + { + "JoinId": 133, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-14 17:56:28.728438", + "LeavedOn": "2023-01-14 17:56:29.982162", + "CreatedAt": "2023-01-14 17:56:28.728442", + "LastModifiedAt": "2023-01-14 17:56:29.982164" + }, + { + "JoinId": 115, + "UserId": 8, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 14:52:20.399403", + "LeavedOn": "2023-01-14 17:56:28.724165", + "CreatedAt": "2023-01-14 14:52:20.399410", + "LastModifiedAt": "2023-01-14 17:56:28.724166" + }, + { + "JoinId": 128, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 16:40:14.076250", + "LeavedOn": "2023-01-14 17:17:50.064408", + "CreatedAt": "2023-01-14 16:40:14.076254", + "LastModifiedAt": "2023-01-14 17:17:50.064410" + }, + { + "JoinId": 110, + "UserId": 32, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 14:07:28.181362", + "LeavedOn": "2023-01-14 17:11:33.035357", + "CreatedAt": "2023-01-14 14:07:28.181367", + "LastModifiedAt": "2023-01-14 17:11:33.035359" + }, + { + "JoinId": 130, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 17:00:23.624061", + "LeavedOn": "2023-01-14 17:00:36.531291", + "CreatedAt": "2023-01-14 17:00:23.624065", + "LastModifiedAt": "2023-01-14 17:00:36.531293" + }, + { + "JoinId": 129, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 16:50:32.934540", + "LeavedOn": "2023-01-14 17:00:23.618479", + "CreatedAt": "2023-01-14 16:50:32.934545", + "LastModifiedAt": "2023-01-14 17:00:23.618481" + }, + { + "JoinId": 126, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 16:13:35.176502", + "LeavedOn": "2023-01-14 16:50:32.929404", + "CreatedAt": "2023-01-14 16:13:35.176507", + "LastModifiedAt": "2023-01-14 16:50:32.929406" + }, + { + "JoinId": 127, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 16:30:23.894325", + "LeavedOn": "2023-01-14 16:40:14.070671", + "CreatedAt": "2023-01-14 16:30:23.894331", + "LastModifiedAt": "2023-01-14 16:40:14.070673" + }, + { + "JoinId": 125, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 15:56:02.889387", + "LeavedOn": "2023-01-14 16:13:35.169903", + "CreatedAt": "2023-01-14 15:56:02.889390", + "LastModifiedAt": "2023-01-14 16:13:35.169904" + }, + { + "JoinId": 123, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 15:21:11.804692", + "LeavedOn": "2023-01-14 16:12:57.936106", + "CreatedAt": "2023-01-14 15:21:11.804695", + "LastModifiedAt": "2023-01-14 16:12:57.936108" + }, + { + "JoinId": 118, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 14:53:49.453038", + "LeavedOn": "2023-01-14 15:56:02.884884", + "CreatedAt": "2023-01-14 14:53:49.453042", + "LastModifiedAt": "2023-01-14 15:56:02.884886" + }, + { + "JoinId": 124, + "UserId": 34, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 15:24:16.234112", + "LeavedOn": "2023-01-14 15:41:17.012742", + "CreatedAt": "2023-01-14 15:24:16.234116", + "LastModifiedAt": "2023-01-14 15:41:17.012744" + }, + { + "JoinId": 119, + "UserId": 34, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 15:13:05.804722", + "LeavedOn": "2023-01-14 15:24:16.229048", + "CreatedAt": "2023-01-14 15:13:05.804726", + "LastModifiedAt": "2023-01-14 15:24:16.229049" + }, + { + "JoinId": 122, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 15:21:11.330671", + "LeavedOn": "2023-01-14 15:21:11.799068", + "CreatedAt": "2023-01-14 15:21:11.330674", + "LastModifiedAt": "2023-01-14 15:21:11.799070" + }, + { + "JoinId": 121, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 15:20:56.516534", + "LeavedOn": "2023-01-14 15:21:11.326620", + "CreatedAt": "2023-01-14 15:20:56.516539", + "LastModifiedAt": "2023-01-14 15:21:11.326621" + }, + { + "JoinId": 120, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 15:20:19.425289", + "LeavedOn": "2023-01-14 15:20:56.511108", + "CreatedAt": "2023-01-14 15:20:19.425291", + "LastModifiedAt": "2023-01-14 15:20:56.511110" + }, + { + "JoinId": 112, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 14:39:18.320941", + "LeavedOn": "2023-01-14 15:20:19.420514", + "CreatedAt": "2023-01-14 14:39:18.320944", + "LastModifiedAt": "2023-01-14 15:20:19.420516" + }, + { + "JoinId": 114, + "UserId": 75, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-14 14:51:49.981981", + "LeavedOn": "2023-01-14 15:09:33.313261", + "CreatedAt": "2023-01-14 14:51:49.981986", + "LastModifiedAt": "2023-01-14 15:09:33.313263" + }, + { + "JoinId": 117, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-14 14:53:47.004824", + "LeavedOn": "2023-01-14 14:53:49.448376", + "CreatedAt": "2023-01-14 14:53:47.004828", + "LastModifiedAt": "2023-01-14 14:53:49.448378" + }, + { + "JoinId": 116, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 14:52:53.291699", + "LeavedOn": "2023-01-14 14:53:46.999594", + "CreatedAt": "2023-01-14 14:52:53.291703", + "LastModifiedAt": "2023-01-14 14:53:46.999595" + }, + { + "JoinId": 113, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 14:46:27.502002", + "LeavedOn": "2023-01-14 14:52:53.286932", + "CreatedAt": "2023-01-14 14:46:27.502005", + "LastModifiedAt": "2023-01-14 14:52:53.286934" + }, + { + "JoinId": 111, + "UserId": 80, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-14 14:36:26.251492", + "LeavedOn": "2023-01-14 14:46:27.497088", + "CreatedAt": "2023-01-14 14:36:26.251496", + "LastModifiedAt": "2023-01-14 14:46:27.497090" + }, + { + "JoinId": 109, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-14 00:26:30.520149", + "LeavedOn": "2023-01-14 00:26:34.372165", + "CreatedAt": "2023-01-14 00:26:30.520150", + "LastModifiedAt": "2023-01-14 00:26:34.372166" + }, + { + "JoinId": 108, + "UserId": 26, + "DiscordChannelId": 1026266721436303380, + "JoinedOn": "2023-01-14 00:26:22.149066", + "LeavedOn": "2023-01-14 00:26:30.516466", + "CreatedAt": "2023-01-14 00:26:22.149071", + "LastModifiedAt": "2023-01-14 00:26:30.516468" + }, + { + "JoinId": 107, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-14 00:26:17.967227", + "LeavedOn": "2023-01-14 00:26:22.143765", + "CreatedAt": "2023-01-14 00:26:17.967234", + "LastModifiedAt": "2023-01-14 00:26:22.143766" + }, + { + "JoinId": 106, + "UserId": 26, + "DiscordChannelId": 1026266721436303380, + "JoinedOn": "2023-01-14 00:07:30.484082", + "LeavedOn": "2023-01-14 00:07:34.111471", + "CreatedAt": "2023-01-14 00:07:30.484089", + "LastModifiedAt": "2023-01-14 00:07:34.111473" + }, + { + "JoinId": 105, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-14 00:07:24.882315", + "LeavedOn": "2023-01-14 00:07:30.385294", + "CreatedAt": "2023-01-14 00:07:24.882321", + "LastModifiedAt": "2023-01-14 00:07:30.385296" + }, + { + "JoinId": 104, + "UserId": 26, + "DiscordChannelId": 1026266721436303380, + "JoinedOn": "2023-01-14 00:01:40.577985", + "LeavedOn": "2023-01-14 00:01:48.642375", + "CreatedAt": "2023-01-14 00:01:40.577989", + "LastModifiedAt": "2023-01-14 00:01:48.642378" + }, + { + "JoinId": 103, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-14 00:01:32.228432", + "LeavedOn": "2023-01-14 00:01:40.526443", + "CreatedAt": "2023-01-14 00:01:32.228436", + "LastModifiedAt": "2023-01-14 00:01:40.526444" + }, + { + "JoinId": 102, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-13 23:50:38.895524", + "LeavedOn": "2023-01-13 23:54:29.380198", + "CreatedAt": "2023-01-13 23:50:38.895531", + "LastModifiedAt": "2023-01-13 23:54:29.380200" + }, + { + "JoinId": 95, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-13 23:28:48.841656", + "LeavedOn": "2023-01-13 23:33:15.930279", + "CreatedAt": "2023-01-13 23:28:48.841659", + "LastModifiedAt": "2023-01-13 23:33:15.930281" + }, + { + "JoinId": 96, + "UserId": 64, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-13 23:28:48.845689", + "LeavedOn": "2023-01-13 23:29:35.001545", + "CreatedAt": "2023-01-13 23:28:48.845691", + "LastModifiedAt": "2023-01-13 23:29:35.001549" + }, + { + "JoinId": 88, + "UserId": 64, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-13 18:04:31.983720", + "LeavedOn": "2023-01-13 23:28:48.707067", + "CreatedAt": "2023-01-13 18:04:31.983724", + "LastModifiedAt": "2023-01-13 23:28:48.707070" + }, + { + "JoinId": 94, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-13 23:14:19.207610", + "LeavedOn": "2023-01-13 23:28:48.701009", + "CreatedAt": "2023-01-13 23:14:19.207613", + "LastModifiedAt": "2023-01-13 23:28:48.701011" + }, + { + "JoinId": 93, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-13 22:13:10.943682", + "LeavedOn": "2023-01-13 23:13:13.108945", + "CreatedAt": "2023-01-13 22:13:10.943689", + "LastModifiedAt": "2023-01-13 23:13:13.108947" + }, + { + "JoinId": 92, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-13 21:09:55.930420", + "LeavedOn": "2023-01-13 22:12:54.211211", + "CreatedAt": "2023-01-13 21:09:55.930425", + "LastModifiedAt": "2023-01-13 22:12:54.211213" + }, + { + "JoinId": 86, + "UserId": 20, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-13 17:10:35.008807", + "LeavedOn": "2023-01-13 21:16:12.955386", + "CreatedAt": "2023-01-13 17:10:35.008811", + "LastModifiedAt": "2023-01-13 21:16:12.955387" + }, + { + "JoinId": 91, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-13 21:01:36.549243", + "LeavedOn": "2023-01-13 21:16:12.725784", + "CreatedAt": "2023-01-13 21:01:36.549249", + "LastModifiedAt": "2023-01-13 21:16:12.725786" + }, + { + "JoinId": 83, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-13 16:41:15.394488", + "LeavedOn": "2023-01-13 21:09:55.169413", + "CreatedAt": "2023-01-13 16:41:15.394492", + "LastModifiedAt": "2023-01-13 21:09:55.169415" + }, + { + "JoinId": 89, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-13 18:46:57.342669", + "LeavedOn": "2023-01-13 21:01:33.510825", + "CreatedAt": "2023-01-13 18:46:57.342673", + "LastModifiedAt": "2023-01-13 21:01:33.510827" + }, + { + "JoinId": 90, + "UserId": 80, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-13 18:52:15.795940", + "LeavedOn": "2023-01-13 21:01:28.266211", + "CreatedAt": "2023-01-13 18:52:15.795944", + "LastModifiedAt": "2023-01-13 21:01:28.266213" + }, + { + "JoinId": 85, + "UserId": 52, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-13 17:00:04.304264", + "LeavedOn": "2023-01-13 19:10:36.025272", + "CreatedAt": "2023-01-13 17:00:04.304268", + "LastModifiedAt": "2023-01-13 19:10:36.025274" + }, + { + "JoinId": 84, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-13 16:44:14.125688", + "LeavedOn": "2023-01-13 18:33:56.209266", + "CreatedAt": "2023-01-13 16:44:14.125693", + "LastModifiedAt": "2023-01-13 18:33:56.209268" + }, + { + "JoinId": 87, + "UserId": 34, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-13 17:31:23.506904", + "LeavedOn": "2023-01-13 18:31:40.319169", + "CreatedAt": "2023-01-13 17:31:23.506910", + "LastModifiedAt": "2023-01-13 18:31:40.319171" + }, + { + "JoinId": 82, + "UserId": 20, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-13 16:16:02.150369", + "LeavedOn": "2023-01-13 16:36:56.499597", + "CreatedAt": "2023-01-13 16:16:02.150373", + "LastModifiedAt": "2023-01-13 16:36:56.499599" + }, + { + "JoinId": 81, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-13 16:03:22.031106", + "LeavedOn": "2023-01-13 16:36:55.367262", + "CreatedAt": "2023-01-13 16:03:22.031111", + "LastModifiedAt": "2023-01-13 16:36:55.367264" + }, + { + "JoinId": 80, + "UserId": 34, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-13 15:42:05.065464", + "LeavedOn": "2023-01-13 16:17:21.677680", + "CreatedAt": "2023-01-13 15:42:05.065468", + "LastModifiedAt": "2023-01-13 16:17:21.677681" + }, + { + "JoinId": 78, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-13 14:05:23.953829", + "LeavedOn": "2023-01-13 16:03:21.231132", + "CreatedAt": "2023-01-13 14:05:23.953832", + "LastModifiedAt": "2023-01-13 16:03:21.231134" + }, + { + "JoinId": 79, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-13 14:40:19.431726", + "LeavedOn": "2023-01-13 15:05:05.812539", + "CreatedAt": "2023-01-13 14:40:19.431730", + "LastModifiedAt": "2023-01-13 15:05:05.812541" + }, + { + "JoinId": 77, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-13 13:49:15.646624", + "LeavedOn": "2023-01-13 14:09:21.324723", + "CreatedAt": "2023-01-13 13:49:15.646629", + "LastModifiedAt": "2023-01-13 14:09:21.324725" + }, + { + "JoinId": 75, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-13 12:10:16.199811", + "LeavedOn": "2023-01-13 14:05:23.327742", + "CreatedAt": "2023-01-13 12:10:16.199815", + "LastModifiedAt": "2023-01-13 14:05:23.327743" + }, + { + "JoinId": 76, + "UserId": 23, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-13 12:38:24.185505", + "LeavedOn": "2023-01-13 13:34:21.939608", + "CreatedAt": "2023-01-13 12:38:24.185508", + "LastModifiedAt": "2023-01-13 13:34:21.939610" + }, + { + "JoinId": 72, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-13 09:25:35.279551", + "LeavedOn": "2023-01-13 12:01:08.617616", + "CreatedAt": "2023-01-13 09:25:35.279556", + "LastModifiedAt": "2023-01-13 12:01:08.617617" + }, + { + "JoinId": 74, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-13 11:19:59.888147", + "LeavedOn": "2023-01-13 11:43:32.253723", + "CreatedAt": "2023-01-13 11:19:59.888151", + "LastModifiedAt": "2023-01-13 11:43:32.253724" + }, + { + "JoinId": 73, + "UserId": 26, + "DiscordChannelId": 936325349413888121, + "JoinedOn": "2023-01-13 11:00:26.110554", + "LeavedOn": "2023-01-13 11:14:57.641291", + "CreatedAt": "2023-01-13 11:00:26.110557", + "LastModifiedAt": "2023-01-13 11:14:57.641293" + }, + { + "JoinId": 71, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-12 22:27:00.051856", + "LeavedOn": "2023-01-12 23:19:42.345434", + "CreatedAt": "2023-01-12 22:27:00.051861", + "LastModifiedAt": "2023-01-12 23:19:42.345436" + }, + { + "JoinId": 66, + "UserId": 8, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-12 16:54:55.320884", + "LeavedOn": "2023-01-12 22:26:57.584767", + "CreatedAt": "2023-01-12 16:54:55.320889", + "LastModifiedAt": "2023-01-12 22:26:57.584768" + }, + { + "JoinId": 70, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-12 22:10:46.652045", + "LeavedOn": "2023-01-12 22:26:17.203273", + "CreatedAt": "2023-01-12 22:10:46.652050", + "LastModifiedAt": "2023-01-12 22:26:17.203274" + }, + { + "JoinId": 69, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-12 18:44:23.507164", + "LeavedOn": "2023-01-12 22:10:45.931373", + "CreatedAt": "2023-01-12 18:44:23.507168", + "LastModifiedAt": "2023-01-12 22:10:45.931376" + }, + { + "JoinId": 68, + "UserId": 80, + "DiscordChannelId": 991417710716137494, + "JoinedOn": "2023-01-12 18:11:11.544236", + "LeavedOn": "2023-01-12 20:53:15.611113", + "CreatedAt": "2023-01-12 18:11:11.544240", + "LastModifiedAt": "2023-01-12 20:53:15.611115" + }, + { + "JoinId": 67, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-12 17:27:35.927205", + "LeavedOn": "2023-01-12 18:44:22.780082", + "CreatedAt": "2023-01-12 17:27:35.927208", + "LastModifiedAt": "2023-01-12 18:44:22.780084" + }, + { + "JoinId": 64, + "UserId": 34, + "DiscordChannelId": 997531633659953152, + "JoinedOn": "2023-01-12 16:01:13.385713", + "LeavedOn": "2023-01-12 16:54:21.269086", + "CreatedAt": "2023-01-12 16:01:13.385718", + "LastModifiedAt": "2023-01-12 16:54:21.269087" + }, + { + "JoinId": 65, + "UserId": 36, + "DiscordChannelId": 1026462915802447924, + "JoinedOn": "2023-01-12 16:16:34.884487", + "LeavedOn": "2023-01-12 16:43:55.319500", + "CreatedAt": "2023-01-12 16:16:34.884492", + "LastModifiedAt": "2023-01-12 16:43:55.319501" + }, + { + "JoinId": 62, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-12 14:41:54.248896", + "LeavedOn": "2023-01-12 15:08:26.563384", + "CreatedAt": "2023-01-12 14:41:54.248901", + "LastModifiedAt": "2023-01-12 15:08:26.563386" + }, + { + "JoinId": 63, + "UserId": 85, + "DiscordChannelId": 1026266281600614411, + "JoinedOn": "2023-01-12 14:42:08.623889", + "LeavedOn": "2023-01-12 14:42:11.040939", + "CreatedAt": "2023-01-12 14:42:08.623892", + "LastModifiedAt": "2023-01-12 14:42:11.040941" + }, + { + "JoinId": 61, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-12 14:38:51.831643", + "LeavedOn": "2023-01-12 14:41:14.140476", + "CreatedAt": "2023-01-12 14:38:51.831646", + "LastModifiedAt": "2023-01-12 14:41:14.140478" + }, + { + "JoinId": 59, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-12 14:33:25.605910", + "LeavedOn": "2023-01-12 14:38:38.765378", + "CreatedAt": "2023-01-12 14:33:25.605914", + "LastModifiedAt": "2023-01-12 14:38:38.765380" + }, + { + "JoinId": 60, + "UserId": 85, + "DiscordChannelId": 1026266281600614411, + "JoinedOn": "2023-01-12 14:34:25.473576", + "LeavedOn": "2023-01-12 14:34:27.906193", + "CreatedAt": "2023-01-12 14:34:25.473580", + "LastModifiedAt": "2023-01-12 14:34:27.906195" + }, + { + "JoinId": 58, + "UserId": 26, + "DiscordChannelId": 1026266721436303380, + "JoinedOn": "2023-01-12 14:32:57.802462", + "LeavedOn": "2023-01-12 14:33:23.794059", + "CreatedAt": "2023-01-12 14:32:57.802465", + "LastModifiedAt": "2023-01-12 14:33:23.794061" + }, + { + "JoinId": 55, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-12 13:26:08.406069", + "LeavedOn": "2023-01-12 14:26:52.100000", + "CreatedAt": "2023-01-12 13:26:08.406072", + "LastModifiedAt": "2023-01-12 13:26:08.406074" + }, + { + "JoinId": 57, + "UserId": 85, + "DiscordChannelId": 1026266281600614411, + "JoinedOn": "2023-01-12 13:27:56.706703", + "LeavedOn": "2023-01-12 13:28:03.281992", + "CreatedAt": "2023-01-12 13:27:56.706706", + "LastModifiedAt": "2023-01-12 13:28:03.281993" + }, + { + "JoinId": 56, + "UserId": 85, + "DiscordChannelId": 1026266281600614411, + "JoinedOn": "2023-01-12 13:26:33.193670", + "LeavedOn": "2023-01-12 13:26:38.788735", + "CreatedAt": "2023-01-12 13:26:33.193674", + "LastModifiedAt": "2023-01-12 13:26:38.788736" + }, + { + "JoinId": 53, + "UserId": 26, + "DiscordChannelId": 1026266281600614411, + "JoinedOn": "2023-01-12 13:15:54.151356", + "LeavedOn": "2023-01-12 13:26:08.266862", + "CreatedAt": "2023-01-12 13:15:54.151361", + "LastModifiedAt": "2023-01-12 13:26:08.266865" + }, + { + "JoinId": 54, + "UserId": 85, + "DiscordChannelId": 1026266281600614411, + "JoinedOn": "2023-01-12 13:20:45.198839", + "LeavedOn": "2023-01-12 13:25:46.694980", + "CreatedAt": "2023-01-12 13:20:45.198843", + "LastModifiedAt": "2023-01-12 13:25:46.694981" + }, + { + "JoinId": 52, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-12 12:57:28.835138", + "LeavedOn": "2023-01-12 13:15:53.137494", + "CreatedAt": "2023-01-12 12:57:28.835142", + "LastModifiedAt": "2023-01-12 13:15:53.137496" + }, + { + "JoinId": 51, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-12 11:26:05.531911", + "LeavedOn": "2023-01-12 12:57:28.064525", + "CreatedAt": "2023-01-12 11:26:05.531915", + "LastModifiedAt": "2023-01-12 12:57:28.064527" + }, + { + "JoinId": 50, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-12 08:40:47.151844", + "LeavedOn": "2023-01-12 11:26:04.773657", + "CreatedAt": "2023-01-12 08:40:47.151848", + "LastModifiedAt": "2023-01-12 11:26:04.773658" + }, + { + "JoinId": 49, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-12 06:04:03.780525", + "LeavedOn": "2023-01-12 08:40:46.424408", + "CreatedAt": "2023-01-12 06:04:03.780530", + "LastModifiedAt": "2023-01-12 08:40:46.424410" + }, + { + "JoinId": 45, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-11 20:50:39.260169", + "LeavedOn": "2023-01-11 23:22:34.185139", + "CreatedAt": "2023-01-11 20:50:39.260224", + "LastModifiedAt": "2023-01-11 23:22:34.185141" + }, + { + "JoinId": 48, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-11 20:53:31.059033", + "LeavedOn": "2023-01-11 21:06:03.042618", + "CreatedAt": "2023-01-11 20:53:31.059038", + "LastModifiedAt": "2023-01-11 21:06:03.042621" + }, + { + "JoinId": 47, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-11 20:53:17.458494", + "LeavedOn": "2023-01-11 20:53:24.726023", + "CreatedAt": "2023-01-11 20:53:17.458500", + "LastModifiedAt": "2023-01-11 20:53:24.726025" + }, + { + "JoinId": 46, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-11 20:52:23.771301", + "LeavedOn": "2023-01-11 20:53:16.695729", + "CreatedAt": "2023-01-11 20:52:23.771306", + "LastModifiedAt": "2023-01-11 20:53:16.695730" + }, + { + "JoinId": 44, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-11 20:03:14.532197", + "LeavedOn": "2023-01-11 20:50:34.829655", + "CreatedAt": "2023-01-11 20:03:14.532202", + "LastModifiedAt": "2023-01-11 20:50:34.829657" + }, + { + "JoinId": 41, + "UserId": 34, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-11 15:03:27.497626", + "LeavedOn": "2023-01-11 17:12:57.702755", + "CreatedAt": "2023-01-11 15:03:27.497631", + "LastModifiedAt": "2023-01-11 17:12:57.702756" + }, + { + "JoinId": 43, + "UserId": 26, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-11 15:51:02.613865", + "LeavedOn": "2023-01-11 16:04:09.943169", + "CreatedAt": "2023-01-11 15:51:02.613868", + "LastModifiedAt": "2023-01-11 16:04:09.943171" + }, + { + "JoinId": 39, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-11 11:44:46.527261", + "LeavedOn": "2023-01-11 15:51:39.578332", + "CreatedAt": "2023-01-11 11:44:46.527264", + "LastModifiedAt": "2023-01-11 15:51:39.578334" + }, + { + "JoinId": 42, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-11 15:33:59.212484", + "LeavedOn": "2023-01-11 15:50:59.721200", + "CreatedAt": "2023-01-11 15:33:59.212488", + "LastModifiedAt": "2023-01-11 15:50:59.721202" + }, + { + "JoinId": 40, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-11 11:53:28.013955", + "LeavedOn": "2023-01-11 11:54:39.494119", + "CreatedAt": "2023-01-11 11:53:28.013958", + "LastModifiedAt": "2023-01-11 11:54:39.494121" + }, + { + "JoinId": 25, + "UserId": 8, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 19:02:52.382700", + "LeavedOn": "2023-01-10 23:41:15.099603", + "CreatedAt": "2023-01-10 19:02:52.382705", + "LastModifiedAt": "2023-01-10 23:41:15.099605" + }, + { + "JoinId": 38, + "UserId": 48, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 20:18:28.977329", + "LeavedOn": "2023-01-10 22:47:41.898268", + "CreatedAt": "2023-01-10 20:18:28.977332", + "LastModifiedAt": "2023-01-10 22:47:41.898270" + }, + { + "JoinId": 36, + "UserId": 20, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 19:50:24.524963", + "LeavedOn": "2023-01-10 21:54:32.131108", + "CreatedAt": "2023-01-10 19:50:24.524969", + "LastModifiedAt": "2023-01-10 21:54:32.131110" + }, + { + "JoinId": 34, + "UserId": 80, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 19:28:20.508443", + "LeavedOn": "2023-01-10 20:20:56.428977", + "CreatedAt": "2023-01-10 19:28:20.508448", + "LastModifiedAt": "2023-01-10 20:20:56.428979" + }, + { + "JoinId": 35, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 19:44:26.988988", + "LeavedOn": "2023-01-10 20:13:54.068227", + "CreatedAt": "2023-01-10 19:44:26.988994", + "LastModifiedAt": "2023-01-10 20:13:54.068228" + }, + { + "JoinId": 37, + "UserId": 26, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 19:50:33.737553", + "LeavedOn": "2023-01-10 20:03:31.312940", + "CreatedAt": "2023-01-10 19:50:33.737559", + "LastModifiedAt": "2023-01-10 20:03:31.312941" + }, + { + "JoinId": 31, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 19:18:41.117415", + "LeavedOn": "2023-01-10 19:44:22.346724", + "CreatedAt": "2023-01-10 19:18:41.117418", + "LastModifiedAt": "2023-01-10 19:44:22.346725" + }, + { + "JoinId": 29, + "UserId": 26, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 19:11:41.237845", + "LeavedOn": "2023-01-10 19:34:57.449399", + "CreatedAt": "2023-01-10 19:11:41.237849", + "LastModifiedAt": "2023-01-10 19:34:57.449400" + }, + { + "JoinId": 33, + "UserId": 80, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 19:28:11.706749", + "LeavedOn": "2023-01-10 19:28:19.511499", + "CreatedAt": "2023-01-10 19:28:11.706752", + "LastModifiedAt": "2023-01-10 19:28:19.511500" + }, + { + "JoinId": 32, + "UserId": 80, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 19:27:13.941015", + "LeavedOn": "2023-01-10 19:28:07.321216", + "CreatedAt": "2023-01-10 19:27:13.941021", + "LastModifiedAt": "2023-01-10 19:28:07.321218" + }, + { + "JoinId": 26, + "UserId": 80, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 19:02:52.386173", + "LeavedOn": "2023-01-10 19:27:11.834653", + "CreatedAt": "2023-01-10 19:02:52.386177", + "LastModifiedAt": "2023-01-10 19:27:11.834654" + }, + { + "JoinId": 30, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 19:12:38.261960", + "LeavedOn": "2023-01-10 19:18:38.617543", + "CreatedAt": "2023-01-10 19:12:38.261965", + "LastModifiedAt": "2023-01-10 19:18:38.617545" + }, + { + "JoinId": 24, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 19:02:52.378415", + "LeavedOn": "2023-01-10 19:12:34.744836", + "CreatedAt": "2023-01-10 19:02:52.378418", + "LastModifiedAt": "2023-01-10 19:12:34.744837" + }, + { + "JoinId": 28, + "UserId": 26, + "DiscordChannelId": 1026266721436303380, + "JoinedOn": "2023-01-10 19:03:07.004051", + "LeavedOn": "2023-01-10 19:03:17.936077", + "CreatedAt": "2023-01-10 19:03:07.004056", + "LastModifiedAt": "2023-01-10 19:03:17.936079" + }, + { + "JoinId": 27, + "UserId": 26, + "DiscordChannelId": 1026268478392516628, + "JoinedOn": "2023-01-10 19:02:58.520649", + "LeavedOn": "2023-01-10 19:03:03.518863", + "CreatedAt": "2023-01-10 19:02:58.520655", + "LastModifiedAt": "2023-01-10 19:03:03.518865" + }, + { + "JoinId": 22, + "UserId": 80, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 18:55:53.223137", + "LeavedOn": "2023-01-10 19:02:52.244341", + "CreatedAt": "2023-01-10 18:55:53.223141", + "LastModifiedAt": "2023-01-10 19:02:52.244343" + }, + { + "JoinId": 21, + "UserId": 8, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 18:55:53.217715", + "LeavedOn": "2023-01-10 19:02:52.237153", + "CreatedAt": "2023-01-10 18:55:53.217719", + "LastModifiedAt": "2023-01-10 19:02:52.237155" + }, + { + "JoinId": 19, + "UserId": 36, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 18:55:53.208128", + "LeavedOn": "2023-01-10 19:02:52.230663", + "CreatedAt": "2023-01-10 18:55:53.208131", + "LastModifiedAt": "2023-01-10 19:02:52.230665" + }, + { + "JoinId": 23, + "UserId": 26, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 18:56:50.269675", + "LeavedOn": "2023-01-10 18:59:44.988981", + "CreatedAt": "2023-01-10 18:56:50.269679", + "LastModifiedAt": "2023-01-10 18:59:44.988983" + }, + { + "JoinId": 20, + "UserId": 26, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 18:55:53.212575", + "LeavedOn": "2023-01-10 18:56:49.055249", + "CreatedAt": "2023-01-10 18:55:53.212579", + "LastModifiedAt": "2023-01-10 18:56:49.055251" + }, + { + "JoinId": 17, + "UserId": 80, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-10 18:06:49.142520", + "LeavedOn": "2023-01-10 18:55:53.059714", + "CreatedAt": "2023-01-10 18:06:49.142523", + "LastModifiedAt": "2023-01-10 18:55:53.059716" + }, + { + "JoinId": 16, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-10 16:58:53.735529", + "LeavedOn": "2023-01-10 18:55:53.053457", + "CreatedAt": "2023-01-10 16:58:53.735534", + "LastModifiedAt": "2023-01-10 18:55:53.053458" + }, + { + "JoinId": 18, + "UserId": 26, + "DiscordChannelId": 784845362270699550, + "JoinedOn": "2023-01-10 18:47:22.383133", + "LeavedOn": "2023-01-10 18:55:53.047465", + "CreatedAt": "2023-01-10 18:47:22.383137", + "LastModifiedAt": "2023-01-10 18:55:53.047466" + }, + { + "JoinId": 15, + "UserId": 36, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-10 16:31:44.801215", + "LeavedOn": "2023-01-10 18:55:53.041259", + "CreatedAt": "2023-01-10 16:31:44.801219", + "LastModifiedAt": "2023-01-10 18:55:53.041260" + }, + { + "JoinId": 13, + "UserId": 48, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-09 20:17:01.594849", + "LeavedOn": "2023-01-10 01:26:10.796238", + "CreatedAt": "2023-01-09 20:17:01.594853", + "LastModifiedAt": "2023-01-10 01:26:10.796241" + }, + { + "JoinId": 12, + "UserId": 20, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-09 18:47:07.696176", + "LeavedOn": "2023-01-09 23:24:53.287967", + "CreatedAt": "2023-01-09 18:47:07.696181", + "LastModifiedAt": "2023-01-09 23:24:53.287968" + }, + { + "JoinId": 10, + "UserId": 52, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-09 17:56:44.465734", + "LeavedOn": "2023-01-09 20:47:28.071691", + "CreatedAt": "2023-01-09 17:56:44.465738", + "LastModifiedAt": "2023-01-09 20:47:28.071693" + }, + { + "JoinId": 14, + "UserId": 26, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-09 20:18:13.639114", + "LeavedOn": "2023-01-09 20:21:02.190779", + "CreatedAt": "2023-01-09 20:18:13.639118", + "LastModifiedAt": "2023-01-09 20:21:02.190781" + }, + { + "JoinId": 11, + "UserId": 34, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-09 18:32:35.836571", + "LeavedOn": "2023-01-09 18:47:44.129122", + "CreatedAt": "2023-01-09 18:32:35.836576", + "LastModifiedAt": "2023-01-09 18:47:44.129125" + }, + { + "JoinId": 1, + "UserId": 8, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-09 10:22:27.867811", + "LeavedOn": "2023-01-09 17:07:51.138963", + "CreatedAt": "2023-01-09 10:22:27.867819", + "LastModifiedAt": "2023-01-09 17:07:51.138964" + }, + { + "JoinId": 8, + "UserId": 34, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-09 14:23:24.082305", + "LeavedOn": "2023-01-09 16:35:00.786411", + "CreatedAt": "2023-01-09 14:23:24.082309", + "LastModifiedAt": "2023-01-09 16:35:00.786413" + }, + { + "JoinId": 9, + "UserId": 20, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-09 14:23:52.002613", + "LeavedOn": "2023-01-09 16:26:36.297188", + "CreatedAt": "2023-01-09 14:23:52.002616", + "LastModifiedAt": "2023-01-09 16:26:36.297189" + }, + { + "JoinId": 2, + "UserId": 20, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-09 11:19:48.266578", + "LeavedOn": "2023-01-09 14:20:39.454467", + "CreatedAt": "2023-01-09 11:19:48.266583", + "LastModifiedAt": "2023-01-09 14:20:39.454468" + }, + { + "JoinId": 7, + "UserId": 34, + "DiscordChannelId": 650366049534869520, + "JoinedOn": "2023-01-09 11:57:41.149877", + "LeavedOn": "2023-01-09 14:08:16.142943", + "CreatedAt": "2023-01-09 11:57:41.149884", + "LastModifiedAt": "2023-01-09 14:08:16.142945" + }, + { + "JoinId": 6, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-09 11:47:31.688372", + "LeavedOn": "2023-01-09 11:48:27.431543", + "CreatedAt": "2023-01-09 11:47:31.688376", + "LastModifiedAt": "2023-01-09 11:48:27.431544" + }, + { + "JoinId": 5, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-09 11:38:52.042130", + "LeavedOn": "2023-01-09 11:47:26.071747", + "CreatedAt": "2023-01-09 11:38:52.042134", + "LastModifiedAt": "2023-01-09 11:47:26.071749" + }, + { + "JoinId": 4, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-09 11:34:02.259743", + "LeavedOn": "2023-01-09 11:38:51.161089", + "CreatedAt": "2023-01-09 11:34:02.259747", + "LastModifiedAt": "2023-01-09 11:38:51.161090" + }, + { + "JoinId": 3, + "UserId": 26, + "DiscordChannelId": 1026266228010012744, + "JoinedOn": "2023-01-09 11:19:52.548613", + "LeavedOn": "2023-01-09 11:33:57.476482", + "CreatedAt": "2023-01-09 11:19:52.548617", + "LastModifiedAt": "2023-01-09 11:33:57.476485" + } +] \ No newline at end of file diff --git a/kdb-bot/tools/checks/__init__.py b/kdb-bot/tools/checks/__init__.py new file mode 100644 index 00000000..425ab6c1 --- /dev/null +++ b/kdb-bot/tools/checks/__init__.py @@ -0,0 +1 @@ +# imports diff --git a/kdb-bot/tools/checks/checks.json b/kdb-bot/tools/checks/checks.json new file mode 100644 index 00000000..42fa6d0f --- /dev/null +++ b/kdb-bot/tools/checks/checks.json @@ -0,0 +1,46 @@ +{ + "ProjectSettings": { + "Name": "checks", + "Version": { + "Major": "1", + "Minor": "0", + "Micro": "0" + }, + "Author": "", + "AuthorEmail": "", + "Description": "", + "LongDescription": "", + "URL": "", + "CopyrightDate": "", + "CopyrightName": "", + "LicenseName": "", + "LicenseDescription": "", + "Dependencies": [ + "cpl-core>=2022.12.1.post3" + ], + "DevDependencies": [ + "cpl-cli>=2022.12.1.post3" + ], + "PythonVersion": ">=3.10.4", + "PythonPath": { + "linux": "" + }, + "Classifiers": [] + }, + "BuildSettings": { + "ProjectType": "library", + "SourcePath": "", + "OutputPath": "../../dist", + "Main": "checks.main", + "EntryPoint": "checks", + "IncludePackageData": false, + "Included": [], + "Excluded": [ + "*/__pycache__", + "*/logs", + "*/tests" + ], + "PackageData": {}, + "ProjectReferences": [] + } +} \ No newline at end of file diff --git a/kdb-bot/tools/checks/get_ontime_overlaps.py b/kdb-bot/tools/checks/get_ontime_overlaps.py new file mode 100644 index 00000000..5efe6842 --- /dev/null +++ b/kdb-bot/tools/checks/get_ontime_overlaps.py @@ -0,0 +1,81 @@ +import json +from datetime import datetime + +from cpl_query.extension import List + + +class UserJoinedVoiceChannel: + def __init__(self): + self.JoinId = None + self.UserId = None + self.DiscordChannelId = None + self.JoinedOn = None + self.LeavedOn = None + self.CreatedAt = None + self.LastModifiedAt = None + + @property + def ontime(self) -> int: + return round((self.LeavedOn - self.JoinedOn).total_seconds() / 3600, 2) + + def from_dict(self, data: dict): + self.JoinId = data["JoinId"] + self.UserId = data["UserId"] + self.DiscordChannelId = data["DiscordChannelId"] + self.JoinedOn = datetime.strptime(data["JoinedOn"], "%Y-%m-%d %H:%M:%S.%f") + self.LeavedOn = datetime.strptime(data["LeavedOn"], "%Y-%m-%d %H:%M:%S.%f") + self.CreatedAt = data["CreatedAt"] + self.LastModifiedAt = data["LastModifiedAt"] + + def __repr__(self): + return f"{self.JoinId}: {self.UserId} {self.JoinedOn} {self.LeavedOn}" + + +def main(): + data = json.loads(open("UserJoinedVoiceChannel.json", "r").read()) + ujvcs = List(UserJoinedVoiceChannel) + for x in data: + ujvc = UserJoinedVoiceChannel() + ujvc.from_dict(x) + ujvcs.append(ujvc) + + users = ujvcs.order_by(lambda x: x.UserId).select(lambda x: x.UserId).distinct() + groups = {} + for user in users: + groups[user] = List(UserJoinedVoiceChannel) + groups[user].extend(ujvcs.where(lambda x: x.UserId == user)) + + for group in groups: + + values: List[UserJoinedVoiceChannel] = groups[group] + + def find_overlaps(x: UserJoinedVoiceChannel) -> bool: + for y in values: + if x == y: + continue + + from collections import namedtuple + + Range = namedtuple("Range", ["start", "end"]) + r1 = Range(start=x.JoinedOn, end=x.LeavedOn) + r2 = Range(start=y.LeavedOn, end=y.LeavedOn) + latest_start = max(r1.start, r2.start) + earliest_end = min(r1.end, r2.end) + delta = (earliest_end - latest_start).days + 1 + overlap = max(0, delta) + if overlap > 0: + return True + + overlaps = values.where(find_overlaps) + if overlaps.count() == 0: + continue + + print(overlaps.select(lambda x: x.JoinId)) + print(f"{group} has {overlaps.count()} of {values.count()}") + ontime = overlaps.sum(lambda x: x.ontime) + print(f"ontime: {ontime}") + print(f"xp: {ontime * 8}") + + +if __name__ == "__main__": + main() From e1c89814da055188726ebdfa762258d4ce151b7c Mon Sep 17 00:00:00 2001 From: Sven Heidemann Date: Thu, 19 Jan 2023 20:02:56 +0100 Subject: [PATCH 3/5] Fixed voice state update (ontime) handling --- kdb-bot/cpl-workspace.json | 11 +++- kdb-bot/src/bot/bot.json | 4 +- .../base_on_voice_state_update_event.py | 53 ++++++++++++++++--- .../database/database_on_ready_event.py | 4 +- kdb-bot/tools/checks/checks.json | 26 +++++---- 5 files changed, 70 insertions(+), 28 deletions(-) diff --git a/kdb-bot/cpl-workspace.json b/kdb-bot/cpl-workspace.json index 5e7dd6ea..e7028946 100644 --- a/kdb-bot/cpl-workspace.json +++ b/kdb-bot/cpl-workspace.json @@ -14,25 +14,32 @@ "permission": "src/modules/permission/permission.json", "stats": "src/modules/stats/stats.json", "technician": "src/modules/technician/technician.json", + "checks": "tools/checks/checks.json", "get-version": "tools/get_version/get-version.json", "post-build": "tools/post_build/post-build.json", - "set-version": "tools/set_version/set-version.json", - "tools/checks": "tools/tools/checks/tools/checks.json" + "set-version": "tools/set_version/set-version.json" }, "Scripts": { "format": "black ./", + "sv": "cpl set-version $ARGS", "set-version": "cpl run set-version $ARGS --dev; echo '';", + "gv": "cpl get-version", "get-version": "export VERSION=$(cpl run get-version --dev); echo $VERSION;", + "pre-build": "cpl set-version $ARGS; black ./;", "post-build": "cpl run post-build --dev; black ./;", + "pre-prod": "cpl build", "prod": "export KDB_ENVIRONMENT=production; export KDB_NAME=KDB-Prod; cpl start;", + "pre-stage": "cpl build", "stage": "export KDB_ENVIRONMENT=staging; export KDB_NAME=KDB-Stage; cpl start;", + "pre-dev": "cpl build", "dev": "export KDB_ENVIRONMENT=development; export KDB_NAME=KDB-Dev; cpl start;", + "docker-build": "cpl build $ARGS; docker build -t kdb-bot/kdb-bot:$(cpl gv) .;", "dc-up": "docker-compose up -d", "dc-down": "docker-compose down", diff --git a/kdb-bot/src/bot/bot.json b/kdb-bot/src/bot/bot.json index 8d0b44a1..66fec647 100644 --- a/kdb-bot/src/bot/bot.json +++ b/kdb-bot/src/bot/bot.json @@ -16,7 +16,7 @@ "LicenseName": "MIT", "LicenseDescription": "MIT, see LICENSE for more details.", "Dependencies": [ - "cpl-core==2022.12.1.post2", + "cpl-core==2022.12.1.post3", "cpl-translation==2022.12.1", "cpl-query==2022.12.2.post1", "cpl-discord==2022.12.1.post2", @@ -31,7 +31,7 @@ "icmplib==3.0.3" ], "DevDependencies": [ - "cpl-cli==2022.12.1.post2" + "cpl-cli==2022.12.1.post3" ], "PythonVersion": ">=3.10.4", "PythonPath": {}, diff --git a/kdb-bot/src/modules/base/events/base_on_voice_state_update_event.py b/kdb-bot/src/modules/base/events/base_on_voice_state_update_event.py index e1eb75b1..253170f5 100644 --- a/kdb-bot/src/modules/base/events/base_on_voice_state_update_event.py +++ b/kdb-bot/src/modules/base/events/base_on_voice_state_update_event.py @@ -48,7 +48,7 @@ class BaseOnVoiceStateUpdateEvent(OnVoiceStateUpdateABC): self._logger.info(__name__, f"Module {type(self)} loaded") - def _update_voice_state(self, joined: bool, dc_user_id: int, dc_channel_id: int, server: Server, switch=False): + def _switch_voice_state(self, dc_user_id: int, before_dc_channel_id: int, after_dc_channel_id: int, server: Server): user: Optional[User] = None try: user = self._users.get_user_by_discord_id_and_server_id(dc_user_id, server.server_id) @@ -62,16 +62,50 @@ class BaseOnVoiceStateUpdateEvent(OnVoiceStateUpdateABC): try: end_date = datetime.now() - if joined and not switch: + join = UserJoinedVoiceChannel(user, before_dc_channel_id, end_date) + self._user_joins_vc.add_user_joined_voice_channel(join) + + settings: BaseServerSettings = self._base_helper.get_config(server.discord_server_id) + + join = self._user_joins_vc.get_active_user_joined_voice_channel_by_user_id(user.user_id) + join.leaved_on = end_date + + # ontime as hours + ontime = round((join.leaved_on - join.joined_on).total_seconds() / 3600, 2) + old_xp = user.xp + user.xp += round(ontime * settings.xp_per_ontime_hour) + + self._user_joins_vc.update_user_joined_voice_channel(join) + self._users.update_user(user) + self._db.save_changes() + + self._logger.debug( + __name__, + f"User {user} leaved_on {join.leaved_on}. Ontime: {ontime}h | xp: from {old_xp} to {user.xp}", + ) + except Exception as e: + self._logger.error(__name__, f"Ontime validation failed", e) + + def _update_voice_state(self, joined: bool, dc_user_id: int, dc_channel_id: int, server: Server): + user: Optional[User] = None + try: + user = self._users.get_user_by_discord_id_and_server_id(dc_user_id, server.server_id) + except Exception as e: + self._logger.error(__name__, f"Cannot get user {dc_user_id}", e) + return + + if user is None: + self._logger.error(__name__, f"User not found {dc_user_id}") + return + + try: + end_date = datetime.now() + if joined: join = UserJoinedVoiceChannel(user, dc_channel_id, end_date) self._user_joins_vc.add_user_joined_voice_channel(join) self._db.save_changes() return - elif joined and switch: - join = UserJoinedVoiceChannel(user, dc_channel_id, end_date) - self._user_joins_vc.add_user_joined_voice_channel(join) - settings: BaseServerSettings = self._base_helper.get_config(server.discord_server_id) join = self._user_joins_vc.get_active_user_joined_voice_channel_by_user_id(user.user_id) @@ -139,8 +173,11 @@ class BaseOnVoiceStateUpdateEvent(OnVoiceStateUpdateABC): self._logger.trace(__name__, f"User {member.id} left {before.channel}") self._update_voice_state(False, member.id, before.channel.id, server) - else: + elif ( + before.channel.id not in settings.afk_channel_ids + and after.channel.id not in settings.afk_channel_ids + ): self._logger.trace(__name__, f"User {member.id} switched to {after.channel}") - self._update_voice_state(True, member.id, before.channel.id, server, True) + self._switch_voice_state(member.id, before.channel.id, after.channel.id, server) except Exception as e: self._logger.error(__name__, f"Cannot handle voice state for user {member.id}", e) diff --git a/kdb-bot/src/modules/database/database_on_ready_event.py b/kdb-bot/src/modules/database/database_on_ready_event.py index 08aa8177..694628e5 100644 --- a/kdb-bot/src/modules/database/database_on_ready_event.py +++ b/kdb-bot/src/modules/database/database_on_ready_event.py @@ -271,6 +271,7 @@ class DatabaseOnReadyEvent(OnReadyABC): self._logger.debug(__name__, f"Start checking UserJoinedVoiceChannel table") for guild in self._bot.guilds: guild: discord.Guild = guild + settings: BaseServerSettings = self._config.get_configuration(f"BaseServerSettings_{guild.id}") server = self._servers.find_server_by_discord_id(guild.id) if server is None: @@ -296,7 +297,6 @@ class DatabaseOnReadyEvent(OnReadyABC): f"Active UserJoinedVoiceChannel found in database: {guild.id}:{member.id}@{join.joined_on}", ) join.leaved_on = datetime.now() - settings: BaseServerSettings = self._config.get_configuration(f"BaseServerSettings_{guild.id}") if ( (join.leaved_on - join.joined_on).total_seconds() / 60 / 60 @@ -312,7 +312,7 @@ class DatabaseOnReadyEvent(OnReadyABC): self._logger.trace(__name__, f"User {member.id} is ignored, because its a bot") continue - if member.voice is None: + if member.voice is None or member.voice.channel.id in settings.afk_channel_ids: continue user = self._users.find_user_by_discord_id_and_server_id(member.id, server.server_id) diff --git a/kdb-bot/tools/checks/checks.json b/kdb-bot/tools/checks/checks.json index 42fa6d0f..47028250 100644 --- a/kdb-bot/tools/checks/checks.json +++ b/kdb-bot/tools/checks/checks.json @@ -6,25 +6,23 @@ "Minor": "0", "Micro": "0" }, - "Author": "", - "AuthorEmail": "", - "Description": "", - "LongDescription": "", - "URL": "", - "CopyrightDate": "", - "CopyrightName": "", - "LicenseName": "", - "LicenseDescription": "", + "Author": "Sven Heidemann", + "AuthorEmail": "sven.heidemann@sh-edraft.de", + "Description": "CPL internal tool to set version from branch name", + "LongDescription": "CPL internal tool to set version from branch name", + "URL": "https://www.sh-edraft.de", + "CopyrightDate": "2022", + "CopyrightName": "sh-edraft.de", + "LicenseName": "MIT", + "LicenseDescription": "MIT, see LICENSE for more details.", "Dependencies": [ - "cpl-core>=2022.12.1.post3" + "cpl-core==2022.12.0" ], "DevDependencies": [ - "cpl-cli>=2022.12.1.post3" + "cpl-cli==2022.12.0" ], "PythonVersion": ">=3.10.4", - "PythonPath": { - "linux": "" - }, + "PythonPath": {}, "Classifiers": [] }, "BuildSettings": { From 818163cbed4ab7949892ef6132012cb22e5c4570 Mon Sep 17 00:00:00 2001 From: Sven Heidemann Date: Mon, 20 Mar 2023 14:39:23 +0100 Subject: [PATCH 4/5] Formatted tools --- kdb-bot/tools/checks/get_ontime_overlaps.py | 1 - 1 file changed, 1 deletion(-) diff --git a/kdb-bot/tools/checks/get_ontime_overlaps.py b/kdb-bot/tools/checks/get_ontime_overlaps.py index 5efe6842..115b8099 100644 --- a/kdb-bot/tools/checks/get_ontime_overlaps.py +++ b/kdb-bot/tools/checks/get_ontime_overlaps.py @@ -46,7 +46,6 @@ def main(): groups[user].extend(ujvcs.where(lambda x: x.UserId == user)) for group in groups: - values: List[UserJoinedVoiceChannel] = groups[group] def find_overlaps(x: UserJoinedVoiceChannel) -> bool: From 35d161c080e7b6b9e5ba2a0c0669384b155446fc Mon Sep 17 00:00:00 2001 From: Sven Heidemann Date: Mon, 20 Mar 2023 14:40:56 +0100 Subject: [PATCH 5/5] Removed obsolete fix --- kdb-bot/dockerfile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/kdb-bot/dockerfile b/kdb-bot/dockerfile index 62360746..478bf7e7 100644 --- a/kdb-bot/dockerfile +++ b/kdb-bot/dockerfile @@ -14,6 +14,8 @@ RUN apk add nano RUN pip install -r requirements.txt --extra-index-url https://pip.sh-edraft.de RUN pip install flask[async] -RUN pip install dnspython==2.2.1 # https://stackoverflow.com/questions/75137717/eventlet-dns-python-attribute-error-module-dns-rdtypes-has-no-attribute-any + +# RUN pip install dnspython==2.2.1 # https://stackoverflow.com/questions/75137717/eventlet-dns-python-attribute-error-module-dns-rdtypes-has-no-attribute-any +# ^ probably fixed py package updates CMD [ "bash", "/app/bot/bot"]