首页 / 专利库 / 杂项知识产权事务 / 数字版权管理 / 授权中心 / 通过无线设备能够进行打印的输出管理系统和方法

通过无线设备能够进行打印的输出管理系统和方法

阅读:316发布:2022-08-09

专利汇可以提供通过无线设备能够进行打印的输出管理系统和方法专利检索,专利查询,专利分析的服务。并且用于管理在各种类型的 计算机网络 上的、诸如打印、传真和 电子 邮件之类的输出的系统和方法。在一个方面,所述方法规定通过无线设备进行打印。所述系统把可再现的数据提供到无线设备,依据所述可再现的数据可以再现 用户界面 (UI)(76)。所述UI使用户(u1)能够选择源数据和在其上打印所述源数据的输出设备。所述源数据然后被从本地或者远程存储(74)加以检索并且被转发到打印服务,所述打印服务再现与所述源数据和 选定 的输出设备相对应的输出图像数据。所述输出图像数据然后被提交到所述输出设备,以便被物理地再现。所述用户界面使得无线和有线设备能够 访问 所述系统。所述系统使文档(72)能够按引用加以打印,并使得能够对 防火墙 之后的资源进行访问。,下面是通过无线设备能够进行打印的输出管理系统和方法专利的具体信息内容。

1.一种用于通过无线设备进行打印的方法,包括:
把可再现的数据提供到无线设备,依据所述可再现的数据可以把用 户界面(UI)再现到无线设备上;
通过用户界面使用户能够选择要加以打印的源数据;
通过用户界面使用户能够选择输出设备或者使用缺省的输出设备 来在其上打印源数据;
通过在打印服务处接收源数据;
通过打印服务再现与源数据和选定的输出设备或者缺省的输出设 备之一相对应的输出图像数据;和
把输出图像提交到输出设备以供打印。
2.如权利要求1所述的方法,其中无线设备包括无线web启用的 设备。
3.如权利要求2所述的方法,无线web启用的设备包括WAP(无线 应用协议)启用的设备,并且其中可再现的数据包括WML(无线标记语言) 数据。
4.如权利要求1所述的方法,其中无线设备包括IEEE802.11启用 的设备。
5.如权利要求1所述的方法,其中无线设备包括蓝牙启用的设备。
6.如权利要求1所述的方法,其中源数据被存储在无线设备上。
7.如权利要求1所述的方法,其中源数据被存储在位于远离所述 无线设备的远程存储上。
8.如权利要求7所述的方法,其中用户界面使用户能够导航所述 远程存储以便选择源数据。
9.如权利要求7所述的方法,其中远程存储处于可以不由无线设 备直接访问的专用网络上,还包括使无线设备能够访问所述专用网络 的代理。
10.如权利要求所述的方法9,其中所述代理包括虚拟专用网络 (VPN)代理。
11.如权利要求1所述的方法,其中所述方法由一个输出管理系统 辅助实施,还包括:
使用户能够从可通过输出管理系统加以访问的输出设备中选择和 /或指定一个或者多个收藏输出设备;和
使用所述输出管理系统来存储关于由用户选定和/或指定的那些 输出设备的信息。
12.如权利要求1所述的方法,其中所述用户界面还使用户能够指 定从其访问源数据的网络服务器
13.如权利要求1所述的方法,其中所述用户界面还使用户能够通 过一个或多个搜索参数进行搜索以查找输出设备。
14.如权利要求1所述的方法,其中所述打印服务通过执行下列操 作来生成输出图像数据:
确定所述源数据的文件类型;
确定一个合适的应用程序以便通过所述打印服务进行加载,从而生 成输出图像数据;和
启动打印动作以便使所述应用程序与打印子系统协同生成输出图 像数据。
15.如权利要求1所述的方法,还包括向所述无线设备提供打印预 览数据,该预览数据包括在用户界面上加以再现时由输出设备所产生 的被打印输出的模拟表示。
16.如权利要求15所述的方法,其中所述源数据对应于基于文本 的文档,还包括通过用户界面提供导航控件,以便使用户能够导航到 被打印输出的模拟表示的各个部分。
17.如权利要求15所述的方法,其中所述源数据对应于电子表格 类型的文档,还包括通过用户界面提供导航控件,以便使用户能够导 航到被打印输出的模拟表示的各个部分,包括在对应于所述源数据的 电子表格文档的单页之内进行垂直和平移动。
18.如权利要求15所述的方法,其中所述源数据包括原始图像, 还包括生成所述原始图像的、被确定大小的缩微图像,根据屏幕的显 示特性将该缩微图像配置成在无线设备的屏幕上显示。
19.如权利要求1所述的方法,还包括:
将所述输出图像数据存储到资源库;
从所述资源库检索输出图像数据;和
把所述输出图像数据转发到输出设备。
20.如权利要求1所述的方法,还包括通过所述用户界面向用户提 供作业状态信息。
21.一种用于通过蓝牙启用的始发端设备进行打印的方法,包括:
通过蓝牙设备仿真器从蓝牙启用的始发端设备接收对应于一次查 询的输入,以便检测附近的蓝牙启用的输出设备的存在;
通过蓝牙设备仿真器来仿真蓝牙启用的输出设备,以便使蓝牙启用 的始发端设备认为这样的一个蓝牙启用的输出设备正在与所述蓝牙启 用的始发端设备通信着;
接收来自蓝牙启用的始发端设备的打印请求,以便在与正被仿真的 蓝牙启用的输出设备相对应的输出设备上打印源数据;
接收或者检索与所述打印请求相对应的源数据;
生成与所述源数据和输出设备相对应的输出图像数据;和
把所述输出图像数据提交到输出设备,以便由所述输出设备物理地 加以再现。
22.如权利要求21所述的方法,其中所述输出设备是非蓝牙启用 的输出设备。
23.如权利要求21所述的方法,其中所述源数据从所述蓝牙启用 的始发端设备那里接收。
24.如权利要求21所述的方法,其中所述源数据从远程存储加以 检索。
25.如权利要求24所述的方法,还包括:
通过所述蓝牙设备仿真器来仿真蓝牙启用的网络浏览器操作;
使蓝牙启用的始发端设备的用户能够通过正被仿真着的网络浏览 器操作来从文件存储那里选择要加以打印的所述源数据;和
从所述文件存储那里检索源数据。
26.如权利要求21所述的方法,其中所述源数据被提供给生成输 出图像数据的打印服务,或者由所述打印服务加以检索。
27.如权利要求26所述的方法,其中响应于在所述打印服务那里 对源数据进行的接收或者检索,执行下列操作:
确定所述源数据的文件类型;
确定一个合适的应用程序以便通过所述打印服务进行加载,从而生 成所述输出图像数据;和
启动打印动作以使所述应用程序与打印子系统协同生成输出图像 数据。
28.如权利要求21所述的方法,还包括:
链接与输出管理系统相连的蓝牙设备仿真器;
标识所述蓝牙启用的设备的用户;
从所述输出管理系统检索蓝牙设备参数,所述蓝牙设备参数与可以 通过输出管理系统加以访问的输出设备相对应;和
使用所述蓝牙设备参数通过蓝牙设备仿真器来仿真那些输出设 备,以便使蓝牙设备认为它与正被仿真着的一个或者多个输出设备相 对应的蓝牙启用的输出设备直接通信着。
29.如权利要求28所述的方法28,还包括:
标识所述蓝牙启用的设备的用户;
从所述输出管理系统检索蓝牙设备参数,所述蓝牙设备参数与所述 用户可以访问的一个或者多个输出设备相对应;和
通过所述蓝牙设备仿真器仿真一个或者多个输出设备。
30.如权利要求21所述的方法,其中所述用户界面使用户能够选 择在远程存储上所存储的源数据。
31.如权利要求21所述的方法,其中所述蓝牙设备仿真器始于蓝 牙管道上的WAP(无线应用协议),还包括:
通过所述蓝牙设备仿真器把基于WAP的内容提供给蓝牙启用的始 发端设备,通过所述基于WAP的内容可以再现用户界面;和
使用户能够从远程存储中选择一个文档,以便由选定的输出设备加 以打印。
32.如权利要求31所述的方法,其中所述远程存储处于可以不由 所述无线设备直接访问的专用网络上,还包括使无线设备能够访问所 述专用网络的代理。
33.如权利要求32所述的方法,其中所述专用网络包括一个防火 墙,以用于防止未授权用户所进行的访问,并且所述代理包括虚拟专 用网络(VPN)代理。
34.一种用于从在防火墙之外的始发端设备在所述防火墙之后的 专用网络上进行打印的方法,包括:
在位于所述防火墙之后的输出管理系统组件和防护墙之外的输出 管理系统组件之间建立一条直通通信链路,所述直通通信连接通过所 述防火墙;
把可再现的数据提供到所述始发端设备,依据所述可再现的数据可 以在始发端设备上再现用户界面;
使用户通过所述用户界面能够选择要打印的源数据;
使所述用户能够选择专用网络上的、源数据要在其上打印的输出设 备;
从存储中检索所述源数据;
再现与所述源数据和选定的输出设备相对应的输出图像数据;
把所述输出图像数据从防火墙之外的输出管理系统组件发送到位 于防火墙之后的输出管理系统组件;和
把输出图像数据从位于防火墙之后的输出管理系统提交到输出设 备,以便由所述输出设备物理地加以再现。
35.如权利要求34所述的方法,其中位于所述防火墙之外和位于 防火墙之后的每个输出管理系统组件都包括消息中心组件,它用于在 输出管理系统中提供对其他组件的管理。
36.如权利要求34所述的方法,还包括在直通通信链路上把数据 从位于防火墙之后的输出管理系统组件发送到防火墙之外的输出管理 系统组件,所述直通通信连接标识位于可以通过位于防火墙之后的输 出管理系统组件加以访问的、防火墙之后的一个或多个输出设备。  
37.如权利要求34所述的方法,其中位于所述防火墙之外的输出 管理系统组件包括一个服务器组件,位于防火墙之后的输出管理系统 组件包括客户端组件。
38.如权利要求34所述的方法,其中所述直通通信链路包括虚拟 专用网络(VPN)链路。
39.如权利要求34所述的方法,其中所述始发端设备包括web启 用的无线设备。
40.如权利要求34所述的方法,其中所述始发端设备包括蓝牙启 用的设备。
41.如权利要求34所述的方法,其中所述存储包括在始发端设备 上的本地存储。
42.如权利要求34所述的方法,其中所述存储包括一个位于远离 无线设备的远程存储。
43.如权利要求42所述的方法,其中所述远程存储位于专用网络 上。
44.如权利要求34所述的方法,其中打印服务被用于通过执行下 列操作生成输出图像数据:
确定所述源数据的文件类型;
确定一个合适的应用程序以便通过所述打印服务加载,从而生成所 述输出图像数据;和
启动打印动作以使所述应用程序与打印子系统协同生成所述输出 图像数据。
45.如权利要求34所述的方法,还包括向所述无线设备提供打印 预览数据,该打印预览数据包括在所述用户界面上加以再现时由所述 输出设备产生的被再现输出的模拟表示。
46.一种用于从一个防火墙之外的始发端设备在所述防火墙之后 的专用网络上进行打印的方法,包括:
在位于所述防火墙之后的输出管理系统组件和在所述防火墙之外 的输出管理系统组件之间建立一条直通通信链路,所述直通通信链路 通过所述防火墙;
把可再现的数据提供到所述始发端设备,依据所述可再现的数据可 以在所述始发端设备上再现用户界面;
使用户能够通过所述用户界面选择要加以打印的源数据;
使所述用户能够选择专用网络上的、要在其上打印所述源数据的输 出设备;
把所述源数据或者到其的引用从位于所述防火墙之外的输出管理 系统组件转发到位于所述防火墙之后的输出管理组件;
再现与所述源数据和选定的所述输出设备相对应的输出图像数 据;和
把所述输出图像数据提交到所述输出设备,以便由所述输出设备物 理地加以再现。
47.如权利要求46所述的方法,其中位于所述防火墙之外的和位 于所述防火墙之后的输出管理系统组件中的每一个均包括消息中心组 件,它用于在输出管理系统提供对其他组件的管理。
48.如权利要求46所述的方法,还包括在所述直通通信链路上把 数据从位于所述防火墙之后的输出管理系统组件发送到所述防火墙之 外的输出管理系统组件,所述直通通信链路标识可以通过位于所述防 火墙之后的输出管理系统组件加以访问的、位于防火墙之后的一个或 多个输出设备。
49.如权利要求46所述的方法,其中位于所述防火墙之内的输出 管理系统组件包括一个服务器组件,并且向所述输出设备提交输出图 像数据,包括:把所述输出图像数据提供到客户端,并且响应接收所 述输出图像数据,所述客户端把所述输出图像数据提交到输出图像设 备以供再现。
50.如权利要求46所述的方法,其中所述始发端设备包括web启 用的无线设备。
51.如权利要求46所述的方法,其中所述始发端设备包括蓝牙启 用的设备。
52.如权利要求46所述的方法,其中所述源数据包括在所述始发 端设备上存储的文档,还包括在所述防火墙之外的输出管理系统组件 从所述始发端设备接收源数据。
53.如权利要求46所述的方法,其中所述源数据被存储在远程存 储上,还包括从所述远程存储检索源数据。
54.如权利要求53所述的方法,其中所述远程存储位于所述专用 网络上,并且所述源数据从由到所述源数据的引用所标识的位置加以 检索。
55.如权利要求1所述的方法,还包括通过所述用户界面把作业状 态信息提供到所述用户。
56.如权利要求46所述的方法,其中打印服务被用于执行下列操 作生成所述输出图像数据:
确定所述源数据的文件类型;
确定一个合适的应用程序以便通过所述打印服务进行加载,用于生 成所述输出图像数据;和
启动打印动作以使所述应用程序与打印子系统协同生成所述输出 图像数据。
57.如权利要求46所述的方法,还包括把打印预览数据提供到所 述无线设备,该打印预览数据包括在所述用户界面上加以再现时由所 述输出设备所生成的被再现输出的模拟表示。
58.一种用于从位于防火墙之外的始发端设备在所述防火墙之后 的专用网络上进行打印的方法,包括:
在位于所述防火墙之后的输出管理系统组件和所述始发端设备之 间建立通信链路,所述通信链路包过穿过所述防火墙的虚拟专用网络 (VPN)隧道;
把可再现的数据提供到所述始发端设备,依据所述可再现的数据可 以在所述始发端设备上再现用户界面;
使用户能够通过所述用户界面选择要加以打印的源数据;
使所述用户能够选择专用网络上的、要在其上打印所述源数据的输 出设备;
通过所述VPN隧道把所述源数据或者到其的引用从所述始发端设 备转发到位于所述防火墙之后的输出管理系统组件;
再现与所述源数据和选定的所述输出设备相对应的输出图像数 据;和
把所述输出图像数据提交到所述输出设备,以便由所述输出设备物 理地加以再现。
59.如权利要求58所述的方法,其中所述用户界面包括多个交互 式网页,并且所述VPN隧道由位于所述防火墙之外的公共网关接口 (CGI)VPN代理与位于所述防火墙的VPN交换机协同辅助实施。
60.如权利要求58所述的方法,其中所述始发端设备包括VPN启 用的设备,所述VPN隧道由在VPN启用的设备上运行的客户端侧组件 和位于所述防火墙的VPN交换机辅助实施。
61.如权利要求58所述的方法,其中位于所述防火墙之后的输出 管理系统组件包括服务器组件,并且把所述输出图像数据提交到所述 输出设备,包括:把所述输出图像数据提供到客户端,并且响应于接 收所述输出图像数据,所述客户端把所述输出图像数据提交到所述输 出图像设备以供再现。
62.如权利要求58所述的方法,其中所述始发端设备包括web启 用的无线设备。
63.如权利要求58所述的方法,其中所述始发端设备包括蓝牙启 用的设备。
64.如权利要求58所述的方法,其中所述源数据包括在所述始发 端设备上存储的文档,还包括在位于所述防火墙之后的输出管理系统 组件通过所述VPN隧道从所述始发端设备接收源数据。
65.如权利要求58所述的方法,其中所述源数据被存储在远程存 储上,还包括从所述远程存储检索所述源数据。
66.如权利要求65所述的方法,其中所述远程存储位于所述专用 网络上,并且所述源数据从由到所述源数据的引用标识的位置加以检 索。
67.如权利要求58所述的方法,还包括通过所述用户界面把作业 状态信息提供到用户。
68.如权利要求58所述的方法,其中打印服务被用于通过执行下 列操作生成所述输出图像数据:
确定所述源数据的文件类型;
确定一个合适的应用程序以便通过所述打印服务加载,从而生成所 述输出图像数据;和
启动打印动作以使所述应用程序与打印子系统协同生成所述输出 图像数据。
69.如权利要求58所述的方法,还包括把打印预览数据提供到所 述无线设备,该打印预览数据包括在所述用户界面上加以再现时由所 述输出设备所产生的被再现输出的模拟的表示。
70.如权利要求7所述的方法,还包括把标识所述源数据在所述远 程存储上的位置的引用发送到所述打印服务,并且响应接收所述引 用,使用所述引用通过所述打印服务检索源数据。
71.如权利要求1所述的方法,还包括:
确定无线设备的位置;
根据所述无线设备的位置动态地确定一个缺省的输出设备。
72.如权利要求71所述的方法,其中所述方法由一个输出管理系 统辅助实施,所述输出管理系统包括多个无线数据访问点(WDAP),还 包括:
存储用于标识所述多个WDAP和可以通过这些WDAP加以访问的输 出设备的拓扑位置的数据;和
根据其与WDAP的近似性来确定缺省的输出设备,所述无线设备通 过所述WDAP访问所述输出管理系统。

说明书全文

相关申请

本申请以于2001年8月22日提交的序号为60/314,412的名为“无 线文档打印、察看和共享的方法和设备(METHOD AND APPARATUS FOR WIRELESS DOCUMENT PRINTING,VIEWING AND SHARING)”和于2002 年1月23日提交的序号为60/351,754的名为“用于打印和格式化来 自移动设备的文档及输出资源管理的方法和系统(METHOD AND SYSTEM FOR PRINTING AND FORMATTING DOCUMENTS AND OUTPUT RESOURCE MANAGEMENT FROM MOBILE DEVICES)”的共同待审临时申请为基础, 根据35U.S.C.119(e)要求上述申请日的权益,并且本申请还以于 2002年3月13日提交的序号为10/098,832的名为“通用打印与文档 成像系统和方法(UNIVERSAL PRINTING AND DOCUMENT IMAGING SYSTEM AND METHOD)”和2002年3月21日提交的序号为10/104,528的名 为“经由电子邮件进行打印的方法和系统(METHOD AND SYSTEM TO PRINT VIA E-MAIL)”的共同待审非临时申请为基础,根据35 U.S.C.120要求上述申请日的优先权。此外,将这些共同待审非临时 申请中每一篇的说明书附图全部引入于此,以供参考。

发明领域

本发明的领域总体上涉及联网的打印环境,更具体而言而非排它地 涉及移动式联网的打印环境和输出请求的管理。

背景信息

在常规打印环境中,操作计算机的用户可以提交由运行在他们计算 机上的应用程序生成文档,以便在连接于所述网络的输出设备上加以 再现,其中所述计算机经由诸如局域网(LAN)之类的封闭式计算机网 络互相连接,所述输出设备比如是打印机、绘图仪等等。在现今快步 伐的移动式商业环境中,这种局限的打印技术方案不再令人满意。虽 然传统的打印技术无疑具有快速以高分辨率、改善的品质及彩色效果 输出文件的优点,但是还没由花费什么精来开发顺应当今移动式工 作能力的打印技术。

在当今的移动式商业环境中,出现了许多未被虑及的或是未由常规 打印环境的开发人员所要解决的打印情形。例如,考虑下列情形。当 准备在合伙人办公室讨论买卖时,商业开发人员能在他公司的本地网 络向合伙人网络中的打印机提交必需的协议吗?即使旅行销售代表没 有把展示幻灯片文档带在身边,也依然能颇为容易地将她的介绍幻灯 片打印到附近打印机吗?即使在附近打印机不是蓝牙启用的情况下, 蓝牙手机用户也能够走进房间,检测有蓝牙功能的打印机的存在,并 按引用向该附近打印机打印文档吗?即时消息传送用户能将文档拖拽 到他伙伴的打印机列表以打印所述文档吗?机场内的险资本家能仅 仅利用他的蜂窝式电话而在他的总公司打印所需文档吗?为这些情形 中的每一个以及其它类似的情形提供打印技术方案将会是有益的。

发明概述

依照本发明的许多方面,提供了一种用于管理在各种类型的计算机 网络上的、诸如打印、传真和电子邮件之类的输出的系统和方法。在 一个方面,所述方法规定通过无线设备进行打印。所述系统把可再现 的数据提供到无线设备,依据所述可再现的数据可以再现用户界面 (UI)。所述UI使用户能够选择源数据和在其上打印所述源数据的输 出设备。所述源数据然后被从本地或者远程存储加以检索并且被转发 到打印服务,所述打印服务再现与所述源数据和选定的输出设备相对 应的输出图像数据。所述输出图像数据然后被提交到所述输出设备, 以便被物理地再现。所述用户界面使得无线和有线设备能够访问所述 系统。所述系统使文档能够按引用加以打印,并使得能够对防火墙之 后的资源进行访问。

附图简要说明

通过参照以下详细说明连同附图,将会更加容易认识到本发明的上 述方面以及许多随之而来的有益效果,并且这些内容将变得更好理 解,其中在各个视图里,同样的参考标记都指代相似的部分,除非另 作说明:

图1是举例说明由消息中心(MC)执行的各种任务的示意框图

图2是举例说明由打印服务(PS)执行的各种任务的示意框图;

图3是举例说明由远程桌面客户端(RDC)执行的各种任务的示意 框图;

图4是举例说明由无线数据访问点(WDAP)执行的各种任务的示 意框图;

图5是举例说明简单的示范性输出管理系统实现的示意图;

图6是举例说明更复杂的示范性输出管理系统实现的示意图;

图7是根消息中心与连接于专用网络的消息中心之间的交互的示 意图;

图8是举例说明用来建立对等消息中心连接的设置操作的示意 图;

图9是举例说明依照RDC客户端注册请求RDC与消息中心之间的 交互的流程图

图10是对应于RDC打印机注册请求的流程图;

图11是对应于向消息中心提交设备资源定义的RDC的流程图;

图12是经由家庭消息中心到根消息中心的公用设备查询的流程 图;

