ErrorNoCord/tasks.py

26 lines
620 B
Python

import asyncio
import time
import disnake
from state import client, idle_tracker, players
async def cleanup():
while True:
await asyncio.sleep(3600)
targets = []
for guild_id, player in players.items():
if len(player.queue) == 0:
targets.append(guild_id)
for target in targets:
del players[target]
if (
not idle_tracker["is_idle"]
and time.time() - idle_tracker["last_used"] >= 3600
):
await client.change_presence(status=disnake.Status.idle)
idle_tracker["is_idle"] = True