diff options
| -rw-r--r-- | bot/exts/moderation/stream.py | 38 |
1 files changed, 10 insertions, 28 deletions
diff --git a/bot/exts/moderation/stream.py b/bot/exts/moderation/stream.py index 66ca96339..c598ec879 100644 --- a/bot/exts/moderation/stream.py +++ b/bot/exts/moderation/stream.py @@ -26,9 +26,14 @@ class Stream(commands.Cog): self.scheduler = Scheduler(self.__class__.__name__) self.reload_task = self.bot.loop.create_task(self._reload_tasks_from_redis()) + def cog_unload(self) -> None: + """Cancel all scheduled tasks.""" + self.reload_task.cancel() + self.reload_task.add_done_callback(lambda _: self.scheduler.cancel_all()) + async def _remove_streaming_permission(self, member: discord.Member) -> None: """Remove streaming permission from Member.""" - await self._delete_from_redis(member.id) + await self.task_cache.delete(member.id) await member.remove_roles(discord.Object(Roles.video), reason="Streaming access revoked") async def _reload_tasks_from_redis(self) -> None: @@ -57,18 +62,9 @@ class Stream(commands.Cog): self._remove_streaming_permission(member) ) - async def _delete_from_redis(self, key: str) -> None: - await self.task_cache.delete(key) - @commands.command(aliases=("streaming",)) @commands.has_any_role(*STAFF_ROLES) - async def stream( - self, - ctx: commands.Context, - user: discord.Member, - duration: Expiry = None, - *_ - ) -> None: + async def stream(self, ctx: commands.Context, user: discord.Member, duration: Expiry = None) -> None: """ Temporarily grant streaming permissions to a user for a given duration. @@ -104,12 +100,7 @@ class Stream(commands.Cog): @commands.command(aliases=("pstream",)) @commands.has_any_role(*STAFF_ROLES) - async def permanentstream( - self, - ctx: commands.Context, - user: discord.Member, - *_ - ) -> None: + async def permanentstream(self, ctx: commands.Context, user: discord.Member) -> None: """Permanently grant a user the permission to stream.""" # Check if user already has streaming permission already_allowed = any(Roles.video == role.id for role in user.roles) @@ -125,13 +116,9 @@ class Stream(commands.Cog): await user.add_roles(discord.Object(Roles.video), reason="Permanent streaming access granted") await ctx.send(f"{Emojis.check_mark} Permanently granted {user.mention} the permission to stream.") - @commands.command(aliases=("unstream", )) + @commands.command(aliases=("unstream", "rstream")) @commands.has_any_role(*STAFF_ROLES) - async def revokestream( - self, - ctx: commands.Context, - user: discord.Member - ) -> None: + async def revokestream(self, ctx: commands.Context, user: discord.Member) -> None: """Revoke the permissiont to stream from a user.""" # Check if user has the streaming permission to begin with allowed = any(Roles.video == role.id for role in user.roles) @@ -144,11 +131,6 @@ class Stream(commands.Cog): else: await ctx.send(f"{Emojis.cross_mark} This user already can't stream.") - def cog_unload(self) -> None: - """Cancel all scheduled tasks.""" - self.reload_task.cancel() - self.reload_task.add_done_callback(lambda _: self.scheduler.cancel_all()) - def setup(bot: Bot) -> None: """Loads the Stream cog.""" |