专利名称:一种通用外设驱动接口的利记博彩app
技术领域:
本发明涉及金融前端系统的外设驱动控制技术,特别是一种通用外设驱动接口。
背景技术:
金融行业主流外设类型包括存折打印机、流水打印机、密码键盘、磁条读写器、IC卡读写器、指纹仪等众多设备;每种设备由于生产厂商不同、型号不同,其驱动API和指令一般均不相同。例如目前国内主流的密码键盘厂商就有十多家,每家厂商的密码键盘产品又可分为加密或非加密式,机械键盘式或点触键盘式,单一功能式或集成功能式等多种型号。对于同一客户,由于历史原因,上述金融外设的采购时间不同,导致对同一类设备存在多种品牌、多种型号的情况,相应的运行系统必须能够同时支持上述繁杂的设备。而且,针对上述情况,软件集成商在相关系统开发时,一般将面临以下问题1)在系统开发时,外设驱动与业务功能无关,但无法将系统业务功能与外设驱动进行良好的分离,紧耦合的模式 导致每新增或更换一种设备,都需要对系统代码进行较大的增补或修改;2)在系统开发时,每一种不同型号的外设都需要编制相应的驱动代码,开发工作量大,开发周期长,系统稳定性不佳;3)在系统运行时,当设备出现故障时,无法进行灵活的设备型号切换,维护不便。4)在系统开发和运行时,对开发和运维技术人员的技术水平要求较高,增加了系统整体成本。
发明内容
本发明针对现有技术中存在的缺陷或不足,提供一种通用外设驱动接口,以达到通用外设驱动接口的较为广泛的通用性,为金融前端系统的开发提供良好的技术支撑。本发明技术方案如下一种通用外设驱动接口,其特征在于,包括两个层次,其一为通用公共驱动接口,其二为通用设备驱动接口,所述通用设备是指金融外设;所述两个层次提供给业务系统调用,但是对业务系统屏蔽不同型号金融外设之间的差异,将业务系统和外设驱动进行解耦。所述通用公共驱动接口包括打开端口、关闭端口、打开设备,关闭设备,选择设备和释放设备的公共应用程序接口,以针对所有外设,实现公共操作。所述通用设备驱动接口针对不同的金融外设,依据其驱动流程,提供相应的一组特定应用程序接口。所述通用外设驱动接口驱动通用设备的顺序如下调用通用公共驱动接口执行打开设备、打开端口和选择设备的操作;然后调用通用设备驱动接口针对不同的金融外设,依据其驱动流程,执行相应的一组特定应用程序;最后调用通用公共驱动接口执行释放设备和关闭端口的操作。所述金融外设包括存折打印机、流水打印机、密码键盘、磁条读写器、IC卡读写器、身份证阅读器和/或指纹仪。所述通用设备驱动接口包括通用存折打印机驱动接口,依据存折打印机的驱动流程,提供如下应用程序接口 装纸、退纸、相对垂直进纸、绝对垂直进纸、相对水平定位、绝对水平定位、设置打印属性、取消打印属性、输出打印数据和获取打印机状态。 所述通用设备驱动接口包括通用密码键盘驱动接口,依据密码键盘的驱动流程,提供如下应用程序接口 设置密码键盘工作模式,装载主密钥,装载工作密钥,加密读密码,非加密读密码,复位密码键盘,以及获取密码键盘状态。所述通用设备驱动接口包括通用磁条读写器驱动接口,依据磁条读写器的驱动流程,提供如下应用程序接口 写磁条信息,读磁条信息,复位磁条读写器,以及获取磁条读写器状态。所述通用设备驱动接口包括通用IC卡读写器驱动接口,依据IC卡读写器的驱动流程,提供如下应用程序接口获取IC卡信息,读取ARQC,写入ARPC及脚本,以及读取脱机交易信息。
图I是通用外设驱动接口在金融前端系统中的位置示意图。图2是通用外设驱动接口结构示意图。图3是通用外设驱动接口工作流程示意图。附图标记列示如下1-通用存折打印机驱动接口 ;2_通用流水打印机驱动接口 ;3-通用词条读写器驱动接口 ;4-通用IC卡读写器驱动接口 ;5_通用密码键盘驱动接口 ;6-通用其他设备驱动接口 ;7_存折打印机系列;8_流水打印机系列;9_词条读写器系列;10-IC卡读写器系列;11_密码键盘系列;12_其他设备系列;13_外设配置文件模块;14_通用外设驱动接口 ; 15-前端业务流程控制模块;16_前端业务交易模块;17_通用公共驱动接口 ; 18-通用设备驱动接口。
具体实施例方式下面结合附图对本发明进行说明。图I是通用外设驱动接口在金融前端系统中的位置示意图。如图I所示,通用外设驱动接口 14在金融前端系统100中位于数据输入101和数据输出107的部分。金融前端系统100的工作流程如下数据输入101-数据校验102-报文打包103-核心业务系统104-报文解包105-数据加工106-数据输出107。 本发明通过设计一套通用的金融外设驱动API (所述API是应用程序接口的英文缩写,为本领域通用)提供给业务系统调用,对业务系统屏蔽不同型号金融外设之间的差异,将业务系统和外设驱动进行解耦,最大程度地保证了对客户现有外设的兼容性,并解除了客户选择新外设时对生产厂商和型号限制,使客户具有更大的灵活性和自由度。同时,本发明通过提供通用化API,简化了不同类别、不同型号金融外设在接入和更换时对系统的影响,较好地降低了系统开发工作量,缩短了项目实施周期,降低了项目实施成本和维护费用。本发明具有以下特点1)接口规范覆盖面广本发明针对目前国内金融行业现实需求进行设计,基本涵盖了国内主流外设厂商的设备类型及型号。2)接口规范扩展灵活本发明设计的接口规范,具有较强的可扩展性,且扩展灵活方便,可自动生成具体的函数接口,在新增特殊类型外设时,一般只需简单调整/新增代码即可完快速成。3)提供详细运行日志本发明在API运行态提供详细的分层运行日志,并可分客户端ID进行记录,方便监控外设运行情况。本发明相对于其他外设驱动实现与管理产品而言,具有以下优势1)支持的产品类型众多本发明支持目前市场主流的金融外设类型,经过充分的测试验证,已可以支持的金融外设类型包括存折打印机、流水打印机、密码键盘、磁条读写器、IC卡读写器、身份证阅读器、指纹仪等。2)支持的产品厂商众多本发明支持目前市场上主流的金融外设厂商,经过充分的测试验证,已可以支持众多厂商。3)设备接入方式简便本发明对于目前通用API已经支持的设备类型,无需编程,只需简单配置即可快速接入;对于相对生僻型号的外设,一般也只需要进行配置文件的调整即可快速支持。4)支持复杂的外设组合模式本发明支持多种复杂的金融外设组合连接模式,支持同一终端上运行多种不同类型的外设,同时亦支持在不同的客户端上同时运行类型相同但厂商不同、型号不同的金融外设。5)运行态切换灵活本发明支持客户端实时增加/更换相关外设,无需重新启动即可生效,方便灵活。6)可复用API接口,实施周期短成本低本发明通过经过实践验证,API能够大限度复用,达到缩短项目实施周期,降低项目实施成本的目标。金融前端系统在外设方面的驱动控制一直是比较复杂的,特别是随着金融业务的 发展,有更多的外设厂商进入市场,也有更多的新型外设在金融系统中得到应用;将如此众多的外设快速接入系统,并能够支持新厂商、新类型、新型号设备的灵活扩展,的确是一件非常困难的工作。发明人在金融前端领域具有丰富的实施经验,通过不断钻研和实践,在初始API原型基础上进行了大量验证,并持续进行完善和改进,成功实现了通用外设驱动接口的设计与实现,并在国内多个大型金融客户的多个系统中成功应用,在加快项目实施进度、降低项目实施成本方面具得到了良好的验证;与业内其他厂商相比,具有较为明显的领先优势。本发明提供一系列通用的外设驱动接口,对目前国内金融行业主流外设厂商的外设均能够进行良好支持;同时,该通用接口在设计上体现了有良好的前瞻性,能够根据需要进行灵活扩展,快速接入新类型和型号的外设产品;为金融前端系统的开发提供了良好的技术支撑。图2是通用外设驱动接口结构示意图。如图2所示,通用外设驱动接口向上为相关业务模块提供服务(接收和返回业务数据),向下驱动相关金融外设(写入或读出业务数据)。一种通用外设驱动接口 14,包括两个层次,其一为通用公共驱动接口 17,其二为通用设备驱动接口 18,所述通用设备是指金融外设;所述两个层次提供给业务系统调用,但是对业务系统屏蔽不同型号金融外设之间的差异,将业务系统和外设驱动进行解耦。所述通用公共驱动接口 17包括打开端口、关闭端口、打开设备,关闭设备,选择设备和释放设备的公共应用程序接口,以针对所有外设,实现公共操作。所述通用设备驱动接口针对不同的金融外设,依据其驱动流程,提供相应的一组特定应用程序接口。所述通用外设驱动接口驱动通用设备的顺序如下调用通用公共驱动接口执行打开设备、打开端口和选择设备的操作;然后调用通用设备驱动接口针对不同的金融外设,依据其驱动流程,执行相应的一组特定应用程序;最后调用通用公共驱动接口执行释放设备和关闭端口的操作。所述金融外设包括存折打印机7、流水打印机8、密码键盘11、磁条读写器9、IC卡读写器10、身份证阅读器和/或指纹仪,以及其他设备12。所述通用设备驱动接口 18包括通用存折打印机驱动接口1,依据存折打印机的驱动流程,提供如下应用程序接口 装纸、退纸、相对垂直进纸、绝对垂直进纸、相对水平定位、绝对水平定位、设置打印属性、取消打印属性、输出打印数据和获取打印机状态。所述通用设备驱动接口 18包括通用密码键盘驱动接口 11,依据密码键盘的驱动流程,提供如下应用程序接口 设置密码键盘工作模式,装载主密钥,装载工作密钥,加密读密码,非加密读密码,复位密码键盘,以及获取密码键盘状态。所述通用设备驱动接口 18包括通用磁条读写器驱动接口 3,依据磁条读写器的驱动流程,提供如下应用程序接口 写磁条信息,读磁条信息,复位磁条读写器,以及获取磁条读写器状态。所述通用设备驱动接口 18包括通用IC卡读写器驱动接口 4,依据IC卡读写器的驱动流程,提供如下应用程序接口 获取IC卡信息,读取ARQC,写入ARPC及脚本,以及读取脱机交易信息。所述通用设备驱动接口 18包括通用流水打印机驱动接口 2。数据或指令从前端业务交易16经过前端业务流程控制模块15抵达通用外设驱动接口 14,根据具体设备的驱动流程启用外设配置文件模块13中的相应文件。通用外设驱动接口具体可分为两个层次1)通用公共驱动接口 针对所有金融外设,实现外设的公共操作,包括打开端口、关闭端口、选择设备、释放设备等API。2)通用驱动接口 针对不同的金融外设,依据其驱动方式方法的不同,提供特定的一组通用API。例如对于存折打印机,提供装纸、退纸、相对垂直进纸、绝对垂直进纸、相对水平定位、绝对水平定位、设置打印属性、取消打印属性、输出打印数据、获取打印机状态、重置打印机状态等 多个API。如图3所示,通用外设驱动接口工作流程调用通用公共驱动接口(完成读取系统配置、打开端口、选择设备操作),然后调用针对不同金融外设的特定通用驱动接口(例如打印机装纸、定位、打印、退纸等),最后调用通用公共驱动接口(完成释放设备、关闭设备端口操作),完成设备驱动的全部过程。通用公共驱动接口主要API 1)打开端口 0penPort() ;2)关闭端口ClosePort () ;3)打开设备OpenDevice () ;4)关闭设备CloseDevice () ;5)选择设备ActiveDevice () ;6)释放设备:InActiveDevice ()。打印机通用驱动接口主要API :1)装纸LoadPaper () ;2)退纸EjectPaper () ;3)绝对垂直定位AbsVerFeed() ;4)相对垂直定位:RelVerFeed() ;5)绝对水平定位AbsHorFeed() ;6)相对水平定位RelHorFeed() ;7)设置打印属性SetAttrO ;8)取消打印属性ReSAttr() ;9)输出打印数据=PrintDataO ;10)获取打印机状态=GetPrinterStatus O。密码键盘通用驱动接口主要API :1)设置密码键盘工作模式SetKpdMode() ;2)装载主密钥LoadMKey() ;3)装载工作密钥LoadWKey() ;4)加密读密码EnReadKpdO ;5)非加密读密码TrReadKpd() ;6)复位密码键盘ResetKpd();7)获取密码键盘状态GetKpdStatuS()。磁条读写器通用驱动主要API 1)写磁条信息WriteMcr() ;2)读磁条信息ReadMcr() ;3)复位磁条读写器ResetMcr() ;4)获取磁条读写器状态=GetMcrStatusO。IC卡读写器通用驱动主要API :I)获取IC卡信息ICGetInfoO ;2)读取 ARQC =ICGenARQCO ;3)写入 ARPC 及脚本ICPutARPCScript () ;4)读取脱机交易信息ICGetTxDataO。通用外设驱动接口 API使用方法通过外设驱动接口 API采用静态库(lib. a)和动态库(lib. so)两种方式提供,支持AIX/HP-UX/Linux多种操作系统版本。I)对于静态库(lib. a)方式,具有更高的执行效率。需要将上述库文件编译链接至目标程序,在代码中直接调用相应的API。2)对于动态库(lib. so)方式,具有更好的灵活性。需要将上述库文件放置在环境变量LD_LIBRARY_PATH所指向的目录,在代码中通过dlopen ()方式打开后,直接调用相应的API。
通用外设驱动接口参数配置可通过以下参数文件进行配置,指明各类设备在客户端端口的连接方式。
权利要求
1.一种通用外设驱动接口,其特征在于,包括两个层次,其一为通用公共驱动接口,其二为通用设备驱动接口,所述通用设备是指金融外设;所述两个层次提供给业务系统调用,但是对业务系统屏蔽不同型号金融外设之间的差异,将业务系统和外设驱动进行解耦。
2.根据权利要求I所述的通用外设驱动接口,其特征在于,所述通用公共驱动接口包括打开端口、关闭端口、打开设备,关闭设备,选择设备和释放设备的公共应用程序接口,以针对所有外设,实现公共操作。
3.根据权利要求I所述的通用外设驱动接口,其特征在于,所述通用设备驱动接口针对不同的金融外设,依据其驱动流程,提供相应的一组特定应用程序接口。
4.根据权利要求I所述的通用外设驱动接口,其特征在于,所述通用外设驱动接口驱动通用设备的顺序如下调用通用公共驱动接口执行打开设备、打开端口和选择设备的操作;然后调用通用设备驱动接口针对不同的金融外设,依据其驱动流程,执行相应的一组特定应用程序;最后调用通用公共驱动接口执行释放设备和关闭端口的操作。
5.根据权利要求I所述的通用外设驱动接口,其特征在于,所述金融外设包括存折打印机、流水打印机、密码键盘、磁条读写器、IC卡读写器、身份证阅读器和/或指纹仪。
6.根据权利要求I所述的通用外设驱动接口,其特征在于,所述通用设备驱动接口包括通用存折打印机驱动接口,依据存折打印机的驱动流程,提供如下应用程序接口装纸、退纸、相对垂直进纸、绝对垂直进纸、相对水平定位、绝对水平定位、设置打印属性、取消打印属性、输出打印数据和获取打印机状态。
7.根据权利要求I所述的通用外设驱动接口,其特征在于,所述通用设备驱动接口包括通用密码键盘驱动接口,依据密码键盘的驱动流程,提供如下应用程序接口 设置密码键盘工作模式,装载主密钥,装载工作密钥,加密读密码,非加密读密码,复位密码键盘,以及获取密码键盘状态。
8.根据权利要求I所述的通用外设驱动接口,其特征在于,所述通用设备驱动接口包括通用磁条读写器驱动接口,依据磁条读写器的驱动流程,提供如下应用程序接口 写磁条信息,读磁条信息,复位磁条读写器,以及获取磁条读写器状态。
9.根据权利要求I所述的通用外设驱动接口,其特征在于,所述通用设备驱动接口包括通用IC卡读写器驱动接口,依据IC卡读写器的驱动流程,提供如下应用程序接口 获取IC卡信息,读取ARQC,写入ARPC及脚本,以及读取脱机交易信息。
全文摘要
一种通用外设驱动接口,以达到通用外设驱动接口的较为广泛的通用性,为金融前端系统的开发提供良好的技术支撑,其特征在于,包括两个层次,其一为通用公共驱动接口,其二为通用设备驱动接口,所述通用设备是指金融外设;所述两个层次提供给业务系统调用,但是对业务系统屏蔽不同型号金融外设之间的差异,将业务系统和外设驱动进行解耦。
文档编号G07F7/02GK102831707SQ20121028276
公开日2012年12月19日 申请日期2012年8月9日 优先权日2012年8月9日
发明者李燕平, 张砚泉, 程远, 严雪祥, 郭家华, 赵广帅 申请人:北京南天软件有限公司