Как запустить бота через cmd
Перейти к содержимому

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

  • автор:

How To Make Chat Bot In Batch [closed]

Want to improve this question? Update the question so it focuses on one problem only by editing this post.

Closed 5 years ago .

I want create a chat bot progrom in batch.

The chat bot responds to different keywords.

For example: If you said Hi, bot. Then it takes the keyword "Hi" and then responds with something like: Hello, What Is Your Name?

Here is my code:

3 Answers 3

search for keywords instead of full phrases:

Note: this is a very basic «show how». No errorhandling at all.

MichaelS's user avatar

When you want to do it without keywords, only answering on the exact input you can try this code:

What you may have seen is, that you need a database (named T=speak.dat) in style:

example of my database:

When you want to write new sentences type it in the database or use the following batch:

(if my english isn’t the best, please excuse, I am not a native speaker if you want to have the little text fragments translated use google german>English,thanks :D)

Гайд Как создавать Discord бота

  1. Перейдите на страницу https://discord.com/developers/applications
  2. Нажмите на New Application. new aplication.png
  3. Введите название приложения, прочитайте Developer Terms of Service (https://discord.com/developers/docs/policies-and-agreements/developer-terms-of-service) и Developer Policy (https://discord.com/developers/docs/policies-and-agreements/developer-policy) и также, я советую вам ознакомиться с https://discord.com/tos, после всего этого нажмите на кнопку Create.
    create an application.png
  1. Перейдите во вкладку Bot.
    selected app.png
  2. Нажмите Add Bot и подтвердите это действие.
    add bot.png

bot token.png

Второй этап — Запуск нашего бота.
Для того чтобы получить токен бота, нажмите на кнопку View Token.

Далее, напишем первый код!

Для удобства буду использовать библиотеку disnake (discord.py fork), но перед написанием кода мы должны создать файл с расширением .py!
Если создали файл — поздравляю, можем приступать к написанию кода!

Дальше запускаем нашего бота. Можно запускать как через cmd, так и через созданный bat файл.
Готово!

Так-же приведу пример команды !ping, которая будет нам отвечать "Понг!"

Здесь мы используем уже декоратор @bot.command()
@bot.command()
принимает в себя аргументы, а именно — name (имя команды, можно сделать команду на русском языке), description (описание команды, больше подходит для команд косой черты) и usage (пример использования команды).

Теперь по команде !ping бот будет отвечать вам Понг!

UPD 30.04. Сейчас покажу как создавать слеш команды (команды косой черты)!
Для этого нам нужно использовать декоратор @bot.slash_command()
Он принимает все те же аргументы, что и текстовые команды.
Пример команды !ping, но уже на слешах:

Небольшое пояснение про Interaction (кратко inter)
Что вообще такое ваш Interaction и с чем его едят?

Как запустить бота через командную строку

В Telegram с 24 июня 2015 появились боты, а точнее Telegram Bot API. То есть, теперь мою прошлую задачу получения статуса сервера можно решить гораздо удобнее.

Бот не является “пользовательским аккаунтом”, ему не нужен номер телефона, и самое главное — не нужно ставить клиентское приложение для Telegram на сервере или где вы хотите его использовать. Бот для Telegram — это ну как бы и есть API — веб-запросы к серверам Telegram. Механизм обработки запросов и отправки ответов лежит на вас, как на владельце бота.

Официальная документация по ботам здесь: https://core.telegram.org/bots

Создание бота

Нужно написать самому главному боту — BotFather:

BotFather help

…и уважительно попросить создать нового бота:

BotFather newbot

После этого бот будет создан. Обратите внимание на токен — по нему осуществляется доступ к боту, так что светить этот токен нельзя, иначе кто угодно сможет получить доступ к сообщениям бота (перехватывать запросы и отправлять свои ответы).

Сейчас, когда у вас уже создан бот и получен токен, я могу на примере продемонстрировать, что конкретно имел в виду под словами “это ну как бы и есть API”. Откройте браузер и перейдите по такому адресу:

В браузере отобразится примерно такое:

Для большей наглядности, вот скриншот браузера:

Telegram бот вызов из браузера

Вот что такое бот в Telegram. Вы отправляете веб-запрос и получаете на него JSON-ответ.

Разумеется, нам нужно автоматизировать как отправку запросов, так и разбор JSON-ответов, потому нужна программная реализация бота, которая будет работать на каком-нибудь сервере (можно и на домашнем компе, но тогда, очевидно, бот будет доступен только когда будет включен компьютер). И для этой цели можно выбрать абсолютно любой язык программирования, поддерживающий отправку веб-запросов, ведь, как я уже сказал и продемонстировал — работа с ботом это всего лишь отправка веб-запросов и разбор ответов.

Реализация бота

Я выбрал язык Python. Выбор далеко не случаен. Дело в том, что для Python уже есть готовая библиотека, существенно облегчающая реализацию бота — это pyTelegramBotAPI. Собственно, в ней сделано уже всё, что требуется для отправки веб-запросов и получения ответов, вам остаётся только описать команды, которые ваш бот будет уметь выполнять. Однако, какое-то понимание всё же потребуется, потому настоятельно рекомендую изучить документацию по API: https://core.telegram.org/bots/api

Итак, вам нужно поставить Python и какую-нибудь IDE (хотя, конечно, можно и в Блокноте). Вот что у меня:

Итак, у вас установлен Python и pip, ставим pyTelegramBotAPI:

Теперь создаём файл someTestBot.py , в котором и будет описан функционал бота. Я определил две обязательных команды /start и /help , а также команду отправки статуса сервера /server (забегая вперёд, она предназначена для запуска в Linux, так что при тестировании на Windows её вызов зафейлится):

Скрипт сбора информации о статусе сервера status.sh я взял из прошлой статьи и немного изменил:

Его надо поместить на сервере по пути /root/scrps/status.sh , либо каком другом, но тогда надо не забыть изменить его и в исходниках бота.

На этом реализация бота закончена.

Возвращаемся к BotFather, указываем ему команды, которые знает бот:

BotFather commands

Размещение и запуск бота на сервере

Ну, во-первых, вы уже можете запустить бота у себя на компьютере — нужно открыть командную строку в том каталоге, где лежит someTestBot.py , и выполнить python someTestBot.py . Если это Windows, появится “чёрное окно”, которое будет означать, что бот уже работает. Найдите в Telegram пользователя @someTestBot (у вас своё имя, очевидно), и можно уже с ним переписываться:

Telegram бот команды

Как я и говорил, команду /server в Windows он обработать не смог, и пойманное исключение записалось в журнал.

Кстати, обратите внимание — приложение показывает подсказки о всех командах бота, которые мы добавили через BotFather:

Telegram бот команды

Теперь задача, как сделать так, чтобы бот работал постоянно. Идём на сервер с Linux, создаём каталог /usr/local/bin/someTestBot/ , кладём в него наш someTestBot.py . Кстати, на сервере тоже должен быть установлен pyTelegramBotAPI (разумеется, Python и pip тоже).

Я расскажу о двух способах, как запустить скрипт в качестве сервиса: Supervisor и systemd .

Supervisor

Создаём конфиг для процесса ( /etc/supervisor/conf.d/someTestBot.conf ):

С таким конфигом, надо полагать, бот будет “выполняться” с root правами, что некруто. Скорее всего, можно задать, с какими правами это будет работать. Ну да ладно, нам же надо скорее в продакшн, так что запускаем:

systemd

А можно ничего и не устанавливать, если в системе используется systemd .

С таким содержанием:

В User=someTestBot можно и root указать, но я рекомендовал бы создать под это отдельного юзера. Правда, тогда чтобы работали скрипты, надо будет дать этому пользователю доступ к mysqladmin .

Включаем нашу только что созданную службу:

Ну всё, бот работает, проверяем:

Telegram бот статус сервера

Тестового бота @someTestBot, используемого для статьи, я удалил. Если кто-то в будущем займёт этот юзернейм, то это не я.

Что ещё можно сделать? Ну, вот эта строка — bot.polling() — в общем-то, означает бесконечно выполняющийся цикл запросов к серверам Telegram, что не очень правильно в плане потребления ресурсов на обеих сторонах. Лучше сделать так, чтобы приложение бота ожидало сообщения от Telegram. Это можно сделать, реализовав webhook. Когда доберусь до этого, дополню статью.

Наконец-то запилил инструкцию на webhook. Решил не добавлять здесь, а запостить новую статью.

Как создать своего бота в Дискорде

Discord — это бесплатный мессенджер, позволяющий пользователям общаться с помощью текстовых и голосовых сообщений. Кроме того, программное обеспечение поддерживает IP-телефонию и видеоконференции. Чаще всего приложение используется игровыми сообществами для участия в командных боях и киберспортивных мероприятиях. Несмотря на то, что мессенджер имеет закрытый программный код, пользователи могут использовать API, позволяющее написать своего бота для Discord. Для написания помощника потребуются базовые знания в области программирования. Далее мы поговорим о том, как создать своего бота в Дискорде, а также изучим основные команды.

Что лучше использовать для разработки

Нужно выбрать программную платформу, чтобы создавать собственного бота. Всего у нас есть два варианта: Node.js и всеми полюбившийся Python. Чем они отличаются, вы спросите?

Node.js

Да все очень просто, первый вариант — это среда разработки, использующая JavaScript. Разработчики все оптимизировали, поэтому Node.js позволяет взаимодействовать с устройствами ввода и вывода через свой API. Кроме того, допускается подключать разные языки программирования.

Python

А что второй вариант? Здесь все немного иначе. Python — это среда, использующая высокоуровневую динамическую типизацию. В основном ее используют именно для написания скриптов и создания бота.

Таким образом, написание бота в Discord должно начаться с обязательного выбора ПО. От этого будет зависеть конечный результат, а нам он нужен положительным. Каковы наши рекомендации? Попробуйте сделать помощника, используя оба способа, так вы приобретете и опыт, и начальные знания в программировании, а мы вам поможем. Рассмотрим оба варианта в подробностях — от создания каркаса, до тестирования.

Используем Python

Обновление Python

Нам нужно перейти на официальный сайт Python, чтобы загрузить последнюю версию среды разработки.

Установка библиотек

Дальнейшие инструкции такие:

  1. После скачивания установочных файлов, требуется выполнить инсталляцию софта на персональный компьютер.Установка
  2. После того как вы загрузили программный код, запустите командную строку от имени администратора из меню «Пуск».Меню Пуск-1
  3. Нужны команды для инсталляции. В первую очередь, требуется набрать «pip install discord».Ввод команд в CMD
  4. Начнется онлайн загрузка файлов.Загрузка в CMD
Создаем словарь

Теперь нам нужно обучить своего бота. Сделать это просто — пишем словарь:

Меню Пуск-2

  1. Открываем меню «Пуск» и в поисковой строке набираем «IDLE».
  2. Также производим запуск с правами администратора.
  3. Перед нами откроется редактор, чтобы написать программный код.
  4. Щелкаем «File» и «New File».

Теперь в окно вставляем следующий код:

IDLE Python

Далее нужно посетить сайт разработчиков Discord Developer Portal, просто вбейте наименование в поисковике:

  1. На странице нажмите кнопку «New Application». Discord Developer Portal
  2. В окне введите ваш логин и нажмите «Create».Создание приложения
  3. Откроется новая страница, где нужно перейти в раздел «Bot».
  4. Теперь нужно щелкнуть «Add Bot», чтобы создать бота Дискорд.Добавление бота
  5. Нам требуется токен, чтобы его скопировать, кликнете «Copy».Токен бота
  6. Скопируйте код в нужное поле.Редактирование кода-1
  7. Возвращаемся на страницу «General Information».
  8. Нам нужно скопировать пункт «Application ID».Основная информация
  9. Вставьте код в поле с наименованием «Client ID».
  10. Придумайте имя для бота.
  11. В поле «Префикс» укажите любой знак.Редактирование кода-2

Сохранение кода

Теперь сохраните полученный файл конфигурации в папку «Config», которую нужно создать самостоятельно.

Папка Config

Папка «Config» с файлом может выглядеть следующим образом, как показано на рисунке ниже.

Создаем каркас

Теперь нам нужно создать каркас для Discord bot. Здесь придется немного потрудиться, так как будем использовать команды в большом количестве:

  1. Вновь открываем файл IDLE через меню пуск, в котором мы ранее писали команды для словаря.Меню Пуск-3
  2. Вставьте в окно команды, позволяющие запустить импорт динамических библиотек: import discord, from discord.ext import commands. Вставляйте коды точно в таком же порядке, который показан на картинке.Подключение библиотек
  3. Теперь чуть ниже запишите: bot = commands.Bot(command_prefix = settings[‘prefix’]).Ввод новой команды

Нужно добавить основной код:

async def hello(ctx):

Далее идет функция и выглядит она следующим образом:

Добавление основного кода

Сохраняем документ привычным способом в папку «Config».

Запуск

Ну вот и мы подошли к тому, чтобы проверить работоспособность. После того как свой бот создан, нам нужно снова открыть файл IDLE. Далее прописываем такую команду:

Путь через командную строку

У вас путь к каркасу бота может отличаться. Кроме того, можно прописать путь к файлу через командную строку.

Откройте Дискорд с компьютера или телефона, чтобы проверить, есть ли бот в сети. Если вы наблюдаете отсутствие помощника, то проверьте отступы, ведь при программировании в Python нужно строго их соблюдать. Это поможет не стать заложником ошибок, таких как Syntax Error.

Используем библиотеку Node.js и JavaScript

Теперь мы расскажем, как осуществляется настройка бота в php Node.js:

  1. Нам нужно посетить сайт Node.js, чтобы скачать библиотеку.Сайт Node.js
  2. Произвести стандартную установку модуля на компьютер.Установка модулей Node
  3. Открываем командную строку и прописываем «npm init».
  4. После загрузки пользовательских команд, нажмите на клавиатуре Enter.
  5. Далее нам нужно инсталлировать пакет обработчиков, введя команду «npm install».
  6. Затем введите код «npm install discord.js», чтобы загрузить библиотеки API.Загрузка пакетов и библиотек
  7. Откройте пользовательскую папку и проверьте наличие таких файлов «package.json» и «package-lock.json».Пользовательская папка
  8. Теперь на рабочем столе создайте папку, а там два файла с наименованием «bot.js» и «config.json». Если напишешь неправильно расширение файла, то при запуске будет ошибка.Папка с базовыми файлами

Откройте последний файл и пропишите код:

Прописывание данных бота

Префикс можно использовать любой, а токен вы найдете на портале Discord Developer.

Основной код

Теперь откройте файл «bot.js» и пропишите следующие данные, которые показаны на рисунке.

Файл с ролями comms

Сохраняемся и создаем файл, где будут прописаны роли с наименованием «comms.js». Указываем команды, как показано на картинке.

Запуск

Чтобы запустить бота нам нужна командная строка:

Запуск бота в КС

  1. Запускаем командную строку.
  2. Вводим код с наименованием «node bot.js».
  3. И проверяем нашего бота в Дискорде.

Заключение

Создание своего бота в Discord процесс трудоемкий, но если соблюдать те инструкции, которые мы описали в статье, то у вас все получится. Мы рекомендуем попробовать каждый способ, а вы выберете для себя приемлемый.

Создаём бота в телеграмм. Выполняем команды на ПК. Уже делаем это прямо из Телеграмма. Часть вторая. ⁠ ⁠

Там мы сделали несколько горячих клавиш для удобства. Тут мы будем делать то же самое, но уже из Телеграмм-мессенджера. Это может пригодятся сисадминам. Удобно перезагружать серваки, выполнять скрипты, запускать бантики и т.д. Включайте фантазию (можно даже свет на даче выключать, если вы забыли это сделать перед отъездом).

Вообщем дальше делов минут на 9. примерно.

Первым делом нужно завести себе бота в Телеграмм. Если вы там не зарегистрированы, то регистрируйтесь. После этого нужно найти «человека» с именем @BotFather. Пишем ему «/newbot». После чего он просит придумать и ввести имя бота, а затем просит ввести и имя пользователя. От него нам нужно только то, что обведено красненьким на картинке ниже(token). Информация эта сугубо личная так, что сохраните и никому не показывайте)) Вот я завёл себе еще одного для примера.

