Перейти к содержанию

Диагностика — iiko

С чего начинать

Основной журнал плагина:

%APPDATA%\iiko\CashServer\Logs\plugin-Broni.Front.Plugin.log

Рядом лежат журналы самого iikoFront, они нужны, когда плагин вообще не загрузился:

Файл О чём
plugin-Broni.Front.Plugin.log работа плагина: поиск брони, расчёт и применение скидки, отправка счетов
api.log подключение плагинов к хосту front.api
cash-server.log обнаружение плагинов и разбор Manifest.xml

Быстро посмотреть последние ошибки:

Get-Content "$env:APPDATA\iiko\CashServer\Logs\plugin-Broni.Front.Plugin.log" -Tail 100

Плагин не загружается

В журналах нет ни одного упоминания плагина

iikoFront его не нашёл. Проверьте по порядку:

  1. Структура каталога. Manifest.xml должен лежать по пути …\Front.Net\Plugins\Broni.Front.Plugin\Manifest.xml. Лишний вложенный уровень — самая частая причина.
  2. Точка в начале имени папки. .Broni.Front.Plugin — это выключенный плагин, уберите точку.
  3. Тот ли каталог iikoFront. Если на сервере несколько установок iiko, убедитесь, что плагин попал в каталог используемой.
  4. Перезапуск. Плагины подхватываются только при старте iikoFront.

cash-server.log ругается на манифест

Файл Manifest.xml повреждён или изменён. Распакуйте архив заново, не редактируя его содержимое.

В api.log — отказ по лицензии

Плагину не выделен лицензионный модуль front.api. Обратитесь к менеджеру Брони за идентификатором, назначенным вашей площадке компанией iiko, — см. Обзор.


Плагин загрузился, но скидка не применяется

В журнале есть [dryRun] would apply …

Всё работает правильно, плагин просто в проверочном режиме. Поставьте dryRun=false и перезапустите iikoFront — шаг 7 установки.

Про заказ вообще ничего не пишется

Плагин не связал заказ с бронью. Причины по частоте:

  1. Стол не сопоставлен. Заказ открыт на столе, который в Брони не привязан к этому же столу. Проверьте сопоставление столов в личном кабинете партнёра.
  2. Заказ открыт без брони. Гость пришёл не по брони — это штатная ситуация, скидки быть не должно.
  3. Бронь не в зеркале. Бронь создана только что, а синхронизация ещё не прошла. Подождите минуту либо убедитесь, что mirror.backendFallback=true.

В журнале — «бронь найдена», но скидка нулевая или не применена

  1. Время вне интервала действия брони. У каждой брони свой интервал; допуск на расхождение часов задаётся mirror.windowGraceMinutes (по умолчанию 30 минут). Проверьте, что часы кассового сервера идут верно.
  2. Тип скидки не найден. Название в iikoOffice должно совпадать с discountTypeName посимвольно, включая регистр. После правки в iikoOffice выгрузите изменения на кассы.
  3. Несовпадение способа расчёта. При applyMode=flexibleSum скидка в iikoOffice должна быть с расчётом «гибкая сумма»; при percent — процентной.
  4. У кассира нет права на скидку. Проверьте права роли в iikoOffice.

Скидка применяется не к тому счёту

Убедитесь, что заказ открыт именно на забронированном столе и что стол не был перенесён после открытия заказа.


Проблемы со связью

В журнале — ошибки синхронизации зеркала

Проверьте с кассового сервера:

Test-NetConnection -ComputerName broni.io -Port 443

Если порт закрыт — вопрос к ИТ-специалисту ресторана: нужен исходящий HTTPS. Часто мешает корпоративный прокси или фильтрация в антивирусе.

Проверьте также backendBaseUrl в настройках: адрес без опечаток, без слэша в конце.

Скидки продолжают работать

Обрыв связи не мешает применять скидки: условия уже в зеркале. Восстановится связь — зеркало догонит само.

В журнале — ошибка авторизации (401/403)

Токен площадки неверен или отозван. Скопируйте posToken из личного кабинета заново, целиком, без пробелов по краям. Перезапустите iikoFront.

Счета не уходят, очередь растёт

Каталог очереди — %APPDATA%\Broni.Front.Plugin\checks. Файлы в нём копятся, пока нет связи, и уходят сами после восстановления. Ничего удалять не нужно.

Если очередь растёт при живой связи — соберите журнал и обратитесь в поддержку.


Что приложить к обращению в поддержку

  1. Файл plugin-Broni.Front.Plugin.log (при возможности — с logLevel=Debug и воспроизведением проблемы).
  2. Версию плагина и версию iikoFront.
  3. Номер брони и время, когда скидка должна была примениться.
  4. Скриншот счёта, если скидка применилась неверно.

Ошибки мы видим и без обращения

Плагин автоматически сообщает нам о своих внутренних ошибках — с версией, настройками и версией ОС. Содержимое счетов и данные гостей при этом не передаются. Обращение всё равно ускоряет разбор: мы будем знать, какую именно бронь смотреть.

Обратиться в поддержку