图13是对应于由家庭域中的用户向输出设备发出的按引用打印 (PBR)作业请求的流程图,所述输出设备直接连接于家庭域中的打印 服务;

图14是对应于图13的PBR作业请求的组件交互图;

图15是对应于由家庭域中的用户向输出设备发出的非PBR作业请 求的流程图,所述输出设备直接连接于家庭域中的打印服务;

图16是对应于由家庭域中的用户向本地打印机提交的PBR作业请 求的流程图,所述本地打印机连接于家庭域中的远程桌面客户端;

图17是对应于图16的PBR作业请求的组件交互图;

图18是对应于由家庭域(例如区域(Zone)1)中的用户提交的 PBR作业请求的流程图,所述PBR作业请求将在根消息中心公用输出设 备(D1)上被打印;

图19是对应于图18的PBR作业请求的组件交互图;

图20是举例说明与系统中的消息中心交互的三个初级访问机制的 示意图;

图21是举例说明当用户经WDAP提交作业请求时、用来确定动态 默认打印机的操作的示意图;

图22A和22B是举例说明当蓝牙启用的始发端设备的用户经包含 蓝牙设备仿真器的WDAP提交作业请求时、用来确定动态默认打印机的 操作的示意图;

图23是通用系统连接拓扑图,它举例说明在典型的输出管理系统 实现期间遇到的各种连接路径和连接类型;

图24是举例说明在处理作业请求期间所执行的操作的流程图,所 述作业请求是经由区域内部的消息中心和公用RDC来处理的;

图25是依照本发明一个实施例的对应于4层体系结构的示意框 图;

图26是举例说明用来实现由消息中心提供的操作的各种软件 及相应数据库模式的框图;

图27是举例说明由打印服务实现的各种软件组件的示意框图;

图28是举例说明由打印服务使用的各种CGI脚本的示意框图;

图29是举例说明由驱动程序打印服务器实现的各种软件组件的示 意框图;

图30是举例说明对应于提交到打印服务的打印请求的典型数据流 程的示意图;

图31是举例说明由打印服务的无驱动程序的打印服务器软件提供 的进一步操作及逻辑的组合示意图和流程图;

图32是举例说明由句柄(Handle)窗口组件使用以处理各种对话 框及消息框的操作及逻辑的流程图和示意图,所述对话框及消息框可 以当处理打印作业时被调用(launched);

图33是使用户能经由输出管理系统来建立文件服务器访问的基于 Web的用户界面(UI)表示;

图34是在文件服务器已经被建立以供访问之后的图33的基于Web 的UI表示;

图35是使用户能建立收藏打印机列表的基于Web的UI表示;

图36是使用户能搜索先前已经由系统管理员配置的打印机的基于 Web的UI表示;

图37是在已经将几个打印机添加到收藏打印机列表之后的图35 的基于Web的UI表示;

图38是对应于图39-52中基于WAP的用户界面细节的图例;

图39是对应于预订者登录过程的WAP UI流程图的第一部分;

图40是图39的WAP UI流程图的第二部分;

图41是对应于subOutputindex.pl CGI脚本的WAP UI流程图;

图42是对应于一组卡的WAP UI流程图,所述这组卡使网络的导 航能搜索文档以便输出;

图43是对应于添加网络站点、传真机以及电子邮件地址的WAP UI 流程图;

图44是用来通知用户已经将网络站点添加到用户的网络站点列表 的WAP UI;

图45是对应于将新打印机添加到收藏打印机列表中的WAP UI流 程图;

图46是用来通知用户已经将传真机添加到用户的传真列表中的 WAP UI;

图47是用来通知用户已经将电子邮件名称添加到用户的联系列表 中的WAP UI;

图48是对应于选定文档和输出设备的确认的WAP UI流程图;

图49是对应于将新传真添加到用户收藏传真列表中的WAP UI流 程图;

图50是对应于将新电子邮件联系添加到用户的联系列表中的WAP UI流程图;

图51是对应于将打印、传真以及电子邮件作业插入到相应作业队 列中的WAP UI流程图;

图52是表明响应于用户请求、是否曾经由电子邮件把PIN成功发 送给用户的WAP UI流程图;

图53是举例说明如何将原始文档图像转换成在带有低分辨率屏幕 的设备上文档预览的各种尺寸的缩微图的图;

图54是举例说明用户如何导航通过基于文本的文档的各部分以预 览该文档当它在选定输出设备上输出时将呈现出何样的示意图;

图55是举例说明用户如何可以导航通过电子表格文档的各部分以 预览该文档当它在选定输出设备上输出时将呈现出何样的示意图;

图56是举例说明如何能把该输出管理系统体系结构的原理扩展到 通过即时消息传送服务来支持资源共享的示意图;

图57是举例说明如何可以通过多媒体消息启用的设备来使用该系 统的示意图;

图58是举例说明如何可以实现CGI VPN代理以增强包含由该系统 使用的资源的专用网络安全性的示意图;

图59A是举例说明用于实现访问位于专用网络上的输出设备的第 一配置结构的示意图,所述专用网络不包括消息中心;

图59B是举例说明用于实现访问位于专用网络上的输出设备的第 二配置结构的示意图,所述专用网络不包括消息中心;和

图60是可以用来驻留系统各种组件的示范性计算机服务器的示意 图,包括消息中心和打印服务。

优选实施例的详细说明

在这里对管理系统和方法的实施例进行描述,所述输出管理系统和 方法为移动用户和陆上接线用户提供了打印技术方案。在以下说明当 中公开了许多特定的细节,比如示范性的体系结构实施方案,以便提 供对本发明实施例的全面理解。然而,相关领域技术人员会认识到: 本发明可以在不具备一个或多个特定细节的情况下加以实施,或是用 其它的方法、组件等等来实施。在其它场合中,为了避免使本发明的 多个方面相互混淆,对众所周知的结构或操作并未示出或者未作详细 描述。

在整个说明书中提到的“一个实施例”或“实施例”是指:连同实 施例描述的特定特征、结构或特性,都包含在本发明的至少一个实施 当中。因此,在整个说明书之中不同地方出现的短语“在一个实施例 中”或“在实施例中”,未必都指的是相同的实施例。另外,特定特 征、结构或特性可在一个或多个实施例中按照任何适当方式加以组 合。

定义

在下列整个说明中,屡次使用了以下术语及其定义:

源数据:源数据是指能够被检索并输出到设备的任何文档或媒体。 支持的输入数据格式包括但不限于:大多数文档处理程序支持的类型 (例如,PDF、PostScript、Microsoft Word、ASCII文本等等)、 Web URL链路、电子邮件和电子邮件附件。

远程存储:远程存储包括存储着源数据的局域网(LAN)或因特网 上的远程位置。远程存储包括但不限于:FTP内容服务器、NFS文件服 务器、PCNFS文件服务器以及Web服务器。

本地源:本地源包括存储在同一用户设备上的源数据,其中打印请 求是从所述用户设备发出的。因此,当从本地源打印时,需要将源数 据从用户设备上载到输出管理系统以供处理。

远程源:远程源包括存储在远程存储上的源数据。

始发端设备:用户从其上发启作业请求的无线或有线设备。

输出设备:输出设备包括从系统获得输出图像数据并将它们转变成 用于察看或记录的特定形式的装置。支持的输出设备包括但不限于: 打印机、传真机、远程文档资源库(repository)以及电子邮件目的 地。这些输出设备可以位于LAN上,或者可以居于外部网络上,所述 外部网络包括诸如因特网和专用网络之类的公用可访问网络。

作业请求:作业请求是指用户向系统提交的将要处理的请求和发送 给输出设备的请求。

作业状态:它是指表明请求处理过程当前进度的作业请求状态。它 是一种帮助用户了解其作业请求状态和帮助系统管理员对它们进行管 理的机制。

按引用打印(PBR):此作业处理方法规定了系统应该从远程源而 不是从本地源检索源数据。

延期打印:这被定义为由于目标输出设备的当前不可用性而推延 输出已处理的作业请求,作业处理的最后阶段。

用户数据库:这是指用来跟踪每个用户的系统配置设置的系统数据 库。

服务器:一种在网络上可访问的、运行软件的计算机。

Web服务器:一种在计算机或服务器上运行的软件程序,它可利用 超文本传输协议(HTTP)或安全HTTP(HTTPS)来与客户端计算机进 行通信,以便在客户端计算机与服务器计算机之间传输超文本链接标 记语言(HTML)文件、公共网关接口(CGI)数据、以及数据文件。

Windows打印机:在Microsoft Windows操作系统当中,将‘打 印机’定义为:打印机驱动程序、打印处理器、语言监控器和端口监 控器的指定组合。

假脱机文件:一种由MS Windows打印机驱动程序生成的打印机语 言文件。这个文件的内容可被直接发送给打印机以供打印。

因特网打印协议(IPP):一种类似于HTTP的协议,用来将假脱 机文件发送给联网的打印机,并从联网的打印机获取打印作业状态。

远程行式打印(LPR):一种用来向联网的打印机提交假脱机文件 的协议。

区域:包含自治输出管理系统的网络。典型地,一个区域包括网 络域的逻辑表示。

这里所描述的本发明的各种实施例使无线和有线用户能从本地源 及远程源检索源数据,并请求在选定的输出设备上输出所述源数据, 所述选定的输出设备还指的是目标输出设备或目的地输出设备。一般 而言,输出设备可以与始发端设备(即,从其上发出输出请求的设备) 位于同一网络上,或者更时常的情况下,输出设备可以位于独立的网 络上,所述独立的网络包括始发端设备通常不可访问的网络。

在顶层,在这里所描述的本发明的输出管理系统的实施例的操作和 功能是通过四个主要组件的用户来启用的:消息中心(MC)、打印服 务(PS)、远程桌面客户端(RDC)和无线数据访问点(WDAP)。在实 际实现中,通常将依据实施方案的特殊要求来使用这些组件的各种不 同组合。

消息中心是系统的心脏。它与该系统中的其余组件进行接口连接, 以适当地确保整个系统功能。如图1所示,在一个实施例中,消息中 心MCn执行十二种主要任务,包括:组件注册与解除注册10、作业请 求接收12、作业请求处理14、作业输出调度与排队16、作业输出状态 监控18、对等消息中心交互20、根层消息中心交互22、远程桌面客户 端管理24、打印服务管理26、无线数据访问点管理28、用户简档管理 30、以及用户界面管理32。

所述打印服务组件处理作业请求的再现和打印。如图2所示,在一 个实施例中,打印服务PSn执行打印服务任务,所述打印服务任务包 括:再现输出图像34、将输出图像存放到资源库36、将输出图像发送 到本地设备38、将作业输出状态发送到消息中心40、以及本地输出设 备管理42。

所述远程桌面客户端组件帮助远程设备连接到整个系统。如图3 所示,在一个实施例中,远程桌面客户端RDCn执行三种主要任务,包 括:输出设备注册与解除注册44、从消息中心接收输出请求46、以及 将作业输出状态返回到消息中心48。

所述无线数据访问点组件利用诸如蓝牙、IEEE 802.11等之类的标 准无线协议,来帮助无线用户连接到系统上。它还为无线访问而帮助 消息中心来管理资源映射。如图4所示,在一个实施例中,WDAPn执行 五种主要任务,包括:组件注册与解除注册50、接收设备连接请求52、 中继来自于用户无线设备的请求54、中继系统对用户的无线设备的响 应56、以及记录输出设备地理关系58。

总体来讲,在这里所描述的输出管理系统的实施例的创造性方面涵 盖以下操作:1)设备资源管理;2)设备资源发现;3)作业请求管理; 4)作业请求调度;5)作业请求监控;6)用户简档管理;以及7)用 户移动注册。以下描述了每个方面的简要预览,此后经由示范性系统 实施例描述了更多细节。

设备资源管理

所述系统管理设备资源,以允许便利而快速的输出设备定位。在一 个实施例中,将这些设备划分为物理输出设备和逻辑输出设备。所述 物理输出设备包括但不限于打印机、传真机以及复印机。所述逻辑输 出设备包括但不限于文件服务器、打印服务器、FTP资源库、以及电子 邮件目的地。下面是相关操作的列表。

利用层次根消息中心、公用及专用设备分类以容易地进行资源管理 和共享:所述系统利用数据库来记录每个消息中心的关系。所述根消 息中心的消息中心Id(MCID)等于0;所有其它的消息中心都具有非 零的正整数MCID值。根消息中心表维护标识区域及其它消息中心的网 络地址的信息。本地消息中心需要向根消息中心注册,并通告它们用 于资源共享的公用资源信息。所有未公布的设备资源均被视作为专用 的,并且在这些设备资源所驻留的区域以外不能被共享。

使用本地及远程客户端注册机制的设备管理:相关联的打印服务将 其已连接的输出设备注册到消息中心;同样,相关联的远程桌面客户 端将其直接连接的输出设备注册到消息中心。这些输出设备继而可以 通过相应的打印服务或远程桌面客户端来加以引用(referenced)。 依据实施方案的特殊安全性要求,如有需要,则比较合理的是在系统 中的打印服务和远程桌面客户端上使用加密,以确保数据安全性和完 整性。

使用万维网和移动设备接口的设备管理:为了设备管理起见,所述 系统提供了与普通移动式管理接口同时使用的完全管理接口

使用集中式驱动程序存储的远程设备安装:刚一注册输出设备时, 就将需要把相应的驱动程序安装在与输出设备相关联的打印服务上。 所述消息中心在其驱动程序存储中提供了一系列通常使用的驱动程 序,以便消除对要求将驱动程序传送给打印服务组件的设备的需要。 然而,如果目前无法从MC驱动程序存储中获得驱动程序的话,那么就 可以将该驱动程序传送给驱动程序存储,并且随后将其安装在打印服 务上。

设备资源发现

所述系统使用户能对移动式计算环境中的输出设备进行定位。正如 在下面将更详述的那样,在一个实施例中,对于设备发现,所述系统 使用了蓝牙和IEEE 802.11技术。它还使无蓝牙功能的设备能够通过 其蓝牙设备仿真器工作,就像它们是蓝牙设备一样。下面是相关操作 的列表。

输出设备发现和经由蓝牙连接向消息中心的注册:这是通过在无线 数据访问点(WDAP)上运行代理来实现的,以便与消息中心进行接口 连接来获得输出设备信息。所述代理还与消息中心相协作,以维护其 输出设备信息数据库运行在WDAP上。

经由蓝牙网关向蓝牙客户端的本地输出设备可用性通告:可以部署 任意的蓝牙网关来帮助消息中心管理它经由WDAP接收的信息。当无线 用户经由已注册的WDAP连接于网络时,将向他或她通告这个包含输出 设备可用性的信息。对于移动用户来说,当该用户穿过网络而连接于 不同WDAP时,将由系统来刷新此信息。

输出设备发现和经由802.11网关的注册:这是通过在无线数据访 问点(WDAP)上运行代理来实现的,以便与消息中心进行接口连接, 来按类似于蓝牙连接使用的方式获得输出设备信息。

经由IP广播输出设备可用性通告:可以在所述系统中部署任意的 802.11网关,以帮助消息中心管理它经由WDAP接收的信息。当授权 用户经由已注册的WDAP进入网络时,将向他或她通告这个包含输出设 备可用性的信息。当该用户穿过网络而连接于不同的WDAP时,将由系 统来刷新所述信息。

经由即时消息传送接口的本地输出设备可用性通告:可以把所述远 程桌面客户端扩展成通过即时消息传送(IM)协议(例如,AOL即时消 息传送、Yahoo消息传送、MSN消息传送、ICQ,等等)来支持设备管 理。这个概念是为了让用户的输出资源对其它消息用户(例如,伙伴 等等)而言是可察看或可共享的。例如,这个能力使IM用户能把文件 拖拽到输出设备的伙伴列表上的共享设备上,借此来使对应于文件的 输出能够被输出到伙伴能够容易地访问的设备上。

基于输出资源发现的默认输出设备分配:存在两类默认输出设备, 一类是静态的默认输出设备,而另一类是动态的默认输出设备。用户 能够经由图形用户界面(GUI)来修改他或她的简档设置,从而改变静 态的默认输出设备。然而,当用户利用移动设备来访问系统时,所述 系统仅仅更新动态的默认输出设备。总之,用户可以通过修改用户简 档设置来关闭动态重写,或者总是指定输出设备目的地。

作业请求管理

所述系统实施请求队列,以管理作业请求。下面是相关操作的列 表。

利用远程桌面客户端来管理对输出设备的作业请求:到目标输出设 备的作业请求是通过远程桌面客户端被通道传送的。这个RDC帮助输 出设备检索输出数据并将状态回送给消息中心。相同的RDC可以实现 加密,以保护消息中心与RDC之间交换的输出数据。

通过即时消息传送接口的作业提交:可以修改所述远程桌面客户 端,以便通过即时消息传送协议(例如,AOL即时消息传送、Yahoo消 息传送、MSN消息传送、ICQ,等等)来支持作业提交。这个机制使用 户能把文件拖拽到他或她的伙伴的共享输出设备列表上的设备上。伙 伴于是将从所述设备那里接收输出数据。已修改的RDC需要向消息中 心注册(例如,AOL拥有的、Yahoo拥有、公司拥有的或根MC)。一 旦注册成功,即时消息传送UI上的输出管理界面就将是可见的。如果 用户的伙伴也运行针对即时消息传送工具定制的RDC,则就通过即时消 息传送协议来将用户的资源信息转移到相连接的伙伴。继而,可以将 文档拖拽到用户伙伴的共享输出设备上。

通过即时消息传送接口来接收打印作业请求:可以修改所述远程桌 面客户端,以便通过即时消息传送协议来支持作业接收。当发送方将 输出数据拖拽到位于接收方的共享输出设备列表上的设备上时,向接 收者的RDC发送作业请求以进行打印。如前所述,已修改的RDC需要 向消息中心进行注册。一旦注册成功,即时消息传送UI上的输出管理 界面就将是可见的。如果用户的伙伴也运行针对即时消息传送工具定 制的RDC,则就通过即时消息传送协议来将用户的资源信息转移到相连 接的伙伴。继而,用户能够从其它已注册的用户那里接收作业请求。

与多媒体消息传送系统进行接口连接:消息中心能够在网关范围 内、外加以部署,以便与多数多媒体消息传送系统进行接口连接。这 种部署使通用多媒体客户端能与输出管理系统进行通信,所述输出管 理系统给客户端权限以交换信息或请求到共享设备和目的地的输出。

通过蓝牙连接向通用输出设备进行作业提交:包含蓝牙设备仿真器 的WDAP使用户能通过蓝牙连接来访问系统的提交接口。当请求时,将 包含蓝牙输出设备和通用输出设备在内的输出设备的可用性返回给用 户。然后,用户可以通过蓝牙连接来将输出发送到选定的目的地输出 设备。

通过专用服务器进行的作业请求再现:所述系统将打印服务用作为 专用的作业再现服务器。这减少了在客户端机上设备驱动程序的不必 要安装。利用远程桌面客户端,能够将几千英里外的已再现作业输出 到本地设备,反之亦然。

个人和商业作业请求分类:目前的公司打印环境没有把个人打印作 业请求从总线请求中区分开。相比之下,所述系统实现了一种对作业 请求分类、在数据库中标记它们并为进行帐目结算而保留该信息的方 法。由此,会计部能够根据由作业请求定义的工作特性来相应地向 部门或雇员收费。

支持访客打印:所述系统可以被配置成能支持访客打印。这被通过 驻留在消息中心上的访客作业提交接口来实现。所述接口不强制用户 简档验证,而是仅仅提供对公用输出资源的限制访问。管理员能够配 置消息中心,以便也支持针对访客打印的动态默认打印机。

电子邮件作业请求支持:所述系统将带有或不带有附件的电子邮件 作为一般作业请求来接收。它能将这些带有或不带有附件的请求处理 到多个输出信道。

文档预览:所述系统支持文档预览,从而在用户发出最终输出请求 之前给他们提供可视确认(例如,文档的正确版本)。这种文档预览 特征为用户提供了一种快捷方法,以浓淡处理的缩微图来察看图像、 并以具有页旁注的纯文本格式来察看其它文件。对于电子表格,它还 提供了在垂直与平两个方向上的导航。此外,在预览文档中,维持 原始文档的页面关系,借此使用户能随机访问预览文档。

作业请求调度

所述系统实施请求队列,以管理作业请求。下面是相关操作的列 表。

延期的作业调度:当作业请求进入消息中心时,将作业队列项插入 到消息中心数据库中,以便为作业处理起见而维护充足的信息。如果 目标输出设备是不可用的,那么所述系统就把该项保存在队列中,并 且(使用管理员可配置的延期值)稍后重新调度它,以便当所述输出 设备变为可用时可以提交它。

在 作业假脱机工厂(factory)中使用文件引用进行输出:所述系 统使用打印服务来再现输出图像。因为打印服务和消息中心通常不会 共同位于同一个主机上,所以需要将再现后的数据从打印服务传递到 消息中心以进行最后阶段的处理。就效率度而言,所述打印服务将 再现后的图像存储到共享假脱机工厂(即,资源库)中,并且将图像 的引用返回到消息中心。然后,消息中心使用所述引用来把数据输出 到目的地。

通过防火墙的安全输出:所述系统的模块化设计允许每个组件的自 定义配置。管理员可以安装防火墙来保护系统。所述远程桌面客户端 具有在适当配置防火墙时与消息中心相接口的能力。这给予用户通过 防火墙打印文档的能力。

作业请求监控

所述系统实现了经由作业队列记录(log)跟踪的作业状态监控。 下面是相关操作的列表。

利用数据库更新经由作业持久状态跟踪进行作业状态监控:所述消 息中心维护每个作业请求的持久状态。当发送出作业输出请求时,表 更新处理器监控作业状态,以确定是否结束了所述输出请求。如果是, 那么它就更新数据库并将状态返回给用户。

经由WAP推送(Push)进行的作业输出状态报告:当作业请求结 束时,更新数据库中的作业状态。继而,如果作业始发者是WAP客户 端的话,那么消息中心就经由WAP推送来通知用户该作业请求结束。

经由HTTP浏览器刷新进行作业输出状态报告:当作业请求结束 时,更新数据库中的作业状态。继而,消息中心通知用户该作业请求 结束。对于HTTP作业提交客户端,通过自动浏览器刷新来更新作业状 态,直到所述状态被标记成已结束为止。

输出创建

所述系统实现了用于输出创建的打印服务。下面是由打印服务执行 的相关操作的列表。

基于输入文件格式和可配置系统设置进行的输出再现应用程序的 动态选择:可以根据输入文件的格式来给用于再现输出文件图像的应 用分配优先级。能够经由系统配置设置的变化来调整优先级。

用于输出文件图像再现的第三方应用的使用:所述系统还可以使用 第三方应用来再现输出图像。

多个输出再现算法支持:所述系统依据输入文档的特性而使用了用 于生成输出图像的不同方法。它可以使用具有打印工具和打印机驱动 程序的后台服务,使用具有应用控制处理器的前台按键模拟,或者使 用进行再现的翻译器。

多个输出信道支持:所述系统支持多个输出信道,包含但不限于: 打印至打印机的通道、将传真发送至传真接收方、在始发端设备上预 览输出图像、以及将输出发送至电子邮件目的地。当选择了电子邮件 目的地输出信道时,可以将所述文档归入电子邮件本体内,或者作为 附件来发送。

增强整个系统可靠性的窗口处理器:所述系统使用窗口处理器来处 理当使用前台输出再现选项时可能遇到的各种弹出式对话框。这允许 系统在无人管理的很长一段时间充分地运行。

用户简档管理

所述系统使用户能利用Web界面或移动设备界面来管理他们的个 人简档。下面是相关操作的列表。

经由Web界面和移动设备界面进行用户简档管理与动态更新:所 述用户简档是由消息中心创建并维护的,所述消息中心用来存储预定 信息。必要时,用户能够使用WEB(HTML)界面或WAP(WML)界面来 更改他们的配置设置。此外,如果用户当前正在利用移动设备来访问 用户的家庭网络(home network)中的系统,那么所述系统就自动地 更新用户的动态默认打印机。

用户简档多重计费记录支持:用户简档包括用于系统的多个计费 ID,以用来标记不同类型的收费。例如,用户可以拥有个人打印账目 和商业打印账目两种账目。这能够帮助组织机构更容易地将输出管理 系统集成到他们的计费系统中。

用户移动式注册(Sign-in)

所述系统使用户能经由无线数据访问点(WDAP)来在本地网络上 注册。继而,可以使本地共享资源对于用户而言可用。下面是相关操 作的列表。

经由来自移动设备的查询结果的核实进行用户验证:所述系统检索 查询结果的唯一标识符,来相对于用户简档进行核实。接着,它根据 用户的标识来发送出自定义欢迎词(greeting)。

使移动用户能访问系统资源:所述无线数据访问点组件使无线用户 能经由无线连接(例如,蓝牙、802.11)来访问网络。所述WDAP还支 持动态的默认打印机管理。

示范性系统配置

在图5中示出了简单的示范性系统配置59。所述系统被部署在两 个区域,也就是区域0和区域1,它们跨越因特网60来通信链接。区 域0包括管理所有共享公用输出资源的根消息中心MC0。区域0也可 以包括可选的防火墙61。区域1包括两个消息中心:MC1和MC2。消 息中心MC1位于内部防火墙62的后面,并且它是专用的。消息中心MC2 位于防火墙63和64之间的网络DMZ(非军事化(demilitarized)区 域)中,并且它是公用的。就像远程桌面客户端RDC1一样,打印机服 务PS1也是公用的。输出设备D1和D2两者同样也都是公用的。

在图5及其后的系统配置图中,实线表示在相连的实体之间存在直 接链路,而虚线表示实体的连接是逻辑关联的(例如,经由注册而关 联的),而不是直接链接的。例如,输出设备D1经由直接链路66而 直接链接于打印服务PS1,而输出设备D2则是逻辑上与远程桌面客户 端RDC1相关联的,就如逻辑关联68描绘的那样。

在一些配置结构中,防火墙可能需要打开端口80(例如,用于 Apache Web服务为CGI调用提供服务)和端口5190(用于即时消息传 送的端口以及系统通信端口),以便允许用户访问消息中心MC2,并允 许消息中心MC2访问打印服务PS1、远程桌面客户端RDC1以及输出设 备D1和D2。如果需要SSL(安全套接字层),则防火墙就还需要打开 端口443。注意,由于安全性的原因,无线数据访问点WDAP1位于内 部防火墙60后面,以便从内部网络阻挡掉外部无线用户。

在图6中示出了更为复杂的系统配置70。在这个示例中,跨越三 个区域来部署系统:区域0、区域1和区域2。区域0包括管理所有 共享公用输出资源的根消息中心MC0。区域1和区域2都是专用的区 域,它们既可以包含公用资源又可以包含专用资源。区域1包括:一 个公用消息中心MC1,两个专用打印服务PS1和PS2,两个专用WDAP (WDAP1、WDAP2),一个公用远程桌面客户端RDC2,两个专用输出设 备D2和D3,以及一个公用输出设备D4。区域2包括:两个公用消息 中心MC2和MC3,两个专用打印服务PS3和PS4,两个专用WDAP(WDAP1、 WDAP2),一个专用远程桌面客户端RDC5,三个公用远程桌面客户端 RDC3、RDC4和RDC6,三个专用输出设备D6、D8和D9,以及三个公用 输出设备D5、D7和D10。区域0包括具有向其注册的三个消息中心 (MC1、MC2和MC3)的公用消息中心MC0。它还具有已注册的远程桌 面客户端(RDC1)。每个区域内的专用资源(例如,输出设备D2、D3、 D8和远程桌面客户端RDC5)在区域之外都不是共享的。管理公用资源 的消息中心向根消息中心MC0注册,以便可以通过公用请求来访问它 们。

消息中心MC0是包含对已注册的公用消息中心的引用 (reference)的根层消息中心。一旦安装了所述系统,公司固有的消 息中心(MC1和MC2)就需要把它们自己注册到根消息中心。在需要管 理大量公用资源的场合中,所述配置可以包括多个根消息中心。在这 种情况下,在一个实施例中,所述根MC将被分解成层次树。一般而言, 这种实施方案中的根消息中心的组织是非常灵活的。利用地理位置来 举例说明一种分类可能性,树层次的底层可以对应于特定区域(例如, 加利福尼亚州、明尼苏达州、台湾省、广东省),第二层至底层可以 把一些区域MC组合成更大的区域MC(例如,美国MC、中国MC),所 述层次中的下一层又依次能够把处于第二层至底层的一些MC组合成更 加大的区域MC(例如,美国、亚洲、欧洲);最终所述层次将生成代 表整个域的主MC。可以应用类似的方法来针对公司、个人和政府建立 消息中心层次。

已注册的消息中心能够为公用输出资源查询根消息中心。在一个实 施例中,可以根据下列RDC参数来进行搜索,所述RDC参数包括:客 户端的名称、客户端的邮政编码、或客户端的状态。同样,还可以根 据区域描述符或区域类型来进行搜索。此外,可以根据设备资源名或 设备资源描述来进行设备资源搜索。当区域0的根层消息中心接收搜 索请求时,它返回在其数据库中找到的记录的标识符。然后,利用这 些标识符作为限定条件(qualification)来执行后续的搜索,以便返 回更多方面的信息。

现在返回到图1,现在描述消息中心组件的更多细节。所述远程桌 面客户端和打印服务向消息中心注册它们的输出资源,所述消息中心 经由组件注册与解除注册组件10来提供对这些服务的访问。在注册过 程期间,通过相对应的类型定义数据来确定输出资源类型(例如,打 印机、绘图仪等等)。所述消息中心收集这些输出资源,并把公用的 资源注册到根层消息中心上。所述根消息中心利用充足信息来为每个 已注册的公用输出设备创建记录,以便其它的消息中心可以将记录中 所包含的数据用作为远程访问资源的对应的引用。

当输出设备想要使其自身断开与消息中心的关联时,它就向消息中 心发送解除注册请求。作为响应,所述消息中心从根消息中心解除对 所述输出设备的注册。如果输出设备是公用资源,则根消息中心数据 库中的相应共享记录就也被删除。

作业请求接收任务12使消息中心能接收作业请求。在一个实施例 中,消息中心使用Apache Web服务器,所述Apache Web服务器运行 一组能被调用来提交作业请求的CGI脚本。所述CG1脚本将打印作业 添加到消息中心的系统作业队列中。一旦创建了作业队列项,就认为 所述作业提交已结束。

一旦已经提交了作业请求,就通过作业请求处理任务14来执行对 请求的处理。当作业请求进入系统时,所述消息中心通过引用远程存 储上的远程源来收集源数据,或者通过提交器把本地源发送到消息中 心来收集源数据。然后,所述消息中心定位打印服务,以便再现对应 于源数据和目标输出设备的输出图像文件。

在创建输出图像文件之后,所述打印服务向消息中心返回文件引 用;然后,所述消息中心调用相应的RDC来向输出设备发送再现后的 图像。如果RDC或目标设备是不可用的,那么就推延打印请求。于是, 所述系统就按照可配置的重试持续时间所规定的那样,将再次试图将 打印请求重新发送给RDC。这些操作都是由作业输出调度和排队任务 16来处理的。

在将作业输出请求发送给输出设备之后,经由作业输出状态监控任 务18来向消息中心返回作业状态。然后,所述消息中心更新其状态并 通知用户当前的作业输出状态。在一个当前的实施方案中,所述系统 支持下列作业状态:DOCUMENT_DONE、INPUT_PENDING、 RESOURCE_WAIT、IN_PROGRESS、COMPLETE、CANCEL_BY_USER、以及 ERROR。

依照对等消息中心交互任务20,所述系统体系结构允许用于各种 操作的对等消息中心通信。对等消息中心之间的交互包括:区域0查 找表查询、文档路由请求、打印文档请求、以及状态回复。

在图7和图8中,举例说明了消息中心交互的两个示例。图7中的 示例表明用户如何能够请求公用设备来连接到他或她的家庭消息中 心,以便为任何向公用设备发出的后续请求作好准备。所述询问序列 按照如下进行:

1.用户(U1)向用户的家庭消息中心(MC1)提交公用设备连接 请求。这个公用设备(D2)刚好就是根消息中心连接的设备。

2.用户的家庭消息中心(MC1)为访问输出设备而查询根消息中 心(MC0)。

3.根消息中心(MC0)对通向指定输出设备的路径进行定位,并 将连接请求发送到其远程桌面客户端(RDC1)。

4.远程桌面客户端(RDC1)连接于用户的家庭MC(MC1),并且 由此而建立了连接。

在图8中举例说明的示例对应于对等消息中心请求,其具有以下次 序:

1.用户(U1)向用户的家庭消息中心(MC1)提交公用设备连接 请求。这个公用设备(D2)刚好将要向另一个对等消息中心(MC2)进 行注册。

2.用户的家庭消息中心(MC1)查询根MC(MC0)。

3.根消息中心(MC0)对通向指定设备的路径进行定位,并将连 接请求发送到目标消息中心(MC2)。

4.目标消息中心(MC2)认可(honor)来自根消息中心(MC0) 的指示(referral),并将响应送回根消息中心(MC0)。

5.根消息中心(MC0)接收“OK”响应,并将路径信息发送到用 户的消息中心(MC1)。

6.目标消息中心(MC2)连接于用户的家庭MC(MC1),并且由此 而建立了连接。

依照根层消息中心交互任务22,根层消息中心的原理促进了公用 输出资源共享。作为一个优点,根层消息中心为快速公用资源查找提 供了集中式位置。为了支持这种机制,非根层消息中心必须与根层消 息中心相交互,以便公布他们的公用资源,以及必要时为其它的公用 资源而进行查询。

所述远程桌面客户端帮助消息中心向输出设备发送作业请求。它还 可以用来以降低安全性风险的方式配置整个系统。例如,为安全输出 设备建立内部RDC,并为公用输出设备建立外部RDC。这些操作都是通 过远程桌面客户端管理任务24来处理的。

所述消息中心能够连接于多个打印服务。意思就是使用一组打印服 务而不是一个打印服务,以便更好地管理输出设备。所述消息中心与 这些打印服务保持非常紧密的关系,这是因为它们都是生成输出图像 的必要组件。这些必要组成部件之间的交互是通过打印服务管理任务 26来处理的。

为了支持诸如蓝牙启用和802.11启用的这类无线设备,所述系统 部署了一个或多个无线数据访问点。每个WDAP都具有要求相应的消息 中心进行管理的一组描述和信息。例如,每个无线数据访问点的动态 默认输出设备都是由WDAP的相应MC来维护的。这些操作都是通过无 线数据访问点管理任务28来处理的。

正如由用户简档管理任务30所描述的那样,所述消息中心维护用 于登录验证的用户简档以及一些默认的服务设置。例如,每个用户的 静态默认打印机和动态默认打印机都是在用户简档中规定的。用户能 够通过标准的Web界面或设备界面来修改他们的简档。

用户界面管理任务32处理由系统提供的各种用户界面。用户使用 “消费者”用户界面来管理他们的账目以及施加服务请求。在一个实 施例中,消费者接口具有对应家庭用户的一个部分,还具有对应访客 用户的另一个部分。由于安全性原因,访客用户界面在一定条件下提 供了对系统资源的限制访问。为了进行调试与维护以及为了安装各种 系统组件和参数,所述系统还具有管理用户界面。

所述打印服务执行图2中所示的五种主要任务。依照再现输出图像 任务34,当打印服务接收作业再现请求时,调用无驱动程序打印(DP) 服务器的内部组件收集源数据,并将这些数据置于DP服务器队列中。 然后,所述DP服务器调用DPS打印模块,以定位适当驱动程序并生成 输出图像。所述DPS打印模块将输出图像放入内部输出队列中,并把 控制权返回到DP服务器。下面,将论述这些操作的更多细节。

当DPS打印模块把控制权返回到DP服务器时,所述DP服务器调 用状态监控模块。如果目的地设备未与打印服务本地相连接,则状态 监控器就依照任务36将输出图像写入共享资源库中。继而,它就把控 制权返回到DP服务器。如果目的地设备是本地相连接的设备,则状态 监控器于是就依照任务38将输出图像发送到所述设备。继而,它把控 制权返回到DP服务器。依照任务40,在状态监控器将作业状态返回至 DP服务器之后,将所述作业状态转发回消息中心。本地输出设备管理 任务42使打印服务能支持本地相连的输出设备。它处理向消息中心进 行的设备注册和处理从消息中心解除注册。

参照图3,所述远程桌面客户端帮助去管理设备经由设备注册与解 除注册任务44而连接于消息中心。为了进行注册,它发送设备注册请 求以便与消息中心建立关联。为了解除注册,它发送设备解除注册请 求以便从消息中心中删除上述关联。

依照任务46,所述远程桌面客户端利用到输出图像文件的引用, 来从消息中心接收作业输出请求。它检索输出图像文件并将它们发送 到目标输出设备。当没有使用引用时,所述消息中心直接将输出数据 发送到远程桌面客户端。刚一结束作业输出,所述远程桌面客户端就 依照任务48来通知消息中心更新作业输出状态并通知给用户。

参照图4,每个无线数据访问点执行都下列主要任务。所述无线数 据访问点需要将其自身注册到消息中心以便链接于系统,这是经由组 件注册与解除注册任务50来处理的。WDAP注册的目的就是为了向消息 中心通知WDAP的默认输出设备(即,其最接近的输出设备)。这帮助 消息中心确定移动用户的动态默认打印机。为了删除上述关联,任务 50向同一个消息中心发送解除注册请求。

为了让无线设备访问有线网络,就必须存在一个访问点以便接收请 求并将请求从无线分组转换成陆上通信线分组。WDAP服务就是用于该 系统的数据访问点。依照任务52,非蜂窝式设备的无线请求通过无线 数据访问点来进入系统。

当无线数据访问点接收连接请求时,它将该请求转换成IP分组, 然后依照任务54,将所述IP分组发送到该请求规定的目的地。作为回 应,通过任务56来处理系统响应。当用户从最接近于第一WDAP的第 一位置移动到最接近于第二WDAP的第二位置时,所述系统经由第二 WDAP来向用户返回不同组的设备信息。因此,WDAP的一个关键职责就 是:依照记录输出设备地理关系任务58,制定其默认的输出设备并与 消息中心相通信,以便能够动态地生成设备信息。

正如上面所论述的那样,所述系统可以使用任意的蓝牙网关和蓝牙 设备仿真,以便使非蓝牙设备能够与所述系统一起工作,就仿佛它们 是蓝牙启用的设备一样。正如下面所述的那样,如有需要可以将蓝牙 网关功能内嵌到无线数据访问点当中,从而减少硬件成本。

工作原理

这一部分描述了系统的常见操作以及请求数据流程。下面是一些显 著的系统特征和系统要求。

1.每个用户都与家庭消息中心相关联。

2.所述系统可以加强两个消息中心之间的安全性、加强消息中心 与打印服务之间的安全性、以及加强消息中心与RDC之间的安全性。

3.消息中心提供了资源的驻留用户和访客(访客)用户访问控制。

4.每个WDAP都具有与之相关联的可配置默认打印机。

5.当通过WDAP对系统进行访问时,如果用户在他或她的简档中 规定允许动态系统重写,那么就将根据用户当前正连接着的WDAP来变 更该用户的默认打印机。

6.可以在消息中心上实现访客用户界面,所述消息中心支持其区 域内的访问者打印。这种界面不需要用户进行注册,也不需要创建简 档。因此,它不支持静态的默认打印机打印。然而,所述系统将提供 访问者动态默认打印机打印;作为选择,所述用户也能够规定目的地 打印机。

所述系统的模块化结构设计以及可扩展数据库模式使改进的安全 性方案能得以实现。第一,对于用户验证而言,用户数据库包含用来 相对于用户登录数据来进行验证的用户简档,所述用户登录数据是经 由任何支持的访问设备而输入到系统中的。如果验证失败,则就将记 录作为日志存入到系统中以供来日引用或调查,并且拒绝登录请求。 此外,消息中心能够为客户机和服务器验证的更高层实现公共密钥基 础结构支持。第二,对于数据加密支持而言,每个模块都能够实现加 密以保护内容数据。可以在文件存储至消息中心之间、消息中心至打 印服务之间、打印服务至输出资源库之间、以及输出资源库至RDC之 间实行加密。第三,在非拒绝实施方案中,所述系统给每个预订者分 配唯一的ID。当用户向系统提交请求时,立即利用用户的ID和时间戳 来标记该请求。如果这是一个作业提交请求,那么就在系统中生成副 本并作为日志将其存下来,并且稍后将其归档以用作来日的引用和计 费。

除前述安全实施方案之外,模块化和分布式体系结构的另一个优点 是:它允许管理员根据每个组织机构的特定需要来自定义安全设置。 例如,虚拟专用网络(VPN)可以用来将共享文件服务器链接到消息中 心。同样,可以在消息中心与远程桌面客户端之间实现VPN。系统体系 结构既支持软件VPN配置又支持硬件VPN配置。整个系统可以被配置 成能支持公共密钥基础结构也能提供验证和授权;以便保护数据完整 性和数据保密性;和满足非拒绝要求。

在图9中示出了依照RDC客户端注册请求而举例说明RDC与消息 中心之间的交互的流程图。所述RDC将会话分组发送到消息中心,以 启动客户端注册过程。在一个实施例中,所述会话分组包括用以规定 消息中心上的客户端的各种参数,包括:客户端描述符串、客户端类 型、名、中间名、姓、地址1、地址2、城市、状态、邮政编码、用户 标识(USERID)、受保护密码(PASSWORD)、以及电子邮件(EMAIL) 值。一旦成功,就将客户端标识符(CID)返回到RDC。

在图10中示出了对应于RDC打印机注册请求的流程图。正如在先 前过程中那样,所述RDC发送分组。所述分组包括标识消息中心上的 客户端的数据,并且提供了请求将要注册的资源的状态(例如,输出 设备)。一旦成功,将打印机资源标识符(PID)返回到RDC。

所述远程桌面客户端需要向MC注册以访问其它的公用资源,并且 使其资源有效。在图11中示出了对应于向消息中心提交设备资源定义 的RDC的流程图。所述RDC将设备资源定义分组发送到消息中心,以 便在消息中心内规定设备资源。一般而言,这个信息包括设备名、设 备类型、设备描述符和设备状态。

当客户端想要访问远程公用设备时,它需要首先通过公用设备查询 来确定该设备的位置。正如图12的流程图中举例说明的那样,这个操 作要求家庭消息中心查询根消息中心,以查找可用公用设备的列表。 所述消息中心继而判断在所述区域内是否支持这类公用设备。这意味 着家庭消息中心需要定位这类公用设备所支持的已注册的打印服务。 响应于查询,向请求者返回可用公用设备的列表。如果找到了所述公 用设备的已注册的打印服务支持,那么不支持的公用设备就将不会被 归入列表当中。

图13和图14分别举例说明了对应于按引用打印(PBR)作业请求 的处理流程图和组件交互图,所述作业请求是由他或她家庭域中的用 户向直接连接于家庭域(例如,图6中的U1->D2或U1->D3)中的打 印服务的输出设备发出的。根据PBR作业请求,用户能够让在目标目 的地打印机上打印的文档72(即,远程源)存储在远程存储74上,其 中远程存储的文档和目的地打印机都可以经由用户界面76来选定。

在图15中示出了对应于非PBR作业请求的处理流程图。在这种情 况下,除了将源数据从用户设备上载到消息中心而不是检索远程源之 外,所有的操作都与PBR作业请求相类似。

图16和图17分别举例说明了对应于PBR作业请求的处理流程图 和组件交互图,所述作业请求是由用户在他的家庭域(例如,图6中 的U1->D4)中向连接于家庭域中的远程桌面客户端的本地打印机提交 的。在这种情况下,在由打印服务再现了输出图像之后,将它作为输 出图像文件80而存储在输出资源库78中。然后,将打印请求发送给 适用的RDC(例如,RDC2),这继而从资源库中检索输出图像文件并 将同一输出图像文件提交于输出设备(例如,D4)以便被物理地再现。 刚一结束,就通过消息中心向用户送回结束通知,并将此通知显示在 用户界面76上。

图18和图19分别举例说明了对应于PBR作业请求的处理流程图 组件交互图,所述作业请求是由用户在他的家庭域(例如,区域1) 中提交的,以便打印在根消息中心公用输出设备(D1)上进行打印。 所述过程从利用UI启动用户界面76来执行公用设备查询开始。实质 上,所述查询是为了返回可用公用设备的列表。作为选择,所述用户 可以选择已知的公用设备,并且所述查询执行设备对公共访问而言是 否可用的确认任务。用户向他她的家庭消息中心(MC1)提交查询请求, 而MC又将所述查询请求转发到根MC。接着,根MC检查其数据库,从 而(根据随查询一并发送来的用户验证信息以及用户先前配置的收藏 打印机列表)为用户确定所有可用的打印机。连同输出设备通向家庭 消息中心的路径一起,标识本地打印服务。然后,向用户送回公用设 备信息,并且该用户能够选择公用输出设备并向家庭MC提交打印作业 请求。

刚一接收到打印作业请求,所述家庭MC就检索将要打印的文档(在 这种情况下,由于该文档是本地源,因而将它从始发端设备发送给 MC),并且随同再现请求一起将该文档发送给指定的打印服务(PS1)。 继而,所述打印服务再现该文档的输出图像并将它保存在输出资源库 78中。然后,一旦家庭MC从输出资源库那里检索已再现的数据(例如, 输出图像文件80)并随同输出图像数据一起将打印请求发送给指定的 远程桌面客户端(RDC1),就将已结束再现的通知从PS处送回家庭MC。 然后,一旦硬拷贝输出得以再现并将打印结束通知返回给RDC,所述 RDC就将输出图像数据发送到目标输出设备(D1)。然后,经由根MC 和家庭MC,将打印结束通知转发回用户。

消息中心访问机制

一般而言,存在三种用于访问家庭消息中心的机制。这些机制包 括:有线网络连接、无线网络连接和无线web蜂窝式连接。(正如在 这里所使用的那样,蜂窝式连接包括经由基于单元的基础结构而实现 的任何无线连接,所述基于单元的基础结构包括蜂窝式网络和PSC网 络。)例如,启用无线网络的用户能够经由包含多个蜂窝式塔106以 及蜂窝式服务提供商网络运营中心108的蜂窝式网络来访问消息中心 MCn,所述启用无线网络的设备包括:便携式电话100、PDA 102、以 及双向传呼机104(例如,Blackberry设备)。

在美国,典型地使用无线应用协议(WAP)来提供无线因特网(即, 无线网络)访问,所述无线应用协议与WAP启用的设备协同工作。在 亚洲,无线因特网访问则通常是使用i-mode协议来提供的。为了使用 i-mode协议访问数据,所述无线设备必须是i-mode设备或者必须能 提供i-mode和WAP两者的连接性。在世界各个不同地方也可以使用其 它较少使用的协议。在图20所举例说明的实施例中,进一步经由WAP 网关服务器112所驻留的WAP网关110来实现这种无线网络连接。作 为选择,还可以依据无线服务提供商所提供的设施而使用其它类型的 无线网络网关,比如像i-mode网关。

WAP启用的设备能够从各种不同因特网站点访问数据,所述这些因 特网站点提供了设计用来由这类设备使用的内容。通常,将这一数据 作为无线标记语言(WML)数据传送到所述设备,正如下面将一步详述 的那样。WML包括这样一种专门的标记语言,该语言被设计用来促进因 虑及低分辩率显示而受限的浏览能力,还用来促进现今的手提式设备 上可用的有限导航能力,所述手提式设备比如是无线电话、PDA和袖珍 PC。WML包括HDML(手提式设备标记语言),而且可以将其根源上溯 到XML(可扩展标记语言)。它进一步包括支持用户定义扩展的元语言。

WAP启用的设备被提供对各种web站点的访问,所述web站点经由 WAP网关(比如WAP网关110)来提供无线因特网内容,这是通过使用 一个或多个WAP网关服务器112实现的。通常,各个WAP网关都是由 支持无线因特网访问的区域中的各个服务提供商操作的,不过服务提 供商也可以共享WAP网关设施。简而言之,WAP网关服务器运行那些提 供用于辅助与WAP启用的设备相交互的功能的各种软件模块和/或应用 程序,与WAP启用的设备进行的交互包括将HTML(超级文本标记语言) 数据转换成WML,所述HTML数据是经由HTTP(超级文本传输协议)从 无线web站点(并未直接以WML来编码其无线网络内容)检索的。这 些功能包括WAP编码器、脚本编译器以及将HTML数据转换成WML的协 议适配器。

为了创建无线因特网内容,Web站点通常必须在其站点的所有页面 上或一部分页面上创建专门的纯文本或低分辨率图形版本。目前,虽 然预计这些因特网Web站点会随着越来越多人获得WAP启用的设备而 按指数速率增长,但是只有一小部分的站点提供无线因特网内容。对 于这种纯文本或低分辨率图形内容的主要原因是:WAP启用的设备通常 提供很小的、低分辩率屏幕,而且典型的无线数据传输速率要比经由 基于陆地的网络可获得的数据传送率低得多。人们注意到,虽然一些 目前的无线因特网内容包括必须在WAP网关转换成WML的HTML,但是 仍然存在许多提供以WML直接对WAP网关编码的数据的Web站点。

参照图20,典型的WAP会话工作如下。操作诸如PDA 102之类的 WAP启用的设备的用户打开“迷你浏览器(会话的WAP客户端)”,该 “迷你浏览器”继而经由PDA 102的无线调制解调器发送搜索WAP服务 的无线电信号114。作为响应,经由附近的蜂窝式塔106,服务提供商 同与之进行无线因特网访问预订服务的用户生成连接。然后,用户经 迷你浏览器(正如迷你浏览器UI 107描绘的)所提供的UI、通过输 入Web站点的URL来选择他想要察看的Web站点。接着,将访问站点 的请求从PDA 102发送到WAP网关110。在这种情况下,WAP网关服务 器112经由HTTP从Web站点那里检索对应于该URL的信息以作为HTML 数据,并将所述HTML数据编码成WML(无线标记语言)。正如上面所 论述的那样,对于一些因特网站点来说,所述数据可能已经是WML格 式的了,所以不需要进行从HTML到WML的编码。

依照本发明的一个实施例,正如在下面将进一步详述的那样,每个 消息中心MCn将经由Web服务器113来驻留一个或多个相应的URL。 经由诸如因特网60或专用网络之类的通信网,将由Web服务器113驻 留的URL数据从消息中心传递到WAP网关,所述URL数据比如是按HTML 数据114和WML数据116所描述的数据。然后,经由蜂窝式塔106, 将所述WML数据从WAP网关服务器112送回到PDA 102。按照类似于 常规浏览的方式,用户能够通过激活经迷你浏览器向用户显现出的适 当UI组件来浏览站点上的各种不同页面,借此响应于用户交互来执行 同上所述的相似过程,从而显现出对应于用户选定的内容。

除了无线网络访问之外,可以经由直接的陆上接线连接来访问消息 中心,或者经由包含陆上接线网络和无线网络(例如,802.11b)在内 的通信链路来访问消息中心,或者经由那些经蓝牙无线链路而链接于 用户设备的陆上接线网络来进行访问。例如,个人计算机(PC)118 和膝上计算机120的用户可以经由直接连接于消息中心的网络连接(例 如,LAN连接)来访问消息中心MCn,或者经由诸如因特网之类的WAN 连接来进行访问。这些网络连接中的每一种均由计算机网络122来描 绘。在一个实施例中,用户能够经由基于浏览器的用户界面124来访 问系统所提供的服务,正如在下面通过一组Web页面126所进一步详 细描绘的那样。

一般来讲,对于进一步包含802.11(亦称WiFi)连接的链路而言, 用户界面是相似的。例如,在典型的802.11实施方案中,WiFi启用 的用户设备,比如像图20中的PDA 128,是经由WDAP 130而连接于 有线网络的(例如,网络122)。WDAP控制来自于WiFi启用的设备的 全部通信,同时让所述设备看来就像是具有正常客户端连接的网络。 由此,从操作的角度来看,有线客户端与WiFi客户端对于消息中心而 言看起来是一样的。

所述系统还使连接蓝牙的客户端能够打印到选定的输出设备上,只 是使用了不同的机制而已。在这种机制下,实现蓝牙仿真器来让诸如 便携式电话132之类的蓝牙启用的始发端设备认为它正在直接与蓝牙 设备进行通信,而不必改为始发端设备的内置蓝牙用户界面133。例 如,假定用户希望打印到非蓝牙启用的打印/传真设备上。在这种情况 下,实现提供前端代理的蓝牙打印机/传真机仿真器,以便与附近的无 线数据访问点进行通信。在一个实施例中,可以将蓝牙设备仿真器集 成到WDAP中,正如由WDAP+蓝牙设备仿真器134所描绘的那样。作为 选择,所述蓝牙设备仿真器也可以是通信链接于网络122的独立设备。 一般而言,所述蓝牙设备仿真器利用来自于消息中心的相应的输出设 备信息,来生成所需的蓝牙设备信息(例如,打印或传真简档);利 用从消息中心检索的资源信息来建立所述简档。由此,在一个实施例 中,所述仿真器还具有用以(经由集成的或附近的WDAP)与消息中心 相接口的后端通信信道。当蓝牙启用的设备在不同访问点连接于系统 时,相应的仿真器将把对应所述访问点的特定简档信息作为响应。

通过类似的蓝牙设备仿真,比如像蓝牙基本打印或传真简档互操作 性(Interoperability)说明书定义的蓝牙设备仿真,所述系统使非 蓝牙设备能够就仿佛它们是蓝牙启用的设备一样进行操作,借此为公 司提供了简单而有效节约成本的方法,以便在无线计算环境中管理他 们的非无线技术启用的设备。这些操作对于用户和指定设备双方而言 都是透明的。此外,企业根本不需要修改、更换、乃至升级传统设备, 这是因为这些资源目前都是由消息中心来管理的。

输出管理系统的按引用打印的能力还可以被扩展至蓝牙启用的始 发端设备上。举例来说,在一个实施例中,通过蓝牙设备把用来再现 下述WAP接口的WML内容提供给蓝牙启用的设备,所述设备包括为WAP 而设计WAP浏览器107A。可以预见的是,在不远的将来,这类设备将 变得常见。在这种配置下,实质上,通过经由WDAP+蓝牙设备仿真器 向蓝牙启用的设备供应相同的WML内容,蓝牙启用的设备用户能够按 照同无线网络用户一样的方法来与系统进行交互。

默认设备发现(WiFi)

所述系统引入了静态设置默认值和动态设置默认值的概念,以便更 好地适应移动计算协议。例如,消息中心在用户简档中实现默认设备 设置选项。以打印机为例,对于每个用户而言存在两类默认打印机: 静态的默认打印机和动态的默认打印机。当用户经有线连接(例如, PC 118)来访问系统时选择前者,而当用户经无线连接(例如,蓝牙、 802.11等)访问系统时选择后者。当使用位于用户客户端地点上的移 动式发射站时,用户很少有机会向他或她的办公室打印机发送输出。 利用访问方法来自动转换默认设置要更加实际而便利。然而,为了灵 活性考虑,用户具有用以经简档配置来使动态默认打印机重写特征无 效的选项。

图21示出了详述当用户经WDAP提交作业时用以确定动态默认打 印机的操作的图。首先,无线设备128的用户经无线连接让系统进入 无线数据访问点WDAP2。在举例说明的示例中,假定用户提交PBR作 业请求。作为响应,WDAP2将PBR作业请求中继至消息中心。所述消 息中心从文件存储136那里对应于PBR作业请求的检索源数据。所述 消息中心发现来自于WDAP2的请求,检查其设备数据库、并找出与 WDAP2相关联的动态默认打印机,所述WDAP2是与打印服务PS1相关 联的输出设备D1。由此,它将再现请求发送给PS1。所述PS1再现作 业请求,然后将输出图像数据发送到输出设备D1。输出设备D1结束作 业输出并通知PS1任务结束。PS1又依次通知消息中心。所述消息中心 将响应发送到WDAP2,以通知用户作业请求已经成功结束。接着,WDAP2 将该响应中继到用户设备。

默认设备发现(蓝牙)

在图22A和22B中所描绘的下列情况中,正如用WDAP+蓝牙设备 仿真器设备138和140所分别描绘的那样,除了WDAP1加WDAP2目前 包含蓝牙设备仿真器之外,网络配置实质上是相同的。在上述两种情 况下,该过程都是从蓝牙启用的始发端设备132的用户寻求与另一个 蓝牙启用的设备的初始化通信开始的。在该示例中,始发端设备的蓝 牙信号是由WDAP2+蓝牙设备仿真器设备140接收的,它将与蓝牙启用 的始发端设备建立通信链接。

此时,存在两种可以用来使系统能与蓝牙启用的设备用户进行交互 的一般类型的接口:基本蓝牙UI(例如,蓝牙UI 133)和高级蓝牙UI (例如,蓝牙迷你浏览器UI 107A上的WAP)。在基本蓝牙UI的情况 下,仿真器是作为模拟的蓝牙启用的输出设备或多个此类输出设备来 进行操作的。在高级蓝牙UI的情况下,仿真器充当使WAP内容能经由 蓝牙上的WAP而被提供给蓝牙启用的设备的管道。

假定提供了基本蓝牙UI。在图22A中描述了这种情况。在这种情 况下,在建立蓝牙链接之后,用户将搜索蓝牙启用的输出设备(或者 用户将利用输出设备搜索来初始化蓝牙链接)。作为响应,仿真器将 连接于根消息中心(直接地或者间接地),并且检索与输出设备有关 的信息,所述输出设备是便于交互的最接近于WDAP的输出设备。由于 这类信息被存储在消息中心数据库中的,因而MC能够将蓝牙仿真参数 141返回给对应于各种输出设备的仿真器,所述各种输出设备是可经由 WDAP使用的。在任意的实施例,所述仿真器可以请求得到验证的用户 (或者相反,通过唯一的设备标识符来标识用户),并且提供指定给 用户的输出设备的列表。接着,所述仿真器将模拟可用的输出设备, 以便蓝牙启用的始发端设备,“认为”它实际上正在直接与一个或多 个相应的蓝牙启用的输出设备进行通信。例如,如果可用的输出设备 包括两类激光打印机和一个文本打印机,那么所述仿真器就将为所有 这三个打印机提供蓝牙设备仿真。如果只有单个设备可用的话,那么 这个设备就变为默认输出设备。所述用户于是将经由蓝牙UI来选择输 出设备,并且将源数据上载到仿真器,就好似它将源数据直接上载到 蓝牙启用的输出设备一样。接着,所述仿真器将源数据转发到消息中 心,该消息中心将调用适当的打印服务来生成输出图像数据,然后, 又将所述输出图像数据提交到用于再现的选定输出设备。

依照图22B中所描绘的示例,通过消息中心驻留的蓝牙服务上的 WAP来为用户提供对系统的访问。起初,蓝牙启用的始发端设备与仿真 器之间的蓝牙连接是以上述方式来建立的。接着,仿真器联系消息中 心以开始供应WML内容,从而经由蓝牙迷你浏览器107A上的WAP来再 现用户界面,所述蓝牙迷你浏览器使用户能从文件存储136中选择源 数据和选择输出设备(D1)。所有其余的操作实质上都是按照与对应 图21的PBR示例的上述方法一样的方法来进行的。

在一个实施例中,所述系统包括采用蓝牙网关142的任意配置。 该网关帮助消息中心与蓝牙设备仿真器进行通信。该蓝牙网关还记录 下这些设备与无线数据访问点之间的映射,并且使所述映射与消息中 心同步化。这种映射是利用来自于设备仿真器的输入来计算的,或是 通过发现(sniffing off)网络来进行计算。

系统连接拓扑

在图23中示出了举例说明在输出管理系统的典型实现期间所遇到 的各种连接路径和连接类型的一般系统连接拓扑图150。对于组件通信 而言,第一规则是PS和RDC总是启动到消息中心的连接。依照对应于 对等消息中心通信的第二规则,总是从更安全的网络到较少安全的网 络启动连接(例如,从专用网络到DMZ、从区域1DMZ到区域0DMZ 等等)。当上述两个规则都可用时,第一规则占优先地位。

在图150中,在图中央配置的区域0包括根消息中心MC0,该消息 中心MC0包括用于全部MC公布及共享其公用资源的集中式资源库(例 如,输出设备)。因此,优选地,区域0中的组件将位于DMZ以便在 适当的安全保护下接收输入连接请求。在区域0对面上配置的区域1 和区域2包括两个独立的网络,每一个网络都具有充分安全的子网 (即,专用网络部分)和DMZ部分。区域1和区域2的DMZ中的MC (MC12和MC22)管理公用资源和可共享资源,且因此被称为“公用” MC。位于内部公司防火墙152和154后面的专用子网中的MC(分别为 MC21和MC11)管理专用资源,并且因此被称为“专用”MC。

下面是组件部署定位图表,它表明依照本发明的一个实施例,这些 组件可以在何处被驻留。“公用网络”是指不带有防火墙保护的网络, 也就是直接连接于因特网的网络。它通常接收进入的全部连接请求。 “DMZ”是指不带有受限保护的专用网络。如果进入的连接请求直到一 些众所周知的端口处才被修补的话,那么它通常接收那些请求。“专 用网络”是指带有强壮防火墙保护的网络。它通常阻塞多数的输入连 接请求,但不一定都阻塞。位于专用网络中暗示了输入连接请求被阻 塞;因此,通过利用代理(例如,DMZ MC或根MC)来为作业请求架桥, 使得资源共享变得更为方便。优选地,为了明显的安全性起见,不应 该把MC和PS部署在公用网络中。不能将根消息中心(例如,MC0)部 署在专用网络中,这是由于它需要至少提供受限的公用访问通路来使 公用MC能够进行注册。RDC可以位于公用网络中以实现资源共享的更 广范围;然而并不推荐。 公用网络 DMZ 专用网络 MC0 不推荐 √ 不允许 MC1 不推荐 √ √ PS 不推荐 √ √ RDC 不推荐 √ √

                表1:组件部署位置图

下面是组件部署位置分类图表,它解释了图150中的组件部署位 置。 公用网络 DMZ 专用网络 MC 不推荐 MC0,MC12,MC22 MC11,MC21 PS 不推荐 PS0,PS12,PS22 PS11,PS21 RDC RDC01,RDC02, DC14,RDC24 RDC13,RDC23 RDC11,RDC12, RDC21,RDC22 D D01,D02,D14,D24 D13,D23 D11,D12,D21,D22

                     表2:组件部署位置分类图

以下在表3-6中示出了描述组件怎样彼此相互通信的一组MC网络 连接图,它包括连接类型、连接启动者和数据传输类型。由于性能的 原因,优选地,持久性连接只应当用于控制信号交换(例如,资源查 询、资源注册),然而暂时性连接可以用于控制信号交换,也可以用 于非控制信号交换,也就是说,源文件数据传输和再现输出图像数据 传输。当允许持久性连接时,暗指支持暂时性连接。数据传输类型可 以“经缓冲器”或者“按引用”。当允许“按引用”传输时,暗指支 持“经缓冲器”传输。如果文件存储的发送方对于接收方而言是不可 见的话,那么按引用传输可能就并非是切实可行的选择。在这种情况 下,适当的MC将通过信道把数据传送到目的地资源。

下列表对应于MC0区域内网络连接图。这个表描述了根MC怎样与 同一个区域内的其它组件相通信。由于这是处于区域0中的,因而不 允许“专用”MC和PS。 连接类型 启动者 数据传输 MC0-MCn(DMZ) 持久 MC(DMZ) 缓冲器,引用 MC0-MCn(专用) N/A MC0-PSn(DMZ) 持久 PS 缓冲器,引用 MC0-PSn(专用) N/A MC0-RDCn(公用)* 持久 RDC(公用) 仅仅缓冲器* MC0-RDCn(DMZ) 持久 RDC(DMZ) 缓冲器,引用 MC0-RDCn(专用) N/A

       *不允许从公用RDC那里察看DMZ文件存储。

                表3:MC0区域内网络连接图

下面是MC0区域间网络连接图,除了它是用于区域间通信之外, 它类似于上述表3。这个表描述了根MC怎样与不同区域中的其它组件 相通信。 连接类型 启动者 数据传输 MC0-MCn(DMZ)* 持久 MC(DMZ) 仅仅缓冲器 MC0-MCn(专用)** 暂时 MC(专用) 仅仅缓冲器 MC0-PSn(DMZ) 不允许 MC0-PSn(专用) 不允许 MC0-RDCn(公用)*** 持久 RDC(公用) 仅仅缓冲器 MC0-RDCn(DMZ) 暂时 RDC(DMZ) 仅仅缓冲器 MC0-RDCn(专用) 暂时 RDC(专用) 仅仅缓冲器

*DMZ MC需要保持到MC的持久性连接,以便实现资源共享和支持 公用设备查询。

**专用MC可以为设备查询而建立到MC0的暂时接续,或者将数 据传输桥接到公用RDC。

***不允许从公用RDC那里察看DMZ文件存储。

               表4:MC0区域内网络连接图

下面是非区域0的MC区域内网络连接图。这个表描述了非区域0 的消息中心怎样与同一个区域内的其它组件相通信。 连接类 型 启动者 数据传输 MCx(DMZ)-MCy(DMZ)* 不允许 MCx(DMZ)-MCy(专用)** 持久 MC(专用) 仅仅缓冲器 MC(DMZ)-PS(DMZ) 持久 PS(DMZ) 缓冲器,引用 MC(DMZ)-PS(专用) 暂时 PS(专用) 仅仅缓冲器 MC(DMZ)-RDC(公用) 持久 RDC(公用) 仅仅缓冲器 MC(DMZ)-RDC(DMZ) 持久 RDC(DMZ) 缓冲器,引用 MC(DMZ)-RDC(专用) 持久 RDC(专用) 缓冲器,引用 MCx(专用)-MCy (DMZ)*** 持久 MC(专用) 仅仅缓冲器 MCx(专用)-Mcy(专用)* 不允许 MC(专用)-PS(DMZ) 不允许 MC(专用)-PS(专用) 持久 PS(专用) 缓冲器,引用 MC(专用)-RDC(公用) 不允许 MC(专用)-RDC(DMZ) 不允许 MC(专用)-RDC(专用) 持久 RDC(DMZ) 缓冲器,引用

*不公共的和不必要的配置。

**MCx帮助MCy将输出通过信道传送到未向MCy注册的RDC。

***MCy帮助MCx将输出通过信道传送到未向MCx注册的RDC。

            表5:非MC0的区域内网络连接图

下面是非区域0的MC区域内网络连接图,除了它用于区域内通信 之外,它类似于上述表。这个表描述了非区域0的MC怎样与不同区域 内的其它组件相通信。 连接类 型 启动者 数据传输 MCx(DMZ)-MCy(DMZ)* 暂时 无论谁启动设 备查询 N/A MCx(DMZ)-MCy(专用)** 暂时 MCy(专用) N/A MC(DMZ)-PS(DMZ) 不允许 MC(DMZ)-PS(专用) 不允许 MC(DMZ)-RDC(公用) 暂时 RDC(公用) 仅仅缓冲器 MC(DMZ)-RDC(DMZ) 暂时 RDC(DMZ) 仅仅缓冲器 MC(DMZ)-RDC(专用) 暂时 RDC(专用) 仅仅缓冲器 MCx(专用)-MCy(DMZ)*** 暂时 MCx(专用) N/A MCx(专用)-MCy(专用) 不允许 MC(专用)-PS(DMZ) 不允许 MC(专用)-PS(专用) 不允许 MC(专用)-RDC(公用) 不允许 MC(专用)-RDC(DMZ) 不允许 MC(专用)-RDC(专用) 不允许

*仅仅用于设备查询。

**为了设备查询以及为了使Mcy将输出通过信道传送到与MCx相 关联的公用RDC。

***为了设备查询以及为了使MCx将输出通过信道传送到与MCy 相关联的公用RDC。

             表6:非MC0的区域内网络连接图

一般而言,系统中的这些组件将利用网络消息协议而彼此相互通 信。例如,存在设计用来在远程桌面客户端与消息中心服务器之间进 行通信的RDC网络消息协议。在一个实施例中,RDC与MC服务器之间 的连接是由从RDC到MC服务器上的端口5190的套接字连接发启的。 对于会话的生命周期而言,这些套接字连接是持久的。会话被定义为 客户端与服务器之间的相连会话。大多数会话在客户机与服务器之间 基本上是静止的,除非存在为与客户端相关联的远程打印机指定的打 印作业。在会话发启期间,客户端向客户端提供许多会话参数,以求 建立相连会话。

数据传输类型支持

本节简要地描述了怎样处理作业请求数据并将其传送给每一个组 件。可以把基本的作业请求处理流程总结成以下操作:1)将输入文件 数据上载到消息中心;2)MC根据标识的目的地输出设备来确定用于输 出图像再现的适当打印服务;3)MC将输入数据交付给PS或让PS按引 用来访问所述文件;4)PS再现输出图像;5)PS将输出图像传送到MC 或者将输出图像存放到公共资源库中;6)MC将输出数据发送到RDC 或者通过对公共资源库的引用来让RDC访问所述文件。依据实际的作 业请求起源及目的地,可能需要分级MC来桥接数据传输。转接类型被 分为“按引用”和“经缓冲器”。一般而言,按引用传输仿佛要比经 缓冲器传输更有效(由于减少了假脱机文件);然而,当由于安全性 限制(例如,防火墙)而使居于网络的不同部分上的不同组件无法察 看彼此的引用时,这可能是可行的。在这种情况下,经缓冲器传输是 数据传输的唯一选择。下列表定义了数据传输类型。 引用传输名 缓冲器传输名 用户文件输入(上 载) 按引用上载(UBR) 经缓冲器上载(UBB) MC-PS(交付) 按引用交付(DBR) 经缓冲器交付(DBB) PS-MC(传输) 按引用传输(TBR) 经缓冲器传输(TBB) MC-RDC(打印) 按引用打印(PBR) 按引用打印(PBR) MC-MC(混合 (shuffle))* 按引用混合(SBR) 经缓冲器混合(SBB)

*仅仅适用于区域内

                表7:组件数据传输类型定义

区域内的MC(DMZ)-RDC(公用)。这类通信的目的是将打印请求 从DMZ MC发送到如下设备,所述设备附于向相同区域内同一个DMZ中 的同一个MC注册的公用网络中的RDC上。例如,从MC12->RDC14传 输。

参照图24的流程图,该处理从块160开始,在其中用户连接到用 户的家庭消息中心并且执行登录操作,在块162中,用户经由对应于 始发端设备的用户界面提交打印请求,其中用户利用所述始发端设备 而连接于系统。如果打印请求对应于按引用打印(PBR),则MC就从 远程存储那里上载源数据(例如,其中包含源数据的“输入”文件), 所述远程存储是经由UI指定的,并且在块164中通过PBR请求来标 识。如果打印请求对应于非PBR请求(即,将要打印的源数据,居于 始发端设备上),则在块166中,MC就经缓冲器从所述设备上载源数 据。

接下来,在块168中,所述MC定位适当的打印服务并给它发送一 个作业再现请求。一般而言,适当的打印服务将对应于与目的地输出 设备相同的区域内的PS,并且为目的地输出设备和源数据(例如,具 有输出设备的驱动器支持,并且具有它能运行以生成对应于所述源数 据的图像输出数据的应用程序)的特性提供打印服务支持。如果该请 求是PBR,则在块170中,MC就向打印服务交付标识输入文件的网络 存储位置的引用。如果该请求不是PBR,则在块172中,MC就经缓冲 器来向PS交付输入文件。在块174中,刚一检索或接收输入文件,所 述打印服务就生成输出图像数据(输出图像文件)。

如果将要使用资源库的话,则在块176中,所述PS就把输出图像 文件存放到资源库中,并且在块178中,所述PS按引用将输出图像传 输到MC。在这种情况下,输出图像数据被存储于资源库中的文件中, 并且按引用传输意指:PS向MC提供路径、输出图像文件的网络位置、 文件名。如果不使用资源库,则在块180中,PS就经缓冲器将输出图 像传输到MC。

此时,在块182中,所述MC定位适当的远程桌面客户端来接收输 出图像。这将总体上完成根据目的地输出设备的数据库查找,从而识 别任何可能用来向目的地输出设备提交输出图像的RDC。接着,在块 184中,所述MC将输出图像发送给按引用识别出的RDC。刚一接收到 该引用,在块186中,RDC就检索输出图像并将其提交到输出设备,以 便由输出设备再现。一旦得到作业已经打印成功的信息,所述MC继而 就向用户发送回通知以告知用户打印作业已经打印成功。在块188中, 按简化符号,上述处理可以被描述为:(UBR,UBB)->(DBR,DBB)-> (TBR,TBB)->PBB。

区域内的MC(DMZ)-RDC(DMZ)。这类通信的目的是:将打印 请求从位于DMZ中的消息中心发送到如下设备上,所述设备附于向与 MC为相同区域内的同一个MC(例如,MC12->RDC13)注册的同一个DMZ 中的RDC上。相对应的简化符号为:(UBR,UBB)->(DBR,DBB)-> (TBR,TBB)->(PBR,PBB)。

区域内的MC(DMZ)-RDC(专用)。这类通信的目的是:将打印 请求从DMZ MC发送到如下设备,所述设备附于向同一个区域内的同一 个MC注册的专用网络中的RDC上(例如,MC12->RDC12)。相对应的 简化符号为:(UBR,UBB)->(DBR,DBB)->(TBR,TBB)->(PBR,PBB)。

区域内的MC(专用)-RDC(公用)。这类通信的目的是:将打印 请求从专用MC发送到如下设备,所述设备附于向相同区域内DMZ中的 另一个MC注册的公用网络中的RDC上(例如,MC11->RDC14)。相对 应的简化符号为:(UBR,UBB)->(DBR,DBB)->(TBR,TBB)->SBB->PBB。

区域内的MC(专用)-RDC(DMZ)。这类通信的目的是:将打印 请求从专用MC发送到如下设备,所述设备附于向相同区域内同一个 DMZ中的另一个MC注册的DMZ中的RDC上(例如,MC11->RDC13)。 相对应的简化符号为:(UBR,UBB)->(DBR,DBB)->(TBR,TBB)- >SBB->(PBR,PBB)。

区域内的MC(专用)-RDC(专用)。这类通信的目的是:将打印 请求从专用MC发送到如下设备,所述设备附于向相同区域内同一个MC 注册的专用网络中的RDC上(例如,MC11->RDC11)。相对应的简化 符号为:(UBR,UBB)->(DBR,DBB)->(TBR,TBB)->(PBR,PBB)。

区域间的MC(DMZ)-RDC(公用)。这类通信的目的是:将打印 请求从DMZ MC发送到如下设备,所述设备附于向来自于不同区域的外 来DMZ中的另一个MC注册的公用网络中的RDC上(例如,MC12- >RDC24)。相对应的简化符号为:(UBR,UBB)->(DBR,DBB)->(TBR, TBB)->PBB。

区域间的MC(DMZ)-RDC(DMZ)。这类通信的目的是:将打印 请求发送到如下设备,所述设备附于向来自于不同区域的相同外来DMZ 中的另一个MC注册的不同DMZ中的RDC上(例如,MC12->RDC23)。 相对应的简化符号为:(UBR,UBB)->(DBR,DBB)->(TBR,TBB)->PBB。

区域间的MC(DMZ)-RDC(专用)。这类通信的目的是:将打印 请求从DMZ MC发送到如下设备,所述设备附于向来自于不同区域的不 同DMZ中的另一个MC注册的专用网络中的RDC上(例如,MC12- >RDC22)。相对应的简化符号为:(UBR,UBB)->(DBR,DBB)->(TBR, TBB)->PBB。

区域间的MC(专用)-RDC(公用)。这类通信的目的是:将打印 请求从专用MC发送到如下设备,所述设备附于向来自于不同区域的不 同DMZ中的另一个MC注册的公用网络中的RDC上(例如,MC11- >RDC24)。相对应的简化符号为:(UBR,UBB)->(DBR,DBB)- >(TBR,TBB)->SBB->PBB。

区域间的MC(专用)-RDC(DMZ)。这类通信的目的是:将打印 请求从专用MC发送到如下设备,所述设备附于向来自于不同区域的相 同外来DMZ中的另一个MC注册的DMZ中的RDC上(例如,MC11- >RDC23)。相对应的简化符号为:(UBR,UBB)->(DBR,DBB)- >(TBR,TBB)->SBB->PBB。

区域间的MC(专用)-RDC(专用)。这类通信的目的是:将打印 请求从专用MC发送到如下设备,所述设备附于向来自于不同区域的不 同外来DMZ中的另一个MC注册的不同专用网络中的RDC上(例如, MC11->RDC22)。相对应的简化符号为:(UBR,UBB)->(DBR,DBB)->(TBR, TBB)->SBB->PBB。

系统硬件多层体系结构

在一个实施例中,该系统可以利用四层体系结构设计加以实现,如 图25中的多层体系结构200所示。该体系结构的第一层包括Web服务 器群(farm)(WSF)202;第二层包括消息中心群(MCF)204;第三 层包括打印服务服务器群(PSSF)206;而第四层包括数据库服务器群 (DBSF)。下面是对每一层的描述。

第1层:Web服务器群(WSF)。这一层包括负载平衡器(LB)208 和Web服务器群202。所述负载平衡器获取新来的请求并且将它们发布 给Web服务器群中的其中一个Web服务器。所述Web服务器共用同一 个URL;因此,用户只须记住访问该系统的一个URL即可。请求的发布 取决于负载平衡器208的配置结构。负载平衡器维护Web服务器位置 并请求分派。已分配的Web服务器在本地执行脚本,并更新存储在NFS (网络文件系统)上的数据库210,或者通过将公共数据库访问接口调 用至相应的数据库服务器群来更新SAN(存储区网络)设备212。此外, 负载平衡器可以向管理员发送警告信息,以表明Web服务器群中的任 何错误。

第2层:消息中心群(MCF)。所述消息中心群包括消息中心软件 组件的两个正在运行的副本。一个包括在处理模式下运行的初级 MC214,而另一个是在备用模式下运行的次级MC216。所述初级MC总 是首先响应新来的请求。如果初级MC没有作出响应,则次级MC就将 使其自身切换到处理模式下以处理所述请求。接着,它向系统管理员 发送警告信息以表明错误。这种失效保护(fail-over)切换是在无人 干涉的情况下自动进行的。当解决了上述问题并且初级MC恢复在线状 态时,次级MC就使其自身切换回到备用模式,然后通知初级MC接管。

所述系统实现了初级MC与次级MC之间的“心跳(heartbeat)检 查”,以便支持自动失效保护切换。为了实现这个,每一个MC都具有 两个以太网接口和一个串行端口。全部的四个以太网接口都在同一个 子网中相连,并且所述串行端口也是彼此相连的。一旦安装,就在其 以太网接口的其中一个(浮动接口)上为MC分配同一个浮动的 (floating)IP地址,而在其它的接口(静态接口)上为其分配静态 IP地址。所述初级MC在系统启动时激活(bring up)这两个以太网 接口。然而次级MC仅仅激活静态接口以避免冲突。所述次级MC通过 经其静态接口发出测试分组来检查初级MC的有效性。如果初级MC的 浮动接口是不可获得的,作为确保,所述次级MC利用本地相连的串行 端口来进行再次检查,以便更透彻地明晰上述问题。然后,所述次级 MC激活其浮动接口以向新来的请求提供服务,并且向系统管理员发出 警告信息。与此同时,它继续心跳检查以察觉初级MC的恢复。当初级 MC恢复在线状态时,所述次级MC将其浮动接口切换掉,并发送请求以 要求初级MC激活其浮动接口。为了确保次级MC总是处于备用状态, 所述初级MC除了仅仅当次级MC存在问题时向管理员发送警告信息之 外,还对次级MC做相同的检查。只要系统启动并运行着,所述心跳检 查就会继续。可以配置心跳的时间间隔,以便调整系统可靠性及性能。

第3层:打印服务服务器群(PSSF)。这一层包括负载平衡器218 和打印服务服务器群206。所述负载平衡器从消息中心群204那里获取 新来的请求,并将它们发布到PSSF206中的其中一个打印服务服务器 上。所述MCF总是使用同一个指定的IP来访问打印服务。请求的发布 取决于负载平衡器218的配置结构。所述负载平衡器维护打印服务服 务器位置及请求分派。已分配的打印服务服务器处理再现请求,当必 要时将输出图像数据存放到共享的NFS或SAN设备中,然后将结果返 回给MCF。所述负载平衡器还向管理员发出警告信息,以表明打印服务 服务器群中的任何错误。

第4层:数据库服务器群(DBSF)。这一层包括两个数据库服务 器群,包括:消息中心数据库服务器群(MCDSF)220和打印服务数据 库服务器群(PSDSF)222。这些服务器群中的每一个均分别连接于NFS 服务器或存储区网络(SAN)服务器224和226,所述存储区网络(SAN) 服务器分别驻留各自的数据库228和230。

所述数据库服务器群按照如上所述为第2层消息中心群实施心跳 检查的类似方式来对彼此实施心跳检查。然而,一些高级的商业数据 库系统可以具有内嵌的服务器失效保护切换。在这种情况下,能够在 无需实施“服务器群心跳检查”的情况下来实现可靠性。

可伸缩性。在第1层和第3层中更多运行实例的创建,能够帮助整 个系统进行伸缩。同样也可以将任意的负载平衡器置于第2层中以充 分地扩展该系统。在这种情况下,由于负载平衡器能够胜任确保每个 组件可访问性的职责,因而心跳检查机制将不是必须的。

安全性。模块体系结构设计和可扩展数据库模式允许复杂的安全实 施方案。第一,为了用户验证,预订数据库包括当用户通过任何支持 设备登录到系统时用来验证的用户简档。如果验证失败,则就将记录 存到系统上以供日后引用或调查,并且拒绝登录请求。另外,该消息 中心能够实现支持高层客户机和服务器验证的公共密钥基础结构。第 二,为了数据加密支持,每个模块都能够实现加密以保护内容数据。 可以在文件存储到消息中心之间、消息中心到打印服务之间、打印服 务到输出图像资源库之间、及文件图像资源库到RDC之间实施加密。 当然,在不充分加密可能损害用户数据的情况下,过分加密可能会降 低总体性能。第三,在非拒绝实施方案中,系统给每个预订者分配唯 一的ID。当用户向系统提交请求时,立即用他或她的ID及时间戳来标 记该请求。如果这是一个作业提交请求,那么就在系统中生成副本并 记录下该副本,并在稍后将其归档以供日后引用及计费目的使用。

除了前述的安全实施方案以外,系统模块化和分布式体系结构的另 一个优点就是:它允许管理员根据组织机构的需要来自定义安全设 置。例如,虚拟专用网络(VPN)可以作为共享文件服务器与消息中心 之间的标准设置来实施。同样,也可以在消息中心与远程桌面客户端 之间实施VPN。所述系统体系结构既支持软件VPN配置也支持硬件VPN 配置。也可以将整个系统配置成公共密钥基础结构,以便提供验证及 授权;以便保护数据完整性及数据保密性;和以便满足非拒绝需求。

消息中心

消息中心包括一个或多个网络服务器,它们(通常)提供公用访问 (例如,经由因特网),并且它们实施RDBMS(关系数据库管理系统) 数据库。参照图26,在一个实施例中,消息中心MCn被驻留在UNIX 服务器232上。一般而言,各种服务器类型都可以用作为消息中心主 机,这些服务器类型包括:运行UNIX的服务器、微软窗口服务器以及 Linux操作系统。优选地,服务器应该实现众多的组件和高效率的硬 件,比如像RAID5磁盘子系统等等。

消息中心MCn包括RDBMS数据库228,在其中存储了与消息中心的 操作有关的数据及其它系统组件。一般而言,所述RDBMS数据库可以 由SQL RDBMS数据库软件加以驻留,上述软件是由几个供应商的其中 之一提供的,所述软件包括:Oracle(例如,8i或9i)、Microsoft (例如,SQL Server7或SQL Server2000)、IBM(DB2)、Informix 以及Sybase。在当前的实施方案中,使用了带有网络套接字连接、PERL 及C语言程序设计AP1的MySQL RDBMS。作为选择,数据库228也可 以由非SQL RDBMS加以驻留。

每个消息中心都还包括用于处理上面参照图1所述的任务的各种 软件模块。这些软件模块包括:消息处理器234、表更新处理器236、 表维护操作238和打印服务通信信道240。另外,所述消息中心包括用 于与Web通信量进行接口连接的Web服务器组件。在一个实施例中, 使用了带有用以支持维护与管理以及打印服务通信操作的PHP4和SSL 服务器扩展以及相关CGI应用程序的Apache Web服务器。

消息处理器234作为绑于专用网络端口(例如,系统端口5190) 的服务来执行。所述远程桌面客户端利用这个端口而连接于消息中 心,并且在会话的生命周期内保持持久性连接。消息中心与RDC之间 的通信是面向连接的,并且每个会话都包括使用网络消息协议的特定 阶段。当RDC启动会话发启过程时,开始消息中心与远程桌面客户端 之间的通信,并且通过突然性断开连接(是由于当RDC主机(例如, PC)关机或当RDC应用程序异常中止时的网络连接丢失或RDC上的错 误引起的)或者当RDC启动会话停止过程时,终止上述它们之间的通 信。

表更新处理器(TUH)236包括以RDBMS系统的本地API(例如, 对于MySQL RDBMS实施方案,将采用C语言和PERL语言API;对于 Oracle RDBMS实施方案,将采用PLSQL存储程序等等)编写的一组数 据库方法。这个模块中的方法包括以下函数:用于修改远程打印机资 源状态的函数;用于添加、删除及修改无线预订者简档的函数;用于 打印服务作业队列管理表更新的函数,以及其它各种函数。

表维护操作(TMO)模块238包括:一系列离散的数据库操作,这 些操作执行为生成登录日志和报告、定期清除表以及校正数据库表问 题所必需的维护函数。这些函数中的一些是按照特定情况来执行的, 而其它函数则被预定为定期执行,例如,按照每小时一次或一周一次。 可以经由端口80(或SSL)上的CGI接口来利用这个模块中的一些函 数。

打印服务通信信道240为打印服务组件访问消息中心实现了消息 信道。这个信道使系统中的打印服务能够连接于消息中心,以便作业 队列管理状态。在一个实施例中,这个信道是通过消息中心及API上 的端口80或SSL端口实现的,所述消息中心及API提供了包含CGI脚 本的发消息能力。

数据库模式

一般而言,消息中心RDBMS模式包括三个独立的数据库,包括: 远程打印机资源管理(RPRM)数据库242、作业打印队列管理(JPQM) 数据库244和无线预订者(SUB)数据库246。所述RPRM数据库包含 与打印机资源注册、RDC过程和打印机资产管理相关的表。所述JPQM 数据库包含与打印作业提交相关的表,所述打印作业是由打印服务处 理的。所述无线预订者数据库包含与无线预订者相关的表。

SUB数据库表

预订者表。这个表包含关于系统中的无线预订者的特定信息。该预 订者在第一次注册程序期间填写这个表中的字段。与从 “HTTP_X_UP_DEVCAP”起始的说明相对应的字段包括从HTTP GET首 部中的无线设备返回的设备能力值,所述HTTP GET首部定义了无线设 备的一些能力。SUB_NO字段将包含与预订者在注册期间输入的移动式 电话号码相关联的唯一预订者号码,并且所述预订者号码被用来标识 每个会话的预订者。所述索引字段SUB_ID对于每个记录来说是唯一 的,并且被用来引用(即,链接)下述NETWORK_SITES和PRINTERS 表。 字段  数据类型 说明 SUB_ID  INT UNSIGNED 自动增量的唯一预订者ID值 SUB_NO  VARCHAR(255) 来自于电话浏览器的 HTTP_X_UP_SUB_NO串 用户名  VARCHAR(32) 预订者用户名 FNAME  VARCHAR(32) 预订者名 MNAME  VARCHAR(32) 预订者中间名 LNAME  VARCHAR(32) 预订者姓 ADDR1  VARCHAR(48) 第一地址串 ADDR2  VARCHAR(48) 第二地址串 CITY  VARCHAR(48) 城市串 STATE  VARCHAR(2) 国家缩写 ZIP  VARCHAR(10) 邮政编码 EMAIL  VARCHAR(48) 电子邮件地址串 PIN  VARCHAR(32) 四位PIN号码 CELLPHNUM  VARCHAR(10) 移动电话号码w/area代码 CAP_COLOR  ENUM(Y′,′N′) HTTP_X_UP_DEVCAP_ISCOLOR CAP_PIX_X  INT UNSIGNED HTTP_X_UP_DEVCAP_SCREENPIXELS  ″x″ CAP_PIX_Y  INT UNSIGNED HTTP_X_UP_DEVCAP_SCREENPIXELS ″y′ CAP_DEPTH  INT UNSIGEND HTTP_X_UP_DEVCAP_SCREENDEPTH CAP_MAXPDU  INT UNSIGNED HTTP_X_UP_DEVCAP_MAX_PDU SUB STATE  INT UNSIGNED 预订者的国家或状态() CREATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′ UPDATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′

                    表8:预订者表说明

