Рисунок 1. Схема взаимодействия с Promobot Scanner Server
Программное обеспечение (далее - ПО) сканера должно быть установлено на компьютер, к которому подключен сканер. ПО сканера представляет из себя web-сервер, который распознает документы, отправляет команды на сканер (управление подсветкой, взятие кадра) и т.д. Общение с сервером происходит через REST API. Также некоторые сообщения приходят через socket.io (например, сигнал о том, что была нажата кнопка на сканере).
Примеры запросов:
- Запрос на сканирование. Для того чтобы сделать скан нужно отправить GET запрос по адресу http://localhost:5000/scanner/scan (на ПК, к которому подключен сканер и установлен Promobot Scanner Server) в результате будет получен JSON:
{
"status": "OK",
"data": "files/frames/4beb5dfd-4925-4ce8-8391-0425df3819b2.png"
},
при этом сам скан можно получить по ссылке http://localhost:5000/files/frames/4beb5dfd-4925-4ce8-8391-0425df3819b2.png, также файл скана будет доступен в C:\Program Files\Promobot scanner Server\files\frames\4beb5dfd-4925-4ce8-8391-0425df3819b2.png. Сканы хранятся на ПК в течении 2х дней. - Запрос на распознавание. Для того чтобы распознать документ нужно, положить документ на сканер и отправить GET запрос по адресу http://localhost:5000/scanner/scan_and_rec в результате будет получен JSON
{
"status": "OK",
"image_path": "files/frames/4beb5dfd-4925-4ce8-8391-0425df3819b2.png",
"doc_type": "rus.passport.national", "doc_conf": "0.87", "results": [
{
"name": "authority",
"is_accepted": true,
"confidence": 0.982,
"value": "ОТДЕЛОМ УФМС РОССИИ ПО ПЕРМСКОМУ КРАЮ В МОТОВИЛИХИНСКОМ РАЙОНЕ ГОР. ПЕРМИ"
},
...
{
"name": "surname",
"is_accepted": true,
"confidence": 0.998, "value": "ИВАНОВ"
}
]
},
где
doc_conf - точность распознавания документа в целом;
doc_type - тип документа;
image_path - скан документа (доступен по http://localhost:5000/image_path);
results - массив с распознанными данными.