ООО «ДиСофт»
Промышленность и оборудование
Россия
Февраль 2026
«ДиСофт» — российская компания, которая производит, устанавливает и обслуживает светодиодные экраны и табло для дорожной инфраструктуры, рекламы и городских пространств.
Раньше у «ДиСофт» не было своего ПО. Они либо поставляли экраны без программ, либо пользовались чужими решениями и дорабатывали их. Это создавало зависимость от других компаний и мешало гибко настраивать дизайн экранов. Управление требовало много ручной работы.
Заказчик точно знал, что ему нужно, и подготовил подробное техническое задание с картинками, схемами и описанием логики. С этим ТЗ он пришёл к нам. Мы начали с разбора и создания частных техзаданий (ЧТЗ) на каждый этап.
Задачи:
1. Разработать сервер, панель администратора и приложение-плеер для клиентов.
2. Сделать безопасный вход с разными ролями.
3. Создать визуальный редактор экранов с виджетами.
4. Добавить плейлисты и удалённое управление устройствами.
5. Сделать интерактивную карту устройств, где виден их статус.
Мы сделали микросервисную архитектуру. В проекте есть: административный модуль, отдельное файловое хранилище, модуль уведомлений и обмена данными между сервером и приложениями клиентов.
Сделали два уровня доступа. У администратора — полный контроль: он создаёт пользователей, назначает роли, сбрасывает пароли, блокирует «учётки», управляет видимостью устройств и групп для мастер-аккаунтов.
Мастер-аккаунт может создавать экраны, плейлисты, теги, управлять устройствами и группами. Но видит только те объекты, которые назначил администратор.

Администратор видит всех сотрудников и может одним кликом активировать и деактивировать их.
Все действия пользователей записываются. Для логов мы используем отдельную базу данных, чтобы не нагружать основную и хранить неструктурированные данные без потери детализации.
В журнал попадают все запросы к серверу: кто, когда, что делал, с какими параметрами и что получилось (успех или ошибка).
Устройство регистрируется через клиентское ПО. При первом запуске оператор вводит адрес сервера и уникальный ключ (UID). После подтверждения устройство появляется в админ-панели.
Пользователь задаёт название, описание, координаты, адрес, ширину и высоту экрана. Ещё можно назначить плейлист, ответственного и расписание через отдельное окно.
Чтобы было проще управлять сотнями табло, мы добавили группы. Перезагрузку, плейлист или расписание можно менять сразу для всей группы, что экономит часы ручной работы.

Устройство нельзя включить в группу, если его размеры экрана не совпадают с размерами группы.
Все устройства для визуального контроля показываются на интерактивной карте. Они отображены с разными маркерами для статусов «В сети/Активно», «В сети/Не активно» и «Не в сети».
При клике по маркеру видна вся информация и кнопка перезагрузки (доступна, только если устройство в сети). Можно перезагружать много устройств сразу, массово назначать плейлист или менять расписание.

Зеленый маркер — устройство онлайн и транслирует контент, серый — офлайн. При клике открывается попап с UID, статусом, группой и кнопкой перезагрузки.
Редактор — это рабочее поле с сеткой. Оператор перемещает виджеты мышью, меняет их размер и настраивает в панели управления. Ему доступно шесть виджетов: Текст, Изображение, Дорожный знак, Время и дата, Индикатор пробок, Маршрут.
При сохранении экрана система сама создаёт картинку-превью в PNG, чтобы её было видно в карточках. Если экран пустой или ни разу не сохранялся — показывается заглушка.

Оператор перетаскивает виджеты, задает их размер и сразу видит результат. Для каждого элемента реализована панель с точными настройками.
Плейлист — это очередь экранов, которая определяет, что и когда будет транслироваться на устройствах или группе устройств. Для каждого экрана задаётся порядок, время показа, дни недели, интервалы, период действия. Есть также «служебный экран» — он идёт в эфир, когда нет других экранов или устройство не работает.
Если размер экрана в плейлисте не совпадает с размером устройства — система не даст назначить плейлист и покажет пояснение. Так мы исключаем ошибки.

Каждый плейлист можно клонировать и редактировать, а также смотреть список привязанных устройств.
Для хранения картинок и GIF‑анимаций мы используем S3-совместимое хранилище. Файлы загружаются напрямую туда, а в базе данных хранятся только ссылка и метаинформация. Система проверяет форматы и размеры и не даёт удалить файлы, которые уже используются в экранах (с предупреждением, где именно).
Само устройство (плеер) хранит актуальный плейлист и расписание в локальной СУБД SQLite. Поэтому трансляция не прерывается, даже если пропала связь. Когда плейлист или расписание меняется, сервер отправляет команду, и плеер сам забирает новые данные и перезапускает воспроизведение — без ручного вмешательства.
Индивидуальная разработка позволяет закрыть даже самые уникальные потребности и автоматизировать то, для чего нет готовых решений. А своё ПО даёт бизнесу независимость и сильное преимущество перед конкурентами.
«ДиСофт» получил систему, которая упростила многие процессы:
· меньше времени на подготовку макетов благодаря редактору;
· больше прозрачности благодаря логам и истории каждого экрана;
· гибкость управления за счёт групп устройств;
· простой контроль экранов благодаря удалённому управлению.
![]()
Анастасия Осипова
Проектный менеджер
Проект был сдан досрочно благодаря оперативной обратной связи со стороны заказчика и четкому пониманию того, каким должен быть финальный результат. Система «Табло, дороги, оповещение» работает стабильно, не требует постоянных доработок и живёт ровно так, как задумано — без «костылей», без чужих технологий и без сюрпризов.