Я делаю бота для Discord на Python с помощью модуля Discord.py. И мне нужно сделать так, чтобы определенную команду могли использовать только участники имеющие определенные роли. Я Пробовал перед операторами сравнения добавить это: if member.top_role.name == «Администратор»: , но ничего не вышло, помогите мне разобраться как это сделать. Моя версия Discord.py — 1.6.0, Python 3.7.0. Вот сама команда:
Отслеживать
задан 21 янв 2021 в 5:35
139 3 3 серебряных знака 15 15 бронзовых знаков
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
С верху я перечислил варианты как можна сделать проверку, вам надо выбрать то что вам подходит.
Отслеживать
ответ дан 21 янв 2021 в 17:17
794 5 5 серебряных знаков 20 20 бронзовых знаков
- python
- discord.py
- role
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
КАК ОТКЛЮЧИТЬ БОТА В DISCORD
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Источник: ru.stackoverflow.com
Как я могу ограничить бота, чтобы он отвечал на определенных каналах с помощью discord.py?
Я делаю бота, который использует винтики и имеет несколько разных команд. Я хочу, чтобы этот бот отвечал только на один из двух каналов команд бота на сервере, на котором я его использую. Я видел, что могу использовать ctx.channel.id = независимо от идентификатора, но я бы предпочел, чтобы бот вообще не мог отвечать в канале, в том числе на команды .help.
Я видел, как люди делали это с помощью on_message, но не уверен, как бы я сделал это с помощью винтиков. Любая помощь приветствуется. Мой предполагаемый результат состоит в том, чтобы бот отвечал только по двум каналам, двум каналам бота, которые я указываю, на любые команды, включая команду .help. Благодаря!
2tmb 15 Янв 2021 в 17:28
2 ответа
Лучший ответ
Самый простой способ сделать это — не с помощью кода, а с помощью разрешений на сервере. На вашем сервере вы должны найти роль с тем же именем, что и ваш бот, чьи разрешения (включая send messages ) вы можете изменить для отдельных каналов.
Lu M 15 Янв 2021 в 16:42
if ctx.channel.id == : return # if this if statement returns True, this will stop the command from doing further actions. else: # do stuff here
Источник: question-it.com
КАК ЗАЩИТИТЬ СВОЙ ДИСКОРД СЕРВЕР? | АНТИ СПАМ БОТ, КАПЧА БОТ
Как выключить или удалить бота в Discord
По задумке сервиса Дискорд предполагается, что пользователи должны объединяться в группы и в процессе общения решать возникающие спорные моменты. При этом способ общения может быть самый разнообразный – от текстового до видеоконференции. Для общения с пользователями необходимо активно развивать и расширять функции сервера.
Из-за большой нагрузки не всегда имеется возможность лично выполнять все задачи. В этом случае на помощь приходит бот. Именно бот способен справиться с большим количеством стандартных и однообразных работ. Если задачи, для которых создавался бот, выполнены, то его можно удалить. О том, как выключить бота в Discord поговорим сегодня.

Почему рекомендуется удалять неиспользуемого бота в Дискорде
Сервис Дискорд в основном служит для того, чтобы соединять пользователей в группы по интересам. С этой целью создаются тематические каналы, которыми необходимо управлять и развивать. Зачастую для поставленных задач элементарно не хватает времени и тогда на помощь приходят боты. Они разгружают администратора группы, выполняя часть рутинной работы за него.
Но не смотря на всю полезность ботов, возникают ситуации, когда лучшим решением будем его удаление. Это может происходить в следующих случаях:
- Качество выполняемой ботами работы не соответствует ожиданиям;
- Пользователи не пользуются услугами бота;
- Есть аналогичные боты, с гораздо более высоким функционалам.
Какой бы не была причина, удаление бота может проводиться с любого устройства.

Как выключить бота в Discord: процедура деактивации пошагово
Процедура отключения бота зависит от того, на какой промежуток времени вы хотите отключить бота. Итак, деактивировать бот можно:
- На временной основе. Для этого достаточно наложить бан;
- Заглушка работы бота;
- Полное удаление помощника-бота с канала.
Разберем более подробно второй вариант выключения бота. Заглушка работы выполняется по следующей схеме:
- Заходим в личный кабинет Дискорда;
- Правой кнопкой мыши кликаем по названию бота;
- Перед вами раскроется меню, выбираем тот, который предлагает заглушить работу бота;
- На финальном этапе необходимо определиться с временным промежутком блокировки бота.

Другой способ временной деактивации бота – забанивание его работы. Для этого проходим этап регистрации и попадаем в личный кабинет, далее:
- Заходим в настройки бота. Для этого щелкаем по названию бота правой кнопкой мыши;
- В меню настроек имеется пункт, который так и называется «Забанить»;
- Выбираем его и параллельно указываем срок действия данного запрета;
- Сервис попросит указать причину вашего решения;
- Нажимаем кнопку, подтверждающую ваши действия.

Полное удаление бота с сервера
Самый радикальный способ, отменить который не получится. Если вы абсолютно уверены в том, что хотите удалить бот, то алгоритм действий выглядит следующим образом:
- Заходим на сервис Дискорд, используя свои персональные данные (логин и пароль);
- В программе заходим на сервер, где находится бот, т.к. только так можно вносить изменения в его работу;
- Находим бот и нажимаем на него правой кнопкой мыши;
- Нас интересует опция под названием «Выгнать»;
- Как только вы нажали кнопку для выполнения команды, вы больше не сможете его использовать и вернуть обратно.
Частые вопросы:
- Что такое Дискорд Онлайн, и как им пользоваться
- Как в Discord использовать телефон в качестве микрофона
- Как в Discord правильно настроить созданного бота
- Как в Discord добавить бота с телефона
Источник: discord-online.ru