Создаём бота в телеграмм. Выполняем команды на ПК. Уже делаем это прямо из Телеграмма. Часть вторая. Telegram бот, Рукожоп, Моё, Python, Быдлокодинг, Видео, Длиннопост

Вторым делом нам нужно установить страшную штуку под названием Python (на момент написания поста версия 3.6.2). Качаем, запускаем, ставим галочку, нажимаем инсталл. Всё)))

Создаём бота в телеграмм. Выполняем команды на ПК. Уже делаем это прямо из Телеграмма. Часть вторая. Telegram бот, Рукожоп, Моё, Python, Быдлокодинг, Видео, Длиннопост

Теперь нужно установить пакет для общения с Телеграмм.

Открываем командную строку. Для этого нужно открыть пуск, там есть строка для ввода буков. Пишем в неё «cmd» и нажимаем Enter. Либо Пуск —> Все программы —> Стандартные —> Командная строка. Щелкаем по ней правой кнопкой мыши и выбираем «Запуск от имени администратора». Так наверное будет даже лучше. Открыли и пишем туда «py -m pip install telepot» и нажимаем Enter. Увидите как будет появляться похожая картинка(она взята из просторов интернета ибо у меня уже стоит этот пакет).

Создаём бота в телеграмм. Выполняем команды на ПК. Уже делаем это прямо из Телеграмма. Часть вторая. Telegram бот, Рукожоп, Моё, Python, Быдлокодинг, Видео, Длиннопост

Ну, что же. Теперь нужно наговнокодить самого бота. Который будет выполнять какие-то действия, от каких-то команд написанных в Телеграмм. Сильно вникать не стоит, это ни к чему. Естественно вам нужно будет внести свои данные из первой части.

Создаём бота в телеграмм. Выполняем команды на ПК. Уже делаем это прямо из Телеграмма. Часть вторая. Telegram бот, Рукожоп, Моё, Python, Быдлокодинг, Видео, Длиннопост

ВАЖНО И ОЧЕНЬ ВАЖНО. Вот ВМЕСТО иксов, там где обведено красной линией, в строке №33, в скобочках промеж кавычек, нужно вставить как раз то, что нам дал «отец ботов» (@BotFather) — ваш token.

http://www.sublimetext.com/2 Программа для редактирования кода.

Ниже вписываете GUID своих схем электропитания. В принципе туда можно писать то, что вам нужно если вы знаете, что делаете. Это обычная команда для командной строки. В строке №36 такая же команда, но на выключение ПК. Потом идут адреса на смену устройства воспроизведения. На самом деле просто внимательно присмотритесь и вам всё станет понятно. Блин, написал и нарисовал как смог. Не художник я и в программирование не шарю).

if ‘/0’ in command: В кавычках команда которую мы будем писать в Телеграмм. Можно и слова и по русски но начинать нужно именно с косой палочки.

