专利名称:建立协作通信的方法和系统的制作方法
技术领域:
本发明涉及计算机软件领域,尤其涉及为无线设备提供协作服务的装置。
背景技术:
协作软件是那种允许人们在地理分散位置上实时交换意见和工作成果的软件。协作软件部件可以包括网络(Web)会议,可视电话会议,即时消息,聊天,共同浏览,等等。协作软件的有效使用可以产生时间和成本的大大节约,因为协作软件可以在个体间产生有效的通信,而无需要求个体们位于相同的物理位置。
传统的协作软件解决办法要求两个用户预定一个协作服务器,并且当能够在它们之间建立协作通信之前是在线的。例如,为了使第一用户向第二用户发送一条即时消息,这两个用户必须预定一个公共即时消息服务器并且在线,而且通过网际协议(IP)网络进行通信连接。
有关两个用户通过IP网络连接的要求忽略了可通过移动无线网络访问的移动计算设备的许多通信可能性。也就是说,传统的技术不允许用户从客户机计算设备发起与访问移动计算设备的第二用户的协作通信。例如,传统的协作软件解决办法不允许在台式机用户和通过移动电话交换局(MTSO)通信连接到台式机的移动电话及/或个人数据助理的用户之间进行即时消息通信。
发明内容
本发明提供一种通过无线通信连接为移动设备提供协作服务的方法、系统和设备。也就是说,本发明通过一种用于网络服务的标准化网关,例如扩展网关(Parlay gateway)为移动设备提供协作服务。更具体地说,协作客户机可以启动在服务供应商环境中布置的中间客户机。中间客户机可以通过网际协议(IP)网络与协作客户机通信。中间客户机还可以通过扩展网关与移动设备建立通信。在一个方案中,中间客户机可以是自动Java servlet,其起到通信中介的作用。
两个不同的部件可以被包括在扩展网关中以帮助与移动设备的通信。一个网关部件可以处理在它自己和中间客户机之间的通信。例如,符合公共对象请求代理结构(CORBA)的分布式程序对象可以通过网关构件来定义,并且可以被用来在扩展网关和中间客户机之间传送数据。第二网关构件可以处理它自己与连接到移动设备的无线访问协议(WAP)网关之间的通信。可以使用多个不同的第二网关构件,其中每个这种构件可以被定制成允许与特定WAP网关或连接到WAP网关的客户应用程序通信。
本发明的一方面包括用于建立协作通信的方法。该方法包括从发起客户机接收与指定用户进行协作会话请求的步骤。中间客户机可以被使能(enable),其中中间客户机可以被包括在通过因特网协议(Internet protocol)网络与发起客户机通信连接的服务器中。在一个实施方案中,可以由远离包括了中间客户机的服务器的协作服务器接收这种请求。该远离的服务器可以是Lotus Sametime型服务器。可以确定与指定用户相关的移动设备。通信会话可以通过中间客户机和移动设备之间的无线网络进行初始化。通过使用中间客户机作为通信中介,可以在发起客户机和移动设备之间传送至少一个协作消息。
在一个实施方案中,可以在中间客户机和移动设备之间设立网关。在一个特定实施方案中,该网关可以是扩展网关。该网关可以包括用于管理网络设备的至少一个标准应用程序接口(API)。在中间客户机和网关之间可以通过一种符合针对API定义的消息传送标准的方式传送数据。另外,可以利用符合公共对象请求代理结构(CORBA)的分布式程序对象传送数据。此外,可以在网关中初始化一个通用于中间客户机的构件。网关中可以启动另一个特定于与移动设备相关的移动网关的构件。可以通过这两种构件来建立移动设备与网关之间的通信。
在另一个实施方案中,可以在中间客户机和移动设备之间设立一个通信网关。信息可以在中间客户机和通信网关之间以一种符合为通信网关定义的无线通信协议(WAP)的方式传送。通信网关可以通过移动电话交换局(MTSO)与移动设备直接通信。
本发明的另一个方面可以包括一个用于提供协作通信的系统。该系统可以包括中间客户机,扩展网关和WAP网关。中间客户机可以在台式协作客户机与移动协作客户机之间建立通信。台式协作客户机可以通过网际协议网络与中间客户机通信连接。移动协作客户机可以通过移动通信网络与中间客户机通信连接。可以在中间客户机与移动协作客户机之间设置扩展网关。此外,WAP网关可以布置在扩展网关和移动协作客户机之间。WAP网关可以通过MTSO与移动协作客户机通信。在一个实施方案中,扩展网关可以包括中间客户机构件,其被构造成用于在中间客户机与扩展网关之间交换数据。扩展网关还可以包括WAP部件,其被构造成用来在扩展网关和WPA网关之间交换数据。
附图中表示了前面所提到的实施方案;但是应理解,本发明并不限于这里所示的具体方案和手段。
附图1是根据这里公开的发明方案所举例说明的用于为移动客户机提供协作服务的系统的示意图。
附图2是根据这里公开的发明方案所举例说明的另一用于为移动客户机提供协作服务的系统的示意图。
附图3是根据这里公开的发明方案所举例说明的与移动设备建立协作通信的方法的流程图。
具体实施例方式
附图1是根据这里公开的发明方案所举例说明的用于为移动客户机提供协作服务的系统100的示意图。系统100可以包括协作服务器105,协作客户机110,服务提供商125和移动客户机145。协作服务器105可以处理一个或多个协作服务,例如实时消息服务,电子邮件服务,远程电信会议,聊天,共同浏览,网络广播,等等。在一个实施方案中,协作服务器105可以是Lotus Sametime(TM)型服务器。
协作客户机110可以是设置在计算设备,例如台式计算机中的协作客户机。协作客户机110可以通过具有网际协议网络115预定协作服务器105。网络115可以包括因特网,企业内部互联网,局域网(LAN),广域网(WAN),等等。此外,网络115可以包含安全和开放的通信路径。此外,网络115可以利用地基通信线路,例如公共电话交换网(PSTN)线路和同轴电缆线路,以及无线通信连接。
移动客户机145可以是设置在移动设备,例如个人数据助理(PDA),移动电话,车载信息系统,等等中的协作客户机。信息可以通过无线网络传送给移动客户机145。无线网络140可以是例如公共陆地移动网络(PLMN)、用于建立与移动客户机145的电话和/或因特网通信的网络。
移动客户机145可以通过数据信道或者语音信道接入因特网。数据信道通信可以涉及通过无线通信数据传送协议,例如无线访问协议(WAP)进行的数据传送。通过语音信道接入因特网需要使用能由语音服务器120提供的语音服务,例如自动语音识别(ASR),合成语言发生,语音可扩展标记语言(VoiceXML)解释,等等。
服务提供商125是可以是向服务用户提供一种多个服务,例如电话服务,因特网服务,有线电视服务,视频服务,文字处理服务,交互式语音应答(IVR)服务,语音消息传送服务等等的实体。服务提供商125可以为多个用户提供网络连接,其中网络连接可以包括通过无线网络140进行的因特网连接以及通过IP网络115进行的连接。
服务提供商125可以包括利于在协作客户机110与移动客户机之间进行协作通信的中间客户机130。在一个实施方案中,中间客户机130可以是能够用于代理协作通信的虚拟协作客户机。也就是说,协作客户机110可以通过标准协作界面与中间客户机130通信,以代替与移动客户机145的直接通信。中间客户机130可使用合适的通信信道和协议,将所接收的来自协作客户机110的协作数据传送给移动客户机145。
当与移动客户机145通信时,中间客户机135可以使用一个或者多个网关135。在一个实施方案中,网关135可以包括用于管理网络服务的标准网关,所述网络服务可以包括一个或多个用来帮助消息传送的库。例如,网关135可以提供一个或者多个应用程序接口(API)和相关的库,用于帮助跨过不同网络的安全通信。这样的网关135可以是一个扩展网关。由网关135管理的网络服务可以包括本地提供的服务,万维网服务,远程过程调用(RPC)服务,和/或等等。
在另一个实施方案中,网关135可以包括特定于无线网络140的通信网关。例如,网关135可以是WAP网关。在这个实施方案中,网关135可以使用标准化通信库和/或例程通过移动电话交换局(MTSO)与移动客户机145直接通信。
如这里所应用的,Lotus Sametime(TM)型应用程序可以包括任何过去及今后属于Lotus Sametime(TM)系列应用程序一部分的应用程序,以及与之兼容和似近等效的应用程序。需要强调的是,LotusSametime(TM)型应用程序仅仅是本发明的一个实施例,本发明通常可应用于任何IM客户机和/或协作软件解决方案。
附图2是根据这里公开的发明方案所举例说明的另一用于为移动客户机提供协作服务的系统200的示意图。在一个实施方案中,系统200可以代表附图1中所例举的服务提供商125和网关135的实施方案。系统200可以包括无线客户机服务器205,网关225和无线网关265。
无线客户服务器205可以通过IP网络202接收与指定用户进行协作的请求。响应该请求,无线客户服务器205可以为与无线网络204通信连接的移动协作客户机提供通信链路。
无线客户服务器205可以是独立应用程序,或者集成在为服务提供商提供因特网,企业内部网,万维网解决方案等等的应用程序内。例如,无线客户服务器205可以是类似Armonk,纽约的国际商业机器(IBM)公司提供的WebSphere(TM)的解决方案的一个部分。更具体地,无线客户服务器205可以是被包括在用于电信(WAS-T)的WebSphere应用服务器内的应用程序,用来在WebSphere解决方案平台内提供电信万维网服务。
无线客户机服务器205可以启动一个用于协作服务的中间客户机。中间客户机可以利用协作引擎210和构件引擎215。协作引擎210可以包括模块化服务器端应用程序,用来执行无线客户服务器205的指定功能。例如,协作引擎210可以包括一个或多个JAVA(TM)servlet,其执行协作功能。在另一个实施方案中,协作引擎210可以启动一个或多个公共网关接口(CGI)应用程序。
构件引擎215可以包括一系列由协作引擎210使用的接口例程。例如,构件引擎可以包括企业Java Beans(EJB)构件,其中当Java servlet和/或Java Beans被应用程序引擎210使用时,所述构件能够与协作引擎120结合使用。在另一个实例中,构件引擎215可以包括符合构件对象模型/分布式构件对象模型(COM/DCOM)结构的构件。为在无线客户服务器205与网关225之间建立通信,部件引擎215还可以包括一个或者多个应用程序接口(API)模块。
网关225可以代表用于管理利于软件重用的网络服务的分层解决方案。在一个实施方案中,网关225可以是开放服务体系结构(OSA)/扩展网关。网关可以包括框架结构230,一个或多个通用构件235,和一个或多个特定于服务的构件240。框架结构230可以包括针对网关225建立的协议和结构,例如OSA/扩展框架结构。框架结构230还可以管理那些执行已安装的万维网服务所需的网关225构件的初始化。
通用构件235可以本质上是通用的,并可被用来与网关225提供的各种不同服务接口。一个这种通用构件235可以作为网关225和无线客户服务器205之间的接口来使用。例如,通用构件235可以包括用于使用分布式对象,例如CORBA对象在无线客户服务器205和网关225之间传送信息的规格说明、库和/或例程。在这个例子中,被构件引擎215激活的EJB可以与网关225的API接口,以在无线客户服务器205和网关225之间交换消息。此外,API可以被通用构件235所定义,和/或使用其例程。
特定于服务的构件240可以定义用于特定无线网关265的接口。不同的无限网关265可以要求不同的特定于服务的构件。无线网关265可以通过MTSOL与连接到无线网络204的移动设备通信。当无线网关265是WAP设备时,无线设备内可以安装接收协作通信的WAP客户机。
图3根据这里公开的发明方案所举例说明了与移动设备建立协作通信的方法300的流程图。方法300可以在协作通信系统的上下文中执行,该系统包括协作服务器、在计算机内运行的协作客户机、以及在移动计算设备内运行的移动协作客户机。方法300可以从步骤305开始,在这里可以接收与指定用户进行协作通话的请求。该请求可以被一个协作服务器,例如Lotus Sametime型服务器所接收。该请求可以来自一个通过因特网协议网络通信连接到协作服务器的初始客户机。
在步骤310中,可以使能配置在服务提供环境中的中间客户机。例如,中间客户机可以是响应协作请求在服务提供商的服务器中启动的Java servlet。在步骤315中,可以确定与指定用户相关的移动设备。在步骤320中,可以在中间客户机和网络服务网关之间建立通信连接。例如,可以启动扩展网关中的构件,使得分布式对象,例如CORBA对象能够在中间客户机和扩展网关之间传送。在步骤320中,可以在网络服务网关和WAP网关之间建立通信连接。在一个实施方案中,网络服务网关可以包括针对特定WAP网关的通信协议定制的多个构件。在这个实施方案中,可以用网络服务网关启动WAP构件以建立与WAP网关的通信连接。
在步骤330中,可以在中间客户机与确定的移动设备之间初始化通信连接,从而在发起客户机与移动设备之间建立利用中间客户机作为通信中间的通信。在步骤335中,至少一个协作消息能够通过已建立的通信连接在发起客户机与移动设备之间传送。
本发明可以通过硬件,软件,或软硬件结合的方式实现。本发明方法和系统的实施可以通过在一个计算机系统内以集中方式,或者以不同单元交叉分布在内部互连计算机系统中的分布式方式来实现。任何类型的计算机系统,或能够实现这里所描述的方法的其他设备,都可用于完成这里所描述的功能。典型的软硬件结合可以是具有计算机程序的通用计算机,当该程序被装入并运行时,该程序控制计算机系统执行所述的方法。
本发明还可以被嵌入计算机程序产品中,该产品包括了执行所述方法的全部特征,并且当它被装入在计算机系统中时能够实现这些方法。本文中所述的计算机程序意味着以任何语言、代码或符号对一组指令的任何表示,该指令旨在使具有信息处理能力的系统通过下述两种方式之一直接或者在其后或者两者兼有地执行特定功能a)转换成为另一种语言、代码或者符号;b)以其他物质形式再现。
本发明可以通过其他形式来具体实施,而不背离它的精神或本质属性。相应地,在确定本发明的保护范围时,应该参考下述的权利要求书,而不是前述的说明书。
权利要求
1.一种用于建立协作通信的方法,包括步骤从发起客户机接收与指定用户进行协作会话的请求;使能设置在服务器中的中间客户机,该服务器通过因特网协议网络与所述发起客户机通信连接;确定与所述指定用户相关的移动设备;通过无线网络在所述中间客户机和所述移动设备之间初始化通信会话;以及使用所述中间客户机作为中介,在所述发起客户机和所述移动设备之间传送至少一个协作消息。
2.如权利要求1所述的方法,还包括步骤提供远离包括所述中间客户机的所述服务器的协作服务器,其中所述协作服务器在所述接收步骤期间接收所述请求,并且相应开始所述使能步骤。
3.如权利要求2所述的方法,其中所述协作服务器是Lotussametime型服务器。
4.如权利要求1所述的方法,还包括步骤在所述中间客户机和所述移动设备之间提供网关,其中所述网关包括至少一个标准应用程序接口,用于管理网络设备;以及以符合为应用程序接口定义的消息传送标准的方式,在所述中间客户机和所述网关之间传送数据。
5.如权利要求4所述的方法,其中所述传送数据的步骤还包括使用符合公共对象请求代理结构、分布式对象模型和用于万维网服务绑定的结构中的至少一种的分布式程序对象传送数据。
6.如权利要求4所述的方法,其中所述网关是扩展网关。
7.如权利要求4所述的方法,还包括步骤启动所述网关中对所述中间客户机通用的构件;以及启动所述网关中特定于与所述移动设备相关的移动网关的构件。
8.如权利要求1所述的方法,还包括步骤在所述中间客户机和所述移动设备之间提供通信网关;以及以符合针对所述通信网关定义的无线访问协议的方式在所述中间客户机和所述通信网关之间传送信息。
9.如权利要求8所述的方法,其中所述通信网关通过移动电话交换局与所述移动设备直接通信。
10.一种用于建立协作通信的系统,包括用于从发起客户机接收与指定用户进行协作会话的请求的方法;用于使能设置在服务器中的中间客户机的方法,该服务器通过因特网协议网络与所述发起客户机通信连接;用于确定与所述指定用户相关的移动设备的方法;用于通过无线网络在所述中间客户机和所述移动设备之间初始化通信会话的方法;以及用于使用所述中间客户机作为中介,在所述发起客户机和所述移动设备之间传送至少一个协作消息的方法。
11.一种机器可读存储器,在其中存储了具有多个代码段的计算机程序,所述代码段可被机器运行以使该机器执行以下步骤从发起客户机接收与指定用户进行协作会话的请求;使能设置在服务器中的中间客户机,该服务器通过因特网协议网络与所述发起客户机通信连接;确定与所述指定用户相关的移动设备;通过无线网络在所述中间客户机和所述移动设备之间初始化通信会话;以及使用所述中间客户机作为中介,在所述发起客户机和所述移动设备之间传送至少一个协作消息。
12.如权利要求11所述的机器可读存储器,还包括步骤提供远离包括所述中间客户机的所述服务器的协作服务器,其中所述协作服务器在所述接收步骤期间接收所述请求,并且相应开始所述使能步骤。
13.如权利要求12所述的机器可读存储器,其中所述协作服务器是Lotus Sametime型服务器。
14.如权利要求11所述的机器可读存储器,还包括步骤在所述中间客户机和所述移动设备之间提供网关,其中所述网关包括至少一个标准应用程序接口,用于管理网络设备;以及以符合为应用程序接口定义的消息传送标准的方式,在所述中间客户机和所述网关之间传送数据。
15.如权利要求14所述的机器可读存储器,其中所述传送数据的步骤还包括使用符合公共对象请求代理结构、分布式对象模型和用于万维网服务绑定的结构中的至少一种的分布式程序对象传送数据。
16.如权利要求14所述的机器可读存储器,其中所述网关是扩展网关。
17.如权利要求14所述的机器可读存储器,还包括以下步骤启动所述网关中对所述中间客户机通用的构件;以及启动所述网关中特定于与所述移动设备相关的移动网关的构件。
18.如权利要求11所述的机器可读存储器,还包括以下步骤在所述中间客户机和所述移动设备之间提供通信网关;以及以符合针对所述通信网关定义的无线访问协议的方式在所述中间客户机和所述通信网关之间传送信息。
19.如权利要求18所述的机器可读存储器,其中所述通信网关通过移动电话交换局与所述移动设备直接通信。
20.一种用于提供协作通信的系统,包括中间客户机,被构造成用于在台式协作客户机和移动协作客户机之间建立通信,其中所述台式协作客户机与所述中间客户机通过网际协议网络通信连接,并且其中所述移动协作客户机与所述中间客户机通过移动通信网络通信连接;设置在所述中间客户机和所述移动协作客户机之间的扩展网关;以及设置在所述扩展网关和所述移动协作客户机之间的无线访问协议网关,其中所述无线访问协议网关与所述移动协作客户机通过移动电话交换局通信。
21.如权利要求20所述的系统,其中所述扩展网关还包括被构造成用来在所述中间客户机和所述扩展网关之间交换数据的中间客户机构件。
22.如权利要求20所述的系统,其中所述扩展网关还包括被构造成用来在所述中间扩展网关和所述无线访问协议网关之间交换数据的无线访问协议构件。
全文摘要
一种建立协作通信的方法包括接收来自发起客户机的与指定用户进行协作通信的请求的步骤。可使能中间客户机,该中间客户机可以被设置在一个通过互联网协议网络与发起客户机通信连接的服务器中。可以确定一个与指定用户相关的移动设备。在中间客户机和移动设备之间的通信会话可以通过无线网络来实现。通过使用中间客户机作为通信中介,可以在发起客户机与移动设备之间传送至少一个协作消息。
文档编号H04L12/18GK1642124SQ200410082428
公开日2005年7月20日 申请日期2004年9月21日 优先权日2003年12月18日
发明者托马斯·E·克里莫, 约瑟夫·H·麦金太尔, 维克托·S·穆尔 申请人:国际商业机器公司