Перейти до вмісту

Розділ 3 — Застосунок Bridge (місток підключення обладнання)

Каса продажу працює в браузері, а браузер не може напряму спілкуватися з карткозчитувачем, принтером, вагами та дисплеєм клієнта. Застосунок Bridge — це той місток: він працює поруч із касою й підключає ці пристрої до каси.

Він має три форми, які всі виконують одне завдання (версія iOS експериментальна):

  • застосунок Android на планшеті
  • застосунок для настільних систем на комп’ютері (Windows/Mac/Linux)
  • застосунок iOS (експериментальний)
⚠️ Мова: інтерфейс застосунку Android фактично англійський. Лише кілька старих рядків перекладено німецькою; уся панель, яку бачить оператор (статуси, Power Guard, Keep Bridge Awake, журнали тощо), англійська.
💡 Зазвичай Ви налаштовуєте Bridge один раз, після чого він працює у фоновому режимі. Адресу Bridge Ви вводите в касі ← налаштування ← Bridge (посібник каси, розділ 9). Застосунок Android працює як стійка передпланова служба: він залишається активним, навіть якщо закрити застосунок зі списку, після оновлення автоматично запускається знову, а монітор кожні 30 секунд за потреби знову піднімає сервер.

3-1. Застосунок Android — сторінка статусу

Повноекранна сторінка (кіоск) з рядком підсумку вгорі та кількома картками статусу. Під час запуску Ви бачите повідомлення «Триває підготовка містка, підключення карткозчитувача та дисплея клієнта».

  • Загальний підсумок угорі сторінки, наприклад: «Місток готовий до оплати», «Карткозчитувач готовий, очікує браузер», «Браузер підключено / карткозчитувач офлайн», «Триває відновлення підключення карткозчитувача» або «Транзакція в процесі».
  • Картки статусу (кожна має кольорову крапку й слово статусу):
  • WebSocket — локальний порт, до якого підключається каса.
  • Браузер (Browser) — чи підключено касу.
  • Карткозчитувач (POS Terminal) — статуси: відключено / триває підключення / триває повторне підключення / підключено / зайнято (Busy) під час транзакції.
  • Дисплей клієнта — стан другого екрана.
  • Power Guard — захист акумулятора/процесора/Wi-Fi для запобігання розривам у режимі очікування.

Картка адреси Bridge

  • Показує адресу (локальну 127.0.0.1:PORT або мережеву адресу з IP пристрою), яку потрібно ввести в касі.
  • Кнопка режиму підключення тристанова й перемикається з кожним натисканням: локальний ← мережа ← автоматичний (Auto). Автоматичний режим вибирає мережу, якщо доступна локальна мережева адреса, і локальний в іншому разі.
  • Утримання кнопки режиму підключення: створення чи видалення токена сполучення — шестизначного коду, що додається до адреси (?token=XXXXXX), щоб підключитися могла лише авторизована каса. Цей токен діє лише в мережевому режимі (у локальному режимі ігнорується) й показується в адресі як «Paired/Open».

Інші картки та доступ до журналів

  • Power Guard → «тримати місток активним» (Keep Bridge Awake): відкриває налаштування акумулятора Android, щоб Bridge не відключився в режимі очікування.
  • Журнали: вмикаються/вимикаються кнопкою Enable/Disable Logs, а View Logs відкриває сторінку журналу; вимкнення очищає збережені журнали. Другий спосіб відкрити журнали — утримання (long-press) на смузі вгорі екрана.
  • Сторінка журналу: лише для читання — текст моноширинним шрифтом, який оновлюється щосекунди й прокручується донизу; кнопки поділитися/експортувати немає (щоб надіслати у підтримку, потрібно скопіювати вручну).
  • Сторінка дисплея клієнта: на другому екрані показує клієнту позиції та підсумок замовлення за допомогою вебшаблону. На Android автоматично прикріплюється до будь-якого підключеного другого екрана (без ручного вибору; при від’єднанні кабелю видаляється).

3-2. Застосунок для настільних систем — «LonioBridge — Host»

