Менеджер плагинов для клиента LastFM

В перерыве между состоянием ретроспективной рефлексии и созерцанием километровых постов dx'a немного пришел в себя и решил сделать какой-нибудь пост в блог.

В результате написал небольшую вспомогательную библиотеку, которая позволяет загружать-выгружать "плагины" в клиент LastFM. Если быть точным, то не совсем плагины, а своеобразные надстройки, которые я несколько раз описывал, например, тут и тут.
GUI минималистичен и выглядит следующим образом:

Функционал элементарен. Окно менеджера можно вызвать с помощью нажатия Alt+M. В контекст клиента LastFM библиотеку следует либо грузить инжектором, либо править импорты, либо ещё как-нибудь.

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

Исходный код и скомпилированная версия менеджера: скачать.

Дорабатываем DLL для LastFM

Как оказалось, библиотека для LastFM из статьи от 31.08.11 оказалась не особо юзабельной из-за нескольких досадных недоработок:
1. Клавиши управления не работали, если окно свернуто (связано с тем, что управление производилось с помощью SendMessage, но в свернутом состоянии окно не обрабатывает оконные сообщения, поэтому они переставали реагировать). (Спасибо Artik'у за наводку)
2. При сворачивании окна в трей и последующем восстановлении пропадали элементы управления, так как окно "уничтожалось".

Чтобы исправить эти моменты, я решил переписать библиотеку. В этой статье я опишу изменившиеся методы (к слову, CreateThumbnailToolbar и EnumWindowsProc остались без изменений).
Читать далее «Дорабатываем DLL для LastFM»

Добавляем в LastFM управление через панель задач

С появлением Windows 7 в системе появилась полезная фишка, позволяющая размещать элементы управления в панели задач, а именно в превью, которое высвечивается при наведении на элемент в панели. Однако, редко встретишь приложение, которое её использует. Из множества приложений, которыми я пользуюсь, на ум приходит только одно - Media Player Classic. Вот так выглядят элементы управления для него:

Так сложилось, что я люблю слушать "полу-радио", в частности, Last.fm. Но, к сожалению, в клиенте Last.fm нет поддержки этих модных кнопочек, поэтому мне захотелось добавить их в него собственноручно. Перечень действий, которые необходимо для этого, примерно следующий:
1. Находим хендл основного окна клиента.
2. Добавляем элементы управления.
3. Ставим свой обработчик оконных сообщений, в котором задаем поведение элементов управления.
Читать далее «Добавляем в LastFM управление через панель задач»

LastFM broadcast add-on

По жизни я довольно часто слушаю музыку и, в частности, интернет-радио Last.fm (благо, в США оно бесплатное). Однако, постоянно сидеть за компьютером утомляет, и возникает желание послушать радио в другой комнате, развалившись в кресле.
Читать далее «LastFM broadcast add-on»

Трафик с last.fm

Провел более-менее полное тестирование скрипта для last.fm, который выкладывал ранее.
Зарегистрировал домен в зоне net и немного поспамил его. В качестве партнерской программы выбрал mp3fiesta (сначала хотел mp3skyline, но что-то больно часто у них тдс лежит).
В итоге за 5 дней как-то так:
статистика mp3fiesta

Непонятно странное падение числа регистраций в последний день. 52$ - не фонтан, но зато без заморочек с аккаунтами, проксями, редиректами и прочим. Может быть, зря я выбрал партнерку по mp3, позже, если возможность рассылать без заморочек не накроется, попробую слать трафик на oemcash или вебкамеры. Возможно, конверт будет лучше.

Скрипт рассылки по last.fm

Скрипт для рассылки сообщений по известному ресурсу Last.fm.

  • Многопоточность
  • Ротация сообщений, аккаунтов
  • Подстановка названия группы (см. ниже)
  • Настраиваемая задержка

Рассылка идет по списку слушателей заданных групп. Проблем при рассылке по стенам нет (при рассылке личных сообщений нужно ставить большую задержку), капча при авторизации не наблюдается.
При тестировании было разослано ~10000 сообщений, в течении суток на сайт пришло ~1000 уникальных посетителей (микс из сша и европы).
Насчет конверта ничего сказать не могу, ибо не знаю куда такое сливать.

Собственно сам скрипт: скачать

GUI в Perl (Tk)

Интерфейсы в перл (Tk)

Решил немного попрактиковаться в написании скриптов с интерфейсом на perl.
Начать решил с базового модуля - Tk (да я знаю про Qt, но решил использовать Tk).
В качестве примера реализовал скрипт, который скачивает композиции из пользовательской библиотеки Last.fm

В итоге скрипт будет выглядеть примерно так:
lastfm downloader
Читать далее «GUI в Perl (Tk)»