Архитектура CEN/XFS

Я в целом прав, что преимущество использования интерфейса XFS состоит в том, что я могу написать программу, которая взаимодействует с устройствами (контактными площадками, кард-ридерами) только один раз? В результате (в идеале) я могу менять устройства, и мне не нужны никакие изменения в моем программном обеспечении. И это возможно благодаря использованию универсального интерфейса XFS. Я прав?

Поэтому я пишу программу, которая реализует некоторую бизнес-логику, она вызывает операции интерфейса XFS, библиотека XFS находит (как, кстати?) Библиотеку поставщика услуг, которая понимает запросы и команды из XFS, и эта библиотека работает с устройство напрямую. Я прав в этом?

Например, у меня есть документация и библиотека DLL (от производителя устройства) для устройства, с которым можно работать. Как понять, можно ли его использовать с инфраструктурой XFS? Я просто вижу в документации, что эта DLL предоставляет C-функции для работы с устройством.

3 ответа

Решение

О первой части вашего вопроса. Да ты прав. В идеальном случае XFS дает вам независимость от реализации устройства в вашем приложении. Вы можете использовать одни и те же команды и запросы для работы с различными моделями устройств.

О том, как XFS находит конкретную библиотеку устройств. Чтобы выполнить любую команду или запрос XFS, вы должны открыть "Логический сервис", который является символическим названием сервиса. Любая логическая услуга привязана к конкретному поставщику услуг. Вся привязка "логическая служба" <-> "поставщик услуг" хранится в реестре Windows. Любой сервис предоставляет Windows DLL с определенным интерфейсом. Dll должен экспортировать набор функций, названных как WFPxxx, где xxx - имя метода XFS. Более подробную информацию вы можете найти в документации XFS. Таким образом, не все библиотеки DLL поставщика являются библиотекой поставщика услуг XFS. Вы можете увидеть экспортированную функцию dll, чтобы определить, что это dll поставщика услуг XFS.

Основная цель CEN / XFS состоит в том, чтобы банковские системы (которые работают в банкоматах, киосках и т. Д.) Могли абстрагироваться от сложности аппаратного обеспечения (пример: у каждого производителя есть свое решение о том, как должен вести себя распределитель банкнот). На самом деле, эта цель не всегда полностью достигается, поскольку стандарт XFS очень открыт для различий в интерпретации. Из-за этого банки (банки и тому подобное) очень часто создают свою собственную интерпретацию XFS и требуют от своих поставщиков следовать. Это возможно, когда мы говорим о крупных банках (таких как Bradesco в Бразилии). Но для небольших банковских организаций, которые не покупают большой объем банкоматов и других терминалов, возможна другая альтернатива, такая как добавление уровня абстракции в верхней части уровня XFS внутри их систем, чтобы этот уровень имел дело с небольшими различиями в Интерпретация, которую производители дают стандарту XFS.

Я также рекомендую вам прочитать следующие статьи:

  1. Обзор XFS
  2. XFS некоторые детали

Вы собираетесь разрабатывать приложения WOSA/XFS. Затем вам нужно создать среду разработки, которая включает: a) установку XFS от производителя оборудования, если вы разрабатываете программное обеспечение для машины, которая уже используется на рынке FI (например, модель банкомата или киоска), б) или, если вы создаете свое собственное оборудование, которое включает в себя некоторые устройства XFS (например, кард-ридер, считыватель штрих-кода и т. д.) в конфигурации, это будет более сложным и очень сложным для реализации, потому что вы должны реализовать свой собственный порт стандарта CEN XFS, который включает в себя создание всего необходимого кода (dll, libs и заголовочные файлы) для вашего собственного XFS Manager, а также всех SPI устройств (Service Provider Interface), включая API SPI, отвечающий за общие функциональные возможности XFS. Это было бы не совсем рациональным вложением времени и денег, если бы ваше новое аппаратное FI-устройство нельзя было продать в количествах, по крайней мере, сотнями или даже тысячами. Но вы можете купить готовую установку XFS у различных поставщиков (NCR, Wincor, Diebold, Glory Solutions и т. Д.).

Это было бы первым шагом, чтобы предоставить вашей среде разработки и тестирования подходящую установку XFS (версия для разработки на компьютере devel, версия для тестирования на машине). Во-вторых, для нужд разработки приложений вы можете установить свою любимую среду C++ на свою машину разработки и среду отладки на тестируемом оборудовании.

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

Вы правы, XFS больше похожа на Java "пишите один раз, запускайте везде", поэтому нет необходимости поддерживать и внедрять программное обеспечение в будущем, если вы замените, например, устройство для чтения карт, которое больше не выпускается, на другое устройство даже от другого поставщика.

Другие вопросы по тегам