网络站点表。这个表包含几个字段,这些字段定义了由预订者添加 的网络站点,并且还包括每个站点的登录信息。 字段  数据类型 说明 SITE_ID  INT UNSIGNED 自动增量的唯一网络站点ID值 SUB_ID  INT UNSIGNED 从预订者表映射来的预订者ID引 用 SITE_NAME  VARCHAR(32) 站点名串 SITE_ADDR  VARCHAR(64) Alpha或数字网络站点标识符 用户名  VARCHAR(32) 网络站点的用户名 PASSWORD  VARCHAR(32) 网络站点的密码 TYPECODE  INT UNSIGNED 定义网络站点类型的代码() CURRENT  ENUM(′Y′,′N′) 布尔:当前值=Y或者N CREATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′ UPDATED  ATE DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′

                    表9:网络站点表说明

打印机资源表。这个表包含需要定义特定预订者的打印机资源的信 息的几个字段。 字段 数据类型 说明 PRINT_ID  INT UNSIGNED 自动增量的唯一打印机资源ID 值 SUB_ID  INT UNSIGNED 从预订者表那里映射的预订者ID 引用 NAME  VARCHAR(32) 打印机名 MCID  INT UNSIGNED 消息中心标识符 PID  INT UNSIGNED 远程打印机资源标识符 CURRENT  ENUM(′Y′,′N′) 布尔:当前值=Y或者N STATUS  INT UNSIGNED 打印机状态() CREATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′ UPDATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′

                        表10:打印机表说明 字段 数据类型 说明 FET_ID  INT UNSIGNED 自动增量的唯一打印机资源ID 值 SUB_ID  INT UNSIGNED 从预订者表那里映射的预订者ID 引用 NAME  VARCHAR(32) 传真机/电子邮件名 FET_TYPE  INT UNSIGNED 类型枚举(传真机、电子邮件、 其他?) RESOURCE  VARCHAR(255) 类型专用信息 STATUS  INT UNSIGNED 这一资源的状态 CREATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′ UPDATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′

                       表11:FAX/电子邮件表(FET)

RPRM数据库表

主打印机资源表。这个表包含全系统的远程打印机资源配置结构以 及在特定消息中心上注册的每个打印资源的状态信息。 字段  数据类型 说明 PID  INT UNSIGNED 自动增量的唯一打印机资源ID值 NAME  VARCHAR(32) 打印机名 ZID  INT UNSIGNED 区域标识符(区域所有权) CID  INT UNSIGNED 与远程打印机资源相关的客户端 ID MPID  INT UNSIGNED 驱动程序类型的Magic打印服务器 标识符 TYPE  VARCHAR(32) 打印机资源类型 PRIENT_DES  VARCHAR 255) 自由格式打印机描述符串 STATUS  INT UNSIGNED 打印机资源的当前状态 CREATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′ UPDATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′

                      表12:主打印机资源

区域描述符表。这个表定义了在全系统网络中定义的区域s的参 数。这个表当中的记录都是由区域标识符(ZID)来引用的。所述区域 DESC描述符、区域TYPE以及STATUS字段描述了区域的特性。 字段  数据类型 说明 ZID  INT UNSIGNED 自动增量的唯一区域ID值 ZONE_DESC  VARCHAR(64) 区域描述符串 ZONE_TYPE  INT UNSIGNED 区域类型列举(公用/专用) STATUS  INT UNSIGNED 状态列举 CREATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′ UPDATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′

                   表13:区域描述符表

消息中心表(MCT)。这个表包含用来引用系统中的消息中心的信 息。这些过程是通过消息中心标识符(MCID)来标识的,并且它是唯 一的全系统值。注意:对于所有的PUBLIC资源来说,存在总是利用等 于0的MCID来引用的主消息中心;所有其它的消息中心都具有非零的 正MCID值。所述MCT包含标识消息中心的区域和网络地址的信息。注 意:所述主消息中心具有等于0的区域标识符(ZID);所有其它的消 息中心都具有非零的正MCID值。 字段  数据类型 说明 MCID  INT UNSIGNED 自动增量的唯一消息中心ID值 ZID  INT UNSIGNED  ZID区域标识符值 MC_IPADDR  VARCHAR(15) 数字IP地址 MC_PORT  INT UNSIGNED  MC_IPADDR处的机器的端口数 STATUS  INT UNSIGNED 消息中心状态值 NAME  VARCHAR(64) 消息中心名称串 SECURITY  VARCHAR(32) 用于验证的安全性串 CREATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′ UPDATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′

                        表14:消息中心表

客户端描述符表。这个表定义了与远程打印机资源相关的单独客户 端。这个表当中的记录是由客户端标识符(CID)引用的。所述CLIENT DESC、CLIENT TYPE以及姓名和地址字段定义了客户端的属性。存储 在这个表中的信息是在当个人安装桌面客户端软件时或在公司防火墙 后的PC上发生的注册过程期间生成的。打印作业队列信息包含CID标 识符,该标识符把客户端过程与将要打印的作业关联起来。 字段  数据类型 说明 CID  INT UNSIGNED 自动增量的唯一客户端ID值 CLIENT_DESC  VARCHAR(64) 客户端描述符串 CLIENT_TYPE  INT UNSIGNED 客户端类型列举 NAME_FIRST  VARCHAR(16) 客户端名 NAME_MID  VARCHAR(16) 客户端中间名 NAME_LAST  VARCHAR(16) 客户端姓 ADDRESS1  VARCHAR(32) 客户端地址 ADDRESS2  VARCHAR(32) 客户端地址 CITY  VARCHAR(32) 客户端城市 STATE  VARCHAR(12) 客户端状态 ZIP  VARCHAR(12) 客户端邮政编码 USERID  VARCHAR(16) 客户端用户ID PASSWORD  VARCHAR(16) 客户端密码 EMAIL  VARCHAR(32) 客户端电子邮件地址 STATUS  INT UNSIGNED 状态:(在线、离线、无效、错 误) CREATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′ UPDATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′

                        表15:客户端描述符表

作业打印队列管理数据库表

打印服务表。这个表包含安装在网络中的已注册的打印服务。这个 表是由MPID标识符引用的。(在当前的实施方案中,打印服务服务器 称为“MAGICPRINT”TM服务器;由此而使用标识符名MPID。这个打印 服务器在这里也称为无驱动程序的打印服务器(DPS))。名称描述符、 IP地址、状态以及服务器描述符串字段都是用来定义每个打印服务器 属性的。注意:为打印服务服务器上的每个驱动程序类型(Driver Type)建立一个项。 字段 数据类型 说明 MPID INT UNSIGNED 自动增量的唯一Magic打印服务器 ID值 NAME  VARCHAR(32) Magic打印服务器名称 IPADDR  VARCHAR(12) Magic打印服务器IP地址 STATUS  INT UNSIGNED 服务器状态列举 ZID  INT UNSIGNED 区域标识符 MP_Desc  VARCHAR(62) 服务器描述符串 PRIENT_DES  VARCHAR(255) 打印机驱动程序描述符串 SECURITY  VARCHAR(32) 用于安全访问的通行代码值 CREATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′ UPDATEDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′

                     表16:MagicPrint服务器表

打印队列表。个表管理网络的打印机队列。这个表当中的每一个 记录都表示由QID标识符引用的单个打印作业。整个系统设计提升了 推延后的打印作业能力,并且QDATE和DQDATE字段跟踪作业队列项并 且如期如时(dates and times)退出。在已根据这个表处理了打印作 业以后,将这个表中的大多数标识符复制到作业队列日志表中。 DRIVERDESC串包含定义打印机驱动程序类型的信息,所述打印机驱动 程序用于处理由PID标识符引用的以及与由CID标识符引用的桌面客 户端相关联的文档及远程打印机资源。 字段 数据类型 说明 QID  INT UNSIGNED 自动增量的唯一队列ID值 MPID  INT UNSIGNED 打印服务服务器ID值 CID  INT UNSIGNED 打印机资源的客户端ID PID  INT UNSIGNED 打印机资源ID(与CID相关) JOBOWNER  VARCHAR(32) 打印作业始发者的名字或ID CHECKSUM  INT UNSIGNED 队列文件校验总和值 QFILENAME  VARCHAR(32) 队列文件名称串 QFILESIZE  INT UNSIGNED 队列文件的文件大小 QSTATUS  INT UNSIGNED 队列项状态 DRIVERDESC  VARCHAR(255) 打印驱动程序描述符串 QDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′ DQDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH: MM:SS′

                   表17:打印机队列表

作业队列日志表。所述作业队列日志表包含用以记录已处理的打印 作业的信息。这个日志表中的作业是由作业日志ID(JID)值引用的。 来自于打印队列表的字段被传给这个表。打印服务服务器是由MPID标 识符引用的。用于打印作业的客户端是由CID标识符引用的。与CID 相关联的远程打印机资源是由PID标识符引用的。另外,包含JOBOWNER 描述符串以标识打印作业的始发者。 字段  数据类型 说明 JID  INT UNSIGNED 自动增量的唯一作业日志ID值 MPID  INT UNSIGNED  Magic打印服务器ID值 CID  INT UNSIGNED 打印机资源的客户端ID PID  INT UNSIGNED 打印机资源ID(与CID相关) JOBOWNER  VARCHAR(32) 打印作业始发者的名字或ID STATUS  INT UNSIGNED 作业结束状态列举 PROCDATE  DATETIME 日期/时间串:′YYYY-MM-DD HH:MM: SS′

                  表18:作业队列日志表

在图27中示出了为打印服务PSn使用的软件组件的一个实施例的 更多细节。所述软件组件逻辑上被分成四组,包括:设置组件300、消 息中心通信接口301、文档处理组件302和管理组件304。这些组件中 的每一个还进一步包括:一个或多个软件应用程序、脚本、组件和/或 模块。设置组件300包括:打印设置模块306和账户向导模块308。 消息中心通信接口301包括:打印服务器到消息中心的通信信道310。 文档处理组件302包括:CGI脚本311、无驱动程序的打印服务器组件 312、端口监控器314、状态监控器316和预览模块318。管理组件304 包括:系统监控器320、管理(控制面板)Web页面322、自动扩展模 块324和自动更新模块326。

在一个实施例中,打印设置模块306包括:由系统管理员运行以 改变系统所使用的Windows打印机配置的Microsoft(MS)Windows 应用程序。应用程序可以用来更换现有的打印机、安装新的打印机或 删除打印机。现有打印机的更换包括:获取现有的打印机安装程序, 并利用端口监控器314来替换由MS Window的端口监控器提供的操 作。端口监控器314的使用允许假脱机文件被DPS系统操纵,并且允 许状态监控器316将假脱机文件发送到选定的目的地输出设备。

打印设置模块306也可以用于利用适当打印机设备驱动程序来安 装新打印机。例如,管理员能够通过安装供系统使用的Adobe PostScript驱动程序来建立postscript打印机,所述Adobe PostScript驱动程序是通过使用打印机的PostScript打印机说明 (PPD)文件来使用的。如果管理员能够提供PDD,则打印机设置模块 就将安装PostScript驱动程序并对其进行配置,以供DPS系统使用。 在其它情况下,管理员可以为新打印机提供适当的打印机设备驱动程 序软件。打印设置模块306也可以用于删除打印机。在这样一种情况 下,可以将Windows端口监控器恢复成系统的端口监控器,或者可以 彻底删除选定打印机的DPS服务器支持。

账户向导模块308对一组管理Web页面322应用安全措施,以便 管理员的登录将确定哪组Web页面是可访问的。在一个实施例中,所 述系统实施了三个管理层,包括:监控器层(monitor level)、管理 器层(manager level)和管理层(administrative level)。在一 个实施例中,账户向导将这三组创建为MS Windows用户组。此外,账 户向导创建MS Windows用户账户,并将它们放置到其中一个管理用户 组当中。在一个实施例中,账户向导模块308是MS Windows应用程序。

打印服务消息中心通信信道310实现了打印服务与消息中心之间 的通信。所述通信包括:打印服务注册与解除注册;作业再现请求; 作业打印请求;设备注册与解除注册;设备状态查询等等。

在图28中示出了CGI脚本311的更多细节。取消打印作业CGI脚 本328用来从系统上删除打印作业请求。可以从管理Web页面322那 里为任何已经提交到系统并且仍然使其假脱机文件发送给打印机的打 印作业调用上述脚本。也可以从消息中心那里调用上述脚本。

自动扩展配置CGI脚本329搜索已安装应用程序的打印服务主 机,发现已找到的应用程序能够支持哪些文件类型,并且配置打印服 务以便允许所发现文件类型的打印作业请求。可以将这一信息转发到 消息中心,以更新其资源配置信息。更新系统CGI脚本330被用来相 对于最新的有效组件来比较已安装的系统组件,下载任何新的组件(当 可适用时),并且将它们安装在PS主机上。

打印请求CGI脚本331从消息中心那里获取源数据(例如,文档 文件、图形图像文件、或URL)以作为输入,并且创建将由打印服务处 理的打印作业请求。作业队列CGI脚本332从系统中读取打印作业请 求的队列,并将列表返回给脚本的调用程序(例如,MC)。预览CGI 脚本333从消息中心那里获取文档文件、图形图像文件或URL,并且按 照同打印请求CGI脚本相类似的方式在系统上创建打印作业请求。然 而,当预览CGI脚本被调用时,所述系统将文档、图像或Web页面转 换成用于在用户的始发端设备的用户界面中察看的格式,而不是将它 发送到打印机以进行打印。可以为文档、图像或Web页面第二次调用 所述预览CGI脚本,以便指示系统将所预览的项发送到选定的输出设 备。

重置CGI脚本334关闭系统应用程序并再次启动它们。这些脚本 被用作为系统管理员试图用来清除任何也许已发生过的程序错误的最 终手段。状态CGI脚本335提供带有打印作业请求进度状态的管理Web 页面322。

在图29中示出了由无驱动程序的打印服务器312实现的组件。所 述无驱动程序的打印服务器是打印服务所使用的主要软件组件。它包 括运行在打印服务主机(即,服务器计算机)上的应用程序,所述打 印服务主机接收作业请求,将请求排队,并且从请求到最终打印,指 导文档、图像或URL的打印处理。所述无驱动程序的打印服务器组件 312包括:文件类型配置列表336、浏览器打印组件337、辅助应用程 序打印组件338、Shell扩展名打印组件339、打印预览组件340、作 业请求服务器组件341、作业处理组件342、句柄窗口组件343、以及 作业状态组件344。

文件类型配置列表336是由无驱动程序的打印服务器来维护的。对 于每种文件类型,所述配置列表具有扩展和用于打印那种文件类型的 方法。当由辅助应用程序打印组件338提供打印方法时,所述列表包 含:通向用来打印的应用程序的路径、应用程序用以打印的菜单命令、 以及应用程序用以关闭应用程序的菜单命令。

所述浏览器打印组件337包括三种用以生成输出图像数据的无驱 动程序的打印服务器的方法的其中一种。在一个实施例中,这个组件 使用Microsoft Internet Explorer(IE)浏览器所提供的应用编程 接口(API)。使用该IE API,所述组件在无驱动程序的打印服务器 应用程序上的窗口内运行浏览器。为了打印URL,所述无驱动程序的打 印服务器使用所提供的用以将Web页面加载到窗口中的导航编程接 口。一旦加载了该页面,所述组件就使用IE中提供的打印编程接口来 将打印操作实例化。

如果DPS服务器计算机上的IE浏览器实例配置有所请求的文档或 图像文件类型的浏览器插件,那么就能使用这个方法来打印文档和图 像文件。例如,考虑一下用于Adobe Acrobat的IE插件。Adobe Acrobat 文档文件具有PDF扩展名。如果Acrobat插件被安装在服务器计算机 上,那么IE的导航编程接口就允许将PDF文件加载到IE中,并且IE 的打印编程接口将允许文件的打印。

所述辅助应用程序打印组件338提供了无驱动程序的打印服务器 用以生成输出图像的另一种方法。这个组件利用文件类型配置列表336 来查找与文件扩展名相关联的应用程序,将文件加载到应用程序中, 执行应用程序的打印菜单命令,并且刚一结束打印操作就关闭应用程 序。利用文件类型配置列表与辅助应用程序打印方法的组合,系统管 理员能够通过在服务器机器上安装应用程序和编辑文件类型配置列表 来为附加的文件或图像类型添加支持。

所述Shell扩展名打印组件339提供了无驱动程序的打印服务器 用以打印的第三种方法。这个组件利用MS Windows Shell扩展名编程 接口来进行打印。所述MS Windows Shell扩展接口是允许用户利用发 送给支持所述文件类型的应用程序的命令来打印文档类型的操作系统 特征。如果所述应用程序支持Shell扩展名接口,那么所述应用程序 就将加载文档、打印它并关闭自身。利用文件类型配置列表与Shell 扩展名打印方法的组合,系统管理员能够通过在服务器机器上安装应 用程序和编辑信息类型配置列表336来为附加的文件或图像类型添加 支持。

所述打印预览组件340将打印作业请求的文档、图像或URL转换 成文档格式文件,以便消费者用户能够察看所请求文档、图像或URL 的示例。这个组件与预览CGI脚本333协同工作。无驱动程序的打印 服务器执行的其中一种转换属于Adobe Acrobat文档格式。通过利用 打印预览组件,所述无驱动程序的打印服务器按照与它将用以创建用 于打印的假脱机文件的相同方法来创建假脱机文件。然而,并不是将 假脱机文件发送给状态监控器316以供发送到输出设备或资源库,它 通过Adobe Acrobat Distiller应用程序来运行假脱机文件,所述 Adobe Acrobat Distiller应用程序将文档转换成Acrobat PDF格式。 这种转换要求打印机驱动程序是Adobe PostScript驱动程序。所述无 驱动程序的打印服务器保存在预览过程中创建的假脱机文件,以便如 果消费者用户想要打印文档的话,DPS可以只是将该假脱机文件发送给 状态监控器316,所述状态监控器316于是将把它发送到打印机以进行 打印。

作业请求服务器组件341从打印请求CGI脚本331那里获取打印 作业请求,并且将它们排队以供处理。所述作业处理组件342管理插 入到作业队列中的打印作业请求,直到生成输出图像数据假脱机文件 为止。这个组件读取队列作业请求,确定三种打印方法中的哪一个将 被用来进行打印,将文档、图像或URL提交到确定好的打印方法,处 理正在执行的打印命令,并将假脱机文件提交到状态监控器以供存 储。在输出图像生成过程的阶段期间,跟踪状态并且让任何可能被调 用的状态CGI脚本335调用有效。

所述句柄Windows组件343用来提供可靠的打印。在打印过程期 间,许多应用程序都显示消息框和/或对话框以通知用户谁在请求打印 服务或者从用户那里采集信息。为了支持打印请求的自动处理,需要 一种机制来响应任何可能出现在用于打印请求的应用程序中的消息框 或对话框。这个机制是由句柄窗口组件343提供的。所述无驱动程序 的打印服务器在打印过程期间监视主机服务器应用程序,以发现可能 出现的消息框和对话框。当新的消息框或对话框出现时,所述句柄窗 口组件就读取信息,将其与已知的消息或已知的语句进行比较,并且 根据其编程逻辑来关闭消息框或对话框。下面,参照图32来论述句柄 窗口组件的更多细节。

提供作业状态组件344以便维护每个无驱动程序的打印服务器队 列中的所有作业的存储器映射文件。在定期时间间隔,将作业状态信 息写入存储器映射文件,以便状态CGI脚本能够读取作业请求的状态。

端口监控器包括:MS Windows打印子系统中的标准组件。所述端 口监控器经由打印子系统、从打印机驱动程序那里接收假脱机数据。 传统的端口监控器负责从打印机驱动程序那里获取假脱机数据并将其 交付给打印机。在无驱动程序的打印服务器中,端口监控器模块314 (图27)将假脱机数据写入文件。一旦整个假脱机文件都已被写入文 件,端口监控器模块314就发消息告知无驱动程序的打印服务器该假 脱机文件的名称及位置。

状态监控器316包括运行在服务器计算机上的应用程序。它执行 多种功能,不过它主要是负责将假脱机文件发送给打印机。在从端口 监控器314那里发消息告知无驱动程序的打印服务器假脱机文件的位 置之后,所述无驱动程序的打印服务器就发消息告知状态监控器316 该假脱机文件的位置、假脱机文件应被发送到的打印机URL、以及用于 将假脱机文件发送给打印机的协议信息。状态监控器316为每个请求 打印机URL创建队列。由于打印机一次仅能接收一个假脱机文件,因 而它将假脱机传输串行化。状态监控器316能够同时创建及维护多个 队列。

在已经成功地生成了输出图像之后,状态监控器316发消息告知 无驱动程序的打印服务器该作业已结束。更新作业历史,并且从无驱 动程序的打印服务器队列中移除该作业。状态监控器316可以被配置 成当在已经生成输出图像期间和/或在已经生成输出图像之后能向外 部组件发送消息。例如,它可以被用来通知消息中心启动与打印作业 的输出图像结束相对应的打印作业。

系统监控器组件320包括:监控全部其它打印服务组件、监视故 障及侦听特定请求的应用程序。当从打印请求CGI脚本331那里发生 打印作业时,如果不运行无驱动程序的打印服务器应用程序,则打印 请求CGI脚本就能够请求系统监控器320开启无驱动程序的打印服务 器,由此允许服务于打印作业请求。系统监控器320定期向无驱动程 序的打印服务器发送消息,以获取程序及队列中的任何打印作业的状 态。如果系统监控器察觉到故障,那么它将试图清除所述问题。

系统监控器320也可以用来下载和安装更新的打印服务系统组 件。它收集系统中所有组件的版本号,并将它们发送给系统的更新Web 站点。如果更新Web站点用关于新组件可用性信息予以回复的话,那 么它就将取得那些组件,并将它们安装在系统上。所述系统监控器从 其菜单中或从更新系统CGI脚本330中接收更新请求。

管理Web页面322允许由管理用户对系统进行远程配置和监控。 使用安全特性来防止消费者用户对这些Web页面的访问。

当为了输出图像生成而提交文件时,所述无驱动程序的打印服务器 打开与该文件的文件类型相对应的应用程序。例如,如果所述文件具 有a.doc扩展名,则一般将打开微软字处理软件应用程序。所述应用 程序继而打开该文件,并通过其内嵌的打印命令,将所提交的文件发 送到选定的打印机。扩展名Web页面(未示出)显示列表文件类型信 息的行(项)(在“扩展名”列中),并显示对应于所述文件类型的 软件应用程序(在“应用程序名”列中)。每一项还显示扩展名的优 先级(priority level)(以定义一个次序,其中按这个次序来评估 带有相同扩展名的文件类型,以便为所提交的文件确定可视的应用); 注册表位置(Registry Location),它标识了在OS中的何处存储关 于应用程序的注册信息;应用程序的默认路径(Default Path);应 用程序的可执行名称(Executable Name);以及用以打印和关闭应用 程序的内部代码(internal code)。管理员能够通过激活“添加新项 (add new entry)”按钮来添加新的文件类型,这将为先前Web页面 中的每一列再现出带有相应编辑控件的Web页面。用户还可以更新文 件类型和编辑现有的文件类型信息。

