自添加智能卡读取器系统
背景技术:1.本文的系统和方法整体涉及读卡器和访问卡,诸如智能卡和智能卡读取器,并且更具体地涉及向不支持的读卡器和/或访问卡添加支持的系统。
2.可以多种方式将对各种设备的访问限制于授权用户。例如,可能需要用户将密码或正确的用户名输入用户界面中,以便获得对不同设备的访问。然而,这些访问限制具有有限的安全性,导致有时会发生对此类设备的未授权使用。
3.物理访问卡(诸如智能卡)提供更高级别的用户访问控制,因为用户需要向读卡器物理地提供有效的物理访问卡以获得对设备的访问。在一些情况下,访问卡可为获得对受限设备的访问所需的唯一物品,从而消除了用户记住密码或用户名的需要。在其他情况下,多因素认证技术可与访问卡(和/或密码等)结合使用。
4.许多制造商生产访问卡和读卡器,并且许多供应商以独特的方式修改此类元件。虽然标准组织试图控制智能卡和读卡器之间的此类差异,但是不同智能卡产品和供应商之间的那些差异使得将先前不支持的读卡器或不支持的卡添加到现有系统成为一个耗费时间和费用的操作。
技术实现要素:5.为了解决前述问题,本文的系统包括(除了其他部件之外)具有连接的读卡器的访问受控设备(下文将打印机用作示例性设备)、通过计算机化网络与打印机通信的任何计算机,以及由计算机服务器维护的计算机应用程序(app)。
6.计算机服务器适于将app提供给打印机。该app适于控制打印机以识别连接的读卡器是否为不支持的读卡器或者是否不支持的卡被提供至连接的读卡器。在一个示例中,打印机或其他访问受控设备可仅使用支持的访问卡和读卡器来操作。支持的访问卡和读卡器是在存储于打印机内的至少一个驱动程序支持文件内识别的访问卡和读卡器,而不支持的访问卡和读卡器是在存储于打印机内的驱动程序支持文件内未识别的访问卡和读卡器。
7.该app适于通过以下方式自动修改驱动程序支持文件以与不支持的卡和读卡器通信:从不支持的卡和读卡器读取识别信息;通过将该识别信息添加至该驱动程序支持文件来修改至少一个驱动程序支持文件;使用修改的驱动程序支持文件测试不支持的卡和读卡器;以及将修改的驱动程序支持文件提供给与打印机分开的其他设备。来自不支持的卡和读卡器的这种识别信息可以是例如供应商标识、产品标识、不支持的卡的复位应答(atr)字符串等。
8.该app通过首先存储所支持的访问卡和读卡器的现有驱动程序支持文件的备份来促进测试过程。然后,该app将不支持的卡和读卡器的识别信息添加至现有驱动程序支持文件以生成修改的驱动程序支持文件,并使用修改的驱动程序支持文件(通过系统管理员等)促进对不支持的卡或读卡器的一系列通信和操作测试。如果测试不成功,则该app停用修改的驱动程序支持文件并重新激活现有驱动程序支持文件的备份;然而,如果测试成功,则该app使现有驱动程序支持文件的备份停用,因为其现在被修改的驱动程序支持文件取代。
9.该app通过从修改的驱动程序支持文件创建可下载的克隆文件并通过计算机化网络与和打印机分开的其他设备共享可下载的克隆文件来执行向和打印机分开的其他设备提供修改的驱动程序支持文件的过程。这允许所有未来呈现的访问卡和读卡器(其具有与不支持的卡和读卡器相同的识别信息)成为共享克隆文件的所有其他设备上的支持的访问卡和读卡器。
10.另外,本文的各种方法将app提供给访问受控设备(例如,再次提供给示例性打印机等)。这些方法然后使用下载的或常驻的app来控制打印机,以识别连接的读卡器是否为不支持的读卡器或者是否不支持的读卡器已被提供给连接的读卡器。当发生这种情况时,app可自动地、手动地或半自动地开始为不支持的卡或读卡器生成支持的过程。
11.更具体地讲,通过以下操作,app自动地(或系统管理员手动地)为不支持的卡和读卡器修改驱动程序支持文件:从不支持的卡和读卡器读取识别信息,建立包含该不支持的卡和读卡器的识别信息的一个或多个修改的驱动程序支持文件,并使用修改的驱动程序支持文件测试该不支持的卡和读卡器。如果测试成功,则app将修改的驱动程序支持文件提供给与打印机分开的其他设备,使得不支持的卡和读卡器随后将在修改的驱动程序支持文件所提供给的所有外部设备上被识别。
12.在对现有驱动程序支持文件进行任何更改之前,app首先存储现有驱动程序支持文件的备份,从而促进测试过程。然后,app将来自不支持的卡或读卡器的识别信息添加至现有驱动程序支持文件,以生成修改的驱动程序支持文件,并使用修改的驱动程序支持文件促进不支持的卡和读卡器的一系列通信和操作测试。如果该测试不成功,则修改的驱动程序支持文件被停用,并且现有驱动程序支持文件的备份被重新激活;然而,如果测试成功,则停用现有驱动程序支持文件的备份。
13.将修改的驱动程序支持文件提供给与打印机分开的其他设备的过程由通过计算机化网络提供克隆文件的app执行。然后通过计算机化网络将该克隆文件与和打印机分开的其他设备共享。接着,通过共享克隆文件的操作,具有不支持的卡和读卡器的识别信息的访问卡和读卡器成为与打印机分开的其他设备上的支持的访问卡和读卡器。
14.这些和其他特征描述于以下具体实施方式中或从以下具体实施方式显而易见。
附图说明
15.下文结合附图详细描述各种示例性系统和方法,其中:
16.图1是示出了本文设备的示意图;
17.图2-图3是示出了由本文设备提供的显示屏的示意图;
18.图4是本文各种方法的流程图;
19.图5a-图5b是本文各种方法的相同流程图的两个部分;
20.图6是示出了本文系统的示意图;
21.图7是示出了本文设备的示意图;并且
22.图8是示出了本文设备的示意图。
具体实施方式
23.如上所述,不同智能卡产品和供应商之间的差异使得向现有系统添加不支持的读
卡器和访问卡(有时在本文中称为用于速记的智能卡产品)成为耗费时间和费用的操作。由于需要专业技术人员手动修改驱动程序支持文件以与不支持的智能卡产品通信,他们获取必要的供应商和产品信息所花费的时间以及他们针对新智能卡产品测试和安装驱动程序支持文件所花费的时间导致引入新智能卡产品的大量时间延迟和花费。
24.在一个简化示例中,读卡器制造商可能希望将其附件之一(例如,访问卡或读卡器)添加到被支持作为生产设备(例如,多功能打印机等)的可连接物品的附件列表中。传统上,附件制造商将联系生产设备制造商的代表,并向生产设备制造商手动提供新附件的通信和操作数据。然后,生产设备管理者进行漫长且昂贵的手动过程(工作声明和转移协议、保密披露协议、许可协商等)以创建、测试、安装和记录修改的驱动程序支持文件、固件等,以允许新附件在与生产设备一起使用时无缝地工作。如果需要新的驱动程序或中间件,则该过程可能花费例如3-9个月或甚至几年,并且可能非常昂贵。
25.鉴于此类问题,本公开呈现了完全或部分地自动化为不支持的访问卡和读卡器添加支持的过程的系统和方法,这发生在访问受控设备处以及在首次将访问卡和读卡器呈现给访问受控设备时。具体地讲,常驻固件或可下载app可在访问受控设备处用于捕获读卡器或卡信息,允许用户补充此类信息,并且创建包含新设备数据集的修改的驱动程序支持文件。然后,激活修改的驱动程序支持文件,并且用户逐步通过验证过程。一旦验证完成,应用程序就将驱动程序支持文件转换为安装文件以分发给其他设备。最后,应用程序自动将新添加的设备信息报告给储存库以用于文档或其他应用程序。这显著减少了在手动修改此类访问卡的驱动程序支持文件时所见的时间延迟和费用。
26.本文的系统和方法提供用户主导的创新以改进用于向现有产品添加新读卡器和访问的过程(例如,客户、分析员、供应商或附件合作伙伴在需要时进行启用)。与当前远程手动自定义过程(3-9个月)相比,这实现了访问卡和读卡器启用的显著更快、响应更积极的递送时间(分钟),并且类似地,与当前自定义过程相比降低了成本。此外,利用这些方法和系统,可使用机器学习来发现尝试使用哪些读卡器和卡片供应商以及设备模型或者将哪些读卡器和卡片供应商以及设备模型与现有设备一起使用,否则可能无法由具有大量不同设备的大型跨国制造商容易地跟踪。另外,本文的系统和方法减少了定制人员的需要,允许灵活地进行利润更丰厚的定制,并且基于用于创建修改的驱动程序支持文件的app的销售来提供潜在销售收入。
27.例如,如图1所示,本文的系统和方法与访问受控设备120一起使用。虽然打印机在本文多处被用作示例性访问受控设备120,但其访问受控的任何设备可与本文的系统和方法一起使用,包括但不限于扫描仪、传真机、互联网入口、自助服务机、共享计算机、安全计算机、车辆、机器人设备、安全物理存储设备、游戏系统、家用电器、娱乐系统等,以及具有前述部件中的一者或多者的多功能设备(mfd)等。图1所示的访问受控设备120旨在表示所有此类设备和类似设备。
28.此外,利用本文的系统,任何计算机100可被放置成通过计算机化网络202与访问受控设备120通信。至少一个计算机应用程序(app 110)和访问卡/读卡器数据库102由计算机服务器100维护。例如,app可以是在app库内维护的app,并且计算机可以是向包含app的设备远程递送软件更新的服务工程师的计算机,或向设备递送软件更新的计算机/服务器等。
29.不管访问受控设备120的功能、类型或性质如何,为了访问控制,这些设备使用读取访问卡124的读卡器122,并且在大多数情况下,只有在向有效(支持的)读卡器122呈现有效(支持的)卡124的情况下才授予访问受控设备120访问权限。本文的具体实施允许新的、先前不支持的读卡器122和卡124容易地添加到此类设备120,并且这些系统/方法有助于修改驱动程序支持文件以与此类新的卡124和读卡器122通信。
30.更详细地,app 110可以固件或预安装程序或软件(例如,诸如app等)常驻访问受控设备120,或者计算机服务器100可以将app 110下载到访问受控设备120。在一个示例中,可根据支持人或其他用户的请求提供app(可能需要一定费用),并且一旦下载,app 110可自动安装在访问受控设备120上。因此,app 110可以是购买的app或设备固件/软件中的嵌入式功能;并且为了简化讨论,所有此类计算机指令集在本文中被称为“app”。
31.app 110的功能可例如在设备web用户界面(ui)上访问。在该界面,系统管理员可远程登录到设备,导航到认证配置网页,并选择他们想要修改app的辅助文件之一(例如,smartcard.xml文件)等。由此,系统管理员可下载智能卡包,该智能卡包可包括例如:1)smartcard.xml文件;2)列出在设备(包括不支持的卡)上尝试的atr的文件;以及3)用于编辑.xml文件的模式文件;等等。
32.更详细地,虽然驱动程序用于允许设备与外围设备通信,但驱动程序需要驱动程序支持文件126正常操作。驱动程序支持文件126的一个示例是smartcard.xml文件,该文件是“白名单”文件,包含:1)经批准的卡atr的列表;2)驱动程序支持文件,该文件需要被加载以与卡通信;3)卡的描述等。
33.app 110适于在不支持的(未知)读卡器122连接到访问受控设备120时或在不支持的(未知)卡124被提供给支持的现有连接的读卡器122时帮助访问受控设备120。支持的读卡器122和卡124是在存储在访问受控设备120的驱动程序支持文件126内的至少一个现有驱动程序支持文件内识别的那些,而不支持的读卡器122或卡124是在存储在访问受控设备120的驱动程序支持文件126内的至少一个驱动程序支持文件内未识别的那些。需注意,本文驱动程序支持文件126的表示包括所有支持文件以及驱动程序支持文件执行/通信文件、安装文件等,即使这些未在本文中单独示出或讨论。
34.因此,当物理地添加或附接新读卡器122(例如,新硬线连接到或新插入标准化端口,诸如通用串行总线(usb)端口),或将新卡124提供给现有支持的读卡器122时,读卡器122和/或卡124由访问受控设备120询问,并且读卡器122或卡124的识别信息被读取(例如,使用标准协议,诸如标准化芯片卡接口设备(ccid))。如果在访问受控设备120的任何现有驱动程序支持文件126内识别到读卡器122和/或卡124,则驱动程序支持文件126中的至少一个已经包含通信协议和其他通信设置的细节,从而允许数据流通过读卡器122来往于访问受控设备和卡124,而无需其他用户动作。
35.换句话讲,访问受控设备120的驱动程序支持文件126将被预加载(或以某种方式更新)以包含允许访问受控设备120与第一设备制造商生产的产品(例如,读卡器、卡等)通信的软件(例如,通信指令和协议等)。然而,现有驱动程序支持文件126可能不允许与不同制造商生产的产品(例如,读卡器、卡等)通信。另选地,驱动程序支持文件126可维护第一类或类型的设备而不是另一类或类型的设备的通信信息。如上所述,传统上,技术专家将需要手动解决这种情况,这可能是昂贵的并且可能耗时数月。
36.因此,如果现有驱动程序支持文件126中的任一个未识别读卡器122和/或卡124的类型、品牌、型号等,则访问受控设备120将不能与新读卡器122或新卡124通信。鉴于此,本文的系统和方法有利于处理将信息自动添加到现有驱动程序支持文件126,使得访问受控设备120支持读卡器122和卡124;并且这避免了对技术专家修改驱动程序支持文件的传统需求,并且还避免了相关的花费和时间延迟。实际上,app 110可以是免费的或低成本的,并且读卡器122或卡124可在数分钟内支持新设备和新卡,而不是数月。
37.作为总体概述,app 110适于通过以下方式自动修改现有驱动程序支持文件以与不支持的读卡器122或不支持的卡124通信:从不支持的读卡器122或不支持的卡122读取识别信息;通过将从不支持的读卡器122或不支持的卡124读取的识别信息添加到驱动程序支持文件126来修改驱动程序支持文件126;使用修改的驱动程序支持文件126测试不支持的读卡器122或不支持的卡124;以及如果修改的驱动程序支持文件126通过测试过程,则将修改的驱动程序支持文件126提供给与访问受控设备120分开的其他设备130、132。
38.更详细地,app 110发现来自读卡器122或卡124的一些识别信息,诸如供应商标识(vid)、产品标识(pid)、卡的复位应答(atr)字符串、设备类型、设备制造商或系列等,这些信息可揭示读卡器122或卡124的详细识别信息。一旦app 110检测到该识别信息,其可任选地将其呈现给用户以允许用户确认发现的信息是否正确。用户可以手动补充识别信息,或者可以用来自外部数据库的匹配信息自动补充识别信息。如果app 110不能自动检测用户通过产品材料或其他知识库可能拥有的所有所需识别信息,则这也可能是有用的。
39.图2示出了显示屏150的一个示例,该显示屏可被提供以在添加对新读卡器122或卡124的支持时确认、改变或添加信息以帮助app 110。具体地讲,图2示出了捕获的数据152和请求用户确认或补充的数据154。具体地讲,用户可简单地接受在远程数据库中自动发现的数据158,或者用户可在手动模式156中改变/补充所请求的数据154。
40.例如,在自动模式158下,app可连接到读卡器数据库(例如,图1中的物品102,或与访问受控设备120分开维护的另一数据库),并且app可基于捕获的数据152来在数据库102中搜索卡类型和描述数据154。响应于搜索,app接收此类数据并自动填充图2中158下方所示的卡类型和描述数据字段。该自动获取的数据可由用户在图2中156下方所示的字段中手动补充/校正。
41.app 110然后通过将图2所示的识别信息添加到驱动程序支持文件126中的一者或多者的文件(例如,可扩展标记语言(xml)文件)来自动修改驱动程序支持文件126中的一者或多者。如果修改多个驱动程序支持文件126,则每个修改的驱动程序支持文件126单独地经受多个测试,以确定哪些修改的驱动程序支持文件126(如果有的话)将与新的读卡器122或卡124一起正确地操作。
42.在实际测试修改的驱动程序支持文件126之前,app 110存储现有驱动程序支持文件的备份(例如,现有驱动程序支持文件的备份)。然后,app 110使用修改的驱动程序支持文件来促进对新读卡器或新卡的一系列通信和操作测试。app 110自动实现测试例程或输出消息以供用户(例如,系统管理员)这样做,其中所需的测试被指定给用户。例如,到新读卡器122的连接可通过确定指令和数据是否可被接收和发送而被自动或手动测试。可通过确定是否可读取认证字符串、是否可执行对电子邮件的扫描、是否可执行对主页的扫描等来测试新卡。可使用图3所示的示例性显示屏160将测试结果报告给用户,其中有利于的不
同测试162连同测试结果164(通过或未通过)被一起示出。
43.如果修改的驱动程序支持文件126的测试不成功,则如果修改了多个驱动程序支持文件126,则可测试下一个修改的驱动程序支持文件126。如果修改的驱动程序支持文件126中没有一个通过足够数量的测试(通过全部或少于全部的测试可被认为是可接受的),则app 110需要恢复到先前存在的驱动程序支持文件126;因此,app 110停用修改的驱动程序支持文件126并重新激活现有驱动程序支持文件126的备份。
44.然而,如果通过了最少数量的测试(同样,必须通过所有可能的测试),则可认为特定修改的驱动程序支持文件126的测试成功,这允许app 110批准该修改的驱动程序支持文件126。在修改的驱动程序支持文件126通过测试的情况下,app 110使现有驱动程序支持文件126的备份保持停用,因为现有驱动程序支持文件126的备份现在被修改的驱动程序支持文件126取代。
45.app 110通过从测试批准的经修改的驱动程序支持文件126制作克隆文件来执行向与访问受控设备120分开的其他设备130、132提供经修改的驱动程序支持文件的过程。app 110可在定期更新期间或通过推送交互,通过点对点通信或通过基于服务器的下载,凭借计算机化网络202与和访问受控设备120分开的其他设备130、132共享克隆文件。在其他另选方案中,app 110可通过计算机化网络202将测试批准的修改的驱动程序文件126提供给模块制造器104。在这些具体实施中,app 110指示模块制造器104与测试批准的修改的驱动程序文件126一起创建可下载的模块(dlm),并且指示模块制造器在定期更新期间或通过推送交互与其他设备130、132共享dlm。克隆文件或dlm不同于修改的驱动程序支持文件126,因为克隆文件此外还包含使修改的驱动程序支持文件126自动安装在其下载的设备上的指令以及允许不同设备利用修改的驱动程序文件126的其他所需指令。
46.所有设备120、130、132都连接在网络202上的事实允许通过克隆(例如,使用机群协调器)来分发修改的驱动程序。因此,图1所示的网络202允许手动分发修改的驱动程序克隆文件或dlm以及自动分发克隆文件或dlm。这允许所有未来呈现的读卡器(具有与不支持的读卡器122或不支持的卡124相同的识别信息)成为模块制造器104与之共享dlm(或克隆文件)的所有其他设备130、132上的支持的读卡器122。
47.图4是示出了本文示例性方法的流程图。在事项300中,这些方法将app保持在计算机化服务器处。在事项302中,本文的方法将来自计算机服务器的app提供给访问受控设备(例如,打印机、扫描仪、自助服务机、mfp等)。然后这些方法使用下载的app来检查在事项304中不支持的读卡器是否已连接到访问受控设备,或者不支持的卡是否已被提供到连接的读卡器。具体地讲,在事项304中,app适于检查现有驱动程序支持文件中的任一个是否包括针对连接的读卡器或所提供的卡的信息。如果不是,则app自动开始为不支持的读卡器或不支持的卡生成支持的过程,如下文讨论的事项306至328所示。在其他另选方案中,可向系统管理员提供是否应执行生成支持的过程的选项;因此,关于是否生成支持的决定可以是完全手动的、完全自动的或两者的混合。
48.更具体地讲,app从不支持的读卡器或不支持的卡读取识别信息,如事项306中所示。这将使app发现识别信息,诸如产品id、供应商id和不支持的卡的复位应答(atr)字符串等。app然后使用在事项306中发现的识别信息来确定当前存在于访问受控设备上的任何驱动程序是否可能潜在地与事项308中的不支持的读卡器或卡一起工作。在一个示例中,app
可基于来自不支持的读卡器或不支持的卡的识别信息与现有驱动程序支持文件在被修改之前处理的读卡器和卡的识别信息之间的相似性度量来确定是否执行修改特定驱动程序的现有驱动程序支持文件的过程。
49.更具体地讲,在事项308中,已知访问受控设备的现有驱动程序支持文件与特定类型或系列的读卡器和卡一起工作,或者已知其与来自特定制造商或行业部门的读卡器或卡一起工作。如果在事项306中发现不支持的设备或卡属于相同的类型、系列或制造商/行业部门,则驱动程序将被认为可能可用于事项308中的未知读卡器或卡。因此,例如,相对于匹配不支持的读卡器或卡的较少的关于类型、系列、制造商、行业的信息的现有驱动程序支持文件,与不支持的读卡器或卡匹配更多此类信息的现有驱动程序支持文件将具有更高的相似性度量。另外,还可在事项308中检查包含不存在于访问受控装置内的驱动程序支持文件的外部数据库,以确定这些数据库是否包含针对不支持的设备或卡的任何潜在有用的驱动程序和相关联的驱动程序支持文件;并且,如果是,则此类潜在有用的驱动程序和驱动程序支持文件由事项308中的app下载到访问受控设备以用于自动修改。
50.如果在事项308中的访问受控设备或外部数据库中没有发现潜在有用的驱动程序支持文件(没有一个具有足够的相似性度量),则处理前进至事项310,在该事项中,可作出创建自定义驱动程序支持文件的自动或手动生成的请求,并且使用常规方法准备此类自定义驱动程序支持文件,其中一些方法如上所述。
51.然而,如果在事项308中的访问受控设备或外部数据库中发现具有足够相似性度量的至少一个潜在有用的驱动程序支持文件,则在事项312中创建现有驱动程序支持文件的备份。然后,将在事项306中产生的来自不支持的读卡器或不支持的卡的识别信息添加到事项314中的现有驱动程序支持文件,以产生一个或多个修改的驱动程序支持文件。
52.然后在事项316中测试修改的驱动程序支持文件。更具体地讲,在事项316中,这些方法通过使用修改的驱动程序支持文件促进不支持的读卡器或不支持的卡的一系列通信和操作测试来自动或手动测试不支持的读卡器或不支持的卡。事项318是关于测试是否成功(例如,是否使用修改的驱动程序支持文件批准/验证不支持的读卡器或不支持的卡(测试是通过还是不通过))的决策框。
53.如果在事项318中测试不成功(修改的驱动程序支持文件未通过一个或多个测试),则处理移至事项320,在该事项中,修改的驱动程序支持文件被停用并且现有驱动程序支持文件的备份被重新激活,之后可在事项310中作出针对自定义驱动程序支持文件的自动或手动生成的请求。
54.然而,如果测试成功,则处理从事项318移至事项322,在该事项中,现有驱动程序支持文件的备份被停用但被保留,并且修改的驱动程序支持文件仍然保持激活状态。此外,基于成功的测试,处理继续,并且app随后将修改的驱动程序支持文件提供给与访问受控设备分开的其他设备(如事项324至328中所示),使得不支持的读卡器或不支持的卡随后将在修改的驱动程序支持文件所提供给的所有外部设备上被支持。
55.向与访问受控设备分开的其他设备提供修改的驱动程序支持文件的过程可以多种方式执行。在一个具体实施中,app可通过计算机化网络将修改的驱动程序支持文件提供给模块制造器,如事项324中所示。模块制造器在事项324中利用修改的驱动程序支持文件创建可下载的模块(dlm)。在另选的具体实施中,app可在事项326中创建修改的驱动程序支
持文件的克隆文件。克隆文件可以是修改的驱动程序支持文件的准确副本,或者可以是还包括与使用、安装、解包等有关的附加指令的副本。
56.然后通过计算机化网络将dlm和/或克隆文件提供给与访问受控设备分开的其他设备(例如,其他打印机、其他访问受控设备等)(由其下载或对等共享并安装),如事项328中所示。具体地讲,dlm可根据需要、在更新期间、通过推送过程等下载;并且/或者克隆文件可以通过事项328中的对等共享过程共享。然后,具有不支持的读卡器或不支持的卡的识别信息的所有读卡器将成为已下载和安装dlm和/或克隆文件的其他设备上的支持的读卡器。
57.图5a至图5b示出了本文的方法和系统的一个具体实施的较窄示例。如图5a至图5b所示,在事项350中,分析员可以许可、下载自添加卡/读卡器app并将其安装到mfd。在事项352中,分析员可以打开自添加卡/读卡器app、登录并将不支持的卡插入现有的读卡器中或连接不支持的新读卡器。
58.在事项354中,app捕获新的卡或读卡器数据,并且app可提示分析员获取请求的数据。如事项356(和上面讨论的图2)中所示,分析员可以选择手动模式156并手动输入请求的数据,或者如事项358中所示,分析员可以选择自动模式158(图2),这使得app连接到适当的数据库,在其中app搜索并接收请求的数据(例如,设备类型、设备描述等),诸如在图2中158下方的字段中所示。
59.事项360是确定手动或自动生成的设备类型、设备描述等是否被记录为由常驻在访问受控设备120上的或可由计算机服务器100提供给访问受控设备120的任何驱动程序支持文件(例如,xml文件)潜在地支持的决策框。驱动程序支持文件可潜在地与新的读卡器或卡一起使用,因为它们可以是相同类型的、相同系列的、来自相同制造商的等;然而,有利于测试(如下所述)以确保潜在有用的驱动程序支持文件对新的读卡器/卡实际上是有用的。
60.如事项362中所示,如果在访问受控设备120内或在计算机服务器100内没有发现潜在支持在事项356或358中发现的类型或描述的驱动程序支持文件,则需要新的驱动程序支持文件,并且显示设备类型和/或描述不被支持并且应该请求自定义的消息。
61.另一方面,如果在访问受控设备120内存在潜在支持在事项356或358中发现的类型或描述的驱动程序支持文件(或计算机服务器100内可下载到访问受控设备的驱动程序支持文件),则处理移至事项364。在事项364中,如果需要的话,下载潜在可用的驱动程序支持文件,并且备份下载的或现有的驱动程序支持文件的现有副本。同样在事项364中,通过添加适当的数据(例如,atr字符串、pid、vid等)来修改下载的或现有的驱动程序支持文件以创建修改的驱动程序支持文件,并且该修改的驱动程序支持文件被激活并准备好用于测试,同时现有的驱动程序支持文件被停用。
62.在事项366中,app提示分析员执行验证测试,此时用修改的驱动程序支持文件测试新的读卡器或卡。同样,执行一系列通信和操作测试。事项368是关于是否通过最小数量(可能全部)测试的决策框。如果存在可与新读卡器或卡一起使用的附加潜在驱动程序支持文件,则可延迟后续步骤,同时修改和测试附加潜在驱动程序支持文件。因此,可存在许多通过测试的修改的驱动程序支持文件;然而,如果在事项368中所有潜在驱动程序支持文件都未通过测试,则处理前进至事项370,在该事项中,现有驱动程序支持文件的备份作为活动文件被恢复,并且未通过测试的修改的驱动程序支持文件被停用。另外,如果在事项368中没有驱动程序支持文件通过测试,则处理从事项370前进至事项362,使得可准备自定义
的驱动程序支持文件。
63.然而,如果修改的驱动程序支持文件中的至少一个通过测试,则处理前进至事项372(从图5a到图5b的后续提示框b)。在图5b中的事项372中,完成任何所需的驱动程序支持文件修改,并且app将通过测试的所有修改的驱动程序支持文件发送到模块制造器,该模块制造器为通过测试的每个修改的驱动程序支持文件制作dlm。在事项374中,将所有dlm提供给访问受控设备以允许访问受控设备与读卡器/卡一起完全操作。除此之外或另选地,可生成克隆文件并对等共享,如事项376中所示。
64.在事项378中,管理人员或app为通过测试的修改的驱动程序支持文件配置文件分发。然后,app将修改的驱动程序支持文件和用户联系人信息发送到公司储存库,如事项380中所示。另外,在事项382中,管理人员或app使用各种机组范围的分发软件和其他可选方法将修改的驱动程序支持文件的部署配置给其他访问受控设备。事项384示出了修改的驱动程序支持文件和用户数据可在公司储存库中分析一次(可能使用人工智能(ai)过程),以用于自动创建驱动程序支持文件文档或其他应用程序,诸如以发现哪个读卡器和卡供应商以及设备模型正积极与现有设备一起使用。另外,如事项386中所示,修改的驱动程序支持文件可作为即将到来的更新版本的一部分被分发给访问受控设备。
65.如图6所示,本文的示例性系统和方法包括位于各种不同物理位置206处的各种计算机化设备200、204。计算机化设备200、204可包括打印服务器、打印设备、个人计算机等,并且通过(有线或无线)本地或广域网202进行通信(可操作地连接到彼此)。
66.图7示出了计算机化设备200,该计算机化设备可与本文的系统和方法一起使用,并且可包括例如打印服务器、个人计算机、便携式计算设备等。计算机化设备200包括控制器/有形处理器216和通信端口(输入/输出)214,该通信端口可操作地连接到有形处理器216和计算机化设备200外部的计算机化网络202。另外,计算机化设备200可包括至少一个辅助功能部件,诸如用户界面(ui)组件212。用户可从用户接口或控制面板212接收消息、指令和菜单选项,并且通过用户接口或控制面板输入指令。
67.输入/输出设备214用于往返计算机化设备200的通信,并且包括有线设备或无线设备(呈任何形式,不论是当前已知的还是未来开发的)。有形处理器216控制计算机化设备的各种动作。非暂态、有形、计算机存储介质设备210(其可为基于光、磁、电容器等,并且不同于暂态信号)可由有形处理器216读取并且存储指令,有形处理器216执行该指令使得计算机化设备执行诸如本文所描述的其各种功能。因此,如图7所示,主体外壳具有一个或多个功能部件,该功能部件在由电源218从交流电(ac)源220供应的电力下操作。电源218可包括常用功率变换单元、储能元件(例如电池等)等。
68.图8示出了作为打印设备204的计算机化设备,该计算机化设备可为上述讨论的访问受控设备中的一个,并且可包括例如打印机、复印机、多功能机器、多功能设备(mfd)等。打印设备204包括许多上述部件和至少一个标记设备(一个或多个打印引擎)240、介质路径236等,该标记设备可操作地连接到专用图像处理器224(其不同于通用计算机,因为其专门用于处理图像数据),该介质路径定位为将连续的介质或介质片材从片材供应器230供应到一个或多个标记设备240。在从一个或多个打印引擎240接收各种标记之后,介质片材可以可选地通过装订器234,该装订器能够将各种打印纸进行折叠、装订、分类等。另外,打印设备204可包括至少一个辅助功能部件(诸如扫描仪/文档处理机232(自动文档进给器(adf))
等),该辅助功能部件也利用外部电源220(通过电源218)供应的电力进行操作。
69.一个或多个打印引擎240旨在示出将标记材料(调色剂、油墨等)施用到连续介质或介质片材的任何标记设备,该介质或介质片材当前是已知的或将来开发的,并且可包括例如使用感光带或中间转印带的设备,或直接打印到打印介质的设备(例如喷墨打印机、基于色带的接触式打印机等)。
70.虽然附图中示出了一些示例性结构,但是本领域的普通技术人员将会理解,附图是简化的示意图,并且下文提供的权利要求涵盖未示出但通常与此类设备和系统一起使用的更多(或可能更少)特征。因此,本技术人无意以附图来限制下文所述权利要求,而是仅提供附图以示出可实现权利要求书保护的特征的几种方式。
71.上文讨论了许多计算机化设备。包括基于芯片的中央处理器(cpu)、输入/输出设备(包括图形用户界面(gui)、存储器、比较器、有形处理器等)的计算机化设备是制造商(诸如美国德克萨斯州朗德罗克的戴尔计算机公司(dell computers,round rock tx,usa)和美国加利福尼亚州库比蒂诺的苹果计算机公司(apple computer co.,cupertino ca,usa))生产的熟知且容易获得的设备。此类计算机化设备通常包括输入/输出设备、电源、有形处理器、电子存储器、布线等,其细节在本文中省略,使得读卡器关注于本文所述的系统和方法的突出方面。类似地,打印机、复印机、扫描仪和其他类似的外围设备可购自美国康涅狄格州诺沃克的xerox公司(xerox corporation,norwalk,ct,usa),并且出于简洁和读卡器关注的目的,本文不讨论此类设备的细节。
72.如本文所用,术语打印机或打印设备涵盖出于任何目的而执行打印输出功能的任何设备,诸如数码复印机、制书机、传真机、多功能机等。打印机、打印引擎等的细节是众所周知的,并且未在本文详细描述以保持本公开集中于所提出的显著性特征。本文的系统和方法可涵盖彩色、单色打印或者处理彩色或单色图像数据的系统和方法。所有上述系统和方法具体适用于静电记录和/或静电复印的机器和/或过程。
73.此外,术语“自动化的”或“自动地”意指一旦(机器或用户)启动过程,一个或多个机器就在没有任何用户的进一步输入的情况下执行该过程。另外,术语诸如“适于”是指设备被具体设计为具有在本文所述的处理中的特定点处自动执行特定操作或功能的专用内部或外部部件,其中此类专用部件被物理成形和定位以在本文所示的处理点处执行指定的操作/功能(可能没有任何操作者输入或动作)。在本文附图中,相同的标识数字标识相同或类似的物品。
74.应当理解,上述公开的和其他特征和功能中的各种或其另选方案可以期望地组合到许多其他不同的系统或应用程序中。本领域的技术人员随后可以做出各种目前未预见或未预料到的替换、修改、变化或改进,这些也旨在被所附权利要求书所涵盖。除非在特定的权利要求中对其本身进行了具体限定,否则不能从任何上述示例中暗示或引入本文的系统和方法的步骤或部件,作为对任何特定的顺序、数目、位置、尺寸、形状、角度、颜色或材料的限制。