p = subprocess.Popen(cmd0, shell=True) А тут собственно выполняется команда которую мы задали для переменной «cmd0». Для понятности нарисовал длинную красную загогулину.

bot.sendMessage(chat_id, «Комп не уйдёт в спящий режим») А это ответ бота в чат.

Смотрите и читайте первую часть.

Всё, больше ничего делать не нужно. Запускаем бота и начинаем с ним общаться.

Создаём бота в телеграмм. Выполняем команды на ПК. Уже делаем это прямо из Телеграмма. Часть вторая. Telegram бот, Рукожоп, Моё, Python, Быдлокодинг, Видео, Длиннопост

Файлик с говнокодом нашего бота нужно положить в папку своего пользователя ПК. У меня это «C:\Users\naykob». Ну либо полностью пишите путь до того места, где он у вас будет жить. Вот так выглядит переписка с ботом.

Создаём бота в телеграмм. Выполняем команды на ПК. Уже делаем это прямо из Телеграмма. Часть вторая. Telegram бот, Рукожоп, Моё, Python, Быдлокодинг, Видео, Длиннопост

Вот вообщем-то и всё. Подключайте фантазию. Можно наделать всяких прикольных штук, вплоть до выключения утюга. Посмотрите другие мои посты. Там есть над чем поржать)))

