首页 / 专利库 / 软件 / 可联网软件 / 连到计算机网络上的信息站和服务器

连到计算机网络上的信息站和服务器

阅读:98发布:2022-03-09

专利汇可以提供连到计算机网络上的信息站和服务器专利检索,专利查询,专利分析的服务。并且一个 服务器 系统195通过网络150,如因特网,社团或政府内部网,外部网等,连到很多个信息站。信息站具有一个或多个预定义的输入/输出设备130(如显示器, 键盘 ,纸张 打印机 ,电话等)及每个输入/输出设备的一个或多个 驱动器 程序440(本地API)。显示器用于为信息站的用户显示一个或多个图形 用户界面 105和视频图象。信息站有一浏览器160,它用于从服务器得到素材。服务器具有服务于信息站的一个或多个应用文件175或配置集。配置集是专 门 的应用(应用的使用使得信息站被配置或重配置)。在配置集中的一个或多个文件包括用于为信息站的设备控制本地API的一个或多个嵌入控制程序620。这样,设备被控制以配置信息站实现应用。,下面是连到计算机网络上的信息站和服务器专利的具体信息内容。

1.一种服务器,用于通过网络连到一个或多个信息站,用于接收一 个或多个配置请求,所说的服务器包括:
至少一个同应用相关的配置集,以及具有一个或多个文件和至少一个 嵌入控制功能能选择信息站上一个或多个驱动程序的驱动子集;及
在信息站上用于同驱动子集通信的装置,使驱动程序去控制一个或多 个本地信息站功能的设备子集,从而配置信息站实现应用。
2.根据权利要求1的服务器,这里的配置请求来自要被配置的信息 站。
3.根据权利要求1的服务器,这里的配置请求来自一代理计算机。
4.根据前面任一权利要求的服务器,这里至少一个配置集包含下列 中的任一个:远程设备控制、远程消息显示、文件传送,及代理/客户协同。
5.根据前面任一权利要求的服务器,这里至少一个嵌入控制功能包 括一系统监视程序,用来确定信息站的一个或多个本地信息站功能的操作 状态。
6.根据权利要求5的服务器,这里的操作状态用于确定下列中的任 一个或多个:一个或多个外部设备所需的维护,一个或多个外部设备的维 护历史,哪一个应用文件在网络上服务以响应一个或多个请求,及有关一 个或多个信息站用户的市场信息。
7.根据权利要求5或6的服务器,这里的操作状态确定服务器将用 那一个配置集在网络上服务于信息站。
8.根据前面任一权利要求的服务器,这里至少一个配置集包含具有 零个或多个超文本部分的一个或多个HTML文件。
9.根据前面任一权利要求的服务器,这里的应用是在信息站上为用 户定制的用户化的应用。
10.根据前面任一权利要求的服务器,这里的应用通过所说的至少一 个配置集配置信息站,提供对因特网的访问
11.根据权利要求10的服务器,这里对因特网的访问通过一个或多 个指定的服务器,在一个或多个用户之间提供通信链接。
12.根据前面任一权利要求的服务器,这里的应用包括下列中的任一 个或多个:电话呼叫、电子邮件、电视会议、传真传输、训练会话、网上 信息的搜索及基于Web的协同。
13.根据前面任一权利要求的服务器,这里的应用在所说的至少一个 配置集配置的信息站上,为用户提供信息。
14.根据前面任一权利要求的服务器,这里至少一个嵌入控制功能能 使信息站去请求一个或多个配置集。
15.一种对通过网络连到一个或多个电子信息站的服务器进行操作方 法,所说的方法包括下述步骤:
从连到网络上的信息站接收配置请求;
提供至少一个配置集,配置集与应用相关并具有一个或多个文件,並 且至少一个嵌入控制函数能选择信息站上一个或多个驱动程序的驱动子 集;及
送所说的至少一个配置集到信息站,使驱动程序去控制一个或多个本 地信息站功能的设备子集,以配置信息站实现应用。
16.一种用来连接到网络上的信息站,包括:
一个或多个输入/输出设备;
驱动每个输入/输出设备的一个或多个本地程序;及
用于在网络上取至少一个配置集的浏览器,配置集是同信息站应用相 关,并具有一个或多个文件及至少一个嵌入控制功能以选择本地程序的子 集,并用于同子集通信,以使其中的本地程序去驱动本地信息站设备的子 集以配置信息站实现应用。
17.根据权利要求16的信息站,这里的一个或多个输入/输出设备 包括下列中的任一个或多个:打印机、介质读入器、介质记录器、介质分 发器、自动提款机、扫描仪、检验器(deposer)、电子笔、卡片发行器、 支票打印机、打印机、票券发行器、CRT、键盘触摸屏、摄像机、人体 传感器、、电话机、照明、话筒、扬声器、CD-ROM播放器、鼠标器及 存储器
18.根据权利要求16或17的信息站,还包括一显示器,其上浏览器 提供的Web页作为应用的一部分。
19.根据权利要求18的信息站,这里的Web页包括下列可视特征中 的任一个或多个:超链接、为请求一个或多个附加配置集的超链接、图标、 菜单、文本输入区、数据输入区、广告、通知、新闻广播、天气预报、及 一般信息的说明。
20.根据权利要求16到19任意一项的信息站,这里的信息站应用是 由一个或多个选择功能选择的可选择应用。
21.根据权利要求20的信息站,这里的信息站应用是用与选择功能 无关的配置集重配置的缺省应用。
22.根据权利要求20或21的信息站,这里的选择功能在信息站上出 现一个或多个时间周期。
23.根据权利要求20到22任意一项的信息站,这里的可选择应用根 据用户的喜好,用户化地组织图形用户界面
24.根据权利要求20到23任意一项的信息站,这里的可选择应用由 也被连到网络上的代理来选择。
25.根据权利要求20到24任意一项的信息站,这里的可选择应用包 括下列中的任一个:远程设备控制,远程消息显示,文件传送及代理/客 户协同。
26.根据权利要求16到25任意一项的信息站,还包括一个系统监视 程序,以确定一个或多个信息站设备的操作状态。
27.根据权利要求26的信息站,这里的操作状态用于确定下列中的 任一个或多个:一个或多个输入/输出设备所需的维护、一个或多个输入/输 出设备的维护历史、那一个应用文件用于配置信息站、及有关用户的市场 信息。
28.根据权利要求16到27任意一项的信息站,这里的浏览器接收请 求,确定那些信息站功能和设备已安装,以便决定如何操作各个设备驱动 器。
29.根据权利要求16到28任意一项的信息站,这里的文件是具有零 个或多个超文本部分的HTML文件。
30.根据权利要求16到29任意一项的信息站,这里的应用是为用户 定制的用户化的应用。
31.根据权利要求16到30任意一项的信息站,这里的应用程序提供 对因特网的访问。
32.根据权利要求31的信息站,这里对因特网的访问,提供通过一 个或多个指定的服务器,在第一和第二用户之间的通信链。
33.根据权利要求16到32任意一项的信息站,这里的应用包括下列 中的任一个或多个:电话呼叫、电子邮件、电视会议、传真传输、训练会 话、网上信息搜索,及基于Web的协同。
34.根据权利要求17的信息站,这里的设备子集包括打印机并且应 用配置打印机以打印下列中的任一个:收据、支票、Web页、定货单、票 券、护照及表格。
35.根据权利要求17的信息站,这里的设备子集包括下列中的任一 个或多个:话筒、扬声器、及经应用所配置成为公用电话的电话机。
36.根据权利要求17的信息站,这里的设备子集包括话筒、扬声器、 及由配置集配置成为视频会议终端的视频会议系统。
37.根据权利要求17的信息站,这里的设备子集包括由应用配置的 摄像机,以拍摄下列中的一个或多个照片:用户、信息站周围的景,以 及文挡。
38.根据权利要求17的信息站,这里的设备子集包括写存储介质的 介质写入器,而应用配置此介质写入器写入下列中的任一个:音乐、软件、 文本、图形、教材、及多媒体信息。
39.根据权利要求17的信息站,这里的设备子集包括能读记录介质 的介质读入器,这里的介质读入器由配置集配置,以输入记录介质上记录 的信息。
40.根据权利要求16到39任意一项的信息站,这里的嵌入控制功能 是Java小应用程序
41.根据权利要求40的信息站,这里的Java小应用程序通过进程间 通信同控制一个或多个本地驱动程序的设备API通信。
42.根据权利要求16到39任意一项的信息站,这里的一个或多个嵌 入控制功能是ActiveX控制。
43.根据权利要求16到39任意一项的信息站,这里的一个或多个嵌 入控制功能是插件控制。
44.一种配置连到网络上并具有一个或多个外部设备及相关驱动程序 的信息站的方法,包括下述步骤:
从网络上访问一个或多个文件的至少一个配置集,配置集包括的嵌入 控制功能;及
执行嵌入控制功能,调用API函数选择本地驱动API的子集并同子 集通信,以控制信息站的一个或多个外部设备,实现与配置集相应的应用。
45.一种信息站,包括:
一个或多个输入/输出设备;
一个或多个驱动每个输入/输出设备的本地程序;
一浏览器,通过一个或多个网络连接,从网络上取具有一个或多个文 件的一个或多个配置集,一个或多个配置集至少具有一个嵌入控制功能, 一个或多个配置集是同信息站的应用相关,嵌入控制功能选择一个或多个 本地程序的本地子集,并同本地子集通信,使本地子集中的本地程序驱动 一个或多个本地信息站功能的本地子集,以使被配置的信息站执行应用。
46.根据权利要求45的信息站,这里的本地信息站功能是包括下列 中任一个或多个的输入/输出设备:打印机、介质读入器、介质记录器、 介质分发器、自动提款机、扫描仪、检验器(deposer)、电子笔、卡片发 行器、支票打印机、打印机、票券发行器、CRT、键盘、触摸屏、摄像机、 人体传感器、、电话机、照明、话筒、扬声器、CD-ROM播放器、鼠标 器及存储器。
47.根据权利要求45的信息站,还包括一显示器,其上浏览器提供 的Web页作为应用的一部分。
48.根据权利要求47的信息站,这里的Web页是包括下列中任一种 的形式:财务应用、个人信息状况、应用、税收情况、抵押应用、服务请 求、教育表格、行政管理表格、购物请求、及存款情况。
49.根据权利要求47的信息站,这里的Web页包括下列可视特征中 的任一个或多个:超链接、为请求一个或多个第二配置集的超链接、图标、 菜单、文本输入区、数据输入区、广告、通知、新闻广播、天气预报、及 一般信息的说明。
50.根据权利要求45的信息站,这里的一个或多个应用是与选择功 能无关的由一个或多个配置集配置的缺省应用。
51.根据权利要求45的信息站,这里的一个或多个应用是通过一个 或多个与可选择应用相关的选择功能选择的可选择应用。
52.根据权利要求51的信息站,这里的选择功能包括下列中的任一 个或多个:触摸屏、图标、超文本链接、显示器上的软按键、传感器、按 键、声音及语音控制。
53.根据权利要求51的信息站,这里的一个或多个选择功能要付费 提供。
54.根据权利要求53的信息站,这里要付的费用取决于下列中的任 一个:选择功能在图形用户界面上的位置、选择功能的大小、选择功能出 现的时间长度、信息站的地点、一个或多个应用,及目标用户组。
55.根据权利要求51的信息站,这里的选择功能在信息站上的一个 或多个时间周期出现。
56.根据权利要求51的信息站,这里的可选择应用根据用户的喜好, 用户化地组织图形用户界面。
57.根据权利要求51的信息站,这里的可选择应用由也连到网络上 的代理选择。
58.根据权利要求51的信息站,这里的可选择应用包括下列中的任 一个:远程设备控制,远程消息显示,文件传送,及代理/客户协同。
59.根据权利要求45的信息站,这里还包括一个系统监视程序,以 确定一个或多个信息站本地功能的操作状态。
60.根据权利要求59的信息站,这里的操作状态用于确定下列中的 任一个或多个:一个或多个输入/输出设备所需的维护、一个或多个输入 /输出设备的维护历史、那一个应用文件用于配置信息站、及有关用户的 市场信息。
61.根据权利要求45的信息站,这里的浏览器接收请求,确定那些 信息站功能已安装,以便决定如何操作相应的设备驱动。
62.根据权利要求45的信息站,这里的网络可能是下列中的一个或 多个:因特网、万维网、内联网、电话网、有线电视网、ISDN网、合作 网、政府网、教育网及一个或多个零售商用的网。
63.根据权利要求45的信息站,这里的文件是具有零个或多个超文 本部分的HTML文件。
64.根据权利要求45的信息站,这里的应用是财务应用。
65.根据权利要求64的信息站,这里的财务应用包括下列中的任一 个或多个:向用户提供财务信息、开帐户、分发现金、付帐单、代款申请、 作存款、申请抵押、代款支付、抵押支付、财政建议、买卖一个或多个固 定资产,及得到代理商的帮助。
66.根据权利要求45的信息站,这里的应用是为用户定制的用户化 的应用
67.根据权利要求45的信息站,这里的应用程序是访问因特网。
68.根据权利要求67的信息站,这里的信息站对访问因特网的用户 收费。
69.根据权利要求67的信息站,这里对因特网的访问,提供通过一 个或多个指定的服务器,在一个或多个第二用户之间的通信链接。
70.根据权利要求69的信息站,这里的通信链包括下列中的任一个 或多个:语音、视频、电子邮件、数据、共享Web页。
71.根据权利要求45的信息站,这里的应用是通信应用。
72.根据权利要求71的信息站,这里的通信应用包括下列中的任一 个或多个:电话呼叫、电子邮件、电视会议、传真传输、训练会话、网上 信息的搜索及基于Web的协同。
73.根据权利要求45的信息站,这里的应用是服务应用。
74.根据权利要求73的信息站,这里的服务应用包括下列中的任一 个或多个:广告、服务收费及服务请求。
75.根据权利要求45的信息站,这里的应用是在可触摸介质上提供 信息。
76.根据权利要求45的信息站,这里的应用配置显示器提供包括多 媒体信息的Web页,这些信息包括下列中的任一个或多个:清单、菜单、 坐位安排、地图、一个或多个软键、表格、广告、产品的图象。
77.根据权利要求45的信息站,这里的设备子集包括打印机,并且 应用配置打印机以打印下列中的任一个:收据、支票、Web页、定货单、 票券、护照及表格。
78.根据权利要求45的信息站,这里的设备子集包括下列中的任一 个或多个:话筒、扬声器、及由应用所配置成为公用电话的电话机。
79.根据权利要求45的信息站,这里的设备子集包括话筒、扬声器、 及由配置集配置成为视频会议终端的视频会议系统。
80.根据权利要求45的信息站,这里的设备子集包括经应用配置的 摄像机,以拍摄下列中的一个或多个照片:用户、信息站周围的风景,以 及文档。
81.根据权利要求45的信息站,这里的设备子集包括写存储介质的 介质写入器,并且应用配置介质写入器以写入下列中的任一个:音乐、软 件、文本、图形、教材、及多媒体信息。
82.根据权利要求45的信息站,这里的设备子集包括能读记录介质 的介质读入器,这里的介质读入器由配置集配置,以输入记录介质上记录 的信息。
83.根据权利要求82的信息站,这里的记录介质是下列中的任一个: 电子卡片上的存储器、计算机的软盘、磁带、CDROM、及存储器设备。
84.根据权利要求45的信息站,这里的控制程序是Java小应用程序。
85.根据权利要求84的信息站,这里的一个或多个驱动程序有一个 Java程序,通过进程间通信同控制一个或多个本地驱动程序的设备API通 信。
86.根据权利要求45的信息站,这里的一个或多个嵌入控制功能是 ActiveX控制。
87.根据权利要求45的信息站,这里的一个或多个嵌入控制功能是 插件控制。
88.一种配置信息站的方法,包括下列步骤:
从网络上访问一个或多个文件的一个或多个配置集,至少一个文件具 有嵌入控制功能;
执行嵌入控制功能,以调用一API函数,它选择本地驱动API的一 子集并同子集通信,以控制信息站的一个或多个外部设备,执行与配置集 相应的应用。
89.一种信息站,包括:
一个或多个执行设备动作的外部设备装置;
一个或多个驱动每个外部设备装置的本地程序装置;
一浏览器装置,通过一个或多个网络连接,从网络上取一个或多个文 件的一个或多个配置集,一个或多个配置集至少具有一个嵌入控制功能装 置,一个或多个配置集是同信息站应用相关,嵌入控制功能装置用以选择 一个或多个本地程序的本地子集,并同本地子集通信,使本地子集中的本 地程序去驱动一个或多个外部设备装置的设备子集,执行设备动作,以配 置信息站实现信息站应用。
90.一种服务器,包括:
一个或多个到网络的连接,通过该连接接收一个或多个请求;
具有一个或多个文件及至少具有一个嵌入控制功能的一个或多个配置 集,一个或多个配置集是同应用相关的,嵌入控制功能能选择一个或多个 驱动程序的驱动子集,并同驱动子集通信,使驱动程序控制一个或多个本 地信息站功能的设备子集,以配置一个或多个信息站执行应用。
91.根据权利要求90的服务器,这里的请求来自要被配置的一个或 多个信息站。
92.根据权利要求90的服务器,这里的请求来自一代理的计算机。
93.根据权利要求90的服务器,这里的配置集包含下列中的任一个: 远程设备控制、远程消息显示、文件传送及代理/客户协同。
94.根据权利要求90的服务器,这里的一个或多个嵌入控制功能是 一个系统监视程序,用来确定一个或多个信息站的一个或多个本地信息站 功能的操作状态。
95.根据权利要求94的服务器,这里的操作状态用于确定下列中的 任一个或多个:一个或多个外部设备所需的维护、一个或多个外部设备的 维护历史、那些应用文件在网络上服务以响应一个或多个请求、及有关一 个或多个信息站用户的市场信息。
96.根据权利要求94的服务器,这里的操作状态用于确定服务器将 服务于网络上的那一个配置集。
97.根据权利要求90的服务器,这里的配置集包含具有零个或多个 超文本部分的一个或多个HTML文件。
98.根据权利要求90的服务器,这里的应用是财务应用。
99.根据权利要求98的服务器,这里的财务应用包括下列中的任一 个或多个:向用户提供财务信息、开帐户、分发现金、付帐单、代款申请、 作存款、申请抵押、代款支付、抵押支付、财政建议、买卖一个或多个固 定资产,及得到代理商的帮助。
100.根据权利要求90的服务器,这里的应用是为用户定制的用户化 的应用。
101.根据权利要求90的服务器,这里的应用程序是通过由配置集配 置的的一个或多个信息站访问因特网。
102.根据权利要求101的服务器,这里因特网的访问,提供通过一个 或多个指定的服务器,在一个或多个第二用户之间的通信链接。
103.根据权利要求90的服务器,这里的应用是通信应用。
104.根据权利要求103的服务器,这里的通信应用包括下列中的任一 个或多个:电话呼叫、电子邮件、电视会议、传真传输、训练会话、网上 信息的搜索及基于Web的协同。
105.根据权利要求90的服务器,这里的应用是服务应用。
106.根据权利要求105的服务器,这里的服务应用包括提供下列中的 任一个或多个:广告、服务及服务收费。
107.根据权利要求90的服务器,这里的应用是使用配置集配置的信 息站为用户提供信息。
108.根据权利要求90的服务器,这里的一个或多个嵌入控制功能是 能使一个或多个信息站去请求一个或多个配置集。
109.一种由网络上的服务器执行的方法,包括下列步骤:
从连到网络上的一个或多个信息站接收一个请求;
    向信息站发送一个或多个配置集,配置集具有一个或多个文件及 至少一个嵌入控制功能,一个或多个配置集是同应用相关的,嵌入控制功 能能选择一个或多个驱动程序的驱动子集并同驱动子集通信,使一个或多 个本地信息站功能的驱动程序设备子集去配置信息站执行应用。

