В ветви discord.py-rewrite есть TextChannel.history
AsyncIterator
. Если вы передадите limit=None
, он вернет все сообщения с канала
@bot.command()
async def message_count(ctx, channel: discord.TextChannel=None):
channel = channel or ctx.channel
count = 0
async for _ in channel.history(limit=None):
count += 1
await ctx.send("There were {} messages in {}".format(count, channel.mention))
Вы можете попытаться передать limit=None
в logs_from
, но это не задокументировано так, как это работает в ветке перезаписи.