Как создать бота в Discord

Как создать бота в Дискорде

В статье мы расскажем о том, как создается приложение для бота, выполняется первая авторизация на сервере и пишется общий код для нормализации работы. Имея «каркас», вы уже можете добавлять пользовательские команды и сразу проверять, как они работают.

Создание приложения и авторизация бота

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

  1. Перейдите по ссылке выше, чтобы оказаться на главной странице портала для разработчиков в Discord. Используйте личные авторизационные данные для входа в аккаунт. Авторизация на портале разработчиков для создания бота в Discord
  2. Создайте новое приложение, нажав кнопку «New Application». Переход к созданию нового приложения на портале разработчиков для создания бота в Discord

Выбор среды разработки

Перед началом работы с кодом в упомянутых языках программирования уточним, что вам понадобится установить текстовый редактор или специальную среду разработки, поддерживающую синтаксис Python или JavaScript (в зависимости от выбранного). Конечно, можно использовать просто «Блокнот», но по удобству он уступает специализированным программам. Просмотрите их списки в обзорах по следующим ссылкам и выберите для себя подходящий софт.

Выбор среды разработки для создания бота в Discord

Вариант 1: Python и библиотека discord

Если ранее вы не сталкивались с языками программирования или знакомы с ними только поверхностно, создание бота для Discord на Python — лучший выбор. Этот ЯП проще учится, компактный и имеет логически понятный синтаксис, поэтому идеально подходит новичкам. К тому же в сети есть огромное количество исходников с различными командами или уже готовыми ботами, которые ничего не мешает скопировать и использовать в своих целях. В следующих шагах вы узнаете, как создать «каркас» бота на Python и запустить его, чтобы проверить работу.