说明书全文

发明涉及连到计算机网络上的信息站(kiosk)和服务器,并允 许服务器去配置信息站。

典型的信息站通常例如是放在公共场合的一种机器,通过用户或 客户访问,以便服务提供者能为这些用户/客户提供服务。一般,这些 服务是客户处理的“自助式服务”,无需服务提供者提供代理对客户 给予专的帮助。因此,这类服务趋于重复、简单和专门的任务,比 如:1)获取信息,和/或2)完成某些简单的事务(如买票,提现金,查 看百货商店的楼层图等)。

要处理的任务需要预先规划和确定,并且必需能自助。因此,信 息站的设计是固定的,并且对具体用户不提供特定的帮助。

一般这些事务需要使用某些设备,如一台或多台监视器,卡片阅 读器,票券打印机,激光打印机,自动提款机等。这些设备一般在信 息站中是专为预定的任务固定设计的,因此,这些设备没有其它用途。

信息站的优点是方便和可靠。信息站不需要全时操作人员执行其 任务,因此可节省操作成本及提高工作效率。

现有技术中某些信息站通过网络连接,如行ATM机,航空售 票机等。亦存在一些单独信息站,如在购物街上的信息亭。

现有技术包括试图在银行代理和用户/客户之间建立连接,为银行 业应用的具有视频会议的信息站。这通过简单地把视频会议系统加到 传统型的信息站上来实现。

现有技术也已经把信息站和因特网结合起来。这种信息站具有一 浏览器,在信息站的屏幕上显示HTML页面。在信息站上的显示屏由 用户选择的超链接来控制。这些信息站适合信息访问,客户/用户能通 过选择请求超链接的“软”按钮而提供的信息进行浏览。这些信息站 亦可用于某些个人通信,像电子邮件。在这些系统中,屏幕通常是专 门设计的,以提供一用户界面(如具有导航按钮等),信息站还充当 过滤器,以限制客户能通过的URL,使只有由信息站建造者定义的 HTML页(URL)能够被访问。

大部分现有技术的信息站是固定的,它们不能容易地,便宜地及 很快地被改变或重配置,因为它们的编程一般是专门设计开发的(通 常用高级计算机编程语言如C++)并为专门应用安装到信息站上。 任务改变都需重新编码,重新编译,重新安装及在信息站上重新测试 程序。这些一般必须由信息站制造商完成。改变已存在的信息站是困 难的,尤其是如果此领域有大量信息站需要更新时。

现有技术的信息站未能根据应用提供有效的“面对面”的服务, 即在需要代理去咨询和/或指导用户或客户以实现服务或事务的情况 下。一个有效的“面对面”的用户服务环境不仅需要视频/音频,而且 要同步地共享屏幕(例如用户/客户在代理商输入数据的同时看到该数 据)及远程设备控制(例如代理能为信息站用户/客户打印收据)。现 有技术不提供同步地共享屏幕或信息站的远程设备控制。

而某些现有技术提供在电话上来自代理的用户帮助,通常代理不 能直接看到信息站屏幕。因此,代理必须依靠用户说明信息站的任何 问题。代理不能直接看信息站屏幕以确定问题。而且,代理不能远程 改变信息站的程序/函数,以修复任何信息站的问题。值得注意的是某 些银行业应用中的信息站提供银行代理看信息站屏幕的内容。而且, 这些内容通过运行在代理工作站上独立的应用程序来显示,而不是应 用程序使在信息站上显示屏幕内容。

某些现有技术提供视频会议,作为信息站的功能。然而,当视频 会议向客户提供音频/视频连到其它组件时,这种结构在市场上还没有 成功。因为在音频/视频通信和信息站屏幕的内容之间缺乏紧密的集 成。当客户存在在信息站屏幕上某一输入问题时,在代理的屏幕上, 代理可能没有与客户信息站屏幕上相同的信息。例如,信息站在屏幕 范围内有一含糊或错误值,但代理在视频会议期间将看不到该错误值。 而且,代理既不能指出客户屏幕上的位置,也不能控制客户的屏幕。 此外,代理不能通过未预先编程提供的信息站,向客户提供一般的信 息。作为另一例子,如果用户需要一个在信息站设计中不可得到的信 息,代理只能提供语音或摄象机的视频信息,不可能在客户的信息站 屏幕上或通过其它的信息站设备提供任何信息。

某些现有技术公开了简单的基于因特网/浏览器的信息站,这些信 息站只能处理有限的及专门的应用,即限制信息的浏览。这些信息站 不能用灵活的应用程序提供有效的客户服务环境,因为缺乏信息站的 控制能和客户与代理之间的协同。

因此,本发明根据所附权利要求书的定义提供一信息站和服务 器。

这里所叙述的方法受益于灵活性,可重配置性及协同信息站结 构,为各种各样的应用提供普遍存在的、可配置的及可直接访问的网 络界面,包括“面对面”代理对客户的服务和事务处理,及保证公众 访问许多通信网,如因特网(TCP/IP),公共服务电话网(PSTN), 综合服务数字网(ISDN)等。因此,网络服务系统能递交非常多的应 用(潜在地被创建,开发和存贮在一个或多个网络服务器上),以对 不同应用以不同方法在网络上重配置远程信息站和信息站设备,尤其 是支持对不同应用以不同方法使用的各种输入输出设备。

因此,在优选实施例中,信息站系统可连接到一个或多个网络上, 如因特网,社团或政府的企业内部网等。信息站具有一个或多个输入/ 输出设备(如显示器,键盘,纸张打印机,电话等)及每个输入输出 设备用的一个或多个设备驱动程序(本地API)。显示器用来为信息 站用户显示一个或多个图形用户界面和视频图象。某些界面是应用特 定物(一应用是一种用途,对这用途信息站被配置和重配置)信息站 具有从网络上的一个或多个服务器上取一个或多个应用文件(在配置 集中)的浏览器。应用文件(配置集)包括一个HTML文件集,文件 是由信息站的浏览器按次序(由应用决定)提供的。一个或多个HTML 文件包括用于控制信息站上一个或多个设备的本地API的嵌入(控制) 程序。一个或多个文件亦可以包括其他HTML文件,多媒体组件(如 图象或声音),和/或到其它HTML文件的超链接,多媒体组件,嵌 入程序和/或其它应用文件。第一个应用文件是从服务器上利用信息站 上的选择功能(如语音,软按钮,超链接等)选择的。与选择(选择 功能)相应的应用文件(配置集),相应地配置信息站。因此,信息 站可配置和重配置以实现由应用文件定义的各种应用。

在某些优先实施例中,一个或多个应用文件具有一个或多个预定 的选择链接(如超链接)。当浏览器提交或解释应用文件(例如逐个 文件)预定义的选择链接呈现在用户的图形用户界面上,作为附加选 择。通过一个或多个选择功能选定一个或多个选择,用户能选择和请 求一个或多个包括零个或多个其它嵌入控制程序的其它配置集,HTML 文件等。因此,通过用户的这些附加选择,由浏览器提交的HTML文 件内容的序列,以及事实上序列中的文件能被改变,以按不同方式重 配置信息站,从用户那里得到信息,和/或提供信息给用户。依次序提 交的HTML文件内容配置信息站,提供交互式屏幕的一屏或多屏序 列,并且如果需要,设备动作次序(由嵌入程序控制)它们结合针对 专门选择的应用重配置信息站。在这些实施例中,用户(或信息站或 服务器中其它功能)通过选择信息站上不同的选择功能,为其它的应 用能重配置信息站。

在某些优先实施例中,应用部分包括Web页共享功能,以允许 代理或客户通过信息站和服务器,在网络上协同工作。一优选实施例 实现“瘦”客户机结构,即其中没有专门的应用软件驻留在信息站上。

本发明的各种实施例,在此仅参考下面附图的图例方法,给予详 述。

图1是信息站的一个优选实施例的方图。

图2是信息站的另一优选实施例的方块图。

图3是信息站中所用的图形用户界面示例的方块图。

图4是显示配置集(应用文件)的方块图,配置集由用户选择和 执行以配置信息站。

图5是应用文件集(配置集)的方块图,包括一个或多个HTML 文件以及与至少包括一个嵌入控制程序的相关的超文本部分。

图6是一方块图,显示一个执行应用文件及同本地API程序交互 以配置信息站的控制程序/函数的一个优选实施例。

图6A-6D的方块图,显示了信息站控制制的各种不同的优选实 施例。

图7是一流程图,显示了用API控制函数执行一个应用文件的实 现步骤。

图8是一流程图,显示了在典型服务器中执行的步骤。

图9是一方块图,显示了使用ActiveX的优选的信息站软件结构。

图9A-9D的方块图,显示使用ActiveX的信息站控制机制的各 种另外的优选实施例。

图10是一方块图,使用插件的另外的信息站控制实施例。

参考图1它是信息站100的一个优选实施例的方块图,其中信息 站100包括计算机110(如IBM的PC350或PC750个人计算机), 它具有合适的大家知道的网络接口155。网络150可能是任意一已知 的局域网(LAN)或广域网(WAN)。在优选实施例中,网络150是 因特网,而其它的一般网络150预期包括:像社团网,政府网,教育 网那样的企业内部网,社团间的外部网(extranet)以及一个或多个零 售商用的网,这些网能通过电话网,有线电视网,ISDN网等实现。计 算机100具有一个或多个输入和/或输出设备(下面)130。它们作为 信息站100的一部分被安装。计算机110一般有大家熟知的一个或多 个主存贮器,一个或多个外存贮器(如硬盘驱动器,CD-ROM等)110M 及一个或多个熟悉的中央处理单元(CPU)110C。此外,为了维护目 的计算机110还有可选配的硬件键盘135及鼠标134等。用户访问各 种(外部设备130)输入和/或输出设备(集体号为130),以通过计 算机110和网络150向连到网络150上的其它客户机和/或服务器195, 和/或从连到网络150上的其它客户机和/或服务器195传送信息。这些 输入/输出设备130的例子包括具有屏幕105的触摸终端103,打印机 109,任何熟知的一般信息读入器111(如为阅读磁卡,信用卡或智能 卡的卡片读入器121),扫描仪(如激光扫描仪)112,任何熟知的一 般信息写入器113(如打印机,票券打印机),如软盘驱动的介质打 印机,财务报表打印机,或单据打印机),自动售货机(如为销售滞 销货或计算机盘)或任何其它设备130,这些设备以有形介质113A上 的信息提供给用户。其它输入/输出设备130包括下列设备中的一个或 多个:自动提款机,扫描仪,存款机,笔输入136,卡片发行器,票 券发行器,CRT,键盘,触摸屏,程序可控制摄象机,一个或多个人 体传感器(如红外线)。一个或多个照明,CD-ROM播放器,音频 输入/输出设备(如话筒133,扬声器132或电话装置107)及存贮器 113B。信息站100能被提供有熟知的通信设备如电话107或视频会议 系统114如PictureTel PCS-100桌面ISDN视频会议系统(PictureTel 是PictureTel公司的注册商标)。视频会议系统包括摄象机131,扬 声器132,话筒133和/或经过合适的网络接口155的一个或多个ISDN 相连的或不相连的网络连接。连接能够做到连到其它网络151上,如 经电话107,扬声器132,和/或ISDN线123的普通老式电话系统 (POTS)电话网122。其它的外部设备130亦能用已知的接口,独立 地连到网络(150,151)上。

