aboutsummaryrefslogtreecommitdiffstats
path: root/bot/constants.py
diff options
context:
space:
mode:
authorGravatar bradtimmis <[email protected]>2021-08-30 22:09:44 -0400
committerGravatar bradtimmis <[email protected]>2021-08-30 22:09:44 -0400
commit8bc54b2e2aeaeef30efd9f7f684cce48b7b64daf (patch)
tree91e844d1431a127815d33406139e5798341b533a /bot/constants.py
parentNumerous syntax and bug fixes (diff)
parentMerge pull request #831 from brad90four/patch-1 (diff)
Update branch with main
Diffstat (limited to 'bot/constants.py')
-rw-r--r--bot/constants.py127
1 files changed, 83 insertions, 44 deletions
diff --git a/bot/constants.py b/bot/constants.py
index db34b55a..2730106b 100644
--- a/bot/constants.py
+++ b/bot/constants.py
@@ -8,6 +8,7 @@ from typing import Dict, NamedTuple
__all__ = (
"AdventOfCode",
"Branding",
+ "Cats",
"Channels",
"Categories",
"Client",
@@ -19,7 +20,9 @@ __all__ = (
"Roles",
"Tokens",
"Wolfram",
+ "Reddit",
"RedisConfig",
+ "RedirectOutput",
"MODERATION_ROLES",
"STAFF_ROLES",
"WHITELISTED_CHANNELS",
@@ -93,38 +96,27 @@ class Branding:
cycle_frequency = int(environ.get("CYCLE_FREQUENCY", 3)) # 0: never, 1: every day, 2: every other day, ...
+class Cats:
+ cats = ["ᓚᘏᗢ", "ᘡᘏᗢ", "🐈", "ᓕᘏᗢ", "ᓇᘏᗢ", "ᓂᘏᗢ", "ᘣᘏᗢ", "ᕦᘏᗢ", "ᕂᘏᗢ"]
+
+
class Channels(NamedTuple):
- admins = 365960823622991872
advent_of_code = int(environ.get("AOC_CHANNEL_ID", 782715290437943306))
advent_of_code_commands = int(environ.get("AOC_COMMANDS_CHANNEL_ID", 607247579608121354))
- announcements = int(environ.get("CHANNEL_ANNOUNCEMENTS", 354619224620138496))
- big_brother_logs = 468507907357409333
bot = 267659945086812160
- checkpoint_test = 422077681434099723
organisation = 551789653284356126
- devalerts = 460181980097675264
devlog = int(environ.get("CHANNEL_DEVLOG", 622895325144940554))
dev_contrib = 635950537262759947
- dev_branding = 753252897059373066
- helpers = 385474242440986624
- message_log = 467752170159079424
- mod_alerts = 473092532147060736
- modlog = 282638479504965634
mod_meta = 775412552795947058
mod_tools = 775413915391098921
off_topic_0 = 291284109232308226
off_topic_1 = 463035241142026251
off_topic_2 = 463035268514185226
- python = 267624335836053506
- reddit = 458224812528238616
community_bot_commands = int(environ.get("CHANNEL_COMMUNITY_BOT_COMMANDS", 607247579608121354))
- staff_lounge = 464905259261755392
- verification = 352442727016693763
- python_discussion = 267624335836053506
- hacktoberfest_2020 = 760857070781071431
voice_chat_0 = 412357430186344448
voice_chat_1 = 799647045886541885
staff_voice = 541638762007101470
+ reddit = int(environ.get("CHANNEL_REDDIT", 458224812528238616))
class Categories(NamedTuple):
@@ -134,6 +126,7 @@ class Categories(NamedTuple):
media = 799054581991997460
staff = 364918151625965579
+codejam_categories_name = "Code Jam" # Name of the codejam team categories
class Client(NamedTuple):
name = "Sir Lancebot"
@@ -141,33 +134,54 @@ class Client(NamedTuple):
prefix = environ.get("PREFIX", ".")
token = environ.get("BOT_TOKEN")
sentry_dsn = environ.get("BOT_SENTRY_DSN")
- debug = environ.get("BOT_DEBUG", "").lower() == "true"
+ debug = environ.get("BOT_DEBUG", "true").lower() == "true"
github_bot_repo = "https://github.com/python-discord/sir-lancebot"
# Override seasonal locks: 1 (January) to 12 (December)
month_override = int(environ["MONTH_OVERRIDE"]) if "MONTH_OVERRIDE" in environ else None
class Colours:
- blue = 0x0279fd
- bright_green = 0x01d277
- dark_green = 0x1f8b4c
- orange = 0xe67e22
- pink = 0xcf84e0
- purple = 0xb734eb
- soft_green = 0x68c290
- soft_orange = 0xf9cb54
- soft_red = 0xcd6d6d
- yellow = 0xf9f586
+ blue = 0x0279FD
+ bright_green = 0x01D277
+ dark_green = 0x1F8B4C
+ orange = 0xE67E22
+ pink = 0xCF84E0
+ purple = 0xB734EB
+ soft_green = 0x68C290
+ soft_orange = 0xF9CB54
+ soft_red = 0xCD6D6D
+ yellow = 0xF9F586
+ python_blue = 0x4B8BBE
+ python_yellow = 0xFFD43B
+ grass_green = 0x66FF00
+ gold = 0xE6C200
+
+ easter_like_colours = [
+ (255, 247, 0),
+ (255, 255, 224),
+ (0, 255, 127),
+ (189, 252, 201),
+ (255, 192, 203),
+ (255, 160, 122),
+ (181, 115, 220),
+ (221, 160, 221),
+ (200, 162, 200),
+ (238, 130, 238),
+ (135, 206, 235),
+ (0, 204, 204),
+ (64, 224, 208),
+ ]
class Emojis:
+ cross_mark = "\u274C"
star = "\u2B50"
christmas_tree = "\U0001F384"
check = "\u2611"
envelope = "\U0001F4E8"
- trashcan = "<:trashcan:637136429717389331>"
+ trashcan = environ.get("TRASHCAN_EMOJI", "<:trashcan:637136429717389331>")
ok_hand = ":ok_hand:"
- hand_raised = "\U0001f64b"
+ hand_raised = "\U0001F64B"
dice_1 = "<:dice_1:755891608859443290>"
dice_2 = "<:dice_2:755891608741740635>"
@@ -176,11 +190,14 @@ class Emojis:
dice_5 = "<:dice_5:755891608091885627>"
dice_6 = "<:dice_6:755891607680843838>"
- issue = "<:IssueOpen:629695470327037963>"
- issue_closed = "<:IssueClosed:629695470570307614>"
- pull_request = "<:PROpen:629695470175780875>"
- pull_request_closed = "<:PRClosed:629695470519713818>"
- merge = "<:PRMerged:629695470570176522>"
+ # These icons are from Github's repo https://github.com/primer/octicons/
+ issue_open = "<:IssueOpen:852596024777506817>"
+ issue_closed = "<:IssueClosed:852596024739758081>"
+ issue_draft = "<:IssueDraft:852596025147523102>" # Not currently used by Github, but here for future.
+ pull_request_open = "<:PROpen:852596471505223781>"
+ pull_request_closed = "<:PRClosed:852596024732286976>"
+ pull_request_draft = "<:PRDraft:852596025045680218>"
+ pull_request_merged = "<:PRMerged:852596100301193227>"
number_emojis = {
1: "\u0031\ufe0f\u20e3",
@@ -201,12 +218,31 @@ class Emojis:
x = "\U0001f1fd"
o = "\U0001f1f4"
+ x_square = "<:x_square:632278427260682281>"
+ o_square = "<:o_square:632278452413661214>"
+
status_online = "<:status_online:470326272351010816>"
status_idle = "<:status_idle:470326266625785866>"
status_dnd = "<:status_dnd:470326272082313216>"
status_offline = "<:status_offline:470326266537705472>"
+ stackoverflow_tag = "<:stack_tag:870926975307501570>"
+ stackoverflow_views = "<:stack_eye:870926992692879371>"
+
+ # Reddit emojis
+ reddit = "<:reddit:676030265734332427>"
+ reddit_post_text = "<:reddit_post_text:676030265910493204>"
+ reddit_post_video = "<:reddit_post_video:676030265839190047>"
+ reddit_post_photo = "<:reddit_post_photo:676030265734201344>"
+ reddit_upvote = "<:reddit_upvote:755845219890757644>"
+ reddit_comments = "<:reddit_comments:755845255001014384>"
+ reddit_users = "<:reddit_users:755845303822974997>"
+
+ lemon_hyperpleased = "<:lemon_hyperpleased:754441879822663811>"
+ lemon_pensive = "<:lemon_pensive:754441880246419486>"
+
+
class Icons:
questionmark = "https://cdn.discordapp.com/emojis/512367613339369475.png"
bookmark = (
@@ -245,20 +281,10 @@ if Client.month_override is not None:
class Roles(NamedTuple):
admin = int(environ.get("BOT_ADMIN_ROLE_ID", 267628507062992896))
- announcements = 463658397560995840
- champion = 430492892331769857
- contributor = 295488872404484098
- devops = 409416496733880320
- jammer = 423054537079783434
moderator = 267629731250176001
- muted = 277914926603829249
owner = 267627879762755584
- verified = 352427296948486144
helpers = int(environ.get("ROLE_HELPERS", 267630620367257601))
- rockstars = 458226413825294336
core_developers = 587606783669829632
- events_lead = 778361735739998228
- everyone_role = 267624335836053506
class Tokens(NamedTuple):
@@ -271,6 +297,7 @@ class Tokens(NamedTuple):
igdb_client_id = environ.get("IGDB_CLIENT_ID")
igdb_client_secret = environ.get("IGDB_CLIENT_SECRET")
github = environ.get("GITHUB_TOKEN")
+ unsplash_access_key = environ.get("UNSPLASH_KEY")
class Wolfram(NamedTuple):
@@ -291,6 +318,18 @@ class Source:
github_avatar_url = "https://avatars1.githubusercontent.com/u/9919"
+class RedirectOutput:
+ delete_delay: int = 10
+
+
+class Reddit:
+ subreddits = ["r/Python"]
+
+ client_id = environ.get("REDDIT_CLIENT_ID")
+ secret = environ.get("REDDIT_SECRET")
+ webhook = int(environ.get("REDDIT_WEBHOOK", 635408384794951680))
+
+
# Default role combinations
MODERATION_ROLES = Roles.moderator, Roles.admin, Roles.owner
STAFF_ROLES = Roles.helpers, Roles.moderator, Roles.admin, Roles.owner