专利名称:自助终端的制作方法
技术领域:
本发明涉及自助终端(SSTs)。具体地说,本发明涉及支持第三方应用程序的自助终端。本发明还特别涉及到自动柜员机(ATMs)。
向第三方出租屏幕空间的一个问题是,用于对ATM用户显示的屏幕流进行控制的ATM应用程序非常复杂。因此非常难于修改该应用程序并且非常耗时。所以,ATM所有者不情愿允许第三方频繁变更广告。对于某些第三方卖主来说,他们通过ATM宣传的商品或服务具有有限利用度,或者说这些商品和/或服务的价格会频繁发生变化。这意味着,不适于将这些商品或服务作为长期广告的一部分来宣传。
向第三方出租屏幕空间的另一个问题是,第三方不能访问ATM的外围设备(例如打印机、卡片阅读机、存款模块等)。此问题的一个原因是,为了防骗,ATM仅允许安全访问其外围设备。另一个原因是,为了保证ATM即使发生轻度故障仍能运行,ATM提供内在适应能力。因此,任何第三方的广告或其它应用程序不能为ATM用户提供收据或其它打印信息,并且不能接收用户付款,除非第三方应用程序被集成为ATM应用程序的一部分。
发明内容
本发明的一个或多个实施例的目的之一就是避免或减轻与向第三方出租屏幕空间有关的上述缺陷或其它缺陷。
根据本发明的第一方案,提供一种自助终端,该自助终端包括用户界面;以及终端应用程序,用于控制用户界面。其特征在于,该终端具有连接到存储服务器应用程序的远程服务器的链路,服务器应用程序向终端应用程序发出使用用户界面的请求,从而使终端用户可以通过该终端访问服务器应用程序,并且该服务器应用程序可以使用用户界面提供的一个或多个设备。
服务器应用程序包括用于产生应用程序流的装置。应用程序流即向终端用户显示的屏幕序列或图像序列,并且通常包括图形和文本,有时还包括声音。通常,出现的图形、文本以及声音将根据用户的一个或多个输入发生变化。应用程序流引导用户完成操作,例如,交易或请求信息。
优选用户界面包括用户输入装置、显示器以及至少一个其它外围设备。
至少一个其它外围设备可以从以下设备中选择打印机、卡阅读机、现金配送器、存款模块等。
终端应用程序可以控制SST的整个操作过程,并且可以包括终端的应用程序流。
根据本发明的上述方案,第三方可以独立地建立并修改服务器应用程序(从而对服务器应用程序产生的应用程序流进行调整)的自助终端应用程序。因此,第三方可以根据需求频繁更新第三方应用程序流,而不会影响SST应用程序流。通过将终端应用程序与第三方应用程序流分离,就不要求终端应用程序保证第三方应用程序流满足终端应用程序对安全性和可靠性要求。
此外,本发明的上述方案,第三方可以将其服务器应用程序与其专用数据库或系统连接,从而保证SST用户可以访问第三方提供的全部信息。例如,如果第三方是航空公司,则该航空公司的航班、可用机票以及机票价格数据库对服务器应用程序有效以确保SST用户能访问最新航班和机票信息。这还意味着,除了通过服务器应用程序,第三方无需为SST所有者提供访问第三方专用数据库和系统的通路。
此外,根据本发明的上述方案,不是在各本地终端,而是集中在远程服务器更新服务器应用程序。
优选该链路是连接到IP(互联网协议)网络的网络连接。IP网络可以是公众因特网,或专用内部网络、外部网络等。
优选SST插入用于接收符合页面描述语言(例如超文本标记语言(HTML))文件的装置。可以将浏览器(例如Microsoft(商标)InternetExplorer、Netscape(商标)Communicator等)嵌入接收符合页面描述语言文件的装置。另一方面,还可以将HTML组件嵌入接收符合页面描述语言文件的装置,例如,Sun(商标)HotJava(商标)HTML部件。
可以在远程服务器上执行服务器应用程序,即,服务器应用程序可以是服务器端应用程序。在变形实施例中,在SST执行服务器应用程序,即服务器应用程序可以是客户机端应用程序。
在采用服务器端应用程序的实施例中,远程服务器可以动态提供产生页面描述语言文件,例如,因特网网页,从而送到用于接收符合页面描述语言文件的装置。
可以利用传统方法产生页面描述语言文件。例如,可以利用Perl脚本或CGI脚本产生HTML文件。另一方面,还可以利用Microsoft(商标)Active Server Page或Sun(商标)Java Servlets产生HTML文件。在其它实施例中,利用DHTML(动态超文本标记语言)产生HTML文件。
在采用客户机端应用程序的实施例中,服务器应用程序包括一个或多个Java Applets程序和/或ActiveX控件。Java Applets程序或ActiveX控件可以动态产生因特网网页,并可以将这些网页送到终端内的嵌入式网页浏览器或HTML组件。Java Applets程序或ActiveX控件可以访问远程服务器以提供用户请求的信息。
可以将超文本链接嵌入动态产生的网页内,并且可以指向后面的动态网页,从而允许构建基于流的复杂应用程序。
优选远程服务器执行对话跟踪以保持服务器与客户机(SST)的相关。
优选远程服务器为各客户机提供对话对象,以使对话对象保持关于该客户机执行的应用程序流的信息。提供在客户机运行的应用程序的状态信息。
SST可以提供用于访问第三方应用程序的专用用户输入(例如按钮)。另一方面或者此外,显示器可以是触摸屏,并且SST可以分配用于显示第三方应用程序的显示区,因此,在触摸分配区时,就可以激活第三方应用程序。在激活第三方应用程序时,终端可以放大该分配区,例如放大到全屏。
在运行第三方应用程序期间,优选该终端应用程序监视终端的用途以保证用户仍在场并在需要时实现错误处理功能。如果在执行服务器应用程序期间,用户放弃该终端,则该终端应用程序会终止服务器应用程序,直到另一个用户激活服务器应用程序。
在某些实施例中,可以在SST上对不止一个第三方应用程序分配显示区。
优选终端设置服务器应用程序将请求发送到其的端口。这样就可以使服务器应用程序直接将请求发送到SST。直接将请求发送到SST(而非通过SST执行的嵌入式网页浏览器或HTML部件)的优势在于提高了安全性。
终端可以为远程服务器提供本地设备(例如外围设备提供的设备,例如,收据打印、现金存款或配送等),同时保证只有终端应用程序(而非网页浏览器或HTML组件)具有到这些设备的入口。例如,该终端允许服务器请求打印某个数据。该终端通过该端口接收此请求并利用终端应用程序访问打印机、保证打印该数据并对用户显示该数据。
优选该终端将指示请求状态(例如,收到打印请求、打印机错误、打印完成等)的响应送到该服务器。例如打印被接受的请求、打印错误、打印结束等。
在某些实施例中,只授权该服务器发出请求,因此任何客户机端应用程序均必须通过该服务器将请求发送到该终端。在其它实施例中,客户机端应用程序可以直接将请求发送到该终端。
根据本发明的第二方案,提供了一种自助终端系统,该自助终端系统包括与多个自助终端互联的远程服务器,各终端分别具有终端应用程序,其中远程服务器存储包括第三方应用程序流的服务器应用程序,因此终端用户可以通过终端访问服务器应用程序,并且该服务器应用程序可以向终端应用程序发送请求以使用引入该终端内的任意外围设备。
该系统可以包括授权服务器,该授权服务器可以授权进行终端用户请求的交易。另一方面,还可以利用远程服务器授权进行终端用户请求的交易,并且该远程服务器还存储包括第三方应用程序流的服务器应用程序。
优选服务器应用程序产生符合页面描述语言的文件。
优选远程服务器包括将符合页面描述语言的文件发送到终端的装置。
根据本发明的第三方案,提供了一种可以选择对用户提供显示的多个用户界面应用程序之一的自助终端,终端所有者至少对一个用户界面应用程序进行控制,并且第三方至少对一个用户界面应用程序进行控制,其中第三方控制的用户界面应用程序可以请求使用终端控制的设备。
优选受控于SST所有者的用户界面应用程序常驻在SST内,并且受控于第三方的用户界面应用程序常驻在远程服务器内。
根据本发明的第四方案,提供了一种在具有终端应用程序的自助终端上支持第三方应用程序的方法,该方法包括以下步骤对存储在远程服务器上的服务器应用程序提供链接;向用户显示与服务器应用程序交互的选项;根据与服务器应用程序交互的用户请求,执行服务器应用程序,并对用户显示服务器应用程序;以及监视服务器应用程序从而请求使用终端应用程序控制的设备。
优选该方法进一步包括以下步骤终端应用程序监视用户与服务器应用程序的交互过程以检测不存在用户。
优选该方法进一步包括步骤检测到不存在用户后,停止执行服务器应用程序,并显示终端应用程序。
优选对用户显示服务器应用程序的步骤包括显示包含在服务器应用程序内的应用程序流的步骤。另一方面或者此外,应用程序流包括或包含音频文件,对用户显示服务器应用程序的步骤包括播放包含在服务器应用程序内的音频文件的步骤。
根据本发明的第五方案,提供了一种自助终端系统,该自助终端系统包括与多个自助终端互联的远程服务器,各终端分别具有终端应用程序,其中远程服务器存储包括第三方应用程序流的服务器应用程序,因此终端用户可以通过基于客户机—服务器的终端访问服务器应用程序,并且该服务器可以将请求发送到基于对等方式的终端。
优选各终端应用程序执行服务器处理过程,以在服务器与终端之间实现对等通信。
图7示出用于说明
图1、图2和图4所示服务器上的资源的HTTPURL格式;图8示出访问图1所示服务器运行的远程数据库的一个可能URL;图9示出请求使用图1所示SST上的设备的命令;图10示出图1所示SST发送到图1所示服务器、用于将请求状态通知SST的URL;图11示出根据本发明变形实施例的服务器和终端的方框图;图12示出图11所示服务器的部分方框图;以及图13示出图11所示终端的部分方框图。
与传统ATM网络类似,通过交换设备22,ATM 14a和FSC 14b还与金融机构的授权中心20相连。交换设备22用于将ATM 14a或FSC14b发出的金融交易授权请求发送到授权中心20。正如本技术领域内的熟练技术人员所知,可以将交换设备22和授权中心20引入一个服务器(授权服务器)内。显然,交换设备22可以将授权请求发送到其它金融机构运行的授权中心,或发送到金融服务公司。
参考图2,每个SST 14分别包括用户界面30;网络连接32,提供通过因特网16到服务器12的链路;以及控制器34,用于控制SST14的运行过程。控制器34引入装置36用于接收符合页面描述语言的文件。控制器34还引入终端应用程序38用于控制终端14。
远程服务器12也具有网络连接器40和控制器42,控制器42引入网页服务器44和用于控制服务器44的服务器操作系统46。
参考图3,图3更详细示出SSTs 14之一(ATM 14a),系统总线(或多条系统总线)48将用户界面30、网络连接器32以及控制器34互联从而使它们互相通信。
用户界面30包括如下用户界面单元(外围设备)卡片阅读机50、显示器52、安装在显示器52上的触摸屏模块54、打印机56以及现金配送器58。
控制器34包括用于驱动用户界面单元50至58的模块,即卡片阅读机控制器60、显示控制器62、触摸屏控制器64、打印机控制器66以及配送器控制器68。这些用户界面单元(50至58)以及相关控制器(60至68)均是在传统ATM上使用的标准模块,因此在此不做详细说明。
控制器34还包括BIOS 70,存储在非易失性存储器内;微处理器72;相关主内存74;存储空间76,为磁盘驱动器形式;专用交换连接器78,用于将ATM 14a连接到交换设备22(如图1所示)。
用于接收符合页面描述语言的文件的装置36是嵌入终端应用程序38的HotJava(商标)浏览器豆(bean)组件。以下将嵌入浏览器组件简称为浏览器或网页浏览器。
在使用时,将ATM操作系统内核80和用于控制ATM的运行过程的ATM应用程序38(即终端应用程序)载入主内存74。
参考图4,图4更详细示出远程服务器12,系统总线(或多条总线)90将网络连接器40连接到控制器42。控制器42进一步包括存储在非易失性存储器内的BIOS 92、微处理器94、相关主内存96、磁盘驱动器形式的存储空间98以及用于存储机票信息、票价信息以及可用座位信息的数据库100。
服务器操作系统46和网页浏览器44被存储在磁盘驱动器98。在使用时,将服务器操作系统内核102和网页服务器44载入主内存96。在此实施例中,网页服务器44是Java Web Server(商标)。
Java Web Server 44包括用于调用一个或多个Java Servlet的服务器应用程序104,并且服务器44支持JDBC(Java数据库连接)格式的数据库应用程序编程接口(API)106。
Java Servlet 104产生符合页面描述语言的文件,在此实施例中为HTML。正如本技术领域内的熟练技术人员所知,Java Web Server 44还提供对话管理、线程管理、管理以及安全特性。
数据库应用程序接口106是提供到数据库100的SQL入口的数据库驱动程序。Java Servlet利用JDBC API 106从数据库100获得信息,从而根据用户请求产生HTML文件。
Java Servlet是用于动态产生信息的软件代码。必须利用网页服务器对各Servlet进行注册,以便网页服务器可以将Servlet请求与网页请求区别开。在远程网页浏览器请求注册Servlet时,网页服务器例示Servlet。进行例示之后,Servlet保留在内存中一段时间等待再被网页浏览器调用。
现在,将参考图5和图6说明图1所示系统的运行过程。图5示出具有两个区域背景区110和前景区112的显示器52和触摸屏54。
前景区112是覆盖部分背景区110的窗口。网页浏览器36(如图2和图3所示)控制前景区112并监视该区域以检测任意用户选择。
背景区110是受控于ATM应用程序38的全屏窗口,用于显示ATM应用程序流,而前景区112是受控于网页浏览器36的较小窗口,用于显示第三方(在此实施例中为航空公司)的交互广告。
ATM 14a向用户提供访问航空公司信息的选项(图6所示的步骤120)。这是通过在前景区112内设置图标114所示的超文本链接实现的。ATM 14a同时还向用户提供进行ATM交易的选项(步骤120)。这是通过ATM 14a在背景区110显示要求用户将其卡插入卡片阅读机模块50(如图2所示)内的文本实现的。
如果用户选择ATM交易(步骤122),然后完成此交易(步骤124)将卡退回用户。
开始进行ATM交易(例如提款、存入支票等)后,终端应用程序38就不允许网页浏览器36与航空公司应用程序104建立链接。这样可以保证用户在交易期间不能访问航空公司信息,并且如果未完成交易或未收回卡片,不能离开ATM14a。
如果用户在插入其卡前触摸图标114,则网页浏览器36可以检测到此动作(步骤126)。网页浏览器扩展(步骤128)前景区112以覆盖显示器52的整个屏幕区域。
然后,网页浏览器36与远程服务器12建立连接(步骤130),如下所述。建立连接之后,网页浏览器显示从远程服务器12接收的网页。通过选择超文本链接,以用户在个人计算机上操作传统网页浏览器相同方式,用户可以与这些网页进行交互。
网页浏览器36提供退出按钮118(如图5所示)以允许用户随时从航空公司应用程序退出到ATM应用程序38。
在检测到用户从航空公司应用程序退出(步骤134)后,网页浏览器36将前景区112缩回到其原始尺寸(步骤136)。
为了与远程服务器12建立连接,网页浏览器利用URL(统一资源定位器)指定远程服务器12的IP地址。浏览器36利用超文本传输协议(HTTP)与服务器12进行通信。
URL识别服务器的域名以及服务器上的资源(网页)。图7示出HTTP URL的格式。HTTP URL 150具有协议部分152(在此例中为HTTP)、域名部分(或者IP地址部分)154、用于访问服务器上的具体文件或路径的路径部分156、以及用于向服务器发出命令的命令部分158。
利用用于访问第三方应用程序的URL预编图标114所示的超文本链接,即所使用的域名是XYZ航空公司拥有并运行的第三方服务器12的域名,在此实施例中,该域名为“www.xyzairline.com”,如图8所示。这样可以保证ATM 14a的用户不可能通过航空公司网页而进入其它网页。
在用户选择图标114时,网页浏览器36将初始化URL 160(如图8所示)发送到网页服务器44。初始化URL 160含有航空公司域名162(位于域名部分154)、用于定位航空公司机票信息的正确路径信息164(位于路径部分156)以及终端详细信息(位于命令部分158)。
终端详细信息包括终端应用程序38执行的服务器进程(服务器插件)细节。服务器插件细节包括ATM 14a的IP地址168以及终端应用程序38对服务器插件指定的端口号166(在此实施例中为“6000”)。
在终端详细信息内不一定要包括ATM 14a的IP地址168,因为因特网数据包中包括发送者的IP地址。
指定端口号166与接收网页的网页浏览器36使用的默认端口号(“80”)不同。指定端口号166是ATM应用程序38为了监视用作服务器插件的输入数据使用的逻辑信道。服务器插件可以接收指定端口号166的请求,处理该请求并将响应送到请求者。
从网页浏览器36收到初始化URL 160后,网页服务器44对该网页浏览器36建立对话对象以跟踪该网页浏览器36与网页服务器44之间的通信。因此,网页服务器44建立并存储与各网页浏览器36有关的唯一对话对象。
网页服务器44还将标准网页送到网页浏览器36用于向ATM 14a用户提供显示。航空公司标准网页含有一个或多个超文本链接以允许用户通过航空公司网点进行导航,从而获得目的港、机票价格、可用机票、航空里程等详细情况。由于航空公司控制其网页内的脚本,所以它可以建立一组供浏览器36用于从网页服务器44请求信息的定制命令。
通过从初始化URL附加服务器插件的IP地址和指定端口号,负责建立标准网页并将该标准网页转发到浏览器36的Servlet 104也对对话对象进行更新。因此,对于各网页浏览器,对话对象包括执行浏览器36的ATM 14a的指定端口号166和IP地址。
在网页服务器44从网页浏览器36接收命令时,它调用Servlet 104处理该命令并产生适当网页用于送回网页浏览器36。在调用Servlet 104时,它访问该网页浏览器36的对话对象以获得该浏览器36的对话数据(例如IP地址)。Servlet 104通过JDBC API 106访问数据库100并产生包括从数据库100检索的信息在内的HTML页面,HTML页面具有航空公司网点的图形格式和风格。因此,ATM 14a用户可以通过航空公司数据库100查看信息,而无需终端应用程序38启动通信过程。
除了将信息发送到网页浏览器36外,各Servlet 104还对与浏览器36相关的对话对象进行更新。总之,Servlet 104将准备插入从数据库100检索的信息内的HTML页面,而Servlet 104将该信息(而非HTML页面)拷贝到对话对象。该对话对象保存网页浏览器36请求信息的拷贝。
Servlet 104送到浏览器36的HTML页面通常含有一个或多个超文本链接。这些超文本链接可以含有另一个网页(例如用于显示一般信息)的URL,或者含有用于调用Servlet 104(例如用于处理特定信息的请求,或者用于提供诸如打印特定信息的功能)的URL。
如果用户希望在ATM 14a打印信息的硬拷贝,则用户在提供打印页面功能的HTML页面上选择超文本链接。利用调用Servlet 104的URL预编此超文本链接用于打印服务器44当前显示的信息。浏览器36不提供打印页面功能,因为浏览器36不能对终端应用程序38发送请求,将打印页面功能嵌入浏览器36显示的HTML内。
网页浏览器36将选择超文本链接的URL发送到网页服务器44。网页服务器44接收此URL并调用用URL识别的Servlet 104。被调用的Servlet 104访问对话对象以检索(1)当前显示信息,以及(2)服务器插件的IP地址和指定端口号。
然后,调用Servlet 104将请求发送到位于指定端口号166和IP地址的服务器插件。
如果通信寻址到网页浏览器36的端口号,则终端应用程序38将此通信传送到浏览器36,而如果通信寻址到指定端口号166,则终端应用程序38将此通信传送到服务器插件。
金融机构预编服务器插件以识别特定命令请求,例如,“打印”、“接收 存款”等。这些命令请求对应于预先设置的、金融机构允许航空公司在ATM 14a进行访问的设备。利用这些预编命令请求,通过发送设备请求消息170,Servlet 104可以指示ATM 14a设置一个或多个预先设置设备,如图9所示。
设备请求消息170包括预先设置命令请求172和命令运算符174。命令运算符174可以包括数据176(例如航空公司名称)和控制字符178(例如回车或换行)。设备请求消息170是在Servlet 104与插件服务器之间进行的对等进程间通信。
收到设备请求消息170后,通过通知相应外围设备(对于此请求,相应外围设备是打印机56)并将任意数据176和控制字符178送到该外围设备,插件服务器开始实现该请求。以下是打印的图9所示的设备请求消息170XYZ airline1500 Air Miles正如本技术领域内的熟练技术人员所熟知,在外围设备运行时,终端应用程序38处于正常监视外围设备(图3所示的50、52、54、56、58)的状态。利用此正常信息状态,终端应用程序将状态URL 180(如图10所示)发送到网页服务器44,以将当前请求状态通知服务器44。通过在前景区112(如图5所示)内显示消息,服务器44可以利用此信息通知ATM 14a用户。
状态URL 180包括航空公司域名162;正确路径信息164,用于定位航空公司机票信息;以及命令状态182,位于命令部分。命令状态是服务器44识别的预定义字符串,例如“print=pending”、“print=OK”、“print=error”等。这些命令状态字符串的意义是显而易见的。
此外,由于浏览器36是终端应用程序38内的嵌入组件,所以终端应用程序38可以监视网页浏览器36的使用,如果在一定时间周期内浏览器36不发送URL,则终端应用程序38就在显示器52上显示要求用户确定其是否仍希望查看航空公司网点的消息。如果在一定时间周期内未从用户收到响应,则终端应用程序38认为用户放弃ATM14a,并且应用程序38缩小前景区窗口112(如图5所示)以显示具有ATM应用程序流的背景区窗口110(如图5所示)。
在ATM 14a转换到背景区窗口时,网页浏览器36将URL发送到网页服务器44以通知网页服务器44终止当前对话。网页服务器44接收此URL并终止与ATM浏览器36有关的对话对象。对话表示从网页浏览器36开始连接网页服务器44到浏览器36终止连接网页服务器44的用户与网页服务器44的交互过程。
嵌入终端应用程序38的浏览器36的另一个优点是,终端应用程序38可以监视浏览器36发送的所有URL。因此,如果URL不含有航空公司的域名(www.xyzairline.com),则终端应用程序会阻止浏览器36发送该URL。
尽管本实施例对一个SST(ATM 14a)与服务器12的交互过程进行了说明,但是,显然多个SST(例如14a、14b、14c)可以同时与服务器12交互,每个SST 14分别具有唯一相关对话对象。
显然,本发明的此实施例可以保证终端应用程序38的适应能力不会受到使第三方应用程序104与用户进行交互的负面影响,因为终端应用程序38的代码独立于第三方应用程序104的代码。显然,此实施例可以保证终端应用程序38对ATM 14a的所有设备进行控制,但是允许第三方应用程序104请求使用其中一些设备或全部设备。其优点在于,第三方可以使用ATM 14a提供的设备,但是金融机构无需随时将这些设备的控制权转移到第三方。
现在,参考图11,图11示出本发明的变形实施例,SST 214通过诸如因特网的IP网络16与服务器212相连。通过将图2与图11进行比较,可以看出图11所示的物理设置与图2所示的物理设置相同,然而,在图11所示实施例中的服务器212与SST 214的交互方式与图2所示的实施例中的服务器12与ATM 14的交互方式不同,现在将参考图12对此进行说明。
图12示出具有服务器应用程序250的网页服务器244,对服务器应用程序250进行设置以将JAVA(商标)小应用程序送到客户机网页浏览器236。客户机网页浏览器236是可以接收并执行JAVA小应用程序的Microsoft(商标)Internet Explorer浏览器。
小应用程序是与网页相关的可执行程序。小应用程序包括在客户计算机上设置特定编程功能(例如图形显示)的可执行JAVA对象字节码。利用具有引擎(例如JAVA虚拟机)的网页浏览器从服务器下载小应用程序以执行此下载小应用程序。浏览器将该小应用程序与相关网页一起执行。
SST 214的屏幕显示与图5所示的ATM 14a的屏幕显示相同。在用户选择图标114(如图5所示)时,浏览器236将初始化URL 160(如图8所示)发送到网页浏览器242。
收到初始化URL 160后,服务器212将SST 214的IP地址和端口号发送到小应用程序提供商250。小应用程序提供商250利用此地址和端口号消息建立利用服务器IP地址、SST的IP地址、SST的指定端口号(不是网页浏览器236的默认端口号)以及访问数据库所需的任何参数编制的小应用程序。网页服务器244利用数据库接口252访问数据库。然后,将小应用程序附加到网页并发送到网页浏览器236。
网页浏览器236从服务器212接收此网页和附加的小应用程序。浏览器236在显示器52(如图3所示)上显示此网页(如图13所示),并在浏览器236的上下文内执行小应用程序260。
由于用户与网页交互,所以在必须进行用户请求时,小应用程序260将信息请求发送到网页服务器244。网页服务器244接收该请求、访问数据库以获得数据并将该数据发送到小应用程序260。小应用程序260接收该数据并产生包括接收数据在内的新网页用于利用浏览器236进行显示。因此,在此实施例中,不是在服务器212,而是在SST214执行服务器应用程序(小应用程序260),然而,在先前实施例中,在服务器212执行服务器应用程序(Servlet 104)。
有些浏览器不允许所下载的小应用程序访问产生小应用程序的服务器之外的任何服务器。对于这种浏览器,小应用程序260必须访问服务器12并请求服务器12将设备请求发送到代表小应用程序260的ATM 14a。
在本发明范围内,可以对上述实施例进行各种修改,例如,在其它实施例中,可以具有更多或更少的用户界面单元。在其它实施例中,网络连接器32可以用于连接交换设备22,因此不需要专用交换设备连接器78。在其它实施例中,可以在一组预定条件下,例如,在SST开始与远程服务器12对话时,例示Servlet。在其它实施例中,如何显示窗口110和112的规则以及在什么交易点用户可以访问这些窗口的规则可以与上述特定实施例的规则不同。在其它实施例中,所采用的设备请求格式可以不同于上述设备请求格式,例如,可以利用诸如公开密钥加密的加密技术对设备请求进行加密。
在一种实施例中,利用PERL脚本或CGI脚本,服务器应用程序可以产生网页。在第二种实施例中,利用Microsoft(商标)活动服务器页面代替JAVA(商标)Servlet。在第三种实施例中,服务器应用程序可以利用动态HTML产生网页。在第四种实施例中,服务器应用程序常驻在SST并且可以利用ActiveX控件产生网页。还可以采用其它对话跟踪方法。
权利要求
1.一种自助终端(14或214),该自助终端包括用户界面(30);以及终端应用程序(38),用于控制用户界面(30);其特征在于,该终端(14或214)具有到存储服务器应用程序(104或260)的远程服务(12或212)的链接(16),从而将使用用户界面(30)的请求发送到终端应用程序(38),因此终端(14或214)用户可以通过终端(14或214)访问服务器应用程序(104或260),并且服务器应用程序(104或160)可以使用用户界面(30)提供的一个或多个设备。
2.根据权利要求1所述的终端,其中用户界面包括用户输入装置、显示器以及至少一个其它外围设备。
3.根据权利要求1或2所述的终端,其中SST引入用于接收符合页面描述语言(36或236)的文件的装置。
4.根据权利要求1至3任意一项所述的终端,其中远程服务器执行服务器应用程序(104)。
5.根据权利要求1至3任意一项所述的终端,其中该终端执行服务器应用程序(260)。
6.根据权利要求1至5任意一项所述的终端,其中远程服务器(12或212)实现对话跟踪以保持服务器与终端相关。
7.根据权利要求1至6任意一项所述的终端,其中远程服务器(12或212)对各终端设置对话对象,这样,对话对象就可以保存有关该终端执行的应用程序流信息。
8.根据权利要求1至7任意一项所述的终端,其中在运行第三方应用程序期间,终端应用程序(82)监视终端的使用,以保证用户仍然在场。
9.根据权利要求1至8任意一项所述的终端,其中终端设置端口(166),服务器应用程序将请求发送到该端口。
10.根据权利要求1至9任意一项所述的终端,其中终端(14或214)将指出请求状态的响应送到服务器(12或212)。
11.一种自助终端系统(10),该自助终端系统包括与多个自助终端(14)互联的远程服务器(12),各终端(12)具有终端应用程序(82),其中远程服务器(12)存储包括第三方应用程序流的服务器应用程序(104),这样终端(14)用户就可以通过终端(14)访问服务器应用程序(104),并且服务器应用程序(104)可以向终端应用程序(82)发送请求以使用引入终端(14)内的任意外围设备(50、56、58)。
12.根据权利要求11所述的系统,其中该系统包括授权服务器(20),该授权服务器可以授权进行终端用户请求的交易。
13.一种可以选择多个向用户显示的用户界面应用程序之一的自助终端(14或214),终端(14或214)的所有者对至少一个用户界面应用程序进行控制,并且第三方对至少一个用户界面应用程序进行控制,其中第三方控制的用户界面应用程序可以请求使用受控于终端(14或214)的设备(50、56、58)。
14.一种在具有终端应用程序的自助终端上支持第三方应用程序的方法,该方法包括以下步骤对存储在远程服务器上的服务器应用程序设置链接;向用户显示与服务器应用程序交互的选项(120);根据与服务器应用程序交互的用户请求,执行服务器应用程序(130),并对用户显示服务器应用程序;以及监视服务器应用程序从而请求使用终端应用程序控制的设备(132)。
15.根据权利要求14所述的方法,该方法进一步包括以下步骤终端应用程序监视用户与服务器应用程序的交互过程以检测用户是否在场。
16.根据权利要求14或15所述的方法,该方法进一步包括以下步骤检测到用户不在场后,停止执行服务器应用程序,并显示终端应用程序。
全文摘要
本发明披露了一种自助终端系统(10)。该系统(10)具有多个终端(14或214),各终端分别包括:用户界面(30);以及终端应用程序(38),用于控制用户界面(30)。各终端(14或214)分别具有到存储服务器应用程序(104或260)的远程服务器(12或212)的链接(16),从而将使用用户界面(30)的请求发送到终端应用程序(38)。终端(14或214)之一的用户可以通过终端(14或214)访问服务器应用程序(104或260)。终端应用程序(104或260)可以使用用户界面(30)提供的一个或多个设备(50、56、58)。各终端可以选择对用户显示终端应用程序,还是对用户显示服务器应用程序。此外,还披露了一种在自助终端上支持第三方应用程序的方法。
文档编号G06Q20/00GK1379894SQ00814358
公开日2002年11月13日 申请日期2000年9月14日 优先权日1999年10月21日
发明者迈克尔·库茨, 李·杰弗里·达夫 申请人:Ncr国际公司