计算机CPU 110C执行软件程序包括控制进程和程序库125及在 某些优选实施例中的一个或多个协同进程170。控制进程125具有二 部分:一个或多个嵌入控制函数/程序620及一个或多个控制机制640 (见下面图5,6-6D)。嵌入控制程序/函数620是满足专门处理的 (如为银行业汽车贷款,卡片机购物等),而用了不满足专门控制的 机制640去控制与各个输入/输出设备(或其子集)130相关的本地应 用程序接口680(API)。因此,输入/输出设备130在某些意义上说 专门由应用内容控制。在另一实施例中,控制机制能从网络150动态 地装载到计算机110。

协同进程170包括API和其它执行函数的程序,它建立来自信息 站100的协同会话。协同进程说明在美国专利申请08/722,287中,以 题目为“因特网网页共享”,由Fin等人在1996年9月27日申请, 在此对它全文引为参考。(见欧洲专利(EP)申请97307536.0,公开号 833260)计算机还执行与网络150交互所需的程序,包括Web浏览器 程序160,如Netscape Navigator浏览器。(Netscape Navigator是 Netscape通信公司的注册商标)。

图2是本发明的另一实施例的方块图,显示的信息站100在封闭 空间或部分封闭空间200中。封闭空间200能够是任何类型的空间, 如房间,小室或任何其它私人或半私人区域,在该区域内驻留信息站 100同一个或多个用户。在此实施例中,计算机110被连到一个或多 个已知的周边外部设备130上。由计算机100控制为用户在空间200 中创建环境。例如,周边的外部设备可以包括空间照明205,传送附 加信息(如销售信息)的空间200中的显示器210和/或环境要素(如 景色或虚拟世界的可变显示),和/或对空间200和/或从空间200的安 全访问215。此外,这(部分)封闭空间可能具有类似于上述那些外 部设备130的其它周边外部设备130,如声音,视频会议等。虚拟世 界的例子是大家熟知的。

在系统100和200的优先实施例中,用户(使用选择功能)选择 一应用,如银行业,为些信息站将被配置,且浏览器160在因特网(通 用网络)150上同一个或多个web服务器195交互,去取一个或多个 配置集175。任意选择的数据通信在服务器195和信息站(100,200) 的浏览器160之间开始。然后,应用文件175逐个文件地被浏览器160 执行,用以:1)任意请求驱动器程序(本地API680),它们控制随同 各个应用使用的一个或多个输入/输出设备(如触摸终端103或显示器) 130;2)任意选择使一系列输入/输出设备130发生动作,如在终端/显 示器上显示一系列web页;3)任意选择地通知用户从输入设备130输 入到服务器195;及4)还根据用户的输入任意选择应用文件175进一 步由浏览器160执行。因此,用户能用第一选择功能选择第一种应用 (并且它的相关应用文件175在服务器195上),它针对第一种专门 选择的应用重配置信息站。当选择第二种应用时,信息站针对第二种 应用,再一次重配置等等。对任何后面的配置,选择功能以前面配置 形式提供给用户。

应用是任何用途,为用途配置信息站。例如应用包括在下列方面 的用途(配置):财政,商业,信息(新闻,广告),通信(电子邮 件),Web访问,视频会议),零售,市场交易,服务(如政府规划)。 应用的所有者是配置信息站,提供应用的任何个人,组织或企业。例 如一个银行或共同基金应该用一个或多个金融应用来配置信息站。这 些金融应用的例子包括提供用户金融信息,开帐号,分发现金,支付 帐单,提供贷款,做存款及从代理那里得到帮助。服务业主的一个例 子是汽车租赁公司,它将配置信息站,以提供汽车租赁/租约等。

在另一优选实施例中,信息站(100,200)不是由用户,而是由 服务器195重配置。例如,信息站能置于公共场合,像购物商业街, 浏览器能做成一开始或周期性地从位于网络150上的一个或多个服务 器195或从缺省或代理服务器195A上取(或者服务器能做成“推送”) 配置集(应用文件)175给信息站100。因此,系统设计者从服务器195 的远程位置能控制信息站的配置。作为一例子,在商业街上的信息站 能被初始配置以显示商业街的地图,播放背景音乐,公告或提供天气 情况,或其它一般信息像新闻或股票报价。

配置集175也能控制一个或多个输入/输出设备130具有或成为选 择功能105A。例如,触摸屏,图标,超文本链接,图形用户界面上的 软按钮,硬连线的按钮,远程传感器(像射频识别器),或视频会议 系统的现场语音消息。选择功能105A是允许用户做选择,使信息站 针对用户应用而重配置的功能。

这些选择功能105A允许用户去重配置信息站100/200,和/或访 问由服务器195促使信息站提供的其它信息。

选择功能105A,和/或其它显示的信息亦可能是信息站拥有者/操 作者的收入来源。例如,由信息站提供的通告能够是付费的广告。应 用提供者(如银行,共同基金,抵押公司,贷方,经纪人(股票,不 动产),租赁企业(车,装备)服务提供者和零售商)为在信息站100/200 上有选择功能将支付费用,用户将针对他们的应用选择配置信息站。 费用数目可以根据:信息站位置,在信息站上(如图形用户界面)选 择功能/信息的定位/位置,选择功能105A的大小,由信息站提供的选 择功能105A/信息的时间和持续时间等。选择功能105A/信息在不同时 间能够改变或周期性地显示为的是以不同类用户/客户为目标。例如, 在重要中心站的信息站在高峰时间可显示长期客流信息,而正好在午 餐前应重配置信息站,以具备选择功能105A用以订餐。

信息站100/200能通过服务器195,由应用提供者重配置用户具 体资料。例如旅行代理可为Mr.Smith备有用户概况,Mr.Smith在 公共场所或他雇用的地方在信息站100/200上选择一选择功能105A。 一旦信息站为旅行代理的应用而重配置,信息站(如由一个应用文件 175指引)能向Mr.Smith请求个人信息,例如靠输入一个人识别代 码或使用一个输入/输出设备刷信用卡。然后,Mr.Smith的个人信息 通过信息站100/200传到服务器195则Mr.Smith的概况被访问到。 利用概况中的信息,一个或多个应用文件175由服务器送出为Mr. Smith专门配置信息站。例如,只有到中美洲的渡假有关事物可以在 信息站上提供。在另外一实施例中,一个或多个应用文件175能允许 用户去组织GUI(300下面)。

在信息站100/200的另一优选配置中,在一个或多个信息站用户 和一个或多个应用提供者的代理之间,建立协同会话。协同是由驻留 在信息站上协同进程170建立,或者由服务器195根据应用文件175 提供(见上面参照的Fin等人的专利申请)。

在信息站(100,200)的另外一个优选配置中,服务器195向信 息站提供用于监视或维护信息站的应用文件175。例如,在这些实施 例中,一个或多个嵌入控制程序620监视一个或多个输入/输出设备130 的工作状态,如用“安全”定时状态,错误检查协议等,以决定那一 个输入/输出设备是工作的。这些信息被传回到信息站195。其它应用 文件175被用来询问那一个输入/输出设备130在给定的信息站上是被 安装的或工作。这样,服务器195能确定送到信息站的那一个另外的 应用文件,能允许安装的或工作的输入/输出设备130,及不允许(配 置)未安装的或出错的设备。因此,包含输入/输出设备130的任意通 用组合的信息站能远程安装到服务器,以及服务器将提供合适的和工 作的应用文件,使信息站为任何给定的应用而工作。应用文件也能够 用来从一个或多个输入/输出设备获得信息,以确定如何操作这些设 备。

图3显示了出现在信息站100/200的屏幕/显示器上的图形用户界 面(GUI)300的例子。GUI 300通过选择功能105A为信息站用户提 供主访问界面。选择功能105A的示例包括表示为银行301,保险服务 302,通用软件按钮303,Pizza餐馆304这些应用的图标图象301-304。 GUI 300也能以具有一个或多个选择(典型的是325)的菜单320的 形式或显示选择功能105A。选择功能105A的另一些例子能够是部分 GUI 300和/或菜单320的超链接350。GUI 300的其它区域340能用 来输入信息和/或其它数据。利用这些信息段340,GUI 300能按格式 370,像税单表,借款申请,贷款申请,存款条等而呈现。GUI能使用 众所周知的技术,通过浏览器160,按web页显示。web页可具有多 媒体(声音,视频)的式样,它们通过其它输入/输出设备130呈现给 用户。

图4说明用户如何通过用户界面交互,选择选择功能105A的机 制。选择功能105A使相应的配置集175从服务器卸载到客户机(信 息站100,200)以处理某些专门的功能,以及控制外部设备130(如 107,109,110,113,114等)的专门的子集451。外部设备130通过 它们的本地API 440(或这些本地API 440的子集441)被控制。本地 API440是直接地控制一个或多个外部设备130的软件功能接口。例如, 用于卡片读入器130的本地API可包括:初始化,起动,从卡片读入 数据,推出卡片及关闭功能。

通过选择功能105A实现(信息站配置的)选择,选择功能105A 的示例包括:

a)用户明确地触摸屏幕上的图象图标,或其它选择部件如按钮。

b)当前执行的程序,根据用户的行为确定需要请求某一选择。例 如,若用户在一行中产生二次以上的相同错误,则请求帮助程序。

c)根据当前执行程序的逻辑,确定下一步的选择(信息站配置)。 例如一旦用户办完抵押具有资格条件的申请,且银行同意它。当前的 应用询问用户是否需要房地产经纪人的信息,若他回答“是”信息站 配置被改变为房地产经纪人应用的选择。

在一个实施例中,当选择105A被做出时,浏览器160为对应于 选择功能105A的第一个应用文件175(文件500),经过网络接口155, 用HTTP向服务器195发送请求(在应用文件/配置集175中的文件500 的说明,也见图5)。服务器195于是向浏览器160提供应用文件175 服务。在应用文件500到达浏览器160之后,文件500的HTML内容 被逐行执行,如果下面的应用文件500同浏览器正在执行的当前的应 用文件500相关连(如超链接的),此下面的应用文件500亦要送到 浏览器,这样,浏览器160根据配置集175中HTML文本定义的次序, 逐行及逐个配置集175地执行每个文件500。如此,通过执行在应用 文件/配置集175中的文件500,本地API 440(同设备130相关), 或本地API的子集441被调用,以控制被选择的设备子集451并且信 息站(100,200)被重配置。值得注意的是每个应用文件/文件(175, 500)的逻辑和/或用户的作用,能改变那些应用文件/文件(175,200) 被执行和/或是否某些应用文件不被执行。

通过执行应用文件175,浏览器160选择和控制一个或多个设备 130。根据在应用文件(如设备子集451)执行期间选择的设备451及 如何控制设备子集451。定义信息站的配置,例如,在银行业配置中, 执行的应用文件175,调用API子集441,如选择和控制卡片读入器111 和打印机109(设备子集451),分别读银行卡及打印出事务记录。在 同样的银行业配置中,执行一个或多个应用文件(和/或应用文件中一 些行)175并不选择或控制设备130,而作其它动作,包括:存贮数据, 发送数据,或返回消息到服务器195等。在另外一种配置中,Pizza订 货,执行的应用文件调用各种API子集441,以选择和控制同样的设 备子集451(即卡片读入器111,打印机109)分别读出和从信用卡收 费并打印出指示所选的Pizza主项的购物收据。

值得注意的是在某些配置中,执行的应用文件175并不选择一个 或多个设备130。这时,使用缺省设备,例如,在文件500中的一行 使显示的文本的一行按缺省直接送到显示器103上。

还有一个值得注意的是浏览器160能访问本地可执行模块的专用 集。这些模块用其它本地程序和/或库同执行的应用文件交互(见图6)。

图5是应用文件集(配置集)175的方块图,包括一个或多个HTML 文件500和包含至少一个嵌入控制程序620的相关超文本部分。所有 基于web的应用文件175是以至少一个嵌入控制程序620为基础文件 的HTML。应用文件175可任选包含基于HTML或不基于HTML的 其它超文本部分。典型地,一个HTML文件包括标准的HTML(如 HTML 3.0)标志为:文本525,图象或图形528,动画(嵌入的如图 象528,小应用程序505,脚本515或其它嵌入组件520),声音(如 一嵌入组件520),视频(如嵌入组件520)及其它嵌入程序520。这 些标志都是大家熟知的。在一优选实施例中,浏览器160是Netscape Navigator V3.0。嵌入程序能用Javascript和/或Java小应用程序和/ 或任何其它用插件的嵌入程序来实现(Java是Sun Microsystems公 司的注册商标)。如图5中所示,HTML文件500用标志505嵌入一 Java小应用程序,标志515嵌入Javascript函数,标志520嵌入任何 其它请求浏览器插件功能的程序。在标准HTML标志中更多的信息可 在“Netscape HTML 3.0 Source Book”中找到,在此全部地引入参考。 某些嵌入程序520被嵌入控制函数/程序620。

图6是方块图,显示在执行典型应用配置信息站100的嵌入控制 程序620中,所包含的系统组件。

在浏览器160中,功能上有一解释器610起解释或识别HTML 文件中HTML标志的作用。解释器610根据标志的类型和标志的内容, 将请求HTML标志执行器611去执行每个HTML标志的函数。若此 执行不请求本地信息站程序的API调用680(包括本地外部设备API 440),如果需要浏览器使用标准函数库617执行615每个HTML标 志。这些无API控制的函数615包括:显示文本,显示图象等。这些 是大家熟知的并已出现在现有技术的游览器中。

然而,若执行器611遇到调用一个本地信息站的API 680的嵌入 控制函数620,执行器611请求浏览器160内部的安全管理器625确 定是否允许API调用。正如下文将更详细说明的,信息站控制机制640 或部分的该机制640A被置于浏览器所在的目录的子目录中。通过所 做这些事,当执行器611遇到嵌入控制函数620时,安全管理器625 将寻找控制机制640(下面为640A),且API控制函数621将装载控 制机制640/640A到浏览器进程160。例如,这些嵌入控制函数620可 包括小应用程序,以调用一个或多个本地API函数680/440(即被选 择的API子集441)去操作给定的设备子集451,例如,若设备是卡 片读入机,嵌入控制函数620用控制机制680可调用合适的API 440, 打开卡片读入机设备,从卡片上读数据,推出卡片和关闭卡片读入设 备。

值得指出的是浏览器160并不执行来自网络150上的嵌入控制函 数620,去执行本地API 680。事实上,这些浏览器因为大家都知道的 安全原因,专门防止执行这些API控制函数。例如,若应用文件在经 过网络时被改变,在应用文件中被损坏的控制函数的执行,可造成客 户机上,也就是信息站(100,200)上不可预测并且是有害的结果。

众所周知,Java的设计通过使用专门的手段,如字节码传输和通 过虚拟机的校验及错误检查等,克服了网络安全问题。而且,当Java 在基于web的应用中采用小应用程序,被嵌在HTML文件中,浏览 器通常要严格地防止Java小应用程序访问在客户机端的任何本地 Java程序,除非是在浏览器中所建立的标准Java库中那些,其原因 是为简单地防止小应用程序可能对客户机造成的任何损害。因为小应 用程序来自无法控制的环境,即它可能来自整个网络上的任何一个服 务器。

正如“Java Now”书中所叙述的(P4.,by Kris Jamsa,Jamsa Press, 1996.ISBN 1-884133-30-4),“为了地址安全问题,Java开发者必须 确保程序员不能用Java小应用程序开发计算机病毒,且小应用程序 不能把有关用户的系统信息(如用户系统的文件返回给服务器,你会 讨厌,例如,在浏览你竞争者的web站点的同时,他们的Java小应 用程序浏览了你的硬盘,为提供这种安全性,Java开发者选择限制小 应用程序可执行的操作。例如,Java小应用程序不能读或写用户系统 上的文件。这样小应用程序不能把病毒存到用户的盘上或读出存贮在 用户盘上的信息”。该书还叙述“Java使程序员生成独立程序,Java 的独立程序类似于程序员用C++产生的程序。这种独立程序能读和 写文件以及执行那些Java限制小应用程序执行的操作。另一方面,Java 小应用程序仅在浏览器范围内运行……”。这意味着,Java小应用程 序被设计为不能操作浏览器进程160之外的功能。

在标准浏览器工作期间,浏览器的安全管理器625监视这些安全 规则的违例。若发现一小应用程序请求访问在标准Java库中没有的程 序,浏览器简单地报告安全违例错误,并停止执行此小应用程序。

在一个实施例中,信息站专门控制机制640的部分640A被加到 浏览器160且信息站专门控制机制640的其它部分640B被加到应用 编程接口(API)680(包括440),以能使应用文件175配置信息站。 所以,信息站专用控制机制640被分成二部分:浏览器机制640A和 API机制640B。在该实施例中,浏览器机制640A和API机制640B 通过进程间通信(IPC)640I通信。IPC 640I接口允许浏览器机制640A 和API机制640B采用消息传递代替直接函数调用来通信。(IPC是 大家熟知的,一个应用例子是Windows操作系统中使用的动态数据交 换(DDE);Windows是Microsoft公司的注册商标)。

浏览器机制640A位于浏览器子目录中,因此,在任何应用文件 175中的任何API控制函数620可被浏览器160中的解释器610所识 别。API机制640B从浏览器机制640A中接收消息,并根据消息独立 控制包括设备API440的各种函数。这样,来自浏览器的小应用程序 能控制一个或多个设备和本地函数,但只是那些具有浏览器机制640A 的。

因此,在信息站中的其它函数对网络上应用文件175的访问仍保 持安全。因此,信息站可被配置,而且安全。另外,由于API机制640B 操作设备API与浏览器无关,任何往API机制640B传递的设备控制 函数(用来控制给定设备的API控制函数620的子集)将在设备子集 451上被执行,即使应用文件在浏览器160中较多拖延或被改变。这 提供持久的方式处理设备操作,即一旦API函数(640,440)被初始 化,功能就被完成,不管应用文件175是否被浏览器改变/拖延,这种 持久性执行亦使某些与信息站的用户交互更有效,例如一应用文件175 能控制卡片分发器去发行新卡。然后,用户/浏览器在卡片分发器设备 正在磁条上写数据和给新卡片压花纹时,移到另一应用文件上。

浏览器机制640A是:1)被定位在浏览器自己的标准目录/库之内, 及2)具有的结构能使应用文件175通过二个方法请求一个或多个本地 API680,这两个方法是:通过使用名字服务器机制的消息传送,传送 有关一个或多个本地API函数的消息(如函数名和有关参数)(见图 6A和6C及其解释)或者直接请求本地API函数(见图6B和6D及 其解释)。

在一个优先实施例中,浏览器机制640A包括应用文件500知道 的Java API(有时称为“Java Wrapper”),还包括用本地语言(如 C++)编制的函数去通信(如使用进程间通信或名字服务器)或直 接调用本地API 680。

API机制680B:1)直接地访问各种本地函数模块(如浏览器控制 模块,协同功能模块,设备控制模块,及系统监视模块等);2)具有 的结构能请求一个或多个API函数680集,或者用名字服务器机制, 或者直接调用有关的本地函数模块;及3)具有一IPC能基于消息同API 640A通信。(值得注意,API函数680专门被设计以控制信息站中任 何给定的设备或函数,并且可被或不可被应用文件175访问)。

使用这种信息站控制机制的一个应用例是在应用确定如何配置信 息站之前询问系统的配置和状态。在应用文件175中,小应用程序 CallAPI.class可用于请求API函数640“query status”。如,

    Public class CallAPI extend小应用程序implement Runnable {

       …

     a=new kioskAppInterface();             (640A)

    a.send_APImessage(“query_status”);    (640A)

    a.get_APImessage(“status”,sysStatus);(640A) …

    } ... 并且该小应用程序可嵌入HTML文件,

    (175,500)

       …

    

       …

    

    

       …

    

    .

当此小应用程序通过浏览器执行时,它首先说明称为 kioskAppInterface的类,该文件及相关的DLL位于浏览器标准库中。 然后,用称为send_APImessage()的kioskAppInterface类(640A)的 方法去发送API消息“query_status”(640A)。这方法请求进程间通 信函数640I,向API机制640B发送消息。然后,API机制640B请 求相关的本地API函数680,以得到系统状态数据并通过进程问通信 函数640I把数据送回640A。小应用程序使用方法get_APImessage() 同命令“status”得到从640B送回的数据,并把数据存贮到称为sysstatus 类内部的数据结构中。

在640A和640B之间传送的API消息,可使用名字服务器函数 机制(见下面图6A)。通常,640B得到消息时,名字服务函数(在640B 中)分析消息并调用相应的本地函数API680。在该例中,它调用一系 统监控程序函数API,以得到系统状态数据,这些状态数据说明如下: 在640B中的名字服务函数中:

… if(Func_Name==“query_status”) { data=system_supervisor_get-status();(680,690) send_message(data);(640I) } else if(Func_Name==“read_card”) { … } …

这里是从“sysStatus”类数据结构中如上所述得到数据的例子:

Num.of Device=5 laser printer=OK card reader=OK card issuer=no card supply receipt printer=OK ticket printer=OK

这个消息状态,它们是信息站上的5个设备,并且除需要卡片的卡片 发行器外,全部都在工作。

根据信息站的当前状态数据,应用文件175可选用激光打印机, 收据打印机和卡片读入器(设备子集451)而当状态数据中指示卡片 发行器的供卡槽中没有卡片时,避免使用卡片发行器(在这种情况下, 卡片可由其它装置生产并邮寄给信息站用户)。

在某些优选实施例中,类似的技术被使用,以确定在信息站上提 供有那些设备,及是否这些设备在合适地工作。这样,服务器根据那 些设备信息站提供和/或那些设备可操作,能提供专门应用文件175去 配置该信息站。因此,通过合适地选择服务器上相应各种应用配置的 应用文件,任意数目不同设计和/或操作状态的信息站能被配置。如在 银行业应用中,包含激光打印机控制的应用文件175(文件500)送到 配有激光打印机的信息站以便打印高质量银行财务报表,而带有收据 打印机控制的应用文件175(文件500)将被送到为相同任务(银行财 务报表)且只有(可用和可操作的)收据打印机的那些信息站。这样, 具有不正常工作激光打印机的信息站或无激光打印机较廉价的信息站 仍能被适当地配置,为银行业应用。

在另一实施例中,状态信息能被请求,通过一个或多个服务器依 靠在应用文件上发送请求。该信息可用于确定那些信息站和/或在这些 信息站上的那些设备需要服务。例如,一服务代表如果需要可被派出, 以添加卡片到卡片发行设备上。

在另一实施例中,状态信息可能是需要的,用于信息站和/或设备 的服务历史中。此外,能得到其它市场信息,例如,在一具体位置上, 那类用户最需要那种配置。在一优选实施例中,信息站能具有一个浏 览器窗口(系统监视应用窗口)运行在任何其它应用背景中。该系统 监视应用窗口可以包括一个或多个HTML文件,该文件包括对一个或 多个服务器通信的一个或多个小应用程序。(Java小应用程序同服务 器通信的机制是众所周知的)。该系统监视应用窗口,每当信息站加 电,并一直保持信息在工作就可起动。这样,一个或多个服务器通过 同小应用程序的通信,在任何时候都能得到信息站的系统状态信息。

通过所述的方法提供的可能性中,其中:1)一“瘦客户机”信息 站;由于没有应用专门软件需要预先装到信息站上,信息站能高成本 效益地被建立及维护。因此,一个应用(应用文件500)能写到服务 器上供连到服务器网络上的大量“瘦”信息站用。对网络上的任何“瘦” 信息站,无应用专门软件要被设计。事实上,网络能由一个或多个标 准(这样更便宜)“瘦”信息站组成,完全不用应用专门软件。(例 如,一个信息站生产者能够制做一个或多个信息站,且与任何应用无 关)。应用文件500能在服务器上被开发、升级和/或维护,且可用于 重配置网络上一个或多个信息站,不需改变这些信息站上任何程序。 这种“瘦客户机”信息站,使任何时间,任何地点一般公众访问服务 为目的的信息站的大规模开发成为可能。例如,“信息站电话”能在 因特网上和/或在电话网络上通信。2)因为信息站的可重新配置性,通 过这种信息站能交付大量的各种各样在服务器上开发的应用。因此, 应用供应者能共享在网络上的任何信息站。这些应用能在专门时间和/ 或为专门的状态在信息站上提供,例如用户要求的或任何给定的环境 条件(当天开始下雨时雨伞店作广告)。3)由于信息站能基于因特网 和web的开放标准技术,所以能够利用因特网和WWW的信息丰富、 介质丰富和技术丰富的优点。

这里是用户如何可使用该信息站100的非限制性的例子:

1.在空闲时间信息站屏幕上动态地显示各种图象,视频剪贴板, 声音,图形模式与文本。屏幕的内容全由HTML文件控制,且HTML 文件根据信息站的要求或服务器的推送而被更新。服务提供者对不同 种类屏幕“实际等级”及用于显示它们的时间可支付不同价格。在早 晚通讯时刻,它可以显示主要的标题新闻和财经市场变化;而在中午 时刻,它可以显示许多餐馆促销;在周末可以显示百货商店的销售广 告。这内容经常吸引过路人触摸屏幕。

2.用户看到屏幕,并走过来和触摸它。它立刻地转到显示图象 图标阵列下一屏和指示应用类别的文本。

3.用户触摸Pizza订单图标,带出新屏,从新屏幕上,用户能选 择Pizza的种类。屏幕将提示用户何处和何时提交Pizza。而用户能通 过在屏幕上触摸键盘给出信息。在HTML中嵌入的控制程序620收集 数据。然后,屏幕将提示用户插入他(或她)的信用卡核准收费。控 制程序将打开信用卡读入器及收集信用卡信息。控制程序然后能用相 关的信息站API函数,以调用在信息站上的通信功能,访问信用卡公 司(如通过调制解调器)及Pizza店(如通过发传真)。在完成这些 功能之后,屏幕将同用户确认订单信息,其它一般另售事务能用同样 的方法完成。

4.用户还能够按电话图标,进行电话呼叫。电话应用HTML文 件被以电话键盘显示在屏幕上。在用户输入电话号码后,嵌入控制程 序将调用相关的API函数640A去开始电话呼叫。这可以是通过公共 服务电话网(PSTN)或通过综合服务数字网(ISDN)的常规电话呼 叫或通过依靠信息站的网络连接(122,123,150),应用文件500, 及用户选择105A基于因特网的电话呼叫。当电话被连接时,用户或 者能使用手机,或者使用装备在信息站上的由电话线连接的电话(见 美国专利申请08/595,897 Hortensius等人,名称是“Multipoint Simultaneous Voice and Data Services Using a Media Splitter Gateway Architecture”,1996年2月6日申请。对应于欧洲专利申 请789470,在此全部引入作为参考)。

在另一优选实施例中,如果另一端具有相同装置,用户可以选择 视频电话呼叫或甚至是带有应用共享的视频会议呼叫,那时嵌入HTML 应用中的控制程序620,将调用相关的API函数640A,开始信息站视 频会议功能。用户可使用触摸屏和装备在信息站上的电子笔以方便会 话。(引用上面所述的“因特网网页共享”专利申请Fin等人)。

5.用户可选择传真功能。屏幕将提示用户输入传真号,输入信 用卡,把要传真发出的文档放入相应的设备(如文档槽)。并当准备 好时触摸屏幕上OK按钮。当铵钮被触及后嵌入的控制程序620将请 求信息站上相关的设备控制API函数640A去操作扫描仪,扫描文档, 归还文档,及通过网络如PSTN或因特网用电子方式送出文档。

6.用户可选择电子邮件功能。对电子邮件,屏幕将显示HTML 应用。嵌入的控制程序620可请求相关的API函数640A或直接同邮 件服务器通信,目录服务器通过浏览器验明用户并取回存在的电子邮 件消息或送新消息。

7.用户可选择105A在介质载体上,如软盘上传送电子文件。屏 幕可能提示用户紧跟某些处理,如把软盘插入槽中。嵌入的控制程序 620将请求相关的API函数640A去读盘及读或写用户选择的文件, 并根据同户的指令,(如发送到某个人的电子邮件地址)发送他们。

8.用户可选择宽范围服务提供者中的一项服务(如服务器上应 用拥有者),如律师,医生,会计,不动产代理商,贷款经纪人,投 资顾问,保险代理商等。屏幕将显示以HTML文件提供所要求服务的 相应应用(根据用户的选择,该服务可以任何自然语言如英语,西班 牙语,中文,日文,法文,意大利语等呈现)。

9.根据服务提供者的应用,一实时协同会话亦能够随视频,音 频,共享屏幕和远程设备控制功能(见参照上面的Fin等人的专利) 启动。嵌入的程序调用相关的API函数620,去管理视频,音频和数 据通信。

10.用户可以选择搜索信息。屏幕提示用户需要什么样的信息, 而嵌入的控制程序收集数据并根据信息的类型发送询问。询问能通过 因特网使用已知的搜索引擎应用服务器上的数据库以及其它网络服 务器上的数据库被送出。

