From 07975106ef46b6ffb85ef370d21fb3c95c383711 Mon Sep 17 00:00:00 2001 From: zevaryx Date: Sat, 19 Feb 2022 17:14:48 -0700 Subject: [PATCH] Change wait until after first process --- jarvis_tasks/tasks/ban.py | 4 +++- jarvis_tasks/tasks/reminder.py | 4 +++- jarvis_tasks/tasks/twitter.py | 6 +++--- jarvis_tasks/tasks/warning.py | 4 +++- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/jarvis_tasks/tasks/ban.py b/jarvis_tasks/tasks/ban.py index a4ee92c..7c94eca 100644 --- a/jarvis_tasks/tasks/ban.py +++ b/jarvis_tasks/tasks/ban.py @@ -17,7 +17,6 @@ async def unban(bot: Snake, logger: Logger) -> None: logger: Global logger """ while True: - await asyncio.sleep(600) max_time = datetime.utcnow() + timedelta(minutes=10) bans = Ban.find(q(type="temp", active=True)) async for ban in bans: @@ -39,3 +38,6 @@ async def unban(bot: Snake, logger: Logger) -> None: reason="Ban expired", ) await u.commit() + + # Check ever 10 minutes + await asyncio.sleep(600) diff --git a/jarvis_tasks/tasks/reminder.py b/jarvis_tasks/tasks/reminder.py index 9113314..4bcd6e9 100644 --- a/jarvis_tasks/tasks/reminder.py +++ b/jarvis_tasks/tasks/reminder.py @@ -18,7 +18,6 @@ async def remind(bot: Snake, logger: Logger) -> None: logger: Global logger """ while True: - await asyncio.sleep(5) reminders = Reminder.find( q(remind_at__lte=datetime.utcnow() + timedelta(seconds=5), active=True) ) @@ -69,3 +68,6 @@ async def remind(bot: Snake, logger: Logger) -> None: else: logger.warning("No way to contact user, deleting reminder") await reminder.delete() + + # Check every 5 seconds + await asyncio.sleep(5) diff --git a/jarvis_tasks/tasks/twitter.py b/jarvis_tasks/tasks/twitter.py index 560a374..1527245 100644 --- a/jarvis_tasks/tasks/twitter.py +++ b/jarvis_tasks/tasks/twitter.py @@ -24,9 +24,6 @@ async def twitter(bot: Snake, logger: Logger) -> None: auth = tweepy.AppAuthHandler(config.twitter["consumer_key"], config.twitter["consumer_secret"]) api = tweepy.API(auth) while True: - # Only check once a minute - await asyncio.sleep(60) - accounts = TwitterAccount.find() accounts_to_delete = [] @@ -85,3 +82,6 @@ async def twitter(bot: Snake, logger: Logger) -> None: for account in accounts_to_delete: logger.info(f"Account {account.handle} has no followers, removing") await account.delete() + + # Only check once a minute + await asyncio.sleep(60) diff --git a/jarvis_tasks/tasks/warning.py b/jarvis_tasks/tasks/warning.py index 6679457..5762ded 100644 --- a/jarvis_tasks/tasks/warning.py +++ b/jarvis_tasks/tasks/warning.py @@ -17,10 +17,12 @@ async def unwarn(bot: Snake, logger: Logger) -> None: logger: Global logger """ while True: - await asyncio.sleep(3600) warns = Warning.find(q(active=True)) async for warn in warns: if warn.created_at + timedelta(hours=warn.duration) < datetime.utcnow(): logger.debug(f"Deactivating warning {warn.id}") warn.update(q(active=False)) await warn.commit() + + # Check every hour + await asyncio.sleep(3600)