aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bot/cogs/moderation/__init__.py4
-rw-r--r--bot/cogs/moderation/incidents.py24
-rw-r--r--bot/constants.py6
-rw-r--r--config-default.yml7
4 files changed, 39 insertions, 2 deletions
diff --git a/bot/cogs/moderation/__init__.py b/bot/cogs/moderation/__init__.py
index 6880ca1bd..4455705f7 100644
--- a/bot/cogs/moderation/__init__.py
+++ b/bot/cogs/moderation/__init__.py
@@ -1,4 +1,5 @@
from bot.bot import Bot
+from .incidents import Incidents
from .infractions import Infractions
from .management import ModManagement
from .modlog import ModLog
@@ -7,7 +8,8 @@ from .superstarify import Superstarify
def setup(bot: Bot) -> None:
- """Load the Infractions, ModManagement, ModLog, Silence, and Superstarify cogs."""
+ """Load the Incidents, Infractions, ModManagement, ModLog, Silence, and Superstarify cogs."""
+ bot.add_cog(Incidents(bot))
bot.add_cog(Infractions(bot))
bot.add_cog(ModLog(bot))
bot.add_cog(ModManagement(bot))
diff --git a/bot/cogs/moderation/incidents.py b/bot/cogs/moderation/incidents.py
new file mode 100644
index 000000000..baceddf0c
--- /dev/null
+++ b/bot/cogs/moderation/incidents.py
@@ -0,0 +1,24 @@
+import logging
+from enum import Enum
+
+from discord.ext.commands import Cog
+
+from bot.bot import Bot
+from bot.constants import Emojis
+
+log = logging.getLogger(__name__)
+
+
+class Signal(Enum):
+ """Recognized incident status signals."""
+
+ ACTIONED = Emojis.incident_actioned
+ NOT_ACTIONED = Emojis.incident_unactioned
+ INVESTIGATING = Emojis.incident_investigating
+
+
+class Incidents(Cog):
+ """Automation for the #incidents channel."""
+
+ def __init__(self, bot: Bot) -> None:
+ self.bot = bot
diff --git a/bot/constants.py b/bot/constants.py
index 470221369..24726c20d 100644
--- a/bot/constants.py
+++ b/bot/constants.py
@@ -271,6 +271,10 @@ class Emojis(metaclass=YAMLGetter):
status_idle: str
status_dnd: str
+ incident_actioned: str
+ incident_unactioned: str
+ incident_investigating: str
+
failmail: str
trashcan: str
@@ -398,6 +402,7 @@ class Channels(metaclass=YAMLGetter):
helpers: int
how_to_get_help: int
incidents: int
+ incidents_archive: int
message_log: int
meta: int
mod_alerts: int
@@ -426,6 +431,7 @@ class Webhooks(metaclass=YAMLGetter):
reddit: int
duck_pond: int
dev_log: int
+ incidents_archive: int
class Roles(metaclass=YAMLGetter):
diff --git a/config-default.yml b/config-default.yml
index 3388e5f78..6b827b63d 100644
--- a/config-default.yml
+++ b/config-default.yml
@@ -38,6 +38,10 @@ style:
status_dnd: "<:status_dnd:470326272082313216>"
status_offline: "<:status_offline:470326266537705472>"
+ incident_actioned: "<:incident_actioned:719645530128646266>"
+ incident_unactioned: "<:incident_unactioned:719645583245180960>"
+ incident_investigating: "<:incident_investigating:719645658671480924>"
+
failmail: "<:failmail:633660039931887616>"
trashcan: "<:trashcan:637136429717389331>"
@@ -173,6 +177,7 @@ guild:
organisation: &ORGANISATION 551789653284356126
staff_lounge: &STAFF_LOUNGE 464905259261755392
incidents: 714214212200562749
+ incidents_archive: 720668923636351037
# Voice
admins_voice: &ADMINS_VOICE 500734494840717332
@@ -251,7 +256,7 @@ guild:
duck_pond: 637821475327311927
dev_log: 680501655111729222
python_news: &PYNEWS_WEBHOOK 704381182279942324
-
+ incidents_archive: 720671599790915702
filter: