Модуль интеграции биометрии Anviz (тонкий и толстый клиент)



Конфигурация для управления контроллерами Anviz и использования биометрической идентификации пользователя на основе Native-компоненты.

Конфигурация основана на разработке Алексея ака «Жолтокнижниг«

Порядок установки, интеграции и работы с устройствами Anviz.

*Функциональность проверена на устройствах:

— Контроллер доступа Anviz T5 Pro

— Сканер отпечатков пальцев Anviz UBio.

Установка конфигурации.

— Создать пустую базу-данных на сервере или локальном компьютере.

— В режиме конфигуратора загрузить конфигурацию из файла anviz.cf

— Запустить программу в режиме толстого клиента.

— После первого запуска распаковать необходимые библиотеки в каталог «bin» текущей платформы. Для распаковки используйте обработку «Сервисные функции».

Описание возможностей конфигурации.

Конфигурация предназначена как для самостоятельной работы, так и для интеграции в любую конфигурацию. Работоспособность текущей версии проверена на платформе 8.2.19 в режиме толстого клиента.

Конфигурация поддерживает основные команды взаимодействия с контроллером доступа, чтение записей таблиц авторизации и регистрации. Очистка таблицы регистрации, запись/удаление сотрудника в устройстве контроля.

Интеграция модуля в конфигурацию.

В режиме «Объединения конфигураций» выберите приоритет загружаемой конфигурации, снимите флажки у объекта Общие модули/Привелигированный модуль» и справочника «Сотрудники».

Если вы планируете использовать контроллеры Anviz T5 PRO, тогда в справочник сотрудники добавьте табличную часть «ТабТочек» из исходной конфигурации, или отключите соответствующий код в обработке «УправлениеПроходом».

Библиотеки устанавливаются аналогично отдельно стоящей конфигурации.

UPD 24.03.2024 Выложена версия 2.01 под управляемые формы. Тестировалась на платфоме 8.3.7.1860 с использованием модальности.  

20 Comments

  1. AntonONL

    Реализовал в самописной конфигурации авторизацию сотрудников магазинов по отпечатку, все работает отлично, но иногда сканер выдаёт предыдущий отпечаток, видимо застрявший в его буфере.

    Какие методы доступны для компонентаUBIO? Возможна ли очистка буфера сканера?

    Reply
  2. eskor

    В самом SDK отсутствует очистка буфера. Я сделал проще, поскольку сканер запускается периодически, я просто переинициализирую компоненту. Ложных срабатываний не было, но иногда сканер сам по себе зависает, по статистике — один раз на сотню-две попыток. Спасает передергивание USB и переинициализация. Перезагрузка компьютера не помогает, т.к не снимается питание с USB-порта. Поставщики тоже не могут решить вопрос с программным перезапуском устройства.

    С начала года на сканере работает сотня точек, достаточно устойчиво, сбои регистрируем раз-два в неделю в случайном порядке. Какой-то системы обнаружить не удалось, так что просто передергиваем при сбое или выключаем-включаем компьютер.

    Reply
  3. eskor

    (1) AntonONL, кстати, на неделе столкнулись с нештатной проблемой, после первого срабатывания сканера отпечатков, он постоянно генерил одни и те же двоичные данные, причем без разницы, приложен палец или нет. Решилось заменой «родного» шнура на аналог, хотя физику процесса я так и не понял 🙂

    Reply
  4. bogdan_king

    Однозначно зачет, но есть пару багов:

    1. Имена файлов при распаковке не совпадают со ссылками на них в конфигурации…

    Распакорвываем Avz.Dll Считываем AvzScanner.dll

    Распаковываем t400.dll считываем tc400.dll

    2. Управление Проходом ПриОткрытии(), забыл прописать :

    Иначе

    СканерПодключен=Истина;

    Найду еще чего то — отпишусь.

    Reply
  5. eskor

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

    Reply
  6. Flok

    Все работает , но куда включить 2. Управление Проходом ПриОткрытии(), забыл прописать :

    Иначе

    СканерПодключен=Истина;

    Reply
  7. eskor

    Проверить уже не могу, доступа к оборудованию нет. Сама конфигурация работала в реальных условиях.

    Reply
  8. boriskomissarov

    (7)А в конфигурации реализована только авторизация или же ведётся (может вестись) ещё и контроль учёта рабочего времени?

    Reply
  9. eskor

    Лог хранит сам контроллер вроде до 5000 записей, соответственно он успешно считывается. В самой конфе вставил отчет типа табеля.

    Сделать учет времени — проблем нет вообще.

    Reply
  10. KroVladS

    (2) Сергей К. (eskor)

    В самом SDK отсутствует очистка буфера.

    Не совсем понял как с сравнить два отпечатка.

    Вернее как идентифицировать пользователя только с помощью сканера отпечатков пальцев Anviz U-Bio, без контроллера.

    Reply
  11. eskor

    (10) В dll есть функция сравнения. Отправляешь туда массив отпечатков и проверяемый отпечаток — возвращается индекс найденного.

    Reply
  12. KroVladS

    (11)

    В dll есть функция сравнения

    Как функция называется?

    Reply
  13. eskor

    Это надо у Алексея спрашивать, он «прокладку» делал, или проще в его исходниках смотреть. Я использовал его команду-коннектор из Native-компоненты.

    Reply
  14. KroVladS

    (13)

    Функция называется AvzMatch, у Алексея она не реализована.

    Опять всё самому писать 🙁

    Reply
  15. eskor

    (14) Реализована, только он похоже у себя в публикации не обновил компоненту. Он ее добавлял позже, по запросу. В конфигурациях точно работает, проверено.

    Reply
  16. maxopik2

    У меня после команды «ОткрытьУстройство» сканер постоянно горит. Команда «ЗакрытьУстройство» его не тушит…, даже если закрыть программу.

    Reply
  17. eskor

    Да. Но эта особенность китайской библиотеки. Я в своё время пытался через дилеров этот вопрос решить, до сих пор та же история. Есть ещё проблемы, выше отписывался.

    Reply
  18. evn-zorin

    5 баллов!

    Reply
  19. eskor

    Спасибо. Хотя Алексей сделал самую сложную часть 🙂

    Reply
  20. fixin

    Компонента 32 разрядная или 64?

    В новых релизах используется 64-разрядный клиент, он не подключает 32-разрядную компоненту.

    Моя компонента написана на VB 6.0, увы на нем на 64 разряда не перекомпилировать.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *