Варианты подключения сканера:
1. Провести эмуляцию COM-порта для сканера.
Утилиту можно запускать как приложение или службу
Запуски приложения производится запуском файла qrcodereader.exe на рабочем месте.
Установить компонент JRE (Java Runtime Environment) версии 8.0.2310.11.
Java_Runtime_Environment_(64bit)_v8_Update_231.exe
Настройка запуска службы:
Windows
Распаковать архив с утилитой. Запустить консоль CMD.exe от администратора. В консоли перейти в директорию утилиты командой cd, далее перейти в директорию согласно вашей архитектуре ОС. (/win32 или /win64)
Пример:
C:\Users\PC>cd /d d:\ |
D:\>cd\nssm-2.24\win64 |
Выполнить в консоли команду
nssm install QrcodeReaderService |
---|
, где QrcodeReaderService - наименование создаваемой службы. Появится окно настроек создаваемой службы.
Появится окно настроек создаваемой службы. В поле Path выбрать путь до утилиты qrcodereader. По умолчанию служба будет запускаться вместе с операционной системой.
Перейти в список служб windows и найти созданную службу по указанному имени. Вызвать контекстное меню службы по правому клику мыши и выбрать “Запустить".
Настройка сканера в приложении коммерческой аптеки.
Подключение сканера с типом "COM".
Настройка сканера штрихкода с типом подключения "COM"
Подключение сканера с типом "USB".
Настройка сканера штрихкода с типом подключения "USB"
Проверка работы сканера
Linux (ubuntu-образные)
Для облегчения настройки сервиса под Linux написан скрипт qrcodereader_install.sh
Добавить скрипту право на исполнение командой
|
После того, как сканер подключен и определился, запускаем скрипт командой
|
Вводим пароль.
Видим сообщения:
Обнаружено последнее подключенное к компьютеру устройство: Путь к устройству: ttyACM0 Серийный номер устройства: 14142B30FC Для подтверждения выбора устройства введите нажмите клавишу y.
Если устройство то, что нам нужно, жмём "y". После чего видим:
Добавлено правило udev 98-COM.rules Отправлена команда на перечитывание правил udev, для корректного назначения прав необходимо переподключить сканер к компьютеру. Создана служба QRCodereader service (/etc/systemd/system/qrcodereader.service) Created symlink /etc/systemd/system/multi-user.target.wants/qrcodereader.service → /etc/systemd/system/qrcodereader.service. Служба будет запускаться при старте системы в многопользовательском режиме. Служба запущена, состояние active.
Переподключаем сканер, идём в браузер http://localhost:8101/getQRBytes на сканирование, сканируем полис и видим примерно такую картину:
Примечания.
Если сканер не обнаружатся открыть файл /etc/systemd/system/qrcodereader.service и прописать порт
systemctl restart qrcodereader
Интересное.
Список устройств USB можно посмотреть командой lsusb. Найти сканер легче всего, если посмотреть список устройств до подключения сканера и после подключения.
bird@birdmint ~/Документы/qrcodereader $ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 1a2c:2c27 China Resource Semico Co., Ltd Bus 001 Device 020: ID 1a2c:0044 China Resource Semico Co., Ltd Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub bird@birdmint ~/Документы/qrcodereader $ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 1a2c:2c27 China Resource Semico Co., Ltd Bus 001 Device 020: ID 1a2c:0044 China Resource Semico Co., Ltd Bus 001 Device 024: ID 1eab:0d10 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
В этом случае добавилось устройство сканера Newland FM-420.
Или
bird@birdmint ~/Документы/qrcodereader $ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 1a2c:2c27 China Resource Semico Co., Ltd Bus 001 Device 020: ID 1a2c:0044 China Resource Semico Co., Ltd Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub bird@birdmint ~/Документы/qrcodereader $ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 1a2c:2c27 China Resource Semico Co., Ltd Bus 001 Device 020: ID 1a2c:0044 China Resource Semico Co., Ltd Bus 001 Device 021: ID 0c2e:090a Metrologic Instruments Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
В этом случае добавилось устройство сканера Metrologic Xenon 1900.
Для Alt.
Последняя на текущий момент сборка джарки qrcodereader-0.0.20-SNAPSHOT.jar под альтом не работает, падает при запуске из-за проблем с библиотекой jssc.
Работает версия qrcodereader-0.0.13-SNAPSHOT.jar. Для установки службой предназначен скрипт qrcodereader_install_alt.sh.