Настройка плагина MenuBoard
0. Введение
0.1. Файлы
Путь к дистрибутиву: ftp://ftp.ucs.ru/rk7/INSTALL/RK7_MenuBoard/
Так же рекомендуем ознакомиться с руководством пользователя ftp://ftp.ucs.ru/books/menuboard_RK7_user_manual.pdf
0.2. Требования (рекомендации)
Видео плата - VGA Matrox M9140 512MB (или совместимая) (имеет 4 видео-выхода)
CPU - Intel Core i5
RAM - 8 GB
HDD – 250 GB
OS – Windows 7 Pro
M\B достаточное количество свободных PCI-E портов для подключения видео карт. Из расчета 1 карта (4 монитора) на 1 порт. Используется расширенный рабочий стол.
Панели вывода (TV): LCD панель wide 1920x1080 FullHD, DisplayPort, HDMI
Некоторые аспекты "железной" части подключения освещаются тут http://tracker.ucs.ru:8080/redmine/issues/36015?tab=history_comments .
Технология MenuBoard поддерживается начиная с версии 7.5.2.3XX для локального использования (когда в ресторане локально для подключения доступен сервер справочников).
Если ресторан сетевой, и в ресторане для подключения доступен только сервер отчетов, то MenuBoard работают с версиями 7.5.3.ХХХ.
1. Порядок настройки и запуска MenuBoard в одном ресторане
1.1. Выполнение скрипта MenuboardCreate.sql
В базе под управлением MS SQL SERVER создаются таблицы и процедуры с помощью скрипта MenuboardCreate_1.0.7.sql. Не забудьте указать имя вашей базы: USE [имя_базы], например USE [rk7]. Скрипт можно выполнить в среде SQL Server Management Studio. Скрипт выполнять на текущей базе РК7, используемой сервером справочников/отчетов ресторана!
1.2. Настройка и запуск Common server
Получить дистрибутив (ftp://ftp.ucs.ru/rk7/other/UCS_CS/CSSetup.exe) и установить Common Server.
Адрес и порт, запрашиваемый при установке Common server должны быть доступны на машинах с feature server'ами. В дальнейшем порт сервера можно поменять в его ини-файле (CS_Service.ini в папке установки Common server'а).
1.3. Настройка и запуск FS_High_Level.exe (Feature Server верхнего уровня)
Необходим для работы плагина в менеджерской части.
Рабочий каталог сервера - FS_high_level (лежит в архиве MenuboardFS_1.0.7.2.zip).
В папке редактируем файлы FS_high_level.ini и MSSQL_FS.udl и только после этого запускаем файл FS_high_level.exe.
1.3.1. Редактируем файл FS_high_level.ini
Образец файла FS_high_level.ini:
[FS_CONNECTION] url = http://127.0.0.1:8890/soap/IStructuresInfo urlSSL = start_port = 8890 DB_Connect_Count = 2 [CS_CONNECTION] url = http://192.168.1.1:7007/soap/UCSCommonWS urlSSL =
Описание параметров FS_high_level.ini:
Секция [FS_CONNECTION], параметр URL или URLSSL - указывается адрес Feature server'а верхнего уровня, который будет регистрироваться на Common server'е в зависимости от выбранного типа соединения.
Секция [FS_CONNECTION], параметр start_port - указывается порт, на котором данный Feature server будет работать
Секция [CS_CONNECTION], параметр URL или URLSSL - указывается адрес Common server'а.
В случае, если feature server устанавливается не на том компьютере, где установлен CommonServer, этот адрес должен быть виден CommonServer'у.
1.3.2. Редактируем файл MSSQL_FS.udl
В файле MSSQL_FS.udl настраивается соединение с накопительной базой данных RK7 в SQL Server.
Можно открыть данный файл двойным кликом или в блокноте и задать следующие параметры:
User ID=(имя_пользователя); Password=(пароль); Initial Catalog=(база); Data Source=(ip_сервера), (порт_сервера)\(имя_сервера).
Данные параметры можно посмотреть в менеджерской станции в справочнике Сервис -> экспорт данных -> настройки внешних БД.
1.3.3. Только после редактирования файлов FS_high_level.ini и MSSQL_FS.udl нужно запускать FS_high_level.exe!
1.4. Настройка и запуск FS_Low_Level.exe (Feature Server нижнего уровня)
Рабочий каталог сервера - FS_low_level (лежит в архиве MenuboardFS_1.0.7.2.zip).
1.4.1. Редактируем файл FS_low_level.ini.
Образец файла FS_low_level.ini:
[FS_CONNECTION] url = http://127.0.0.1:8891/soap/IStructuresInfo urlSSL = start_port = 8891 FSGuid={7BF6D21E-1D1D-4DB2-A877-DB047028B212} [CS_CONNECTION] RemoteURL = http://192.168.1.1:7007/soap/UCSCommonWS RemoteURLSSL = LocalURL = http://192.168.1.1:7007/soap/UCSCommonWS LocalURLSSL = [XMLInt] RefServAddress = 127.0.0.1:18881 CashServAddress = 127.0.0.1:17771 CashServPassword= RestaurantCode=39 StationCode = 1 ImageForMissing = image_for_missing.png
Описание параметров FS_low_level.ini:
Секция [FS_CONNECTION]
url=http://127.0.0.1:8891/soap/IStructuresInfo (или URLSSL) - адрес, с которым данный feature server будет регистрироваться на локальном Common server'е
start_port=8891 - порт, на котором данный feature server будет работать
В случае, если feature server устанавливается не на том компьютере, где установлен CommonServer, этот адрес должен быть виден CommonServer'у
FSGuid - это уникальный идентификатор данного сервера, по которому его будут запрашивать клиенты.
Секция [CS_CONNECTION]
RemoteURL=http://192.168.1.1:7007/soap/UCSCommonWS (или RemoteURLSSL) - адрес Common server'а в центральном офисе, к которому будет обращаться за настройками сервер нижнего уровня (в случае когда верхний и нижний сервер на разных машинах)
LocalURL=http://192.168.1.1:7007/soap/UCSCommonWS (или LocalURLSSL) - адрес Common server'а в лок. ресторане, на котором этот feature server должен зарегистрироваться . Для одного ресторана с одним CS - совпадает с предыдущим RemoteURL.
Пример: машина, на которой запущено приложение менюборда, может не иметь доступа за пределы ресторана. Менюбоард обращается за данными к локальному CS по LocalURL, на котром работает LowFS, а LowFS уже обращается за настройками к удаленному CS по RemoteURL, на котором работает High_FS. В принципе, если такого разделения доступа не требуется, то LocalURL и RemoteURL могут совпадать, т.е. пользоваться можно одним общим CS.
Cекция [XMLInt]
RefServAddress=127.0.0.1:18881 - указывается "адрес:порт XML-интерфейса сервера справочников" (работает ли xml-интерфейс, можно утилитой с фтп /rk7/ForDealers/XMLInterface/); порт такой же как в пункте 1.6.2. Начиная с версии 7.5.3.214 можно для данного параметра прописывать адрес и порт не сервера справочников/отчетов, а адрес:порт кассового сервера.
CashServAddress=127.0.0.1:17771 - указывается "адрес:порт XML-интерфейса кассового сервера" (проверить, работает ли xml-интерфейс, можно утилитой с фтп /rk7/ForDealers/XMLInterface/); порт такой же как в пункте 1.6.1
RestaurantCode=39 - указывается код ресторана (это свойство "Код" из менеджерской RK7, не путать с полным кодом), для которого FS должен будет получать настройки из центрального офиса и кассового сервера
StationCode=1 - указывается код станции (это свойство "Код" из менеджерской RK7), для которой будет через xml-интерфейс получать список блюд, цены, текущий бизнес-период и прочее.
ImageForMissing=image_for_missing.png - указывается картинка, использующаяся для блюд с отсутствующей картинкой. Файл должен лежать в папке с картинками блюд, указанной в менеджерской станции (см.п.1.6.3)
1.4.2. Запускаем FS_Low_Level.exe.
1.5. Настройка плагина для РК7
В менеджерскую необходимо скопировать плагин. В каталоге с менеджерской станцией создать каталог \plugins\ и скопировать в него содержимое архива MenuboardPlugin_1.0.Х.zip, сохраняя структуру файлов.
В файле menuboard_settings.ini в секции [CS_CONNECTION] задать адрес Common server'а (см.п.1.2.) для параметра WSDL, например: WSDL=http://192.168.1.1:7007/soap/UCSCommonWS
menuboard_settings.ini должен лежать в папке plugins\menuboard_settings\, а menuboard_settings.dll в папке plugins\.
1.6.1. Добавить XML-интерфейс на вкладку "Устройства" для кассового сервера и прописать порт (см.рис.1). Далее привязать данный интерфейс к логическому интерфейсу.
Рекомендуется для MenuBoard создать новый интерфейс как копию предустановленного XML-интерфейса в справочнике "Сервис -> Интерфейсы".
После изменений в справочнике "Сервис -> Интерфейсы" обязательно перезагрузить кассовый сервер!
1.6.2. Прописать порт у XML-интерфейса сервера справочников
1.6.3. Прописать путь к папке с картинками в параметрах РК7 (Настройки - Параметры - Установочные - Путь к каталогу с картинками). В данную папку поместить картинки для блюд (*.png) и файл image_for_missing.png для блюд без картинки.
1.6.4. Включить параметр Настройки - Параметры - Использование опций - Самообслуживание/Интернет заказы.
1.6.5. Создать бизнес-периоды (Настройки - Центральный офис - Бизнес периоды). Настроить использование бизнес-периодов.
1.6.6. В менеджерской станции (Расширения - MenuBoard configuration) в плагине настроить желаемые варианты отображения менюборда.
В плагине в дереве настроек создается новая настройка (ПКМ на самом левом дереве плагина - "Добавить настройку").
На вкладке "Основные свойства" в свойствах созданной настройки задаются координаты точки рабочего стола, от которой будут рисоваться экраны с блюдами. Настройка по умолчанию создается с одним экраном. Можно создать дополнительные экраны (ПКМ на дереве настроек - "Добавить экран"). Для каждого экрана задаются координаты, высота и ширина. Каждому экрану соответствует отдельный монитор, подключенный к видеокарте.
1.6.7. Настроить использования этих вариантов для ресторанов по бизнес-периодам (Расширения - MenuBoard using).
1.7. Настройка и запуск MenuBoard (AIR-приложения)
MenuBoard - это Adobe AIR-приложение. Поэтому перед запуском необходимо установить компоненты active-x для Windows.
Извлекаем содержимое архива MenuboardApp_1.0.7.6.zip и редактируем файл Settings.xml:
<Application>
<Settings
WSDLServer = "http://192.168.1.1:7007/wsdl/UCSCommonWS"
ServiceName = "UCSCommonWSservice"
ServicePort = "UCSCommonWSPort"
FSGuid = "{7BF6D21E-1D1D-4DB2-A877-DB047028B212}"
RequestInterval = "10000"
AssetsDirectory = "D:/UCS/RK7_MenuBoard/MenuboardApp/assets/"
>
</Settings>
<Log
Enable = "0"
Size = "25000000"
Name = "log"
Dir = "D:/UCS/RK7_MenuBoard/MenuboardApp/Log"
>
</Log>
</Application>
WSDLServer - путь к локальному Common server'у . Адрес common server'а должен быть доступен с этого компьютера.
AssetsDirectory - путь к папке с файлами оформления. Обычно: "[Путь, куда извлекли содержимое архива]/assets/"
RequestInterval - частоту запроса на обновление настроек в миллисекундах
FSGuid - Guid нужного FS_low_level (мог быть пустым в ранних версиях)
Запустить MenuBoard.exe.
1.8 Логика синхронизации файлов оформления
1. Если все запускается на одной локальной машине, то путь в settings.xml должен выглядеть так: [путь к папке плагинс]/menuboard_settings/assets/ .
В таком случае, при выборе картинки(видеоролика) для оформления рекламы и галереи из менеджерской, эти файлы автоматически копируются в подпапку Advert.
2. Если menuboardapp находится на другой машине, необходимо проверить следующее:
- путь в settings.xml к папке assets;
- внутри папки assets должны находится папки Advert, Dish, Interface и их содержимое должно соответствовать этим папкам в /plugins/menuboard_settings/assets/ для менеджерской станции на сервере справочников;
- создать каталог согласно параметру "Путь к каталогу с картинками" в менеджерской станции, сохраняя структуру папок и скопировать туда картинки для блюд с сохранением названия.
3. Либо в обоих случаях путь в settings.xml может быть произвольным, главное чтобы в этой папке находилось 3 подпапки Advert, Dish, Interface - содержимое которых соответствует [путь к папке плагинс]/menuboard_settings/assets/
4. Если приложение Menuboardapp запускается на удаленной машине, то файлы оформления следует синхронизировать либо самостоятельно (с учетом вышеупомянутой логики расположения папок), либо с помощью утилиты Synchronizer (есть на FTP rk7/INSTALL/RK7_XMLSecondScreen/Synchronizer.rar). Описание по настройке в архиве в ReadMe.txt
1.9 Рекоммендации по использованию форматов картинок
Если нужен прозрачный фон для блюд, используйте .png, если нет, то .jpg;
Не используйте .bmp, с ними могут быть проблемы с визуализацией и загрузкой , т.к. файлы такого типа обычно большого объема;
Размеры картинок блюд ~1280 по наибольшей стороне. Такие размеры обусловлены тем, что эти изображения могут использоваться в рекламах;
Размеры основного фона 1920x1080;
Ролики в формате .flv (vp6) разрешением 1920x1080, битрэйт особо высоким делать не рекомендуется.
2. Принцип работы MenuBoard в нескольких ресторанах
В центральном офисе должен быть установлен и постоянно запущен Common server и FS_High_Level.exe. Должны быть корректно настроены использования вариантов менюборда для ресторанов по бизнес-периодам.
В локальном ресторане должны быть установлены и запущены локальный Common server и FS_Low_Level.exe. Работать xml-интерфейс сервера отчетов и кассового сервера. Адрес Common server центрального офиса должен быть доступен на компьютере, на котором установлен FS_low_level.
При запуске MenuBoard (menuboard.exe):
- приложение делает запрос данных для отображения к локальному Common server (указанному в settings.xml), тот перенаправляет запрос fs_low_level
- fs_low_level, на основе настроек из ini-файла и текущего бизнес-периода, отправляет запрос на получение настроек Common server'у в центральном офисе.
- Common server центрального офиса перенаправляет запрос fs_high_level
- fs_high_level выбирает оформление, поставленное в соответствие данному ресторану и данному бизнес-периоду и возвращает результат Common server'у центрального офиса
- Common server центрального офиса возвращает полученный результат fs_low_level
- fs_low_level подставляет в полученную настройку текущие цены и изображения блюд, полученнные через xml-интерфейс и передает ответ локальному Common server
- локальный Common server возвращает актуальную настройку оформления менюборду, который выводит это на панели
- через заданный интервал (указанный в settings.xml) цепочка повторяется, на случай, если настройки изменились
FS_low_level после каждого запроса сохраняет полученнные из центрального офиса настройки и данные, полученные через xml-интерфейс. Так что, если связь между ним и Common server'ом центрального офиса оборвется, то fs_low_level будет отдавать AIR-приложению кешированные данные
В случае, если файлы графического оформления будет изменяться в центральном офисе, необходима синхронизация папки assets центрального офиса и ресторанов.
RK7 должен быть настроен на онлайн сбор данных о продажах для вычисления скидок.