@Jomm

Почему бот уходит в offline?

from discord import FFmpegPCMAudio
from discord.ext import commands
import datetime
import discord
import time

bot = commands.Bot(command_prefix="!")

@bot.command()
async def BigBenStart(ctx):
	hour = datetime.datetime.now().hour
        channel = ctx.author.voice.channel
	while True:
	    if hour != datetime.datetime.now().hour:
	    	voice = await channel.connect()
	    	source = FFmpegPCMAudio('Big Ben Audio.mp3')
	    	player = voice.play(source)
	    	time.sleep(37)
	    	await ctx.voice_client.disconnect()
	    	hour = datetime.datetime.now().hour

bot.run('ТУТ ТОКЕН')
  • Вопрос задан
  • 256 просмотров
Решения вопроса 2
Vindicar
@Vindicar
RTFM!
time.sleep(37)
Ни в коем случае. Почитай, как работают асинхронные программы.
Грубо говоря, пока твой обработчик выполняет синхронный код (что угодно без await), остальная часть программы стоит.
Так что пока бот спит, он вообще ни на что не реагирует.
Замени на await asyncio.sleep(37).
Ответ написан
@Jomm Автор вопроса
Импортировать asyncio. В конце цикла добавить await asyncio.sleep(0.1)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы