Vadok
@Vadok

Как сделать так чтобы мой бот работал только на моём сервере?

Как сделать так чтобы мой бот работал только на моём дискорд сервере? У меня есть бот который обрабатывает заявки и мне нужно как-то ограничить к нему доступ, чтобы если кто-нибудь добавил его на свой сервер, то он там не работал
  • Вопрос задан
  • 886 просмотров
Решения вопроса 1
@john_does13
1. Сделайте вашего бота приватным:
  • Перейдите на портал разработчика;
  • Выберите нужного бота в разделе "Applications";
  • Нажмите на вкладку "Bot" слева;
  • В разделе "PUBLIC BOT" поставьте галочку напротив "Public bots can be added..."

Всё! Теперь только вы сможете добавлять бота на сервера.

2. Ограничить доступ бота к дугим серверам с помощью кода:
@client.event
async def on_server_join(server):
    if server != MY_SERVER:
        await client.leave_server(server)

Где, "MY_SERVER" - экземпляр класса disnake.Guild.
Впрочем, вместо экземпляра класса Guild, вы можете использовать айди сервера следующим образом:
if server.id != MY_SERVER_ID:

Конечно, при таком подходе вы всё равно сможете добавить бота на сервер, если бот будет оффлайн, но это решается добавлением ивента on_ready() и добавлением в него такого же кода, как и в примере выше.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
fenrir1121
@fenrir1121 Куратор тега discord.py
Начни с документации
Достаточно просто не публиковать ссылку-приглашение.
Но если нужно именно решение кодом проверяйте сервер в on_message
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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