Closet Music — музыка, которую слушают без свидетелей из-за боязни быть осмеянным.
Музыкой в уборной сегодня никого не удивишь. Однако когда встает вопрос организации таковой в родном офисе, всплывает много подводных камней. Ранее такой вопрос у нас не вставал — мы более 10 лет жили и работали в СПбГЭТУ (ЛЭТИ), пользуясь институтскими туалетами.
Переехав пару месяцев назад в новое офисное помещение, мы получили в распоряжение санитарно-гигиенический блок следующей конфигурации. Большая половина была безжалостно отобрана без вопросов отдана женщинам. Кроме площади, там больше умывальников и зеркал. Кабинки организованы МДФ-перегородками, стены гипрочные с минерально-ватным наполнением, стандартный подвесной потолок. Одним словом, звукоизоляция никакая – ни расслабиться, ни выдохнуть громко. На корпоративном вики в разделе «Улучшение юзабилити нового офиса» просьба организовать музыку в туалете появилась достаточно оперативно.
Кстати, решение музыкального вопроса по времени совпало с международным днем туалетов (19 ноября) и десятилетием Всемирной туалетной организации (англ. World Toilet Organization (WTO)), не путать с торговым ВТО.
К решению вопроса мы подошли со всей серьезностью и ответственностью, PMBOK нам в помощь.
Видение продукта
Британские ученые утверждают, что чем быстрее расслабятся сфинктеры, тем быстрее сотрудник вернется к работе. В идеале, после посещения туалета, программисты должны более лучше кодить, тестировщики – не только находить больше багов, но всячески улучшать качество ПО, а сейлзы – лучше консультировать и больше продавать софта и услуг.
Планируемые расходы — 3000 руб.
Временные рамки: один, максимум два часа
Персонал: два сотрудника
Основные риски проекта:
- Выход за рамки бюджета и сроков,
- Музыкальный и звуковой спам,
- Наезды правообладателей музыкального контента,
- Справился не под ту музыку — остался недоволен.
Функциональность продукта:
Основная
- Воспроизведение музыки;
- Возможность удаленной коллективной работы с плейлистом;
- Регулировка звука: уровень громкости, тембр;
Дополнительная
- Возможность устанавливать пользовательские предпочтения.
- Режим работы. Включение/выключение при входе/выходе в помещение пользователя, отключение на ночь/выходные/праздники.
Нефункциональные требования:
- Одинаковый уровень звучания в мужской и женской частях туалета,
- Производительность. Воспроизводить музыку различных форматов, стилей и жанров.
- Сохранность данных.
- Безопасность любая.
Проектирование и реализация
Глобально были рассмотрены и апробированы следующие два варианта:
1) Радиоприемник
Несколько лет назад, при покупке многопользовательской лицензии 1С, в качестве бонуса дистрибьютор предлагал музыкальный центр. После пары звонков с требованием предоставить обещанное, нам был торжественно вручен тумбочный радиоприемник-часы.
Вариант установки его в туалет был практически сразу отклонен. Ужасное качество звучания, неудобство управления, невозможность без доработок получить одинаковый уровень громкости в М и Ж туалетах.
2) Колонки + источник звука (MP3-проигрыватель, сотовый телефон и т.д.)
В ближайшем компьютерном магазине были куплены колонки, выбор остановили на двухполосных колонках SVEN SPS-700. При помощи упаковочной ленты, оставшейся после ремонта, и пары крепежей под гипрок, колонки были повешены за подвесным потолком. Питание (220V) взято от розетки бойлера, удачно обнаруженного за потолком. Запитываться от «света» или бросать отдельную линию, хоть и распределительный электрощит за стенкой, не хотелось.
Реализация №1 (Временная)
В качестве источника звука использовали iPhone первого поколения.
Удаленное управление телефоном планировалось реализовать по Wi-Fi, например приложением Veency, доступным для джейлбрейкнутых телефонов через Cydia installer.
Плюсы: моментально реализовали главную функцию — воспроизведение музыки.
Минусы: реализация остальных основных и допфункций трудозатратна, либо невозможна.
Реализация №2 (Текущий вариант)
В качестве источника – сервер (!!!), стоит за стенкой. Связь с колонками – через голубозубую гарнитуру Ericsson HBH-DS200. У него давно сдох аккумулятор и по основному назначению использовать не имелось возможности. Для наших целей девайс вкупе с блоком питания подошел идеально.
Основное назначение сервера — работать в качестве «Сервера Терминалов» для нужд десятка офисных сотрудников и никаких «развлекалочек» там не предполагалось. Поэтому, для проигрывания с него музыки пришлось добавить необходимые программно-аппаратные компоненты. Был отрыт в куче мелочей старый bluetooth-адаптер «без роду и племени», который, вполне ожидаемо, с первого раза работать на Windows Server 2008R2 не захотел и драйверов в Центре Обновлений также не нашлось. Пришлось попробовать ПО от нескольких вендоров, и в конечном итоге остановиться на Toshiba Bluetooth Stack.
С другой стороны, Windows Media Player и сопутствующие компоненты были без проблем установлены через Диспетчер Сервера. Самый большой костыль в этой системе пришлось вставить когда выяснилось, что при подключении через Удаленный Рабочий Стол, в системе напрочь отказывалось появляться аудио-устройство от подключенной через bluetooth гарнитуры. Путем небольшой консультации с гуглом было установлено, что данная схема будет работать только через вход в сервер напрямую в сеанс «console», то есть, с физической клавиатурой и монитором. Очень не хотелось для регулировки громкости, а также для изменения трека, особенно на начальном этапе, бегать в серверную. Поэтому, при рабочем RDP, на сервер дополнительно был установлен ultraVNC, через который далее и производилось подключение.
Музыка бросается в расшаренную сетевую папку. Как выяснилось, Media Player вполне корректно обрабатывает добавление/удаление файлов из своей библиотеки, поэтому не пришлось заморачиваться с дополнительными средствами для актуализации плэйлиста.
Конечно, некую громоздкость управления полученной схемы сложно отрицать, однако, при работе в автономном режиме, то есть, без какого-либо участия пользователя, кроме закидывания/удаления трэков из сетевой папки, этим фактом можно пренебречь.
Плюсы: все основные функции реализованы полностью. В сроки и бюджет уложились.
Минусы: пока нет.
Границы проекта: в рамки текущей версии проекта попали только основные функции. По одним дополнительным функциям уже есть видение, но надо прилаживать ручки. Например, «Режим работы» реализовать виндовым таск шедулером, по другим — надо думать.
Фича реквесты и ту мачи:
- Занятость туалета количественная и качественная (кем и какие кабинки): с коридора (как в фирменных поездах), с рабочего места;
- Closet music ordering system — предзаказ любимого трека,
- Согласование музыки с соседом(ями),
- Проигрывание другого звукового контента, например подкастов,
- ...
Таким образом, сотрудники теперь имеют восхитительную возможность не только прослушивать музыку во время посещения туалета, но и влиять на то, что будет слушать весь наш дружный коллектив. Перед тем, как реализованная система была запущена в промышленную эксплуатацию, все были предупреждены, что загрузка всяческого трэша приведет к включению режима жесткой модерации треков. Однако на данном этапе она не требуется – в нашем туалете мирно соседствуют лирические композиции Nightwish, саундтреки из м/ф «Чип и Дейл спешат на помощь», забойные хиты группы «Чайф» и многое-многое другое.
Коллеги, приходилось ли вам выполнять аналогичные проекты?
Будем рады услышать о вашем опыте, предлагайте разные фичи и варианты их реализации.
P.S.: Соисполнитель проекта (с бешенный глаз по офис бегал, лестница держал, провод стена толкал, шуруп-муруп крутил) и соватор статьи — staskin1, по совместительству наш гендир. Большое спасибо mpolozova за вычитку и корректуру.
Автор: ltarantsev