所述无驱动程序的打印服务器利用对应于文件类型值的扩展名表 来确定在服务器计算机上安装哪个应用程序,以用来打印列在扩展名 表上的每种文件类型的文件。所述表中的信息还用于确定打印服务服 务器计算机上的可执行文件的位置。在一个实施例中,扩展名表以及 各种其它的配置和打印作业数据都是在数据库中进行维护的。典型 地,所述数据库将驻留在与驻留DPS软件相同的机器上,不过正像本 领域技术人员将会认识到的那样,也可以使用独立的机器来驻留所述 数据库。

处理打印请求

在图30中示出了举例说明响应于打印请求、由打印服务DPS系统 软件组件执行的数据流程和操作的数据流程图。最初,始发端设备350 的用户将从局部存储器或者远程存储器上连接于系统,并选择将要打 印的源数据以及将在其上按照上述方式打印源数据的输出设备。包括 用户输入352的这个信息将由相应的消息中心加以接收,所述消息中 心将处理该信息以生成打印作业353。一般而言,所述打印作业将包括 源数据或对源数据的引用,并且将标识出打印服务所生成的输出图像 是将被存储在资源库中还是将被直接提交到输出设备。最初,由打印 请求GG1脚本331来处理该打印作业,所述打印请求GG1脚本生成 tmpdoc.dpsn文档354,该文档包含了打印参数以及与该打印作业相对 应的其它数据。然后,经由打印请求CGI脚本,将所述tmpdoc.dpsn 文档发送到作业队列356。在一个实施例中,所述作业队列包括先进先 出(FIFO)类型的作业队列。作为选择,正如本领域技术人员将会认 识到的那样,也可以使用其它类型的作业队列。正如上面所论述的那 样,作业队列操作是由作业处理组件342来执行的。

所述作业队列由打印服务来提交将要处理的作业请求。每个请求都 是由块358来处理的,在块358中,对tmpdoc.dpsn文件进行解析, 以取得对应于该打印请求的打印作业参数,该打印作业参数将被存储 在文档文件360中。例如,解析后的信息可以包括:打印机选择、复 制份数、消费者用户的身份、文档名、正在提交打印作业的消息中心 等。接着,将打印作业参数的一部分存储在DPS数据库361中。

在判断块362中,判断请求打印什么类型的文档,例如,应用程 序文件、图像或Web页面URL。如果所述文档属于可浏览的文档,比如 Web页面、图像或PDF文件,所述逻辑流至块364,其中经由无驱动程 序的打印服务器的浏览器来加载Web页面、图像或PDF文档。否则, 所述逻辑流至块366,在其中加载文档以及能够用来打印文档的适当辅 助应用程序。例如,如果所述文档包括MS Excel电子表格,则就随同 Excel文档一起加载MS Excel应用程序的实例。在块368中,生成内 部命令以模拟请求打印操作的用户请求由浏览器或辅助应用程序来打 印URL、图像或文档。例如,多数的应用程序提供文件->打印 (File->Print)菜单选项,该菜单选项启动应用程序的打印过程。

响应于内部应用程序或浏览器打印请求,各种打印信息及文档信息 被内部地传递给处理打印机操作的操作系统组件。正如上面所论述的 那样,在一个实施例中,所述无驱动程序的打印服务器是在MS Windows OS环境下工作的。因此,这个环境提供了OS打印子系统369以便生成 将发送给目标打印机374以生成输出文件的适当打印机(即,输出设 备)数据,其中所述OS打印子系统包括与对应于选定打印机的打印机 设备驱动程序372相交互的图形设备接口(图形设备接口)组件370。 所述打印机数据由MS Windows打印假脱机组件376作内部处理,所述 打印假脱机组件输出端口监控器3 14所接收到的打印假脱机文件。在 举例说明的示例中,假定:目的地输出设备DDEST包括PostScript 打印机。于是,端口监控器314输出PostScript文件378。

虽然进行的是上述操作,但是始发端设备350的用户也可以在使 源数据被打印之前先选择预览模拟后的文档、图像或Web页面的打印 输出。在判断块380中,判断用户是否请求预览打印机输出。如果回 答为是(真)的话,那么在一个实施例中,就运行Adobe Acrobat Distiller 382的实例,该实例用于生成Adobe可移植文档格式(PDF) 文档384。接着,由预览CGI脚本333处理该PDF文档,当运行在始 发端设备上的浏览器经由Adobe PDF插件再现所述文档时,所述预览 CGI脚本通过消息中心MCn把文档发送回始发端设备350。已再现的显 示器(未示出)将提供所打印的文档将看起来像什么的预览,并且包 括将使消费者用户能选择打印或取消文档的用户界面(UI)控件。

如果消费者用户希望打印文档,则将打印通知送回消息中心MCn, 在该消息中心将由预览CGI脚本333来对其进行处理。响应于打印通 知的接收,预览CGI CGI脚本333开启状态监控器316,并依据输出 图像数据将要送达的地点来把打印文档378提交到目的地输出设备 DDEST或输出资源库78。结合这一事件,在DPS数据库361中更新作 业历史信息。另外,一旦输出图像被打印,就将打印已结束通知380 送回状态监控器316,该状态监控器继而将所述通知作为作业状态消息 381转发回消息中心MCn。

如果消费者用户没有选择打印预览选项,则判断块382的回答就 为否(假),这导致启动状态监控器316并向目的地输出设备DDEST 或输出资源库78提交打印文档378。在打印过程期间,状态监控器116 监控处理的进度并更新DPS数据库361。正如作业状态消息381描绘 的那样,状态CGI脚本335用于从数据库那里检索进度信息并生成适 当的HTML以送回提交相应打印作业的消息中心,来给消息中心提供打 印状态信息。

在一个实施例中,所述无驱动程序的打印服务器支持打印机文件的 直接打印。例如,如果打印作业文件包括打印机文件,那么若它对应 于打印机文件类型的目的地输出设备的话则就可以直接打印它。例 如,可以在PostScript打印机上打印PostScript文件。同样,用于 其它类型打印机的打印机文件也许已经预先在打印过程期间通过选择 “保存到文件(save to file)”选项而被创建了。如果在判断块362 中判定该文件为打印机文件的话,则所述逻辑前进至块367,其中打印 机文件(经打印机文件367描绘的)被直接发送给Windows打印假脱 机程序376。

正如输出图像文件引用386描绘的那样,如果输出图像被存放在 输出资源库78中而不是被发送给输出设备,则状态监控器316就经由 作业状态消息381、随同输出图像文件的名称及位置一起发送消息中心 MCn标记,所述作业状态消息是对应于打印作业的输出图像文件已经存 储在资源库中的消息。

在图31中示出了无驱动程序的打印服务器软件46的内部操作的 更多细节。如前所述,操作始发端设备350的消费者用户经由适合于 始发端设备的用户界面(例如,迷你浏览器UI 107或浏览器UI 124) 来请求打印源数据(例如,文档、图像文件或Web页面)。响应于适 当UI页面上的“现在打印(print now)”按钮的激活,打印请求CGI 脚本331对用户输入数据进行处理,所述打印请求CGI脚本创建 tmpdoc.dpsn文档354。所述打印请求CGI脚本还将含有打印请求的消 息输送到新的作业管道服务器390,该作业管道服务器存储消息队列 392中的消息。对于每个打印请求消息,信息排队处理程序394开启相 应的线程,所述线程解析相应的tmpdox.dpsn文档354,借此生成文 档文件360并向作业队列356提交打印请求。

正如开始作业队列循环块396及终止作业队列循环块397所描绘 的那样,为打印作业执行这些循环端点之间所显示出的下列操作及逻 辑。首先,在块398中,从作业队列356中检索下一个作业。在判断 块400中,判断打印作业对应于什么类型的文档。如果所述文档是应 用程序文件,则所述逻辑就前进至判断块402,在该块中判断应该采用 什么类型的文件类型打印方法。如果所述文件需要辅助应用程序(例 如,MS Word、MS Excel、AutoCAD等等),那么所述逻辑就前进至块 366,在该块中按照上述方式来加载文档及适当的辅助应用程序。如前 所述,一旦所述文件被加载到辅助应用程序中,就在块368中内部地 生成文件打印命令,以便提交用于由OS来打印的文件。

接下来,在判断块404中,判断是否从端口监控器314接收到“已 结束”消息。这种判断是按定期进行的,或是通过软件中断机制来进 行的,直到接收到“已结束”消息为止。继而,如前所述,状态监控 器316始于块406,该块将打印文档378发送给目标打印机374并且 更新DPS数据库386中的作业历史数据。

返回至判断块400和402,如果文件类型是Web页面或是无驱动程 序的打印服务器计算机能在无需辅助应用程序的情况下直接打印的文 件类型(例如,PDF文档或各种类型的的图像文件),那么所述逻辑就 前进至块364,其中所述DPS计算机的浏览器被导航至Web页面的 URL,或者使用浏览器来再现所述PDF文件或图像文件。一旦进行了再 现,就从块368开始,按照上述方式来执行保持打印操作。正如上面 所论述的那样,如果所述文件类型是打印机文件,那么就将该文档直 接发送给Windows打印假脱机程序376。

在图32中示出了详述句柄窗口组件343所提供的逻辑和操作的流 程图。如图30中的开始块450所示,在判断块362的开始运行句柄窗 口线程,并且紧接其后立即在块368中调用打印动作。正如上面所论 述的那样,句柄窗口组件用于处理当加载应用程序时、当将文档载入 应用程序中时、当启动打印动作时、在打印过程期间等等可以运行的 各种对话框和消息框。

返回至图32的流程图,在块452中,刚一运行,所述句柄Window 线程就判断是否有更多的桌上型窗口要检查。这种窗口将一般包括对 话框和消息框。正如终止块454中的终止线程所描绘的那样,如果没 有其它窗口要检查,则就终止该线程。如果存在其它窗口要检查,则 所述逻辑就前进至块456,在该块中获得窗口的窗口信息。在MS Windows操作系统下,窗口信息可以通过进行适当的Windows API调 用来获得。

接下来,在判断块458中,判断所述窗口是否为再现应用程序的 子窗口(即,它是否是由辅助应用程序或浏览器生成的)。如果判定 为否,那么所述窗口就不对应于再现应用程序,并且所述逻辑前进至 判断块452以评估下一个窗口。如果判断块458的回答为是(真), 那么所述逻辑就前进至块460,在其中检查窗口的文本按钮及控制按 钮。

正如判断块462所判定的那样,如果文本匹配标准消息串,那么 所述逻辑就前进至块464,在其中内部地提供窗口关闭命令以仿真用户 激活或关闭窗口上的按钮或是窗口框架中的窗口关闭图标。所述逻辑 继而返回到判断块452以处理下一个窗口。

如果所述文本不匹配标准消息串,则判断块462的回答为否(假), 并且所述逻辑前进至判断块466,在该块中判断所述文本是否匹配DPS 数据库386当中的句柄窗口表470中所存储的相应项列表 MessageText值。如果存在匹配值,则所述逻辑前进至块468,在该块 中通过检索匹配MessageText值的行中的数据并根据该数据提供的参 数向Windows API发出相应的消息,来执行表命令。例如,在图472 的顶端示出了典型的项列表行472。所述行包含关于Windows API的 信息,包括Message、Wparam及Lparam值。这些参数用来进行相应 的API调用,以实现用于处理窗口的期望操作。一旦执行了所述表命 令,或者如果判断块466的回答为否(假),那么所述逻辑就返回到 判断块452以开始处理下一个窗口。

用户帐户设置

参照图33-37,所述系统提供了各种用户界面屏幕以使用户能设置 他们的帐户和配置参数,比如网络、打印机、传真及联系。正如上面 所论述的那样,这些UI屏幕将典型地包括用于有线和无线网络访问的 基于HTML的web页面、以及用于那些经由蜂窝式基础结构来访问系统 的设备的基于WAP的卡。设置过程包括在图33中的web页面500的顶 端显示的多个操作。这些操作包括:开始设置操作502、文件服务器访 问设置操作504、收藏打印机设置506、传真设置操作508、联系列表 设置操作510、以及终止设置操作512。在通过这些操作允许安装各种 参数之前,用户将不得不使用典型的用户验证方案来向系统注册,所 述用户验证方案涉及用户名和个人标识号码(PIN)。

用户通过登录到系统中并导航至帐户设置屏幕或者设定屏幕来开 始设置过程。可以经由几导航方案来访问包含类似于下述那些内容的 各种屏幕。在设置操作期间,用户将定义涉及一个或多个文件服务器 的参数,其中用户在随后的用户会话期间可能希望从所述文件服务器 那里访问源数据。依照web页面500,使用户能够在编辑框514和516 中定义服务器名(即,别名)和相应的服务器地址。所述用户也将能 够分别在编辑框518和520输入帐户名和密码,同时在编辑框522中 输入确认密码。最后,用户将经由下拉列表524选择文件服务器类型。 在所有参数都已被输入之后,用户将激活“现在添加服务器(ADD SERVER NOW)”按钮526,借此令web页面向驻留web页面的消息中 心返回参数。所述参数继而被存储在消息中心数据库228中的网络站 点表中。

图33举例说明了web页面500A,该页面描绘了在用户已经添加几 个服务器之后web页面500可能呈现为何样。如服务器名列528中所 示,用户可以为服务器命名用户期望的任何名称(在合理的长度限制 内,比如32个字母)。由于网络站点表经由SUB_ID外部关键字引用 预订者表并使用代用品主关键字(SITE_ID),因而多个用户能够使用 同一个服务器名,而不会引起混淆,比如服务器、家庭网络等等。然 而,能为用户所看见的服务器仅是那些用户曾预先注册过的服务器。

如主机地址列(Host Address)530中所示,用户可以使用IP地 址(例如200.221、219.218)或域名(例如,ftp、prlsip、com)来 标识服务器(主机)地址。文件服务器类型列(File Server Type) 532列出用户已经添加的服务器的服务器类型。转换成这些参数可以通 过激活“编辑(EDIT)”按钮534来进行,同时可以经由“删除(REMOVE)” 按钮536来删除服务器。

在用户已经设置了他或她的服务器之后,该用户将激活“下一页> (NEXT>)”按钮538,该按钮使设置过程转到收藏打印机设置操作 506,正如图35中的Web页面540所举例说明的那样。此时,用户面 前出现了用于选择打印机(即,输出设备)的两个选项。“选择 (SELECT)”按钮542的激活使用户能在预先配置的打印列表中搜索 打印机,而“搜索(SEARCH)”按钮544的激活使用户能经由一个或 多个输入参数搜索打印机。一般而言,预先配置的打印列表将由用户 为其工作的公司或者企业的管理员经由一组独立的管理web页面来配 置,所述这组独立的管理web页面仅对管理员可用。该用户面前将出 现打印机列表,并且可以选择作为“收藏”打印机的列表中的一个或 多个打印机。

搜索(SEARCH)按钮544的激活将令Web页面546转而向用户提 供服务。这个Web页面包括几个编辑框,在其中用户能够有选择地输 入搜索信息,包括“按城市(By City)”编辑框458、“按州(By State)” 编辑框550、“按邮政编码(By Zip Code)”编辑框552、“按交易 (By Business)”编辑框554、“按打印机别名(By Printer Nickname)”编辑框556、“按打印机制造商(By Printer Manufacture)”编辑框558、以及“按打印机型号(By Printer Model)” 编辑框560。响应于“现在搜索(SEARCH NOW)”按钮562的激活, 所述系统将试图识别既对于用户而言可用的又符合用户搜索条件的任 何已注册的打印机。例如,响应于在“按州(By State)”编辑框550 中输入的华盛顿这一搜索条件值,而返回一组示范性的三个打印机。 接着,通过点选对应于列表中每一行的复选框564,可以选择返回列表 中的打印机以将其添加到用户的打印机列表。所述用户于是将激活“完 成(FINISHED)”按钮566来保存选定的打印机,从而将用户返回到 Web页面540(A)。这时,所述Web页面将在收藏打印机列表568中 显示出任何预先选定的打印机。如果期望的话,该用户就可以经由激 活按钮570而从列表中删除打印机。

在用户已经将打印机添加到他或她的收藏列表之后,该用户将激活 “下一页>(NEXT>)”按钮572,从而令设置过程前进至传真设置操 作508。这将让用户转入到一系列传真设置Web页面(未示出)。这些 页面使用户能选择默认的外发传真及预先配置的封面。随后,该用户 在联系列表设置操作510期间可以通过使用一组联系列表设置Web页 面(未示出)而有选择地添加联系信息。所述联系信息使用户能更容 易地将文档及传真发送到列在他们联系列表上的人。

WAP UI示例

正如上面所论述的那样,在一个实施例中,启用无线Web的设备 能够经由WAP网关110来访问系统(图20)。WAP接口包括除它们是 以WML来编码且包含显著较少的数据之外大致类似于基于HTML的Web 页面的“卡”的“平台(deck)”。此外,设计WAP卡以使它们能够 利用极小的用户界面加以导航。参照图38的图标符号,在图39-52中 示出了与示范性的基于WAP的用户界面相对应的各种WAP卡的细节及 操作。在一个实施例中,使用一组CGI脚本来自动地生成WAP卡。

参照图39和40,用户按照下列方式使用WAP启用的设备来访问系 统。首先,用户按照上述方式访问他或她的无线因特网网关。该用户 于是将直接地或者通过记住的链接(即,收藏链接等等)输入系统的 URL。继而,将向对应于WAP卡1的用户提供闪光(splash)屏幕600。 在登录的初始部分期间,所述系统将标识无线设备(例如,通过设备 电话号码或其它的唯一标识符),并且试图借助于数据库查询601、通 过消息中心数据库228中的预订者表检索对应于设备的信息。如果所 述设备被标识,则该用户已经预先向系统注册了该设备。因此,该用 户面前将出现对应于WAP卡2的登录屏幕602。根据在预订者表中预先 输入的信息,将在屏幕上显现出用户的名(或其它标识符),并且将 要求该用户输入他或她的PIN。如果输入的PIN匹配所存储的PIN,则 将让该用户登录到系统中。如果否,则该用户面前将出现请求重新输 入PIN的屏幕604。如果PIN登录再次失败,则该用户面前将出现要 求如果用户期望PIN则用电子邮件向他邮寄PIN的屏幕606。

如果用户的无线设备对系统而言是新的,则数据库查询601的结 果就将为空(Null),并且所述逻辑将前进至初始的登录屏幕606, 在其中用户输入用户名和PIN。如果输入了无效PIN,则将在所述设备 上显示请求新的PIN登录的屏幕610。PIN登录刚一成功,确认屏幕 612就将出现在用户面前。参照图40,一旦已经输入用户名和PIN, 就由预订者表构成数据库查询613,以检索用户的电子邮件地址。如果 所述用户是新用户或者未发现电子邮件地址,则就请求该用户经由屏 幕614输入电子邮件地址。如果发现现有的用户电子邮件地址,则就 将经由数据库查询616来更新新设备的预订者表项。作为替换,一旦 输入了新的用户名、PIN和电子邮件地址,新的预订者记录就经由数据 库查询618而被插入到预订者表中。

一旦用户得到了确认,就判断该用户是否具有任何经由数据库622 而预先配置的网络站点。如果该用户具有预先配置的网络站点,则所 述逻辑就前进以执行CGI脚本2,所述CGI脚本的细节在图41中示出 了;否则的话,所述逻辑就跳至图43中所示的导航位置5。

参照图41,响应于CGI脚本3的执行,用户面前将出现站点选择 屏幕624,该屏幕使用户能选择网络站点,其中与用户希望打印的文档 相对应的源数据就位于上述网络站点。如果期望的话,所述用户可以 选择设置新的网络站点,这将使所述逻辑跳至导航位置5。

一旦已经选择了网络站点,CG1脚本4的执行就开始了,这会生成 图42.中所示的网络导航屏幕626、628和630。这些屏幕使用户能将 网络站点导航至与用户希望打印的文档文件相对应的浏览器。一旦用 户已经选择了文档,就使用CGI脚本3来生成屏幕632,在该屏幕中显 示了网络站点名称和文档文件名称。这个屏幕还使用户能经由打印 (Print)、传真(FAX)和电子邮件(Email)选项634来选择用户期 望输出的什么类型。

参照图3,刚一跳至导航位置5,所述用户面前就会出现设置屏幕 636。这个屏幕使用户能设置包括网络站点、打印机在内的各种收藏, 并且定义传真和电子邮件信息。网络站点(Network Site)选项的选 择使用户前进至文件服务器添加屏幕638,经由该屏幕用户能够按照类 似于上面参照经由Web页面500来添加新网络站点的方式、通过提供 URL或IP地址、用户名与密码来添加新的网络站点。如前所述,用户 名和密码都属于将要添加的特定网络。刚一选择添加网络站点,所述 用户面前就会出现确认屏幕640。如图44所示,一旦用户已经经由OK 选项选择添加网络站点,就会执行CGI脚本9以便经由数据库查询642 来把已输入的数据存储到网络站点表中,于是在用户的设备上再现出 确认服务器已被添加的屏幕644。

响应于从屏幕636上选择传真(FAX)选项,所述用户面前出现添 加传真屏幕646,用户经由所述添加传真屏幕,能够通过指定名称和传 真号码来输入新的传真。如图46所示,一旦用户选择添加传真数据, 所述用户面前就将出现确认屏幕647,并且刚一选择OK选项,就执行 CGI脚本11以便经由数据库查询648而将新记录插入在传真/电子邮 件表(FET)中。继而,所述用户面前会出现确认传真数据已被添加的 屏幕650。

同样,响应于从屏幕636上选择电子邮件(Email)选项,所述用 户面前将会出现电子邮件添加屏幕652,在该屏幕中用户将输入电子邮 件名称(即,别名)和电子邮件地址,于是选择添加新的电子邮件信 息,由此所述用户面前将出现确认屏幕653。如图47所示,刚一经由 OK选项接受,就执行CGI脚本12以便经由数据库查询654而将新记 录插入在FET表中。继而,所述用户面前会出现确认电子邮件数据已 被添加的屏幕656。

