/YMDB

Музыкальный бот для Discord поддерживающий yandex music

Primary LanguageC#

YMDB - Yandex Music Discord Bot

YMDB это музыкальный бот для дискорда написанный на C# и используя библиотеки DSharp+, Yandex.Music.Api. Он воспроизводит в голосовом канале дискорда песни по запросу пользователей из сервиса YandexMusic.

Deployd Build

Зависимости

Для успешной установки и работы бота необходимо установить следущие зависимости:

Установка

Перед тем как начинать выполнять этот этап у вас должы быть установлены все необходимые зависимости.

Шаг 0

Выполните следующую команду:

sudo apt-get install libsodium23 libsodium-dev

Gentoo

sudo MAKEOPTS="-j8" emerge -av "<dev-dotnet/dotnet-sdk-bin-6.0" dev-libs/libsodium

Шаг 1

Склонируйте репозиторий

git clone https://github.com/Amir0715/YMBD.git $YOUR_DIR -b master

Шаг 2

Создайте файл BotConfig.json

Создайте файл BotConfig.json в каталоге YMDB/config и добавьте в него следующее:

{
  "token": "<DISCORD_BOT_TOKEN>",
  "prefix" : "<DISCORD_BOT_PREFIX>",
  "login" : "<YANDEX_MUSIC_LOGIN>",
  "password" : "<YANDEX_MUSIC_PASSWORD>",
  "downloadPath" : "<ABSOLUTE_DOWNLOAD_DIR>"
}

Рассмотрим его подробнее:

<DISCORD_BOT_TOKEN> - Ваш токен который вам необходимо получить на странице для разработчиков.
<DISCORD_BOT_PREFIX> - Префикс к командам для бота.
<YANDEX_MUSIC_LOGIN> - Ваш логин к аккаунту yandex.music.
<YANDEX_MUSIC_PASSWORD> - Ваш пароль к аккаунту yandex.music.
<ABSOLUTE_DOWNLOAD_DIR> - Абсолютный путь к аталогу для временного хранения аудиофайлов.

Чтобы получить токен необходимо:

  1. Создать на указанной странице приложение.
  2. На странице приложения нажать на вкладку Бот.
  3. На странице бота справа от аватарки кнопка скопировать.

Шаг 3

Соберите проект

Востановите зависимости проекта и соберите его следущими командами:

cd ~/YMDB
dotnet restore
dotnet build --no-restore

Собранное приложение будет лежать в каталоге $YOUR_DIR/YMBD/YMBD/bin/Debug/net5.0 с названием YMBD.dll.

Шаг

Добавьте бота на сервер

По ссылке выше (дискорд портал разработчиков) зайдите в свое приложение. Нажмите OAuth2 > URL Generator. Поставьте галку bot. в графе Voice Permissions Выставьте:

  • Connect
  • Speak
  • Use voice activity

В графе Text permissions Выставьте:

  • Read message history

Шаг 5

Запуск приложения

Запустить его можно вызвав команду:

dotnet $YOUR_DIR/YMDB/YMDB/bin/Debug/net5.0/YMBD.dll

Управление ботом.

Все команды пишутся с использованием префикса, указанного вами ранее в конфиге следующим образом: "префикс команда аргументы ( если требуются)" Разделенные пробелами.

Основные команды

Команды указаны в виде "сокращение-полная команда (список возможных аргументов через запятую) # описание" Аргументы относятся как к сокращенной, так и к полной команде

j-join (название канала) # присоединиться к голосовому каналу
p-play (url, название песни, группы, плейлиста, альбома) # запустить проигрывание (...) иногда нужно пару раз вызвать
s-stop
se-search(название трека)
n-next
le-leave # выйти из канала