ТЕХНИЧЕСКАЯ ДОКУМЕНТАЦИЯ

Документация: MD4_GoogleConnector — установка и настройка

> Медиадисплей > Интеграции > Интеграция с Google
Дата обновления: 18 июня 2026 г. Дата публикации: 18 июня 2026 г. Автор: Жапов Ананда

О проекте

MD4_GoogleConnector — это решение для отображения данных из Google Таблиц и внешних JSON-источников на экранах через сервер Медиадисплей.

Проект включает:
- Утилиту для однократного обновления данных (MD4_GoogleConnector.exe)
- Службу Windows для автоматического фонового обновления (MD4_ContentService.exe)
- Установщик, созданный с помощью Inno Setup


Состав установки

Компонент Назначение
MD4_GoogleConnector.exe Консольная утилита для обновления контента
MD4_ContentService.exe Служба Windows для автоматического обновления
credentials.json Файл авторизации Google API (пользователь добавляет самостоятельно)
Configs\*.ini Конфигурационные файлы для разных макетов
MD4_GoogleConnector.bat Консольная утилита с логами
ServiceInstall.bat Установка/удаление службы с выбором конфига
install_eventlog.bat Создание журнала событий (выполняется автоматически установщиком)

Требования


Установка

1. Запустите установщик

  • Файл: setup-md4-googleconnector_1.0.0.0.exe
  • Выберите язык и нажмите «Далее».

2. Прочитайте лицензионное соглашение

  • Если вы согласны, отметьте галочку и нажмите «Далее».

3. Выберите папку установки

  • По умолчанию: C:\Program Files (x86)\RBSOFT\MD4_GoogleConnector
  • Вы можете изменить, если требуется.

4. Выберите дополнительные задачи

  • Установить службу обновления медиа-контента — включите, если хотите фоновую автоматическую работу.
  • Создать ярлык на рабочем столе — создаст ярлык для запуска утилиты.

5. Выбор конфигурации (только если установка службы выбрана)

  • Выберите один из доступных конфигурационных файлов (flight.ini, menu.ini, statistic.ini и др.).
  • Этот конфиг будет использоваться службой по умолчанию.

6. Установка

  • Нажмите «Установить».
  • После завершения откроется окно с информацией о дальнейших действиях.

7. После установки

Если установлена служба

  • Служба автоматически создаётся с именем MediaDisplayContentService.
  • Журнал событий создаётся в Журналы приложений и служб → MediaDisplayContentService.
  • Служба запускается автоматически — если нету credentials.json, отключите службу через services.msc.

Если служба не установлена

  • Для установки службы вручную: в меню Пуск запустите ярлык «Установка службы (администратор)».

8. Добавьте файл credentials.json


Управление службой

Запуск/остановка

  • Через services.msc: найдите Служба обновления медиа-контента.
  • Через командную строку (администратор):
    cmd sc start MediaDisplayContentService sc stop MediaDisplayContentService sc query MediaDisplayContentService

Изменение конфигурации

Первый способ:
1. Остановите службу.
2. Запустите «Установка службы (администратор)»2 – Удалить службу.
3. Затем снова запустите «Установка службы (администратор)», выберите новый конфиг и установите службу.
4. После этого запустите службу.

Второй способ:
1. Остановите службу.
2. Нажмите Win+R, напишите regedit и откройте.
3. Скопируйте путь к службе Компьютер\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MediaDisplayContentService.
4. Найдите параметр ImagePath и поменяйте значение, например C:\Program Files (x86)\RBSOFT\MD4_GoogleConnector\MD4_ContentService.exe movie3, где movie3 - название конфигурации.
5. После этого запустите службу.


Настройка конфигурации

Конфигурационные файлы (.ini) лежат в папке Configs. Каждый файл описывает один макет.

Основные секции

[Default] — обязательная

[Default]
SpreadsheetId=ID_таблицы           # ID из URL Google Таблицы
ReceiverId=d1                       # Имя приёмника на сервере Медиадисплей
CredentialsPath=credentials.json    # Путь к файлу учетных данных
ApiUrl=http://127.0.0.1:5206        # URL сервера Медиадисплей
; OutputFileName=debug.json   (необязательно, для отладки)

[SwitchCover] — опционально

[SwitchCover]
Cover=MenuBoard                     # Имя макета на сервере

Секции контента

Примеры:

[Title]
Timer=300
enable=1
type=text
name=Заголовок
source=Лист!A1

[TableMenu]
Timer=10
enable=1
type=table
name=Меню
ListRange=Лист!B2:E7
columns=Name,Description,OldPrice,Price

[ChartSales]
Timer=60
enable=1
type=chart
charttype=bar
name=Продажи
ListRange=Лист!A2:B13

Поддерживаемые типы (type):

  • text — текст
  • table — таблица
  • chart — диаграмма
  • image — изображение (в контейнере Widgets)
  • video — видео (в контейнере Widgets)
  • external — внешний JSON (игнорирует остальные секции)

Типы диаграмм (charttype):
- bar — столбчатая
- line — линейная
- area — линейная с областями
- pie — круговая
- radar — лепестковая
- polar — полярная
- radial — кольцевая с процентами
- range_area — область диапазона
- timeline — временная шкала
- funnel — воронка
- candlestick — свечной график
- boxplot — коробочный график
- bubble — пузырьковая
- scatter — точечная
- heatmap — тепловая карта
- treemap — древовидная карта
- sparklines — спарклайны
- text — текстовая сводка

Подстановка месяца:
Используйте [month][monthName][monthEN] в ListRange и source.
Пример: ListRange=[month]!A2:C10 → в июне будет 6!A2:C10.

Режим внешнего источника

Если в конфиге есть секция [ExternalSource]:

[ExternalSource]
Timer=60
enable=1
type=external
DataUrl=http://192.168.1.100:8000/data.json

утилита загрузит данные по указанному URL и отправит их, проигнорировав все остальные секции.


Логирование

  • Утилита пишет логи в C:\Program Files (x86)\RBSOFT\MD4_GoogleConnector\Logs\.
  • Служба пишет события в Журналы приложений и служб → MediaDisplayContentService.

Коды ошибок

Код Название Описание
0 Success Успешное выполнение
1 ConfigurationError Ошибка в INI-файле
2 FileNotFound Файл не найден (credentials.json, конфиг)
3 GoogleApiError Проблема с Google Sheets API (квота, доступ)
4 InvalidDataFormat Неверный формат данных (повреждённый JSON)
5 NetworkError Нет доступа к серверу Медиадисплей

Удаление

  1. Откройте Панель управления → Программы и компоненты.
  2. Найдите MD4_GoogleConnector и нажмите «Удалить».
  3. При удалении служба и журнал событий удаляются автоматически.