如图45所示,响应于从屏幕636上选择打印机(Printer)选项, 所述用户面前出现添加打印机屏幕658,经由该屏幕用户能够经由类似 于上面参照Web页面540和546所述的搜索条件来选择要添加的打印 机。一旦该用户经由返回选择列表选择添加打印机,所述用户面前就 将出现确认屏幕660,并且刚一选择OK选项,就经由数据库查询662 而添加打印机表中的新记录。继而,所述用户面前会出现确认新打印 机已被添加的屏幕664。

返回到图41中的屏幕632,一旦已经选定了文档文件,所述用户 就可以经由打印(Print)、传真(FAX)和电子邮件(Email)选项 634,在选定打印机上打印所述文档,将所述文档传真至选定的传真机 (经由机器的传真号码),或者将所述文档电邮至选定的电子邮件接 收方。打印(Print)选项的激活会运行CGI脚本13,从而生成图48 中所示的打印机选择屏幕666。这个屏幕使用户能从已经预先被添加到 用户收藏打印机列表的打印机当中选择打印机。刚一选择了列表中的 打印机,所述用户面前就会出现标识将要打印的文档以及选定的打印 机的配置屏幕668。如图52所示,OK选项的激活令CGI脚本16被执 行。依照打印请求,相应的打印作业将经由数据库查询670而被放入 打印队列表中,并且作业队列确认屏幕672将出现在用户面前。一旦 打印作业已经被排队,就按照上述方式通过消息中心、RDC与打印服务 的适当组合来对其进行处理,以使得在选定的打印机上打印所述文 档。

从屏幕632上激活传真(FAX)选项,会运行CGI脚本14,从而生 成图49中所示的传真选择屏幕674。这个屏幕使用户能从已经预先被 添加到用户收藏传真列表的传真当中选择传真,或者使用户能输入尚 未在传真列表中设置的传真机号码。如果按后一种情况用户选择输入 传真机号码,那么所述用户面前就会出现屏幕676,通过所这个屏幕能 够输入所述号码。从屏幕676上选择OK选项或者从屏幕674上选择预 先配置的传真机,都将令确认屏幕676得以再现。刚一选择OK选项, 就会执行CGI脚本16,其中在这种情况下,传真作业信息将经由数据 库查询678而被插入到传真/电子邮件队列表中。一旦传真作业已经被 排队,就通过适当的消息中心来对其进行处理,这将按照有点类似于 打印服务处理用于打印的文档时的方式来生成对应于所述文档的传真 数据,并且根据其传真号码来将传真数据发送到指定的传真机。

电子邮件请求的处理以类似于传真请求的方式进行。如图50所 示,这个过程是通过从屏幕632上激活电子邮件(Email)选项而发启 的,从而将运行CGI脚本15。这个CGI脚本首先生成电子邮件选择屏 幕682,该屏幕使用户能(经由相应的电子邮件别名)从用户预先配置 的收藏电子邮件接收方列表当中选择将要把文档发送到的电子邮件地 址,或者使用户能输入尚未配置的某人的新电子邮件地址。如果用户 选择人工地输入未列入表中的电子邮件地址,那么所述用户面前就会 出现屏幕684,经由该屏幕能够输入地址。从屏幕684上选择OK选项 或者从屏幕682上选择预先配置的电子邮件接收方,都将会令确认屏 幕686得以再现。刚一选择OK选项,就将执行CGI脚本16,其中在 这种情况下,电子邮件作业信息将经由数据库查询678而被插入到传 真/电子邮件队列表中。一旦电子邮件作业已经被排队,就通过适当的 消息中心来对其进行处理,从而将生成带有附加的选定文档文件的电 子邮件消息,并且通过接收方的电子邮件地址或通过经由屏幕684输 入的电子邮件地址,将所述电子邮件发送至选定的接收方。作为选择, 可以将文档的内容包含在电子邮件的主体中。电子邮件生成的更多细 节在于2002年3月21日提交的序号为No.xxxx的、名为“经由电子 邮件进行打印的方法和系统(METHOD AND SYSTEM TO PRINT VIA E- MAIL)”的共同待审美国专利申请作了论述,将该篇申请中包含的说 明书和附图全部引入于此以供参考。

返回到图39中的屏幕606,响应于用以使他或她的PIN经由电子 邮件来发送的用户请求,所述系统将从消息中心数据库228中检索所 述用户的PIN,自动地生成按名字标识用户且包含PIN的电子邮件,并 且经由用户预先注册的电子邮件地址而将该电子邮件回送给用户。然 后,如图52所示,执行CGI脚本17。如果所述电子邮件消息被成功发 送,那么标识这一成功发送的屏幕688被再现。如果在发送电子邮件 地址的过程中出现了故障,那么就在屏幕690上再现出相应的故障信 息。

文档预览导航

可选择的其中一种作业请求的输出方法就是文档预览。由于通常受 限的显示能力(例如,小屏幕、非标准的画面长宽比以及低像素分辨 率),当在输出设备上进行再现时将如何呈现文档的预览是一个非平 凡的且很有挑战性的任务。另外,预览请求所需的响应时间要比打印 请求所需的响应时间更加严格。所述输出管理系统在两个方向上解决 了这些难题。对于图像文件而言,它创建浓淡处理的缩微图并且校准 最终输出尺寸,以符合垂直与水平尺寸而不会损失画面长宽比。对于 非图像文件而言,它将所述文件转换成纯文本格式而不会损失页面比 例关系,并且将每一个页面分割成一系列卡,然后引用允许在垂直与 水平方向上的页面导航来将这些卡链接起来。

图700中的图700举例说明了转换是如何发生的。所述过程始于 原始图像702。在第一行,根据掌上设备706的显示能力而生成缩微图 704,而在第二行,根据蜂窝式电话710提供的更低的屏幕分辨率来生 成更小的缩微图708。注意:用于蜂窝式电话的缩微图未覆盖整个屏 幕,以便保持画面长宽比。

图54中的图712举例说明了察看转换过程的文本文档。正如上述 那样,根据文本排列顺序将输出文件的文本页面分解为WAP卡。例如, 第一个256字节的页面被转换成第一张卡(标签“1”),下一个256 字节的页面被转换成第二张卡,诸如此类。初始文本页面中的图像将 用链接着卡的图像来替换,以标识它们在初始环境中的放置,正如图 像链接714和预览图像716分别描绘的那样。用户可以利用这些链接 来预览根据前述图像察看转换机制生成的图像。这一布局允许在上、 下方向上以及跨越不同页面的页面导航。因为保持了页面比例关系, 所以用户也可以进行随机访问以预览这些页面。

除了顺序式的文本文档之外,所述系统还能够提供对电子表格类型 文档的预览,正如图55中的图718所举例说明的那样。预览规则(即, 顺序式文本)文档与预览电子表格之间的差异就在于:电子表格的预 览需要保存其实际的布局。因此,电子表格的预览需要在垂直与水平 尺寸上嵌入。图55中的示例对应于双页面的电子表格文档,所述双页 面电子表格文档被转换成两个9张卡的预览页面,每一个页面都包括 两个或多个链接(当可用时),以便导航至另一个页面。例如,第一 张卡720包括转到卡724的“向右”链接722和转到卡728的“向下” 链接726。还提供链以便在页面之间进行导航。因为保持了页面比例关 系,用户也可以进行随机访问以便预览这些页面。

即时消息传送集成

即时消息传送技术的迅速增长的数目和广泛的接受已经让即时消 息成为了用于连接用户们的大型系统。即时消息传送传送使用户能以 简单且近乎实时的方式来交换文本消息、聊天以及向朋友及家人发送 图像或语音问候语。然而,由于最初是为文本交换而设计的,因而总 体上来讲它不具有对信息或资源共享的感知。因此,所述输出管理系 统能够介入以弥补其不足之处。

所述系统使即时消息传送用户能让它们的伙伴共享其资源。所述资 源不局限于其类型、连接性(内部或外部、网络或本地)或者运行平 台,只要所述设备是在网络资源上被共享的即可,所述网络资源包括 但不限于:文件、软盘或光盘驱动程序、以及网络文件系统(即,共 享文件目录等等)。当用户宣布其共享资源的可利用时,这些资源对 于他们的伙伴而言都将是可见的。继而,他们的伙伴就可以通过按压 按钮来从其它人的本地目录上下载文件,将文件拖拽到其它人的软盘 或光盘,通过点击驱动程序链接来察看其它人的本地驱动程序目录, 而除了即时消息传送操作区域当中的一次输出管理系统部署并且在启 用远程桌面客户端的情况下让用户运行即时消息传送工具以外,所有 的这些都不需要显著地重现系统管理工作。

为了实现即时消息传送区域中的资源共享,即时消息传送客户端需 要具备远程桌面客户端能力。所述远程桌面客户端帮助客户端机器通 过向消息中心注册来公布其共享的资源。刚一注册结束,所述客户端 机器就能够发送和接收资源共享请求。为了提高上述性能,优选地, 即时消息传送操作商应该安装其自己的消息中心以便管理其客户端, 而不是依赖于根消息中心。

在图56中示出了举例说明示范性的即时消息传送集成实施方案图 729。在此例中,两个公用消息中心MC1和MC2位于即时消息传送(IM) 运营网络730内,每一个消息中心都包括集成的打印服务。这些消息 中心都向区域0的根消息中心MC0注册。每个即时消息传送客户端732 用户都在同一个主机上运行远程桌面客户端,并且都向IM运营商的网 络730中的其中一个消息中心进行注册。在这个配置结构中,所有的 即时消息传送客户端用户都能够访问彼此的共享资源而不必咨询根消 息中心。如果期望的话,则为了性能考虑,IM网络运营商可以安设更 多的消息中心以便按比例扩大所述系统。

举例说明的系统为设备共享采用了Microsoft Windows的新体系 结构。以使用打印机驱动程序为例,可以在请求时、通过远程桌面客 户端来向另一个主机传送Windows共享式打印机的设备驱动程序。在 下载并安装所述打印机驱动程序之后,用户可以把其它人的打印机当 作共享网络设备来进行访问。这将Windows中的设备共享概念扩展到 更大的范围。这种配置结构中的网络被扩展至整个即时消息传送网 络,而不是LAN。接着,即时消息传送用户能向彼此的共享设备输出文 件,就仿佛他们是在同一个LAN上相连着的一样,而与此同时远程桌 面客户端则做着全部的工作。

多媒体消息传送服务集成

不久前,通常由于低网络带宽和缺乏处理能力,无线设备上的无线 计算还仍只是限于面向文本的应用程序。近日,一些运营商已经为一 套更广泛的服务引入支持,比如像WAP应用程序。尽管初始反应并非 势不可挡,但是多数的无线运营商相信,提供那些将给用户提供更多 引人注目的体验的服务将是必然的。这将需要更高的网络带宽,更多 有能力的硬件,并功能更强的设备。所有来自于运营商、基础结构供 应商、和设备制造商的努力都已引发“3G”(第三代)无线通讯的到 来。

许多移动设备制造商已经开始致力于3G服务开发,包括视频片断 的支持、MP3、放映幻灯片、视频会议等等。这些均落入到广义范畴的 多媒体无线技术方案中。目前系统的体系结构通过提供多媒体输出管 理的公共平台来适合这种多媒体与移动计算环境。在图57中示出了与 正由其中一个行业先行者诺基亚(Nokia)研发的、称为多媒体消息传 送服务(MMS)的多媒体综合系统相对应的图734。

在此例中,部署了入站网关736及出站网关738,以便它们两者都 连接于MMSC以及输出管理网络740内的消息中心MC1。所述入站网关 从有MMS能力的设备742那里接收移动发启的MMS请求,将这种请求 转换并交付给消息中心MC1以供进一步处理。典型的请求可以是:将 电影片断保存到共享文件服务器上,将相片图像打印到彩色激光打印 机,或将MP3音频消息中继到上述已通电的输出管理系统的即时消息 传送客户端。所述出站MMS网关接收从输出管理客户端指定到MMS设 备的一般请求。它将这些请求转换成符合MMS的格式,并将它们发送 到多媒体消息传送服务中心(MMSC)744以供传送。所述系统能够采 用MMS操作网络746中的任一根消息中心来支持启用MMS的消息中心 与客户端之间的有效资源共享。在一个实施例中,所述入站网关和出 站网关可以被定位于同处(即,驻留在同一个装置上)以便将硬件成 本最小化。这种体系结构利用作为管道的输出管理系统来平衡对非MMS 客户端的MMS服务。在修改入站网关的进入接口和出站网关的输出接 口的情况下,多媒体消息传送服务集成的一般概念能够适用于任何类 型的多媒体服务。而其余的输出管理系统会完整无损。

经由安全CGI/VPI代理的防火墙后的文档访问/打印

正如上面所论述的那样,所述系统使用户能访问包括文档和输出设 备在内的资源,其中所述资源位于防火墙之后的专用网络上。在早期 的体系结构中,这个功能是通过利用穿过消息信道对消息信道的持久 性通信信道来辅助实施的。参照图58,能够实现这个的另一个方法是: 通过用户的CGI VPN代理。正如在图中举例说明的那样,可以对所述 系统的各种用户界面750进行配置,以便从公用网络(例如,因特网 60)那里通过CGI VPN代理752来路由公用用户通信,所述CGI VPN 代理被设置在DMZ 754内。所述CGI VPN代理继而将通过VPN交换机 756来路由所述通信,所述VPN交换机提供了通过防火墙758的安全 通路,其中所述防火墙提供DMZ 754与专用内联网之间的安全保护。 所述VPN交换机继而将入站通信路由到位于内联网760内的消息中心 MC1。同样位于内联网内的是三个专用资源,包括:打印服务PS1、文 件存储FS1以及输出设备D1。

依照举例说明的体系结构,允许公用用户经由可公开访问的用户界 面(即,Web UI和WAP UI)与位于专用网络内的消息中心之间的VPN 链路来访问专用资源。当Web UI和WAP UI的安全措施是可靠的时, 例如通过用户验证和任意的加密技术,只有得到批准的用户才能访问 VPN链路,借此维护了防火墙756的安全特性。此外,由于使用了安全 CGI VPN代理,无形中消除了通过代理而攻入专用网络的黑客。

这个实施方案扩展了系统的功能,因此无需提供可公开访问的消息 中心。例如,当销售代表从他们的总公司离开时,企业可能希望给其 销售代表提供检索和打印存储在一个或多个专用企业网络上的文档的 能力。所述CGI VPN代理与专用MC相协作,使这些销售代表能够访问 专用企业网络内的文件存储,并能够将存储在那些文件存储上的文档 打印到任何向所述专用MC注册过的输出设备上。

通过VPN交换机来访问专用MC的另一个方法就是:通过利用J2ME (Java 2 Micro Edition)+VPN启用的设备762。这种设备正处于 研发过程中,而且预测它在不久的将来能够更加易于利用。实际上, 正如图58中举例说明的那样,J2ME+VPN启用的设备具有内嵌的VPN 客户端,所述VPN客户端使所述设备能直接与VPN交换机相通信,而 无需VPN代理的用户。

在不带MC动专用网络上打印到资源

如图59A和59B所示,可以对系统进行配置以实现在位于不包括 消息中心的专用网络上的输出设备上进行打印。例如,在图59A中所 示的配置结构764,消息中心MC1被设置在DMZ 754中,而指定的打 印机D1位于通过防火墙758而与DMZ相隔开的专用内联网760内。在 这个配置结构中,在位于专用内联网内的远程桌面客户端RDC1与消息 中心MC1之间建立了持久性连接764。

在设置操作期间,远程桌面客户端RDC1将对与消息中心MC1之间 的通信进行初始化,以便打开和所述消息中心之间的持久性连接766 相对应的通信链路。所述RDC于是将数据发送到消息中心MC1,所述消 息中心MC1识别连接在它上面的输出设备(在这种情况下是输出设备 D1)。这个信息将被存储在消息中心MC1的RPRM数据库242中。

对应于配置结构764的示范性打印操作可以按如下进行。首先, 始发端设备的用户经由UI 750而与消息中心MC1相连,所述始发端设 备比如是蜂窝式电话768。通过所述UI,用户能够选择例如存储在文 件存储FS1上的远程源文档以便打印,所述文件存储FS1位于DMZ 754 中。作为选择,依据其它MC的配置结构以及其它文件存储的位置,可 以从另一个DMZ或专用网络(未示出)那里检索所述文档。当然,用 户同样也可以选择存储在始发端设备上的本地源文档以便打印。

在选择文档之后,用户于是将选择输出设备;在这种情况下,输出 设备D1被选定。刚一确认打印请求,就将由打印服务PS来从其文件 存储那里检索所述源文档,或者若所述文档是本地源的话则就发送给 打印服务。所述MC也将把信息发送到PS,该PS标识了选定的输出设 备的设备能力。所述打印服务于是将生成对应于所述源文档和选定的 输出设备的输出图像数据,并将所述输出图像数据作为输出图像文件 存储在资源库(例如,位于文件存储FS1内的资源库)中。所述PS于 是将随同对输出图像文件的引用一起,通知消息中心MC1所述作业已 结束。消息中心于是将检索输出图像文件并经由持久性连接766而将 它转发到远程桌面客户端RDC1。一旦接收了所述图像数据文件,所述 RDC于是将把它提交到用于再现的输出设备D1。刚一结束,所述RDC 就将经由持久性连接766通知消息中心MC1,于是所述MC将更新UI 750 以通知用户打印作业已经结束。

在图59B中示出了生成相同最终结果的另一个配置结构770。在这 种情况下,除了VPN交换机756、VCN客户端772和774的添加以外, 所有组件皆与图59A中的相同。在这种情况下,消息中心MC1和远程 桌面客户端RDC1将经由VPN信道776进行通信。VPN信道的使用为专 用内联网760提供了最佳水平的安全性。

在上述说明和附图中,公开了能实现MS Windows操作系统组件所 提供的软件操作的本发明的实施例。这不意旨局限于此,因为本发明 的原理和讲授都可以应用在使用其它操作系统的实施方案中,比如基 于UNIX的操作系统和基于LINUX的操作系统。举例来说,各种UNIX 和LINUX操作系统都提供了OS内核组件支持的图形用户界面、应用程 序API和打印能力,所述这些OS内核组件都提供了与上述MS Windows 打印支持组件(例如,Windows GDI、打印假脱机程序、打印机驱动程 序等等)相类似的操作。

示范性服务器计算机系统

参照图60,举例说明了通用常规计算机服务器800,它适合于在 实践本发明时结合使用,并且它可以用于其中使用一台独立计算机来 执行Web服务器操作的DPS服务器计算机和Web服务器计算机。可以 适合于这些目的计算机系统的示例包括:操作Microsoft Windows的 计算机服务器、基于UNIX和基于LINUX的操作系统。

正如本领域普通技术人员众所周知的那样,计算机服务器800包 括机箱802,在机箱中安装有主板(未示出),主板上组装了适当的集 成电路,其中包含了一个或多个处理器804和存储器(如DIMM或SIMM) 806。还包含有监控器808,用来显示由在计算机服务器上运行的软件 程序及程序模块生成的图形与文本。鼠标810(或其它指示设备)可连 接于机箱802背后的串行端口(或总线端口、或USB端口),且来自 于鼠标810的信号被传达给主板,从而控制显示器上的光标以及选择 文本、菜单选项和图形组件,它们都是通过计算机上执行的软件程序 与模块来显示于监控器808上的。另外,键盘812连接到主板,用来 让用户输入文本及命令,这些文本及命令将影响计算机上正在执行的 软件程序的运行。计算机服务器800还包括内置于主板上的网络接口 卡(NIC)814或等效电路,以使服务器能够经由网络816来发送和接 收数据。

符合本发明的文件系统存储可以经由多个硬盘818来实现,这些 硬盘内部存储于机箱802内,和/或经由多个硬盘来实现,这些硬盘存 储在外部磁盘阵列820当中,可以经由内置于主板上的SCSI卡822或 等效SCSI电路来访问该磁盘阵列。作为选择,可以利用使用适当光纤 信道(Fibre Channel)接口卡(未示出)或内置电路的光纤信道链路, 来访问磁盘阵列820。

计算机服务器800通常可以包括光盘只读存储器驱动器824,它可 将只读光盘插入其中,以使光盘上的可执行文件及数据能被读取,从 而传输到存储器806和/或硬盘818上的存储设备当中。同样,为此目 的,可以提供软盘驱动器826。还可以包括诸如光学记录媒体或DVD 驱动器之类的其它大容量存储设备。由软件程序、组件及模块组成的 机器指令,它们可使处理器804实现本发明如上所述的操作,在将它 们加载到存储器806中由处理器804执行以前,这些机器指令将典型 地分布在软盘828或CD-ROM 830(或者其它存储介质)上以及存储在 一个或多个硬盘818上。或者作为选择,这些机器指令可作为载波文 件经由网络816来进行加载。正如上面所呈现的那样,本发明的实施 例可以用作在某种形式的处理核心(比如计算机的中央处理器)上执 行的软件程序或可以用以支持这类软件程序,或者在机器可读介质上 或内部实施或实现。机器可读介质包括:任何用于以机器(例如,计 算机)可读的形式存储或发送信息的机构。例如,机器可读介质可以 包括诸如像:只读存储器(ROM);随机存取存储器(RAM);磁盘存 储器介质;光学存储介质;和闪速存储器设备等等。另外,机器可读 介质可以包括诸如电信号、光学信号、声学信号之类的传送信号或者 其它形式的传送信号(例如,载波、红外信号、数字信号等等)。

由此,本发明的实施例可以用作在某种形式的处理核心(比如,计 算机的CPU)上执行的软件程序或用于支持这类软件程序,或者在机器 可读介质上或内部实施或实现。机器可读介质包括任何用于以机器(例 如,计算机)可读的形式存储或发送信息的机制。例如,机器可读介 质可以包括诸如像:只读存储器(ROM);随机存取存储器(RAM); 磁盘存储器介质;光学存储介质;和闪速存储器设备等等。另外,机 器可读介质可以包括诸如电信号、光学信号、声学信号之类的传送信 号或者其它形式的传送信号(例如,载波、红外信号、数字信号等等)。

举例说明的本发明实施例的上述说明包括理论上描述的内容,并不 意指穷举或将发明限制成所公开的明确形式。虽然在这里所描述的本 发明的特定实施例以及示例是为了举例说明目的,但是本领域的技术 人员应将认识到,在发明范围内的各种等效修改都是可以的。

可以根据上述详细说明来对本发明作出这些修改。用在以下权利要 求中的术语不应该被解释为将本发明限制成在说明书和权利要求中公 开的特定实施例。而是,本发明的范围应当完全地通过以下权利要求 加以确定,应将依照权利要求解释的原则来对所述权利要求进行解 释。

高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