Шаг 1: Установка Python и библиотеки discord

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

  1. Воспользуйтесь ссылкой выше, чтобы перейти на официальный сайт Python и нажмите кнопку для загрузки его последней версии. Кнопка скачивания компонентов языка программирования для создания бота в Discord при помощи Python
  2. На новой странице отыщите инсталлятор для Windows и начните его загрузку. Выбор версии языка программирования для создания бота в Discord при помощи Python
  3. Дождитесь завершения скачивания и запустите установщик. Загрузка установочного файла компонентов языка программирования для создания бота в Discord при помощи Python
  4. Можно запустить установку без изменений, но обязательно отметьте галочкой «Add Python X.X to PATH», чтобы все переменные среды добавились автоматически и не возникло проблем при дальнейшем вводе команд. Кнопка установки компонентов языка программирования для создания бота в Discord при помощи Python
  5. Ожидайте завершения установки и на всякий случай перезагрузите компьютер, чтобы все изменения вступили в силу. Процесс установки компонентов языка программирования для создания бота в Discord при помощи Python
  6. Откройте «Командную строку» удобным для вас способом, например, отыскав приложение в меню «Пуск». Переход в Командную строку для установки библиотек ЯП для создания бота в Discord при помощи Python
  7. Напишите команду pip install discord и подтвердите ее нажатием клавиши Enter. Команда установки библиотек ЯП для создания бота в Discord при помощи Python
  8. Начнется загрузка файлов и в консоли «побегут» строки. Не закрывайте данное окно до завершения скачивания. Процесс установки библиотек ЯП для создания бота в Discord при помощи Python
  9. Как только появилась информация «Successfully installed», закрывайте «Командную строку» и переходите далее. Успешная установка компонентов ЯП для создания бота в Discord при помощи Python

Если Python у вас установлен, но команда для добавления подключаемой библиотеки не работает, выполните обновление компонента PIP, о чем рассказывается в другой статье на нашем сайте. Там же вы найдете инструкцию и по изменению переменных среды, если этого не произошло во время установки.

Шаг 2: Создание словаря бота

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

  1. Начните с запуска IDLE, отыскав добавленное приложение через меню «Пуск». Если вы скачали другую среду разработки, откройте ее и создайте новый проект на базе Python. Запуск среды разработки для создания бота в Discord при помощи Python
  2. После открытия нового окна вызовите меню «File» и выберите пункт «New File». Сделать это можно и при помощи комбинации клавиш Ctrl + N. Открытие нового файла в среде разработки для создания бота в Discord при помощи Python
  3. В новом окне, которое и предназначено для написания кода, вставьте блок

Шаг 3: Создание тела бота

Для обеспечения базового функционирования бота ему нужно создать «тело» — основной код для запуска и работы на сервере. Понадобится отдельный файл, который можно назвать как угодно, но обязательно сохранить его в том же месте, где находится созданный ранее словарь.

Создание файла тела для создания бота в Discord при помощи Python

  1. В среде разработки откройте меню «File» и создайте новый файл.
  2. Вставьте туда три команды, которые предназначены для импорта установленных библиотек и созданного ранее файла:

@bot.command() # Не передаём аргумент pass_context, так как он был нужен в старых версиях.
async def hello(ctx): # Создаём функцию и передаём аргумент ctx.
author = ctx.message.author # Объявляем переменную author и записываем туда информацию об авторе.

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

Использование альтернативного кода для создания бота в Discord при помощи Python

import discord
from discord.ext import commands
from config import settings

bot = commands.Bot(command_prefix = settings[‘prefix’])

