В сегодняшней статье расскажем, как писать от имени бота в Дискорде. Если вы в мессенджере уже не новичок и разобрались со всеми основными возможностями, самое время узнать и эту фичу!
Обратите внимание: возможность писать от имени робота-помощника пока есть только на ПК.
Создаём бота
Так как писать от имени бота в Дискорде можно только если он создан вами, рассказываем, как создать своего помощника. Это делается через портал для разработчиков, вот ссылка на него: https://discord.com/developers/applications.
Также вы можете найти портал самостоятельно: введите в поисковую строку браузера «портал для разработчиков дискорд» и нажмите «Enter» — нужный сайт будет первым в поисковой выдаче.
- Зайдите на Discord Developer Portal и авторизуйтесь в своём аккаунте — он соответствует аккаунту в мессенджере.
- Перейдите во вкладку «Applications» слева.

Как писать от имени бота с рамками текста? / Вебхуки Дискорд
- Справа нажмите на синюю кнопку «New application» .

- В появившемся окне введите название своего приложения, поставьте галочку напротив согласия с правилами и нажмите «Create» .

- Перейдите во вкладку «Bot» слева.


- Подтвердите действие, нажав на синюю кнопку «Yes, do it» .

- Справа от аватарки в блоке «Token» есть кнопка «Copy» — жмите на неё!

Устанавливаем программу и добавляем бота
Вы создали своего помощника и скопировали его токен. Дальше, чтобы узнать, как писать от имени бота в Дискорде, мы будем использовать сторонний софт.
- Скачайте его на Гитхабе, вот ссылка: https://github.com/Flam3rboy/discord-bot-client/releases/tag/3.1.0. Выберите свою ОС и жмите на соответствующую кнопку. Например, если у вас Windows, кликните «Installer» .

- Дождитесь окончания загрузки установочного файла и откройте его. Софт устанавливается очень просто и быстро — несколько секунд и всё готово.

- После установки программы в строку «Token» вставьте скопированный токен своего робота-ассистента. Если программа подвисает, перейдите во вкладку «View» и нажмите «Reload» .

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

Как стать ботом в дискорде? | Как писать от имени бота | Как зайти в аккаунт бота
Роботизированные помощники в Discord – это дополнительный функционал для серверов и каналов общения. Одни предназначены для развлечения, другие выполняют однотипные задачи администраторов. Пользователям полезно знать, как писать сообщения в чат от имени бота в мессенджере Дискорд. Важно заранее изучить представленные инструкции и способы написания текстов в таком формате.
Как писать сообщения от лица бота в любой канал сервера

Если админу требуется отправить в чат информацию, потребуется выполнить несколько связанных действий. Этапы работы юзера:
- зайти в учетную запись (ввести действующие логин и пароль);
- кликнуть по клавише «New Application»;

- пропечатать наименование активируемого бота;
- в настройках подключаемого элемента выбрать пункт «Bot»;

- скопировать токен, нажав на кнопку «Copy»;
- затем скачать утилиту для Windows (Installer-Portable);
- запустить процедуру установки, зайти выбрать вкладку «View», найти строку «Reload»;
- ввести скопированный раньше токен;

- войти заново, пригласить созданного роботизированного помощника на сервер.
В боковой части открытого окна не будет привычного списка участников – можно начать писать сообщения.
Как сказать что-то от имени бота в Discord?
Префикс -«!»
async def say( ctx, arg ):
await ctx.send(arg)
Вот пример функции.
1) Если мы напишем в чат «!say Text1 Text2», бот напишет только «Text1» как сделать, чтобы в аргумент вводилось предложение полностью а не только слово до первого пробела.
2) Я хочу писать от имени бота;
есть приватный текстовый канал «admin» в него я отправляю «!say «ИМЯ КАНАЛА»Text1, Text2»
В свою очередь бот отправляет сообщение «Text1, Text2» в канал с названием «ИМЯ КАНАЛА»
- Вопрос задан более года назад
- 279 просмотров
Комментировать
Решения вопроса 2

Ничтожество 😀
Функция channel_conv ищет в первом слове канал, если не находит — отправляет None, которое создает при попытке отправки исключение, приводящее к отправке в текущий канал
ctx, *, text — звездочка означает, что в text будут записываться все идущее после ctx
split — разбивает строку в список
isdigit — проверят, является ли строка числом
replace — заменяет фрагмент в строке на другой данный (В данном случае канал заменяется на пустое место, чтобы в случае отправки в другой канал его не отправляло вместе с текстом)
async def say(ctx, *, text): def channel_conv(text): value = text.split(» «) string = value[0] if string.isdigit(): return ( client.get_channel(int(string)), text.replace(string, «») ) elif string.startswith(«<#»): return ( client.get_channel(int(string[2:20])), text.replace(string, «») ) else: return ( None, text ) try: channel = channel_conv(text) await channel[0].send(channel[1]) except: await ctx.send(text)
Так же можно использовать конвертер из оригинальной библиотеки:
from discord.ext.commands import TextChannelConverter
async def say(ctx, *, text): v = text.split(» «) try: channel = await TextChannelConverter().convert(ctx = ctx, argument = v[0]) await channel.send(text.replace(v[0], «»)) except: await ctx.send(text)
Источник: qna.habr.com