Уведомления о сканировании карты или штрихкода
Начиная с V10Preview1, в
INotificationService
добавлены три новых уведомления аппаратного уровня —
CardScanning, CardScanningFailed и CardScanned.
В отличие от
OrderEditCardSlided
и
OrderEditBarcodeScanned,
они вызываются независимо от того, какой экран открыт.
-
CardScanning— считыватель начал приём данных. Срабатывает не на всех типах устройств. Если уведомление было вызвано, следом гарантированно придёт ровно одно из двух:CardScannedилиCardScanningFailed. -
CardScanningFailed— срабатывает только если перед этим пришлоCardScanning. Считыватель начал приём, но данные не были получены — аппаратная ошибка считывателя или ошибка конфигурации (например, стоп-символ настроен неверно). Однако если данные физически получены, но не распознаны на уровне бизнес-логики (например, номер карты не принадлежит ни одному гостю или штрихкод не привязан ни к одному товару),CardScanningFailedне вызывается — вместо него срабатываетCardScanned. -
CardScanned— карта или штрихкод успешно считаны. Должен вернутьbool:trueостанавливает дальнейшую обработку,false— передаёт управление дальше.
Пример подписки на все три уведомления — класс
CardScannedHandler
в проекте Resto.Front.Api.SamplePlugin SDK.