11.用户能选择定制的应用服务器。例如,一旦用户被验明(例 如从磁卡或智能卡访问的信息)应用文件提供信息和/或为该用户定制 的信息站配置。

12.用户能选择信息站100的配置,不是由信息站最初提供的。 通过同第一配置的信息站交互,依据其它应用文件175能以第二配置 重新配置信息站。例如,第一配置可提供一用户输入(图标或超链接) 它访问第二配置的应用文件17.5。

13.用户可以是一个或多个学生或受训人员。他们需要访问连到 其服务器提供“教学”应用文件175的网络上的一个或多个信息站。

14.用户能从信息站上选择“电子”产品。例如,有音乐,视频, 计算机软件和/或其它多媒体信息的小型光盘(CD)能从合适的分发 设备上被分发。另外,空白介质(如带,软盘,可写CD等)通过合 适的信息站设备可被写入,以提供能在网络上以不可触模形式传输给 用户的任何“电子”信息。例如,最新的歌剧记录可以这种方式用CD 提供,不需把在工厂中“灌制”的CD运到商店。

现在给出另一个例子,显示用于从信息站设备输入信息和输出信 息给信息站设备的某些信息站控制机制640。在通常输入状况下,应 用文件500可具有一个称为CallAPI.Class的嵌入的小应用程序620, 用于调用API函数640“hardkey_input”例如

Public class CallAPI extend applet implement Runnable{ … a=new kioskAppInterface(); (640A) while(InputData.lastchar!=RETURN) { a.send_APImessage(“hardkey_input”); (640A) a.get_APImessage(“input”,InputData);(640A) (例如在屏幕的合适位置显示按键输入) … while(InputData.lastchar!=RETURN) { a.send_APImessage(“softkey_input”); (640A) a.get_APImessage(“input”,InputData);(640A) (例如在屏幕的合适位置显示按键输入) } … a.send_APImessage(“LaserPrint”,FileName);(640A) } 并且此小应用程序被嵌入到HTML文件中,如 <HTML> (500) … <body> … <applet name=“API”src=“CallAPI.class”…> </applet> … </body> </HTML>.

当此小应用程序被浏览器执行时,它首先说明称为 kioskAPPInterface的类。该文件和相关的DLL位于浏览器标准库内。 然后,它使用称为send_APImessage()的kioskAPPInterface类(640A) 的方法,以发送API消息“hardkey_input”(640A)。该方法请求 进程间通信函数640I向API机制640B发送消息。然后,API机制640B 调用相关的本地API函数680从硬件按键中收集按键输入,用这些输 入装备信息站,并通过进程间通信函数640I把它们送回到640A。小 应用程序用方法get_APImessage()及命令“Input”得到从640B送回 的数据,并把它们存到称作InputData类的内部的数据结构中。

在640B中的名字服务器函数中,

… else if(Func_Name==“hardkey_input”) { data=get_hardkey_input();(680,690) send_message(data); (640I) } else if(Func_Name==“softkey_input”) { data=get_softkey_input(); (680,690) send_message(data); (640I) } else if(Func_Name==“LaserPrint”) { Laser_Print(FileName);(680,690) } …

注意,如果应用文件500具有请求“软件键”输入的嵌入的小应 用程序时,类似的API消息将在640A和640B之间被传递,并且不同 的API函数680将被使用以在屏幕上“弹出”软键盘窗口及获得用户 的输入。API函数680用这些软键盘输入是大家熟知的。

用同样的方式,如果应用文件500具有请求在输出设备,如激光 打印机上进行打印的嵌入小应用程序,上面的编码将指向本地API函 数680。Laser_Print(FileName),控制激光打印机打印文件 “FileName”。

图6A显示了利用IPC 640I和名字服务器函数640B的信息站控 制机制640的一实施例。在此情况下,被应用文件(175,500)使用 的是一小的通用通信(主要为了消息传递)API函数640A的固定集。 这些通信API函数在640A和640B之间通信或传递消息。消息的执行 依靠在640B中名字服务器函数实现。此服务器函数640B亦作为IPC 640I的服务器。名字服务器函数识别各种各样预定义的消息。例如, 在一实施例中,通信API函数集有2个函数:send_message(message) 和get_message(message)。然而,这里有很多“消息”。在640B中 的名字服务器函数具有一表,该表包含每个这些预定义消息,并且每 个预定义的消息同可能调用合适的本地API函数680的逻辑集相关以 便执行各个预定义的消息。在此实施例中,新的设备和用这些新设备 实现的新功能,能通过提供新的预定义消息,加入实现新功能所需要 的逻辑,这样,应用文件(175,100)只要通过在给定的通信API函 数中使用新消息标识符,就能执行这些新功能。一般只涉及改变在应 用文件500中“ASCII”或“文本”消息标识符。为了使用新功能不 需要编码和编译新的嵌入程序或修改存在的程序。因此,因为信息站 提供者在名字服务器640B中已结合了需要的逻辑,为了执行新功能应 用的拥有者(此处是服务器上的应用文件175)几乎没有什么要做。

图6B是在浏览器机制640A中,为映射本地API,使用IPC 640I 的信息站控制机制640的另一实施例的方块图。这是,许多或所有信 息站控制功能620直接从应用文件500调用浏览器机制640A中相应 的映射本地API而被执行。每个映射本地API 640A,通过IPC 640I 与API机制640B通信,API机制依次调用合适的本地API函数680。 这里,映射本地API 640A是Java API程序。有一个Java API程序 是专门为一个或多个本地API 680编写的相反,对各名字服务器情况, 至少一个Java API程序必须具有控制一个或多个本地API 680的逻 辑。这些Java API程序640被预先定义且对应用文件500是已知的。

在此实施例中,新设备和/或由这些设备实现的新功能通过浏览器 机制640A中用它们相应的API机制640B提供的新映射本地API (640A)而被加入。在此实施例中,应用文件500需要用直接调用方 式去执行每个这种新功能。因此,为实现新功能的部分或全部逻辑必 须在应用文件500中定义。例如,应用的编程者,指示在服务器上的 应用文件500,必需去编码这逻辑,如通过写一新的Java小应用程序。

图6C显示信息站控制机制640的另一实施例。在该实施例中, 无IPC 640I,因此,API机制640B合并入浏览器机制640A中。而且, 名字服务器功能(亦被合并)仍被使用并同通信API集相结合以变成 浏览器机制(640B,640)。在该实施例中,持续状态丢失,因为一 旦应用文件500(包括有小应用程序)被浏览器“拖延(dropped)” (不再执行),本地函数680就终止。在持续状态是不需要的地方, 本实施例是有用的。例如,除了对屏幕用浏览器控制外,不包含信息 站设备的情况。

图6D显示了另一个信息站控制机制640的实施例。在该实施例 中,完全没有IPC 640I和API机制640B。这里的小应用程序直接调 用API函数(640,640A),它又直接调用本地API函数680。这里 的API函数640是Java API程序。有一个Java API程序是专为一个 或多个各个本地API 680编写的。相反,对名字服务器情况,至少一 个Java API程序必须具有控制一个或多个本地API 680的逻辑,这些 Java API程序640被预先定义,且对应用文件500是已知的。在该实 施例中持续亦失去了。

图7是由信息站实现的执行处理700的流程图。

浏览器160首先从应用文件175得到705(一个HTML)文件500, 然后,浏览器160解释710标志和应用文件500的内容。如果浏览器 160在715未遇到本地API调用,浏览器处理720相关的已知动作, 以执行标志。如果浏览器遇到本地API调用715,浏览器将调用725 相关的API函数(640或640A)。在一优选实施例中,浏览器机制640A 通过进程间通信函数640I,同API机制640B交流730消息。另外, 消息服务器如上所述的被使用。API机制640B接收消息并调用735 相关的本地函数680。然后,API机制640B通过进程间函数640I,根 据本地函数执行的结果,同浏览器机制640A交流740消息。

浏览器被控制750,或者通过屏幕输入,嵌入的控制程序逻辑, 或通过外部浏览器控制功能660去请求下一个HTML文件。因此,浏 览器能当作本地信息站设备被处理。因此,浏览器能被控制,以使用 本地API 660,通过访问已知的浏览器接口(API 681),从网络上的 一个或多个服务器装载任何指定的HTML文件。本地API 660被设计 成(见上面)允许嵌入的控制程序620去访问浏览器接口681。

图8是在网络上一个或多个服务器上执行的服务器处理800的流 程图。服务器在网络上从一个或多个信息站接收请求810该请求识别 应用文件175的那一个是信息站正在选择/访问的。该请求也有正请求/ 访问此应用文件的信息站100的位置。根据接收的请求,服务器向信 息站发送820请求应用文件175。应用文件175能由服务器上的逻辑 预先形成或动态产生。

在另外的实施例中,信息站发送请求810给代理服务器195A。 代理服务器195A一般位于比服务器195更靠近信息站地方。另外, 代理服务器195A能位于信息站100/200中的计算机上。例如,服务器 195可能位于第一城市,如总部位置,而代理服务器195A位于另一城 市。在连到信息站的局域网上,代理服务器195A能为信息站根据预 计划可能要求的许多或全部应用文件175,在网络150上,给服务器 发送请求。这样信息站当需要应用文件时,能在代理服务器195A上 更快,更可靠地访问应用文件175。此外,代理服务器可以在网络上 “非高峰(off peak)”时间,从服务器195请求应用文件175。

在另外的实施例中,服务器(195,195A)能被用来“推送(push)” 信息到被服务器195识别的一个或多个信息站。例如,在步810,请 求在服务器195被启动。该启动810可能因为不同的原因而引起。例 如,应用更新可以要求一个或多个信息站用新的应用文件175来重配 置。另外,在每天的某些时候,可能有新的配置要求,即在每天下午 5点要给出不同来源的新闻、服务器亦可以“推送(push)”周期性 地信息站“检查”以确定那一个信息站需要维护。

该实施例的一个优选执行程序使用在信息站上工作的“服务器推 送函数”685。服务器推送函数685被连到网络150上,并能从服务器 195接收消息。服务器推送函数685也有对浏览器接口681的访问。 服务器195向服务器推送函数发出请求,使浏览器从服务器195请求 专门的应用文件500。

图9是一方块图,显示了当嵌入的控制程序是用ActiveX技术代 替Java的机制。ActiveX控制对象能用各种各样编程语言实现,如 C++,VB或Java。一个ActiveX对象能被嵌入到HTML文件中,例 如,

<HTML> … <BODY> … <OBJECT ID=“MyObject” CLASSID=“CLSID: 8E27C92B-1264-101C-8A2F- 040224009C02> <PARAMNAME=“Version”VALUE=“458752”> </OBJECT> … </BODY> </HTML>

在这种情况下,浏览器必须是能用ActiveX的,也就是支持 ActiveX技术。在一优选实施例中浏览器是Microsoft公司的Internet Explorer。

当应用文件500到达浏览器160时,HTML文件根据它的标志 和内容被解释910。正如上面讨论的Java中情况,浏览器将如前面一 样执行920,非API控制函数。由浏览器执行的930 API控制函数直 接调用API 940。类似于:Java情况,API 940A的第一部分通过进程 间通信函数940I(如640I)同API 940B的第二部分通信,依次API 940 调用本地API函数680。

ActiveX和前面所述Java之间的不同是ActiveX能含有以非网络 语言如C++或VB编写的对象。按这些语言编写的对象以执行码的 形式下载到浏览器。因此,这样的对象能做以同样语言编写的本地程 序能做的任何事情。但是象Java小应用程序那样,它没有安全性的 限制。这样,如果嵌入的控制程序620像用非Java语言写的ActiveX 控制那样,API函数940能放在信息站中的任何地方。如果Java被用 在ActiveX对象中,前面讨论过的机制必须仍然被使用。

在图9A-9D中,具有前面讨论过的号码的方框具有如上面讨论 过的功能。

图9A显示了使用IPC和名字服务器功能的信息站控制机制940 的一实施例。浏览器机制940A是本地语言API,它不必放置在浏览 器目录中,但能放置在信息站存贮器的任何地方,如在信息站系统目 录中。然而,浏览器机制940A的路径(即位置)必须被应用文件500 知道。

图9B是使用带有映射本地API的IPC 640I的信息站控制机制940 的另一实施例的方块图。如图6B,对一个或多个本地API 680至少有 一个浏览器机制940。

图9C显示了不带IPC 640I的信息站控制机制940的另一实施 例。这里浏览器机制940A能如图9A讨论的那样被放置。

图9D显示了当控制不是用Java实现时,使用ActiveX控制的信 息站控制机制的另一实施例。在该实施例中,由于这样嵌入的ActiveX 控制能直接调用本地API 680,完全不需要940。在这种情况下,执行 的持续性失去。

图10显示另外一种采用称为插件技术的信息站控制机制。在这 种情况下,优选实施例使用Netscape公司的Navigator V3.0或更高版 本的浏览器160。

这里的控制机制1040包括在应用文件/文件(175,500)中由信 息站控制程序(620)访问的一浏览器机制(插件模块和相关的Java Wrapper)1040A:当被访问时,插件模块1040A当作浏览器160的 一部分被执行:执行中的插件模块1040A依次调用进程间通信功能 1040I。进程间通信功能(IPC)1040I可以同上面所述的IPCs(640I, 940I)相同。IPC 1040I依次同API机制1040B通信,以调用本地API 680。API机制1040B能同上面所述的那些(640B,940B)相同。

在该实施例中,浏览器机制1040A由插件技术实现(参考 “Programming Netscape Plug_ins”by Zan Oliphant,Sams.net Publishing,1996,ISBN 1-57521-098-3)。插件技术使用本地码模块, 即用C或C++或类似的编程语言实现,此外在更为优选的实施例中, 用Java wrapper插件1040A被置于由浏览器160指定的专门插件目 录中。当HTML解释器610遇到嵌入文件(620),嵌入文件根据嵌 入文件中唯一文件名的扩展,亦称多用途互连网电子邮件扩展 (MIME)类型识别各个插件1040A,插件1040A被动态地装入浏览 器160。

嵌入的信息站控制程序(620)能够是:1)JavaScript函数2)Java 小应用程序,和/或3)包含在具有仅一扩展的(MIME)文件中的预定 义的控制脚本集。

