@Telmor

Как проверить, на какой сервер зашёл пользователь?

У меня бот стоит на нескольких серверах и я решил сделать в боте функцию под каждый сервер. Суть функции: Администратор указывает сколько должно пройти с момента регистрации аккаунта пользователем, прежде чем он сможет зайти на сервер(иначе его будет кикать). И так не только на 1-м сервере, а на нескольких. Я знаю как сделать данную проверку на 1-м сервере. Но как это сделать для нескольких серверов? Пример кода как я сделал для 1 сервера:
@bot.event
async def on_member_join(member):
    if time.time() - member.created_at.timestamp() < 259200:
        emb = discord.Embed(title='Ошибка', description=f'{member.mention}, Ваш аккаунт был создан недавно. Повторите попытку позже.')
        emb.set_footer(text=f'Дата регистрации вашего аккаунта меньше 3-х дней назад.)
        emb.set_thumbnail(url=member.avatar_url)
        await member.send(embed=emb)
        reason = "Новый аккаунт < 3 дней"
        await member.kick(reason=reason)
    else:
           ...
  • Вопрос задан
  • 306 просмотров
Пригласить эксперта
Ответы на вопрос 1
Vindicar
@Vindicar
RTFM!
Ну и в чём проблема-то? Иметь отдельную настройку под каждый сервер?
БД в помощь, делаешь таблицу вида "id сервера - срок", при входе пользователя делаешь выборку из неё по id сервера. Если ничего не нашли, используем срок по умолчанию (я бы по умолчанию задал 0, чтобы функция работала только если админ её настроил).
Ответ написан
Ваш ответ на вопрос

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

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