Перейти к содержимому

Как запретить боту писать в чат discord

  • автор:

Как запретить другим писать в канале Discord

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

как в дискорде запретить писать в канале

Как в Дискорде запретить писать в канале: алгоритм действий

В текстовых чатах пользователи обмениваются не только сообщениями, но и активно присылают друг другу картинки и даже видео. Если на канале появился нежелательный участник, то можно ограничить его действия в данном чате. Для этого необходимо сделать следующее:

  • Войдите в меню аккаунта;
  • Выберите пункт «Отключить отправку личных сообщений».

Данная функция распространяется на тех пользователей, которые не являются друзьями. При этом запрет на сообщения будет наложен на приватный чат. В общем чате функция отправки сообщений сохранится.

как запретить писать на канале в дискорде

Блокировка участника

Это действенный способ отстранения конкретного участника от чата. Что нужно сделать:

  • Нажмите на аватар собеседника;
  • Нажмите на три вертикальные точки справа;
  • Выберите пункт «Заблокировать».

Можно не блокировать участника полностью, а отправить его в бан. Необходимо выполнить все указанные выше действия, но вместо кнопки «Заблокировать» выбрать пункт «Забанить». Пи этом есть возможность выбора времени бана.

как в дискорде запретить доступ на канале в дискорде

Ограничение прав пользователя

Запрет на отправку сообщений можно выполнить посредством настройки ролей. Для этого необходимо выполнить такие действия:

  • Нажмите на название сервера;
  • Выберите нужный канал;
  • Нажмите значок «Настройки»;
  • Выберите раздел «Права доступа»;
  • Настройте разрешение для конкретной роли.

как запретить писать в чат в дискорд в текстовом канале

Запрет на отправку голосовых сообщений в Discord

Участники сервера могут общаться не только в текстовом чате, но и отправлять друг другу голосовые послания. Здесь также могут возникать конфликтные ситуации и происходить нежелательные действия. Для запрета участникам говорить в таком чате, необходимо сделать следующее:

  • Выберите нужный канал;
  • Нажмите на пункт «Настройки»;
  • Выберите пункт «Подключаться»;
  • Сделайте его неактивным.

как запретить писать и говорить на канале в discord

Это вариант отключения голосовых сообщений для всех участников канала. Сделать подобное ограничение можно для конкретного человека, нажав на его никнейм и отключив его от общего чата.

Дискорд разрабатывался как эффективное средство для общения между геймерами, повышения интереса к игре и обмена опытом. Как и в любом обществе, здесь возможно возникновение спорных ситуаций. Если пользователь злоупотребляет вниманием других или ведет себя аморально, то его можно заблокировать буквально в несколько кликов.

Частые вопросы:

  • Как в Discord запретить другим людям писать в чат
  • Как в Discord использовать телефон в качестве микрофона
  • Что такое Дискорд Онлайн, и как им пользоваться
  • Как сделать бота, выдающего роли в Discord

Можно ли сделать запрет для бота, писать только в отдельном канале? discord.py

Я делаю бота для дискорд с помощью discord.py, и хочу сделать ему запрет отвечать на команды во всех каналах кроме тех которые я укажу. У меня есть небольшой код, но его приходиться писать в каждой команде, а ето не удобно. Можно ли сделать такой запрет, или может можно сделать мой код сразу для всех команд? Вот мой код:

channell = ctx.message.channel channel1 = client.get_channel(929090952763703316) if channell != channel1: await ctx.send("Тут нельзя!") await ctx.channel.purge(limit = 1) else: 

Отслеживать
задан 8 янв 2022 в 11:48
3 1 1 бронзовый знак

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Можно сделать как декоратор:

def predicate(ctx: commands.Context): channel = nextcord.utils.get(ctx.guild.text_channels, ) if ctx.channel != channel: return False else: return True has_channel = commands.check(predicate) @commands.command() @has_channel async def test(self, ctx): pass 

Можете ещё добавить обработчик ошибок

Отслеживать
ответ дан 8 янв 2022 в 12:31
2,302 1 1 золотой знак 5 5 серебряных знаков 11 11 бронзовых знаков

  • discord
  • бот
  • discord.py
    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.17.3574

Как запретить отвечать боту в личных сообщениях?

Хочу сделать так, чтобы только бот мог писать участнику сервера, а сам участник сервер — нет. Т.е. бот не реагировал на команды в личных сообщениях, только на сервере. Как это можно сделать?

  • Вопрос задан более двух лет назад
  • 994 просмотра

Комментировать
Решения вопроса 1

fixator10

Добавьте проверку на выполнение команды в ЛС.

@bot.check async def global_guild_only(ctx): if not ctx.guild: raise commands.NoPrivateMessage # replicating guild_only check: https://github.com/Rapptz/discord.py/blob/42a538edda79f92a26afe0ac902b45c1ea20154d/discord/ext/commands/core.py#L1832-L1846 return True
@bot.command() @commands.guild_only() async def cmd(ctx, . ): """Here we go. """ . 

Ответ написан более двух лет назад
Нравится 2 2 комментария
Dream @dreameddd Автор вопроса

А можно сделать исключения на необходимые мне команды? Используя global_guild_only (задался этим вопросом только сейчас)

fixator10

Dream, проверяйте на наличие название команды в списке:

if ctx.command.name in ["cmd", "cmdtoo", . ]: raise commands.NoPrivateMessage

Как запретить боту некоторые команды в группах?

Есть бот, он в группе, если написать команду в этой группе, то бот выполнит её, а я хочу так, чтобы некоторые команды не были доступны в чате, а только если напишешь боту.

  • Вопрос задан более двух лет назад
  • 806 просмотров

Комментировать
Решения вопроса 1

В объекте Message есть поле chat которое хранит объект Chat и уже в нём есть тип чата(type): «group», «supergroup», «channel», «private». Используя эти данные можешь написать фильтрацию команд собственноручно.
Если ты пишешь используя какую-нибудь из популярных библиотек, то в нём уже должен быть фильтр для групп.

Ответ написан более двух лет назад
Комментировать
Нравится Комментировать
Ответы на вопрос 1

Смотреть на тип чата, и если это не личный чат, то отмена. На сколько мне известно, для групп id чата отрицательное, т.е if (id < 0)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Luxury Car Rental in Miami | Reserve a Premium Vehicle with RealCar