@bot.command() # Не передаём аргумент pass_context, так как он был нужен в старых версиях.
async def hello(ctx): # Создаём функцию и передаём аргумент ctx.
author = ctx.message.author # Объявляем переменную author и записываем туда информацию об авторе.
await ctx.send(f’Hello, !’) # Выводим сообщение с упоминанием автора, обращаясь к переменной author.

bot.run(settings[‘token’]) # Обращаемся к словарю settings с ключом token, для получения токена

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

import discord
from discord.ext import commands

TOKEN = ‘Ваш токен’
bot = commands.Bot(command_prefix=’!’)

@bot.command(pass_context=True) # разрешаем передавать аргументы
async def test(ctx, arg): # создаем асинхронную функцию бота
await ctx.send(arg) # отправляем обратно аргумент

Шаг 4: Запуск бота

Теперь можно запустить бота для проверки, для чего понадобится созданный в Шаге 3 основной файл. Скомпилируйте его прямо через среду разработки или вызовите «Командную строку» и введите там python bot.py , где bot.py — название созданного файла. Если файл найти не удалось, укажите его полный путь, например python C:\Users\USER_NAME\bot.py .

Запуск основного файла для создания бота в Discord при помощи Python

Перейдите в Дискорд и проверьте текущее состояние бота. Он должен отображаться в списке участников в разделе «В сети» вместе с зеленой точкой.

Проверка статуса бота для создания в Discord после его создания при помощи Python

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

Вариант 2: JavaScript и discord.js

Следующий вариант создания бота для Discord — использование JS и подключаемой библиотеки discord.js, которая добавляет все необходимые компоненты для работы с ботами. Принцип действий отличается от предыдущего варианта лишь инструментами и разницей в синтаксисах языков программирования, но остается примерно таким же.

Шаг 1: Установка Node.js и discord.js

Расширить функциональность JS и превратить его в язык программирования общего назначения поможет платформа Node.js, установкой которой и рекомендуем заняться в первую очередь. Для этого выполните простейший алгоритм действий:

  1. Откройте страницу Node.js в интернете и выберите последнюю рекомендованную версию для скачивания. Кнопка скачивания расширенной платформы для создания бота в Discord при помощи JavaScript
  2. Дождитесь получения исполняемого файла и запустите его. Процесс загрузки расширенной платформы для создания бота в Discord при помощи JavaScript
  3. Следуйте появившимся на экране инструкциям, завершите установку и перезагрузите компьютер. Установка расширенной платформы для создания бота в Discord при помощи JavaScript
  4. Раскройте «Пуск» и через поиск отыщите классическое приложение «Командная строка». Переход в Командную строку для создания бота в Discord при помощи JavaScript
  5. В ней напишите команду npm init и активируйте ее нажатием Enter. Команда установки файлов пакетов для создания бота в Discord при помощи JavaScript
  6. Создайте стандартный пакет с пользовательской информацией, нажимая Enter после ввода каждого параметра, или оставьте все по умолчанию. Процесс установки файлов пакетов для создания бота в Discord при помощи JavaScript
  7. Когда все параметры пакета окажутся заданы, вы получите предупреждение, которое нужно подтвердить, снова нажав Enter. Успешная установка файлов пакетов для создания бота в Discord при помощи JavaScript
  8. Введите команду npm install для установки недостающих стандартных компонентов. Команда установки основных компонентов библиотек для создания бота в Discord при помощи JavaScript
  9. Дождитесь завершения их загрузки и появления строки ввода. Успешная установка компонентов библиотек для создания бота в Discord при помощи JavaScript
  10. Напишите npm install discord.js . Установка библиотеки для создания бота в Discord при помощи JavaScript
  11. Как только и эта команда выполнена, откройте папку своего пользователя и убедитесь в наличии созданных файлов пакета формата JSON. Проверка добавленных пакетов для создания бота в Discord при помощи JavaScript

Шаг 2: Работа с файлами бота

Все действия, связанные с файлами бота и программным кодом, рассмотрим в рамках одного этапа, поскольку делить их на несколько просто не имеет смысла. Вам понадобятся три основных файла, куда и вписываются все необходимые функции: один отвечает за конфигурацию бота, второй — за «тело», а третий хранит список добавленных команд.

Создание основных файлов для создания бота в Discord при помощи JavaScript

  1. Для начала создайте файлы «bot.js» и «config.json» в одном каталоге.
  2. Откройте через текстовый редактор или среду разработки «config.json» и добавьте туда такие строки:

