繁体   English   中英

如何使用 XFS 标准管理 ATM 的整个设备(例如自动取款机)?

[英]how can I manage the entire device (eg dispenser) of the ATM using the XFS standard?

我目前正在从事一个 ATM 项目。 ATM 由四个主要设备(取款机、票据接受器、读卡器、打印机)组成。 据我所知,要管理所有 ATM 设备,您需要使用 XFS 标准。 我使用 C# 编程语言工作。 我在这里这里在网上找到了一些例子,但我不明白。

我的问题是:如何使用 XFS 标准管理 ATM 的整个设备(例如自动取款机)?

好的,这不会是您所期望的,但您需要做的第一件事是:

  • 您应该从您将使用的 ATM 提供商处收到开发文档。
  • 此外,请查看CEN XFS 文档,因为这些文档至少在 NCR 的情况下用作标准操作的参考。

在您通过文档熟悉 API 后,您可以使用您在问题中引用的 C# API 实现中的任何一个来实际使用文档中引用的设备命令。

CEN XFS API 是纯 c-API,因此所有命令都使用非常有限的 function 集。 这些函数的参数被传递给设备特定的服务提供者(您使用 XFS 管理器打开)。 有些设备,比如纸币回收设备,实际上是复合设备,需要多次打开。 设备支持的每个 CEN XFS 接口一次。

在非常高级的伪代码中,这是管理 XFS 设备的流程:

Open XFS Manager
For each device:
  Open device
  Register to listen device events
  Check device status (and capabilities in case you are working in multi ATM environment so that you know what device you are dealing this time).
  Setup device if need be and recover any error conditions reported in device status

Start the service loop (Providing ATM service to customers if ATM is healthy and
  maintenance personnel to execute tasks like maintaining faulty
  devices and loading cash into the ATM etc.)

这绝不是一件容易的事,因此我建议您首先通过 ATM 制造商提供的课程获得基础知识,您的软件旨在处理这些课程。 我认为所有人都会有自己的培训计划,尽管我只能说 NCR 提供的 ATM 就是这种情况。

XFS.Net 和 XFS4NET 到目前为止还不是完整的 CEN XFS 的.Net 包装器实现。

将本机 C 数据结构转换为 .Net/C# 并转换回 C 绝非易事(我自己为此做了一个实现)。 You have to handle all basic types, strings, Unicode strings, arrays of strings that are terminated by two 0 characters, arrays of pointers, and so on, together with the memory management functions provided by the XFS manager.

XFS4IoT 完全不同。 它应该是未来,但与 CEN XFS 3.x 不兼容。 KAL 为 Xfs4IoT 提供开源框架https://github.com/KAL-ATM-Software

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM