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

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

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

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


person SaneDeveloper    schedule 21.04.2015    source источник


Ответы (3)


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

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

person Alex.D.Alexeev    schedule 23.04.2015

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

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

  1. Обзор XFS
  2. XFS Некоторые подробности
person Fagner Souza    schedule 26.04.2015

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

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

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

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

person dejvas    schedule 16.07.2015