import discord
from discord import utils
from discord.ext import tasks
bot = commands.Bot(command_prefix='prefix', intents=discord.Intents.all())
@bot.event
async def on_ready():
print('Авторизирован как {0.user}'.format(bot))
# Запускаем созданную ниже задачу.
check_stats.start()
# Создаем задачу, которая будет проверять активность всех пользователей каждые 3 минуты.
@tasks.loop(minutes=3)
async def check_stats():
# Получаем всех пользователей с какой-то базовой ролью.
# Если никакой базовой роли нету, то получаем просто всех пользователей. См. метод: fetch_members
role = utils.get(bot.guilds[0].roles, id=12345678)
for member in role.members:
try:
print(f'Пользователь {member} имеет активность: {member.activities[0].name}')
except IndexError:
print(f'Пользователь {member} не имеет активности.')
if __name__ == '__main__':
bot.run('token')
Можно сделать канал с анонсами *ТЫК* на который люди сами подпишутся, чтобы получать уведомления.
Или пользуйтесь новой штучкой дискорда под названием "Мероприятия". В данный момент не знаю по какой логике они появляются, но вероятно сервер должен быть +- крупный, или переведен в сообщество(Информация чисто отсебятина).