当浏览器160装载插件模块1040A时,插件1040A对HTML文 档来说变为可用,即在插件中的函数(Plug_in函数)对嵌入程序(620) 变得可用。如,去调用JavaScript函数或Java小应用程序函数。这 样做,信息站本地API 680通过一个或多个相应插件1040A,能被任 意给定的嵌入程序620来控制。换句话说,插件模块1040A将通过相 应的API机制1040B调用IPC函数1040I以调用信息站本地API 680。

现在给出3个非限定的例子。 例1使用JavaScript函数作为嵌入的信息站控制程序1030,它带有提 供消息传送功能的插件模块1040A

控制程序1030的应用文件175具有如下形式:

<HTML> <HEAD> 等 <\HEAD> <BODY> <BODY> <APPLET NAME=“MY APPLET”SRC=“MY APPLET.CLASS”>等 <EMBED NAME=“MYEMBED”SRC=“MSGPASS.MET”> <SCRIPT LANGUAGE=JAVASCRIPT> 等 MY APPLET.PluginAPI_SendMsg(“CARDREADER_ON”); 等 <\SCRIPT> 等 <\BODY> <\HTML> Java applet“MY APPLET.Java”应当包括代码如象: import PluginWrapper 等 PluginAPI=new PluginWrapper(); 等 public PluginAPI_SendMsg(String msg) { 等 PluginAPI.SendMsg(msg); 等 } Java wrapper文件,PluginWrapper.java应包括如下代码: import netscape.plugin.Plugin; 等 public class PluginWrapper implements Plugin { 等 public native void SendMsg(String msg); 等 }

同上面嵌入控制程序1030相关的插入模块1040A将提供方法 SendMsg(),它例如是用本地语言代码像C++实现的。

例2直接使用Java小应用程序作为具有提供消息传递功能的插 件模块1040A嵌入的信息站控制程序1030。

具有控制程序1030的应用文件如下:

<HTML> <HEAD> 等 <\HEAD> <BODY> <EMBED NAME=“MYEMBED”SRC=“MSGPASS.MET”> <APPLET NAME=“MYAPPLET” SRC=“MYAPPLET. CLASS”> 等 <\BODY> <\HTML> Java applet“MYAPPLET.Java”包含的代码为: import PluginWrapper 等 PluginAPI=new PluginWrapper(); PluginAPI.SendMsg(msg); 等 } Java wrapper文件,PluginWrapper.Java将包括如下代码: import netscape.plugin.Plugin; 等 public class PluginWrapper implements Plugin { 等 public native void SendMsg(String msg); 等 }

同例1相同,同上面嵌入的控制程序相关的插件模块1040A将提 供方法SendMsg(),它例如用本地语言代码像C++实现。

例3使用含有预定义控制脚本集的嵌入文件1030和解释和执行 脚本,以控制信息站本地API 680的相关插件模块1040A。

具有嵌入文件1030的应用文件175可为如下形式:

<HTML> <HEAD> 等 <\HEAD> <BODY> <EMBED NAME=“MYEMBED”SRC=“MSGPASS.MET”> 等 <\BODY> <\HTML> 而插件模块1040A可以组成如下代码: NPError NP_LOADDS NPP_NEW(MPMIMEType pluginType, NPP pInstance, uint16 mode, int16 argc, char* argn, char* argv, NPSaveData*saved) { if (pInstance==NULL) return NPERR_INVALID_INSTANCE_ERROR; KioskIPC* pKioskIPC=new KioskIPC(pInstance); pInstance->pdata=pKioskIPC; pKiosIPC->mode=mode; return NPERR_NO_ERROR; } NPERROR NP_LOADDS NPP_Destroy(NPP pInstance, NPSaveData* save) { KioskIPC* pKioskIPC=(KioskIPC*)pInstanee->pdata; if (pKioskIPC) { delete pKioskIPC; pInstance->pdata=NULL; } return NPERR_NO_ERROR; } void NP_LOADDS NPP_StreamAsFile(NPP pInstance, MPStream* stream,const char* fname) { KioskIPC* pKioskIPC=(KioskIPC*)pInstance->pdata; if (pKioskIPC) pKioskIPC->InterpretFile(fname); }

上面显示的所有三种插件功能,完成由Netscape浏览器160提 供的标准插件API。其它由浏览器160提供的插件API这里没有使用。

标志,由HTML解释器610被解释时,文件1030 MSGPASS.MET被下载到本地磁盘,并且相应的插件模块1040A,如 果它还没有被装载则装载到浏览器160。浏览器160将自动地调用插 件API NPP_New()去创建一插件实例,且用下载文件名调用插件API NPPStreamAsFile(),去执行文件。当需要时,浏览器160将调用插件 API NPP_Destroy()去使插件实例无效。

类KioskIPC和函数InterPretFile()能用本地语言像C++实现, 以解释和执行在嵌入文件中预定义的脚本。在这个意义上,不限制是 什么样的脚本,只要函数InterPretFile()被完成,以致于能够分析脚本 并以合理的性能执行需要的性能。下面是一个例子。

在嵌入文件中,脚本象这样: (beginning of MSGPASS.MET) 等 SendMessage:OpenCardReader 等 (end of MSGPASS.MET) 函数InterpretFile()包括代码为: (beginning of InterpretFile()) 等 switch(Command){ 等 case“SendMessage”: SendMsg(Msg); break; 等 (end of InterpretFile()).

为了实现功能的某种交互控制,在浏览器160窗口中,插件模块 1040A也能创建某些按钮。例如,它能创建一按钮“Print”并等待它 被触摸或点击 以便调用SendMsg()函数来发送消息 “PrintCurrentPage”。标志亦能包括一预定义的参数集, 用于按照插件模块1040A的执行控制插件模块1040A。关于如何使用 标志及如何实现插件模块更进一步的信息,请参考“HTML Publishing for Netscape”(Stuart Harris and Gayle Kidder ISBN 1- 56604-288-7)及上面的Zan Oliphant的参考书。

高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