Spider Player Addon

12 апреля 2015

В одном из обновлений своей утилиты я сделал так, что название трека добавляется к ссылке как параметр запроса, который игнорируется vk, чтобы в подсказке я мог всё-таки увидеть название.

Недавно я слушал в Spider Player какой-то трек, и в его названии был слэш. В плеере в качестве названия отображалось то, что было после этого слэша, и я решил проверить, всегда ли это происходит. Оказалось, что плеер не слишком умно парсит имя файла из ссылки, и берёт просто всё от последнего слэша в строке до конца. Поэтому я быстренько изменил утилиту так, чтобы добавлялось не просто название трека, но ещё и слэш перед ним, и таким образом получил приличный вид названий для треков из vk. Добавил ещё длину трека, чтобы выглядело совсем как прослушивание треков оффлайн.

Кроме того, я поискал Spider Player по Github, и нашёл один-единственный репозиторий, в котором был веб-интерфейс для плеера на Meteor. Я никогда не пользовался веб-интерфейсом Spider Player, потому что не знал, что он вообще у него есть. Оказывается, можно сделать так, чтобы плеер выдавал инфу о своём состоянии и реагировал на простые команды по http. Сначала я побаловался с Meteor-версией, но потом решил пойти дальше.

Я написал расширение для Firefox, которое следит за состоянием плеера и выдаёт стильную подсказку с именем исполнителя и названием трека при переключении.

Оно также добавляет кнопочку, которая открывает небольшое окошко с минималистической версией плеера (да, только кнопка Play/Pause, но я всё равно даже ею не пользуюсь).

Но самое главное — оно добавляет в контекстное меню браузера возможность быстро добавить треки в плейлист. Если нажать правой кнопкой по ссылке на пост vk или если нажать правую кнопку на странице самого поста, то в менюшке будет пункт «Добавить в Spider Player». При этом расширение создаёт временный txt-файл для моей утилиты и небольшой bat-скрипт, который делает всё необходимое. Потом она запускает этот скрипт, скрипт запускает утилиту на Java и передаёт сгенерированный плейлист плееру. Всё это работает пару секунд, и при этом не требует правки файла и запуска утилиты скриптиком вручную.

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

P.S. Я ещё не придумал название, поэтому не выкладываю никуда. К тому же, кто вообще им будет пользоваться?