README.md

custom-discord-bot

custom-discord-bot представляет собой discord бота с встроенным chat-gpt и классическими возможностями войс бота: воспроизведение музыки с youtube, музыкальная очередь, возможность скипать, ставить на паузу и останавливать треки.

Начало работы

Клонируйте репозиторий:

git clone https://gitflic.ru/project/hazkorj/custom-discord-bot custom-discord-bot

Создайте .env файл в директории проекта:

BOT_TOKEN=<Токен бота>
OPENAI_TOKEN=<Openai токен>
PORT=<Порт сервера>

BOT_TOKEN Обязательный параметр - токен вашего discord бота, взятый из его настроек

OPENAI_TOKEN Обязательный параметр - ваш openai токен для chat-gpt, взятый с офциального сайта openai

PORT Необязательный параметр - порт сервера

Если вы используете хостинг, он должен предоставить вам возможность задать данные переменные окружения другим способом.

Установите зависимости:

npm install

Запустите бота:

npm start

Для Docker:

docker build -t myapp .
docker run -p $PORT:$PORT myapp

Настройка бота и список команд

В файле config.json, находящемся в корне проекта, расположены настройки бота, а также список команд:

{
  "prefix": "$",
  "commandsData": {
    "test": {
      "name": "test",
      "description": "Команда для проверки работы бота"
    },
    "chatGpt": {
      "name": "chat-gpt",
      "shortName": "gpt",
      "description": "Chat GPT версии 3.5 turbo"
    },
    "voice": {
      "name": "voice",
      "shortName": "v",
      "description": "Воспроизведение музыки с youtube"
    },
    "pause": {
      "name": "pause",
      "shortName": "p",
      "description": "Поставить музыку на паузу"
    },
    "unpause": {
      "name": "unpause",
      "shortName": "up",
      "description": "Снять музыку с паузы"
    },
    "stop": {
      "name": "stop",
      "shortName": "s",
      "description": "Выключить музыку"
    },
    "leave": {
      "name": "leave",
      "shortName": "l",
      "description": "Выгнать бота из войс чата"
    },
    "skip": {
      "name": "skip",
      "shortName": "s",
      "description": "Пропустить трек"
    },
    "clear": {
      "name": "clear",
      "shortName": "c",
      "description": "Очистить музыкальную очередь"
    }
  }
}

Здесь prefix - это префикс для использования команд, вы можете изменять его на свой вкус.

В блоке commandData находится список команд с их названиями и описанием.

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

У команд есть 3 поля:

name (обязательное поле) - название для использования команды

shortName (необязательное поле) - короткое название для использования команды

description (необязательное поле) - описание комнады

На этом все, удачного пользования)

Описание

Кастомный discord бот с встроенным chat-gpt и возможностью проигрывать музыку

Конвейеры
0 успешных
0 с ошибкой