aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bot/cogs/free.py13
-rw-r--r--bot/constants.py6
-rw-r--r--config-default.yml6
3 files changed, 18 insertions, 7 deletions
diff --git a/bot/cogs/free.py b/bot/cogs/free.py
index 076415ded..7447fd941 100644
--- a/bot/cogs/free.py
+++ b/bot/cogs/free.py
@@ -4,18 +4,17 @@ from datetime import datetime
from discord import Colour, Embed, Member, utils
from discord.ext.commands import BucketType, Context, command, cooldown
-from bot.constants import Categories
+from bot.constants import Categories, Free
log = logging.getLogger(__name__)
+PYTHON_HELP_ID = Categories.python_help
+TIMEOUT = Free.activity_timeout
+
class Free:
"""Tries to figure out which help channels are free."""
-
- PYTHON_HELP_ID = Categories.python_help
- TIME_INACTIVE = 300
-
@command(name="free", aliases=('f',))
@cooldown(1, 60.0, BucketType.channel)
async def free(self, ctx: Context, user: Member = None, seek: int = 2):
@@ -34,7 +33,7 @@ class Free:
in an active channel, and we want the message before that happened.
"""
free_channels = []
- python_help = utils.get(ctx.guild.categories, id=self.PYTHON_HELP_ID)
+ python_help = utils.get(ctx.guild.categories, id=PYTHON_HELP_ID)
if user is not None and seek == 2:
seek = 3
@@ -49,7 +48,7 @@ class Free:
msg = await channel.history(limit=1).next() # noqa (False positive)
inactive = (datetime.utcnow() - msg.created_at).seconds
- if inactive > self.TIME_INACTIVE:
+ if inactive > TIMEOUT:
free_channels.append((inactive, channel))
embed = Embed()
diff --git a/bot/constants.py b/bot/constants.py
index aae9b05e5..689590c0c 100644
--- a/bot/constants.py
+++ b/bot/constants.py
@@ -471,6 +471,12 @@ class BigBrother(metaclass=YAMLGetter):
header_message_limit: int
+class Free(metaclass=YAMLGetter):
+ section = 'free'
+
+ activity_timeout: int
+
+
# Debug mode
DEBUG_MODE = True if 'local' in os.environ.get("SITE_URL", "local") else False
diff --git a/config-default.yml b/config-default.yml
index 1b4e6f412..504d40ed7 100644
--- a/config-default.yml
+++ b/config-default.yml
@@ -337,5 +337,11 @@ big_brother:
header_message_limit: 15
+free:
+ # Seconds to elapse for a channel
+ # to be considered inactive.
+ activity_timeout: 300
+
+
config:
required_keys: ['bot.token']