vknplayer

0.0.44-alpha3 • Public • Published

README

vknplayer - это двухпанельный консольный аудио-плеер для воспроизведения музыки с vk.com написанный полностью на Node.js с использованием фреймворка blessed. В будущем планируется поддержка других ресурсов.

для компиляции модулей lame и speaker требуется наличие в системе make gcc libasound2-dev libmp3lame-dev libmpg123-dev и самого nodejs установить их можно коммандой

# apt-get install nodejs make gcc libasound2-dev libmp3lame-dev libmpg123-dev 

Интерфейс плеера состоит из двух панелей, панели функциональных клавиш и строки ввода команд. Правая панель - статическая, представляет из себя плейллист, который наполняется с помощью команд search и radio. Левая панель содержит виртуальные каталоги Друзья, Сообщества, Новости, Закладки и др. Соответственно можно слушать свою музыку, друзей, групп. А так же музыку из новостей, и лайкнутых вами постов.

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

  • ['play'] - без аргументов - начать воспроизведение текущего плейлиста, с аргументами - аналогична комманде search
  • ['stop'] - остановить воспроизведение
  • ['next'] - играть следующий трек
  • ['prev'] - играть предыдущий трек
  • ['volume', 'v'] - задать значение громкости - 0..100
  • ['shuffle', 'sh'] - перемешать активный плейлист
  • ['search', 's'] - искать заданного исполнителя. При этом композиции с одинаковым названием удаляются. То есть количество дублей сводится к минимуму
  • ['radio', 'r'] - играть радио, на основе заданного исполнителя. Алгоритм используется от vk.com
  • ['exit', 'quit', 'q'] - закрыть приложение

Перевод фокуса в консоль происходит клавишей Space. Из консоли в основной интерфейс - клавишей Esc. Особо хочется отметить возможность работы плеера на мини-компьютерах Raspberry-Pi, Banana-Pi, CubieBoard и др. платформах, поддерживающих NodeJS.

Авторизация. Если в момент запуска плейер не обнаруживает конфигурационный файл($HOME/.config/vknp/config.json), то появляется попап с просьбой авторизоваться. Можно авторизоваться двумя способами

  • первый сводится к нажатию кнопки получения ID, и последующем вводе его на интернет-странице плеера(которая сейчас представляет собой только поле для ввода, и кнопку получения токена). Подтверждение вами прав для приложения, генерации токена, и автоматическом получением его приложением. После этого остается его только перезапустить. Недостатком данного способа является невозможность получения прав для доступа к Стене пользователя, и соответственно, пропадает часть функционала - нельзя получать группы новостей, нельзя получать список закладок(лайкнутые вами посты)
  • второй способ менее удобный, но при этом доступен весь функционал. Нужно пройти по ссылке(на странице представлен укороченный вариант, но можно увидеть и полный url), и после редиректа прочитать сообщение от Администрации VK.COM. Понять, что вам это не грозит, скопировать содержимое адресной строки, и вставить в соответствующее поле в плеере и нажать либо Enter, либо кнопку Submit. Затем необходимо перезапустить приложение.
  • прямой авторизации не предусмотрено, так как я считаю это не безопасным, и так же не хочу брать на себя ответственность в получении вашего логина и пароля

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

Для работы требуется установленный Node.js

# apt-get install nodejs npm

Установить плеер можно локально, склонировав репозитарий к себе, и выполнив в каталоге с плеером npm install для установки зависимостей. Или глобально - коммандой sudo npm install -g vknplayer Запуск. Если вы устанавливали через npm, то достаточно выпонить в консоли vknplayer. В противном случае выполните ./vknplayer.js или ./vknp из каталога с приложением. Из-за особеностей реализации модуля lame-node консоль периодически засирается всяким мусором. Исправить можно либо ресайзом окна, либо использованием bash-скрипта запуска vknp.

В планах#

  • исправление ошибок
  • поддержка других музыкальных он-лайн сервисов
  • веб-интерфейс

Package Sidebar

Install

npm i vknplayer

Weekly Downloads

2

Version

0.0.44-alpha3

License

MIT

Last publish

Collaborators

  • kicumkicum