<
«token» : «Ваш_токен»,
«prefix» : «Ваш_префикс»
>

const Discord = require(‘discord.js’); // Подключаем библиотеку discord.js
const robot = new Discord.Client(); // Объявляем, что robot — бот
const comms = require(«./comms.js»); // Подключаем файл с командами для бота
const fs = require(‘fs’); // Подключаем родной модуль файловой системы node.js
let config = require(‘./config.json’); // Подключаем файл с параметрами и информацией
let token = config.token; // «Вытаскиваем» из него токен
let prefix = config.prefix; // «Вытаскиваем» из него префикс

robot.on(«ready», function() <
/* При успешном запуске, в консоли появится сообщение «[Имя бота] запустился!» */
console.log(robot.user.username + » запустился!»);
>);

robot.on(‘message’, (msg) => < // Реагирование на сообщения
if (msg.author.username != robot.user.username && msg.author.discriminator != robot.user.discriminator) <
var comm = msg.content.trim() + » «;
var comm_name = comm.slice(0, comm.indexOf(» «));
var messArr = comm.split(» «);
for (comm_count in comms.comms) <
var comm2 = prefix + comms.comms[comm_count].name;
if (comm2 == comm_name) <
comms.comms[comm_count].out(robot, msg, messArr);
>
>
>
>);

robot.login(token); // Авторизация бота

const config = require(‘./config.json’); // Подключаем файл с параметрами и информацией
const Discord = require(‘discord.js’); // Подключаем библиотеку discord.js
const prefix = config.prefix; // «Вытаскиваем» префикс

function test(robot, mess, args) <
mess.channel.send(‘Test!’)
>

var comms_list = [ <
name: «test»,
out: test,
about: «Тестовая команда»
>];

// Name — название команды, на которую будет реагировать бот
// Out — название функции с командой
// About — описание команды

Для дальнейшей работы с командами достаточно будет объявить их функции и пополнить список соответствующими блоками кода. На примере готовый файл «comms.js» выглядит так:

const config = require(‘./config.json’);
const Discord = require(‘discord.js’);
const prefix = config.prefix;
const versions = config.versions;

function test(robot, mess, args) <
mess.channel.send(«Тест!»)
>

function hello(robot, mess, args) <
mess.reply(«Привет!»)
>

var comms_list = [ <
name: «test»,
out: test,
about: «Тестовая команда»
>,
<
name: «hello»,
out: hello,
about: «Команда для приветствия!»
>
>

Шаг 3: Запуск бота

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

  1. Откройте меню «Пуск» через поиск отыщите «Командную строку» и запустите ее. Переход к запуску приложения для создания бота в Discord при помощи JavaScript
  2. Введите node bot.js , где bot.js — название основного файла с кодом для бота. Если он находится не в вашей домашней папке, указывайте полный путь к файлу или сначала перейдите к расположению, используя команду cd . Запуск приложения для создания бота в Discord при помощи JavaScript через командную строку

Примеры полезных команд

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

const arggs = mess.content.split(‘ ‘).slice(1); // Все аргументы за именем команды с префиксом
const amount = arggs.join(‘ ‘); // Количество сообщений, которые должны быть удалены
if (!amount) return mess.channel.send(‘Вы не указали, сколько сообщений нужно удалить!’); // Проверка, задан ли параметр количества
if (isNaN(amount)) return mess.channel.send(‘Это не число!’); // Проверка, является ли числом ввод пользователя

if (amount > 100) return mess.channel.send(‘Вы не можете удалить 100 сообщений за раз’); // Проверка, является ли ввод пользователя числом больше 100
if (amount <
mess.channel.bulkDelete(messages)
mess.channel.send(`Удалено $ сообщений!`)
>)
>;
delete_messages(); // Вызов асинхронной функции

Вторая команда предназначена для подбрасывания монетки и запускается путем ввода !heads_or_tails в чате. Здесь код не такой сложный, поскольку действий мало и бот должен откликнуться всего на один запрос без огромного количества переменных.

var random = Math.floor(Math.random() * 4) + 1; // Объявление переменной random — она вычисляет случайное число от 1 до 3

В интернете вы можете найти другие полезные команды, которые хотите включить в своего бота, однако для работы с ними все же понадобятся продвинутые знания в JavaScript или Python, чтобы самостоятельно исправлять ошибки или редактировать код под себя.

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

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