Невелике вікно керування для запуску Bridge на комп’ютері:

  • Форма налаштування:
  • Порт WebSocket (за замовчуванням 8088)
  • Адреса прив’язки (Bind): лише цей комп’ютер або вся мережа (за замовчуванням 0.0.0.0).
  • Дисплей клієнта: ручний вибір монітора, який буде дисплеєм клієнта (або жодного).
  • Запуск/зупинка для роботи містка; налаштування зберігаються у файлі ~/.loniobridge/host.properties між запусками.
  • Автозапуск (Autostart): через параметр --autostart (інсталятор на Windows налаштовує його зі скриптами активації/деактивації, щоб він піднімався під час увімкнення системи).
  • Режим без вікна (Console): із --console можна запускати без графічного інтерфейсу.
  • Панель статусу: стан сервера (зупинено / триває запуск / прослуховування на порту / недійсний порт / помилка), кількість підключених кас, стан карткозчитувача та індикатор зайнято/вільно (під час транзакції).
  • Звіт про активність: журнал подій із мітками часу; параметр Verbose для запису сирих кадрів карткозчитувача (лише для усунення несправностей).
⚠️ У вікні настільного застосунку немає вибору принтера чи ваг; лише порт, адреса прив’язки й дисплей клієнта. Принтер і ваги налаштовуються з боку каси, а Bridge запускає їх відповідно до повідомлення каси.

3-3. Які пристрої підключаються

  • Карткозчитувач: є два драйвери, які обираються у профілі термінала:
  • ZVT (за замовчуванням) — через мережу/TCP, з автоматичним повторним підключенням (backoff) та статусами триває підключення/відновлення/підключено.
  • GP Tom (SoftPOS) — драйвер Global Payments, який на тому самому планшеті Android спілкується із застосунком карткозчитувача GP (продаж/скасування/повернення; денне закриття цим шляхом App2App ще не підтримується).
  • Дисплей клієнта: вебшаблон (позиції та підсумок замовлення), який надсилає йому каса; Android прикріплюється автоматично, настільна система — з ручним вибором монітора.
  • Принтер:
  • ⚠️ На Android друк наразі лише приймається, але реальне виконання друку не реалізовано; справжній друк працює на настільній системі.
  • Настільна система має три способи: послідовний, системний принтер (Windows) і мережа/TCP (за замовчуванням, порт 9100); включно з обрізанням паперу та відкриттям грошового ящика.
  • Ваги: лише на настільній системі — послідовний або USB-HID, із розпізнаванням одиниці (kg/g/lb/oz) та стабільним/нестабільним режимом. На Android ваг немає.

3-4. Конфігурація, яку має знати особа, що налаштовує

  • Порт (за замовчуванням 8088) та адреса прив’язки (локальна на противагу мережі).
  • Різниця між 127.0.0.1 (локальна) та мережевою IP: якщо каса на тому самому пристрої, локальної достатньо; якщо на іншому пристрої, потрібні мережевий режим + IP, і обидва мають бути в одній мережі.
  • Токен сполучення (?token=…) лише в мережевому режимі.
  • Налаштування акумулятора Android (Keep Bridge Awake) для запобігання розривам.

3-5. Швидке усунення несправностей

Ознака

Що зробити

Каса каже, що пристрій не знайдено

Переконайтеся, що Bridge увімкнено; введіть у касі адресу, показану в Bridge, точно в касі ← налаштування ← Bridge.

Каса іншого пристрою не підключається

У Bridge поставте кнопку режиму на мережу й використовуйте IP-адресу (не 127.0.0.1); обидва мають бути в одній мережі.

Карткозчитувач постійно відключається (Android)

Натисніть «Keep Bridge Awake», щоб вивести пристрій із режиму сну акумулятора.

Хтось не може підключитися, хоча має

Можливо, активний токен сполучення; введіть правильний токен в адресі каси або видаліть токен утриманням кнопки режиму.

Друк на планшеті Android не працює

Справжній друк на Android ще не реалізовано; для друку використовуйте версію для настільних систем.

Щоб повідомити про проблему в підтримку

Увімкніть журнали, відтворіть проблему, потім на Android скопіюйте текст View Logs вручну (кнопки поділитися немає) або на настільній системі надішліть звіт про активність із Verbose.