Перейти к товару RFID-считыватель с Ethernet: передача номера карты по HTTP и MQTT
Как получить UID от ODNFC-LAN на сервере: HTTP-запрос, опрос считывателя или MQTT. Форматы стартовых шаблонов и ограничения доставки событий.
ODNFC-LAN может передавать прочитанную карту сразу в вашу сетевую программу. Способ обмена задаёт Lua-приложение в считывателе. При заказе можно выбрать стартовый шаблон, затем настроить адрес получателя и проверить обработку событий на своём сервере.
Какой способ обмена выбрать
| Задача | Стартовый вариант | Что учесть |
|---|---|---|
| Сервер должен сразу ответить, разрешён ли проход | HTTP-считыватель | Ответ управляет выходом замка, а не только отправляет журнал |
| Сервер сам периодически забирает последний номер | Опрос по HTTP | Шаблон хранит один UID, а не очередь всех касаний |
| Несколько программ получают события через брокер | MQTT | Нужно настроить брокер, подписчиков и правила обработки потерь |
Эти примеры показывают обмен, но не включают готовую базу сотрудников, расчёт рабочего времени или гарантированную доставку полного журнала.
HTTP: считыватель обращается к серверу
В шаблоне HTTP-считывателя параметр
net_dest содержит полный адрес обработчика, например
http://192.168.1.10:5000/check. Это пример адреса для локального стенда;
замените его адресом своей системы.
При чтении карты программа выполняет GET-запрос с параметром uid. Код
ответа 200 вызывает импульс управления замком, другой результат — отказ.
До подключения нагрузки проверьте назначение вывода и активный уровень на
своей ревизии устройства.
Если задача — только собирать номера, измените обработчик результата и уберите
управление замком из прикладной программы. Если задача — управлять доступом,
сервер должен возвращать разрешение только после проверки прав. Страница,
которая отвечает 200 на любой запрос, не годится как проверка пропуска.
HTTP: сервер опрашивает считыватель
Второй шаблон хранит последний UID.
Сервер читает его по пути /backend?action=get на адресе устройства.
После выдачи значение очищается.
Если между двумя опросами прочитаны разные карты, новое значение заменяет предыдущее. Такой вариант подходит для проверки обмена или сценария с управляемой последовательностью действий. Для регистрации каждого касания нужны очередь событий, номера записей и подтверждение их получения.
MQTT: публикация через брокер
В MQTT-шаблоне укажите в net_dest
адрес и порт своего брокера. Программа публикует UID как строку в тему
/odnfc/uid. Клиентский идентификатор формируется с использованием MAC-адреса
устройства.
Исходный пример использует QoS 0, не сохраняет сообщение как retained и не задаёт учётные данные брокера. В нём также нет постоянного журнала для досылки пропущенных касаний. Если эти функции нужны, добавьте и проверьте их в прикладной программе и настройках сервера.
Для нескольких точек согласуйте, как получатель узнает источник события: например, выделите тему для каждого считывателя или добавьте его идентификатор в сообщение. Одна общая тема с одним UID не содержит сведений о двери.
Проверка первого комплекта
- Подключите считыватель по руководству ODNFC-LAN и проверьте чтение ваших карт.
- Настройте IP-связность, адрес назначения и принимающий обработчик или подписчика. Сначала наблюдайте события без подключённого замка.
- Сравните формат UID с базой: порядок байтов, регистр и ведущие нули.
- Проверьте два быстрых касания, повтор одной карты и перезапуск получателя.
- Отключите сервер или брокер и убедитесь, что поведение соответствует проекту. Отдельно проверьте восстановление после возврата связи.
Доступ к устройству и брокеру, учётные данные и защищённый транспорт нужно настроить под сеть объекта. Демонстрационный обмен без аутентификации не подходит как готовая схема доступа через интернет.
Если дверь должна принимать решение без сервера, начните с автономной архитектуры. Для подбора комплекта пришлите в поддержку типы карт, формат сообщения и описание принимающего API.