В настоящее время я пытаюсь создать таймер сообщений для разногласий, в основном я хочу, чтобы пользователь устанавливал таймер сообщений. Я хочу, чтобы сообщение отправлялось каждые x секунд, но по какой-то причине оно отправляет сообщение только за один раз.канал, хотя я уже настроил его на два канала.
Вот мой код.
async def on_ready(self):
print("SmartCord rewrite is ready!")
self.remove_command('help')
#ch = self.get_channel(446904504210948099)
#await ch.send("\n".join(good))
await self.change_presence(activity=discord.Streaming(name=f"{len(self.guilds)} Guilds | /help", url="https://www.twitch.tv/smartcord"))
for channel in self.get_all_channels():
if db.messagetimers.find({"channel_id":str(channel.id)}).count():
for x in db.messagetimers.find({"channel_id":str(channel.id)}):
message = x['message']
chan = x['channel_id']
y = self.get_channel(int(chan))
while True:
await y.send(message)
await asyncio.sleep(60) # Using 60 seconds as an example
Так как я не очень хорош в Python, я не знаю, чтосделать, чтобы исправить эту проблему.