用于改进即时消息递送系统的控制的方法和系统的制作方法

文档序号:7944233阅读:208来源:国知局
专利名称:用于改进即时消息递送系统的控制的方法和系统的制作方法
技术领域
本发明涉及改进即时消息递送系统的基于计算机的控制,以及 更具体地涉及用于对用户处在不同物理位置的多个即时消息实例的 控制进行改进的技术。
背景技术
在传统的即时消息递送系统中,多个即时消息(im)实例可以 从不同的物理位置使用相同的用户证书登陆到im会话中,由此提供 了在多个实例间共享消息的方法,以使得在每个物理位置的计算设 备可以看到相同的消息。因为用户不可以同时处在所有的不同物理 位置上,所以用户不可以物理地控制所有的多个im实例。因此,某 些im端点的安全将被危及。未经授权的人可以在该用户没有察觉的 情况下看到和/或劫持该im会话。例如,用户拥有im会话的3个实 例——一个在总公司, 一个在工作地办7>室,还有一个在会议室, 该用户现在正在会议室工作。在会议室会议结束的时候,该用户关 闭im会话的会议室实例,但是其没有回到工作地办公室,因此不能 关闭该im会话的工作地办公室实例。用户移动到总公司并且^f吏用该 im会话的总公司实例进行机密业务。而未被授权知道该机密业务信 息的其他人(例如,管理者或者办公室同事)通过工作地办公室实 例会看到该im会话。另外,在该用户关闭了总公司实例后,处在工 作地办公室的未经授权的人劫持该im会话为他/她自己所用,或者 与其他参与者开始新的im会话并且伪装成初始的使用者(即,该im
协作的真正拥有者)。因此,需要克服现有技术的至少一种前述缺 陷和局限。

发明内容
本发明提供了改进即时消息递送系统控制的方法。计算系统利
用参加到IM会话中的多个用户的第一用户的相同证书发起多个即 时消息(IM)实例。该多个IM实例被包括在该IM会话的一组IM 实例中。该組中的IM实例在多个计算设备上执行。在该多个IM实 例发起以后,该计算系统通过多个IM实例中第一 IM实例从第一用 户处接收表示IM实例组的图形元素组的图形元素选择。该图形元素 表示多个IM实例中的远程IM实例。该远程IM实例与第一 IM实例 不同。在接受图形元素选择以后,该计算系统通过第一 IM实例从第 一用户处接收动作列表的动作选择。接收动作选择包括接收由多 个计算设备的远程计算设备执行动作的请求。该远程计算设备远离 第一用户,并且执行该远程IM实例。该计算系统执行该动作。执行 该动作包括控制远程计算设备的远程系统功能。
系统和对应于上面总结的方法的计算机程序产品也将在这里描 述并要求保护。
本发明有利地提供用户的多个IM实例的幕前(front-of-screen ) 表示。幕前表示使得用户能够从多个IM实例中的一个(1)来知道 其它IM实例的属性,(2)来查看IM会话中的参与者之间的对话 连接,以及(3)来控制其它IM实例中的一个的功能,好像该用户 物理地出现在其它IM实例处那4f 。


图1是依据本发明的实施方式的、用于改进对用户位于不同物 理位置的多个即时消息实例的控制的系统框图。
图2A-图2B描述了依据本发明实施方式的、实现在图1系统中 的即时消息实例控制过程的流程图。
图3是依照本发明实施方式的、包括在图2A-图2B的过程中的、 基于图形的多个即时消息实例管理过程的流程图。
图4是依据本发明实施方式的、在图2A-图2B过程期间应用于IM属性和IM实例属性的示例性规则的表。
图5是依据本发明实施方式的、包括图形表示的示例屏幕图像, 其中该屏幕图像表示包括在图2A-图2B过程中的对话连接信息。
图6A是依照本发明实施方式的、定义由图1系统分析的消息特 征和元消息特征的过程的流程图。
图6B是依照本发明实施方式的、由图6A过程定义的示例性消 息特征和元消息特征的表。
图7是依照本发明实施方式的、基于即时消息属性确定计算设 备是否应该接收消息的示例性过程的流程图,其中该过程是由图1 中的系统实现的。
图8是依照本发明实施方式的、包括在图1中系统并且实现图 2A-图2B的过程的计算系统的框图。
具体实施例方式
概述
在IM协作环境中一其中用户拥有由处在不同地点的计算设备执 行的多个IM实例,本发明提供了包括表示多个IM实例的图形元素 的幕前表示。该幕前表示使得用户能够通过执行多个IM实例之一的 计算设备来查看并管理多个IM实例的属性。此外,该幕前表示向用 户提供了查看参加IM协作的IM实例之间的对话连接的能力。该对 话连接可以由任何IM协作中的参加者查看,以及允许参加者知晓执 行该用户拥有的多个IM实例的多个计算设备。还有,幕前表示使得 用户能够控制正由远离该用户的计算设备执行的多个IM实例中的 任何IM实例(即,远程IM实例)。远程IM实例的控制包括执 行计算设备的远程系统功能,诸如从该计算设备发送即时消息,或 者从耦合到该计算设备的数据仓库取得计算机文件并将该计算机文 件作为即时消息的附件发送。如果应用于IM属性的预定义规则允许 指定的计算设备接收IM,则完成包括以下内容的动作执行远程系统功能,以及随后发送IM到该指定的计算设备。
用于改进多个实例的控制的系统
图1是依据本发明的实施方式的系统框图,所述系统用于改进
对用户位于不同物理位置的多个IM实例的控制。系统100可以包括
即时消息递送服务器计算系统102(下文也简称为IM服务器102),
其通过网络110(例如,互联网)与多个用户计算单元104、 106、
108 (也称为计算设备、最终用户设备、IM实例设备、客户端或者
IM客户端)通信。IM服务器102包括基于软件的即时消息递送控
制引擎112,其控制用户位于不同物理位置的多个IM实例。属性数
据库114和》见则数据库116#皮耦合到IM服务器102。即时消息递送
控制引擎112从数据库114访问属性以及从数据库116访问规则,
以实现对用户的多个IM实例的控制。用户计算单元106包括代理程
序118,该代理程序118从耦合到用户计算设备106的数据仓库取得
计算机文件120。通过代理程序118取得计算机文件120以及将该计
算机文件发送给IM实例(该IM实例运行在多个用户计算设备中的
一个或者多个中)是请求控制远程系统功能的用户所请求动作的示例。在这种情况下,远程系统功能提供该计算机文件的取回。该远
程系统功能的控制通过用户的多个IM实例之一进行,该多个IM实
例在远离该用户的计算设备上执行。
在另一实施方式中,多个用户计算单元104、 106、 108中的任 何 一 个可以包括代理程序,并且可以耦合至包括计算机文件的数据
仓库,其中该计算机文件被请求作为IM附件发送到IM会话的一个 或者多个IM实例。
用于改进多个IM实例的控制的过程
图2A和图2B描述了依据本发明的实施方式的、即时消息实例 控制过程的流程图,所述控制过程是在图1的系统中实现的。即时 消息实例控制过程开始于图2A的步骤200。在步骤202中,IM服务器102 (参看图1 )发起IM会话,该IM会话在多个用户间提供 协作。在步骤202中发起的IM会话包括多个IM实例,这些IM实 例由多个用户拥有,并且在多个用户计算设备(例如,图1中的计 算设备104、 106、 108)上执行。在步骤204中,IM服务器102(参 看图1 )建立由多个用户中的单个用户拥有的多个IM实例。也就是 说,多个IM实例#:包括在IM会话的4艮多IM实例中,并且该多个 IM实例通过单个用户的同一证书登陆到该IM会话。该单个用户物 理地使用计算设备104 (参看图1)。如这里所用的,物理地使用计 算设备的用户被定义为利用具有输入/输出设备(例如,键盘)的计 算设备的用户,其中该输入/输出设备直接耦合至计算设备,或者通 过包括在计算设备内的输入/输出接口耦合至计算设备。该单个用户 所拥有的多个IM实例中的一个正由计算设备104 (参看图1 )执行, ^f旦是该多个IM实例中的一个或者多个其它IM实例正由系统100的
一个或者多个其它用户计算设备(参看图1 )执行。下文中,该单个 用户——其拥有在步骤204中建立的多个IM实例——也称为"该用户"。
在步骤206中,即时消息递送控制引擎112 (参看图1 )从属性 数据库114 (参看图1 )取回该用户的多个IM实例的属性(也称为 即时属性),并且IM服务器102 (参看图1)将即时属性发送给该 用户正物理地使用的计算设备(即,图1中的计算设备104)。在步 骤206中发送的即时属性被包括在显示在计算设备104 (参看图1) 上的幕前表示中。在查看到显示在计算设备104 (参看图1)上的幕 前表示后,该用户能够查看该用户所拥有的多个IM实例中的任何一 个(包括执行在远离该用户的计算设备(例如,图1中的计算设备
106)的任何远程IM实例)的即时属性。IM实例-该IM实例由
该用户拥有并且执行在计算设备上——的即时属性可以包括
1.对执行IM实例的计算设备和/或该计算设备的物理位置进行 标识的信息。这样的信息可以包括计算设备的互联网协议(IP) 地址和/或该计算i殳备物理位置的用户定义标识符(例如,总<^司,固定办公室,客户端位置等等);
2. 执行该IM实例的计算设备物理位置的预定义安全等级(例 如公开场合、私密场合、高安全场合等等);
3. 根据预定的标准允许计算设备向该用户呈现(例如,显示) 的数据的一个或者多个类型(例如,机密的、敏感的且个人的、私 密的、未分类的、公开的等等);
4. 与计算设备相关联的网络连接限制(例如,低带宽、不能转 发加密分组等等);
5. 基于计算设备显示特征的显示限制(例如,屏幕大小、音频 或者视频能力等等);或者
6. 关于计算设备是否是活跃地参加该IM会话的信息。 在步骤208中,即时消息递送控制引擎112 (参看图1)取回参
加到该IM会话的多个用户中每一个用户的一个或者多个属性(也称 为,用户属性),以及该IM会话的一个或者多个属性(也称为,会 话属性)。步骤208还包括IM服务器102 (参看图1 )向IM会话 的每个IM实例发送一个或者多个用户属性以及一个或者多个会话 属性。在步骤208中发送的用户属性和会话属性被包括在显示于多 个用户计算设备的幕前表示中,其中这些用户计算设备在该IM会话 中使用。包括用户属性和会话属性的幕前表示是对话连接的表示, 并且该幕前表示允许很多参加到该IM会话的用户的任何一个用户 查看会话属性,以及查看该多个用户中任何其它用户的用户属性。 在步骤20 8中发送的用户属性和会话属性可以包括
1. 用户的标识符(例如,名字),该用户拥有IM会话的IM实
例;
2. 多个用户计算设备的计算设备的标识符(例如,名称); 3.IM会话的当前日期和时间;或者
4.执行IM会话的IM实例的用户计算设备的地理位置。 在一种实施方式中,参加到该会话的用户将幕上指针(onscreen pointer )置于表示IM实例的图形元素上(即,使用mouse-over功能),以显示(1 )拥有该IM实例的用户的用户属性以及(2)包括该IM 实例的IM会话的会话属性。
在一种实施方式中,包括用户属性和会话属性的幕前表示为参 加到IM会话的每个用户提供可见性,以{更知晓登陆到该IM会话并 由参加到该IM会话的其他用户拥有的多个计算设备。包括用户属性 和会话属性的幕前表示还可以提供与登陆到IM会话的用户的多个 计算设备的每个相关的位置信息。
在步骤209中,IM服务器102 (参看图1)向计算设备104 (参 看图1 )提供幕前表示或者图形用户界面(GUI),其允许用户选择 远程:捧纵由该用户拥有的并且参加到该IM会话的一个或者多个其 它IM实例的动作。步骤209中由幕前表示或者GUI提供的一个或 者多个其它IM实例的操纵可以在这样的情况下进行该用户没有物 理地处在包括执行其它IM实例的计算设备的位置,以及该用户没有 物理地使用执行其它IM实例的计算设备。
在一种实施方式中,步骤209中提供的GUI呈现了包含动作的 选项列表。每个动作包括与所选的IM实例的交互。该用户使用步骤 209提供的GUI来选择IM实例和用于与所选择IM实例交互的动作。 所选择的动作可以包括(1 )远程退出所选IM实例,(2)从所选 IM实例发送IM, ( 3 )从耦合至执行所选IM实例的计算设备的数 据仓库中附加计算机文件,等等。
如果IM服务器102 (参看图1)在步骤210接收到这样的用户 请求动作,即,请求通过在远离该用户的计算设备上执行的用户多 个IM实例中的一个来控制远程系统功能,则即时消息实例控制过程 继续图2B中的步骤214;否则,由该IM会话提供的协作继续图2A 中的步骤212,其后跟随步骤210的循环。在步骤210中请求的动作 包括将IM发送到IM会话的一个或者多个IM实例。
在图2B中的步骤214, IM服务器102 (参看图1)向运行在远 离该用户的计算设备(例如,图1中的计算设备106)上的代理程序 发送请求。在步骤216中,该代理程序发起由该用户请求的动作所请求的远程系统功能。
在步骤218中,即时消息递送控制引擎112 (参看图1)对接收
IM的第一 IM实例进行检验,其中该IM是作为所请求动作的结果 被发送的。步骤220开始反复的检验过程。在步骤220中,为了检 验IM实例,即时消息递送控制引擎112 (参看图1)从数据库116
(参看图1 )取回一个或者多个预定义的规则,并且从数据库114(参 看图1)取回一个或者多个IM的属性(也称为IM属性)。在步骤 220取回的一个或者多个预定义的规则与请求的动作相关联,其中该 动作包括向被检验的IM实例发送IM。该一个或者多个预定义规则 还与特定的设备类型相关联,其中该设备类型描述了执行被检验的 IM实例的计算设备。还是在步骤220中,即时消息递送控制引擎112
(参看图1 )针对一个或者多个取回的预定义规则来检查一个或者多 个取回的IM属性。在步骤220中的检查将导致查询步骤222,该查 询步骤222将确定取回的一个或者多个预定义规则是否允许完成所 请求的动作,其中该动作包括向^皮^r-验的IM实例发送IM。确定取 回的预定义规则是否允许发送IM是基于一个或者多个取回的IM属 性以及执行被检验的IM实例的计算设备的类型的。
如果步骤222确定步骤220的检查允许完成所请求的动作,则 IM服务器102 (参看图1 )通过向被检验的IM实例发送IM,依据 该预定义规则在步骤224完成所请求的动作,如在步骤220中所指 示的。
如果即时消息递送控制引擎112 (参看图1 )在步骤226确定并 非将接收IM的所有IM实例都已经由开始于步骤220的反复检查过 程检验过,则在步骤228中检验下一 IM实例。也就是说,在步骤 228中,被检验的IM实例被设定为下一 IM实例,该下一实例将接 收作为所请求动作的结果的IM。在步骤228之后,反复的检查过程 在步骤220开始重复。
返回到步骤222,如果步骤220的检查不允许完成所请求的动作, 以及依照取回的预定义规则,被检一验的IM实例不允许接收该IM,则在步骤230, IM服务器102 (参看图1 )向被检验的IM实例发送 错误消息,以及向该IM会话中的其它IM实例发送状态消息。该错 误消息显示在执行被4全验IM实例的计算系统上,并且该状态消息显 示在运行其它IM实例的其它计算设备上。该错误消息指示接收该错 误消息的IM实例不允许接收该IM,以及该状态消息指示其它IM实 例中的哪个不允许接收该IM。查询步骤226跟随在步骤230后。
返回步骤226,如果所有将要检验的IM实例都已经由反复的检 查过程一企^睑过,则该即时消息控制过程在步骤232结束。
示例
例如,用户X参加到在步骤202发起的IM协作。用户X^f吏用 相同的证书登陆到4个分离的IM客户端上在总公司的膝上型计算 机、智能手机、厨房中的桌面电脑和实验室中的服务器。也就是说, 用户X拥有该IM协作的多个IM实例,其中该多个IM实例在步骤 204建立。用户X正在物理地^吏用厨房中的桌面电脑。该厨房中的 桌面电脑显示用户X所拥有的多个IM实例的任何一个的实例属性, 并且显示包括用户属性和会话属性的对话连接信息(参看步骤206 和208)。用户X想要从实验室中的服务器发送IM。用户X使用在 步骤209中提供的GUI来选择与该实验室中服务器执行的IM实例 相关联的图形元素。在选择由实验室中服务器执行的IM实例后,通 过该GUI向用户X呈现选项列表。列表中的一个选项包括从所选揮, 的IM实例发送IM的动作。用户X选择该动作以发送IM,使得作 为该IM的接收者的IM实例将从实验室中服务器接收到该IM。用 户X使用厨房中的桌面计算机,通过步骤209提供的GUI键入该IM 的文字。还是通过该GUI,用户X指引IM服务器102 (参看图1 ) 从由实验室中服务器执行的IM实例发送该IM (参看步骤210)。 然后将该IM从实验室中服务器发送到接受者(参看步骤224)。
另一个示例与执行用户的多个IM实例的IM实例的计算设备 相关联的资源可以被远程地控制。在这个示例中,认为用户X想要向参加到IM会话的多个接受者发送计算机文件。用户X拥有该 IM会话的多个IM实例。该计算机文件存储在耦合到远程计算设备
(即,相对用户X而言远程的计算设备)的数据仓库中。该数据仓 库没有耦合到由用户X物理上使用的计算设备。使用在步骤209中 提供的GUI,用户X选择由远程计算设备执行的IM实例。使用在 步骤209中提供的GUI,用户X选择动作将计算机文件附加到IM, 以及将IM和它的附件发送给接受者IM实例。该GUI允许用户X 在耦合到远程计算设备的数据仓库中定位该计算机文件。该IM服务 器102 (参看图1 )接收将计算机文件附加到IM以及将IM和它的 附件发送的请求(参看步骤210)。该IM服务器向驻留在远程计算 设备的代理程序发送该请求(参看步骤214)。该代理程序从该数据 仓库取回该计算机文件(参看步骤216)。在这个示例中,允许每个 接受者IM实例依据预定义规则来接收该IM和所附的计算机文件
(参看步骤220和222)。该IM服务器102向接受者IM实例发送 该IM和所附的计算机文件(参看步骤224)。
管理多个IM实例
图3是依照本发明实施方式的、基于图形的多个IM实例的管理 过程的流程图,所述管理过程包括在图2A-图2B的过程中。通过图 形表示管理多个IM实例的过程在步骤300开始。如果即时消息递送 控制引擎112 (参看图1 )在步骤302确定IM会话的多个IM实例 由相同的用户拥有,则该过程继续步骤304;否则,该IM会话继续 并重复步骤302。
在步骤304, IM服务器102 (参看图1 )发起交互幕前表示的显 示,其中该交互幕前表示包括与多个IM实例——^对应地相关的多个 图形元素。该幕前表示通过用户物理上使用的计算设备呈现给该用 户。在步骤306, IM服务器102 (参看图1 )将用户属性、会话属性 和实例属性链接到包括在幕前表示的图形元素中。
如果即时消息递送控制引擎112 (参看图1 )在步骤308确定该用户选择了步骤304中显示的该幕前表示中的图形元素,其中该图
形元素的选择调用动作,则该过程继续步骤310;否则,图3中的过 程在步骤312终止。例如,用户通过将光标放置在(即,悬停)图 形元素上选择该图形元素。如果所选择的图形元素与IM实例相关 联,则诸如执行相关IM实例的计算设备的物理位置的信息将通过幕 前表示显示给该用户。该用户可能在步骤308中调用的其它动作例 如包括将计算机设备作为IM会话的潜在参与者添加、将计算机设 备从IM会话的潜在参与者中删除、通过特定的计算设备登陆到IM 会话以及通过特定的计算设备退出IM会话。
例如,在步骤304中显示的幕前表示还可以包括以下关于IM实 例和执行该IM实例的计算设备的信息计算设备的IP地址、计算 设备的用户定义位置、与计算设备物理位置相关联的安全等级、计 算设备类型的标识(例如,蜂窝的、Blackberry , PC等等)、计算 设备所使用的互联网连接大小和/或类型(例如,低带宽)、计算设 备显示器的大小(例如,蜂窝电话的小显示器)等等。
在步骤310中,IM服务器120(参看图l)执行由用户选择图形 元素而引发的动作。跟随步骤310,图3的过程在步骤312终止。
图4是依据本发明实施方式的、在图2A-图2B过程期间应用于 IM属性和IM实例属性的示例性规则的表400。表400的信息列包 括属性的示例,其中这些属性被链接到图3步骤306中的图形元素, 并且在图2B步骤220被检查。表400中的"规则"列包括在图2B 步骤220中被检查的预定义规则的示例。
例如,用户请求这样的动作,该动作包括向IM会话的多个IM 实例发送具有嵌入图像的IM。该IM会话的第一 IM实例在拥有高 带宽互联网连接的个人计算机上执行。该IM会话的第二 IM实例在 蜂窝电话上运行,其中该蜂窝电话是IM客户端,并且其类型依照表 400是蜂窝的。检查包括在表400的最后一行的规则,以确定与第一 IM实例相关联的IM客户端类型是否允许接收由所请求的动作发送 的IM。类似地,检查包括在表400的最后一行的规则(参看图2B的步骤220),以确定与第二 IM实例相关联的IM客户端类型是否 允许接收由所请求的动作发送的IM。前述》见则允许向第一 IM实例 发送该IM,因为该规则声明"同意向高带宽连接的PC发送任何 消息"。同样的规则阻止向第二 IM实例发送该IM,因为该少见则还 声明"但是不要向蜂窝…发送具有嵌入了图像或者文件的消息"。
图5是包括图形表示的示例的屏幕图像,该图形表示包括在图 2A的步骤208所提供的对话连接信息。屏幕图像500包括表示计算 设备的图形元素501、 502、 503、 504、 505、 506和507,其中每个 计算设备或者执行IM会话的IM实例(即,登陆到该IM会话), 或者不登陆到该IM会话但是可能潜在地执行该IM会话的IM实例。 图形元素501-507中的每个被显示为普通图标或者"变灰的"(即, 更浅的阴影)图标。普通图标(例如,John的办公室计算机501、 John 的Blackberry 502、 John的膝上型电脑503、 Steven的办公室计算机 506和Steven家庭电脑507 )表示登陆到IM会话的计算设备。"变 灰的"图标(例如,John的客户位置504和John的家庭计算机505 ) 表示没有登陆到IM会话的计算设备。
显示在屏幕图像500中的图形表示促进了对参加到IM会话中的 所表示的计算设备的管理。例如,图形表示提供给每个IM会话的参 与者以知晓哪些计算设备登陆到IM会话的能力,以及查看每个计算 设备地理位置的能力。
显示在屏幕图像500上的图形表示允许相对于用户以及由用户 所拥有的计算设备显示会话属性和用户属性。显示的用户属性例如 包括用户名字、用户的联系人信息、该用户现在是否在该计算设 备旁边或者用户现在已经离开了该计算设备的指示、计算设备的名 称、该计算设备是否可用并且已经登陆到该IM会话的指示、该IM 会话的日期和时间以及计算设备的地理位置。
在一种实施方式中,会话属性和用户属性响应于使用了 mouse-over功能的用户而显示。例如,用户针对图形元素507使用 mouse-over功能,以显示弹出式图像508,其包括与名为Steven家庭计算机的计算设备的用户相关的会话属性和用户属性。
定义即时消息属性
图6A是依照本发明实施方式的、定义由图1系统分析出的消息 特征(也就是消息属性)和元消息特征(也就是元消息属性)的过 程的流程图。用于定义消息特征和元消息特征的过程开始于步骤
600。在步骤602中,即时消息递送控制引擎112 (参看图1)发起 对执行IM会话的IM实例的第一计算设备(也就是IM实例设备) 的指定。在步骤604中,即时消息递送控制引擎112 (参看图1 )接 收与指定的IM实例设备相关的消息特征的定义(例如,即时消息的 大小、即时消息类型等等)和元消息特征(例如,即时消息的机密 性或者来源)。在此,可接受的消息特征和元消息特征也统称为IM 属性。如果IM具有依据在步骤604接收到的定义是可接受的IM属 性,则允许IM服务器102 (参看图1 )向指定的IM实例设备发送 该IM。
如果即时消息递送控制引擎112 (参看图1)在步骤606确定并 非所有的IM实例设备都已经通过步骤604进行了指定,则该即时消 息递送控制引擎在步骤608发起下一 IM实例设备的指定,以及该过 程在步骤604开始重复;否则,图6A中的过程在步骤610终止。
图6B是依照本发明实施方式的、由图6A过程定义的示例性消 息特征和元消息特征的表650。例如,即时消息#皮允许向名为7>共 PC (参看表650的第四数据行)的IM实例设备发送,只要该消息 具有如下属性消息的类型必须是mp3、消息的大小不应超过25KB、 与该信息相关联的延迟不应超过1000ms、与该信息相关联的抖动不 应超过1000ms以及消息内容不应被分类为机密的。
对消息属性的示例性*见则应用
图7是依照本发明实施方式的、基于IM属性确定计算设备是否 应该接收消息的示例性过程的流程图,其中所述过程是由图1中的系统实现的。基于IM属性确定计算设备是否应该接收IM的过程开 始于步骤700。在该小节中,IM也称作消息。如果IM服务器102 (参看图1 )在步骤702接收指向这样的用户的IM,该用户的计算 设备正在执行IM会话的IM实例,则图7的过程继续步骤704;否 则,该IM会话继续以及该过程在步骤702重复。
如果即时消息递送控制引擎112 (参看图1 )在步骤704确定该 用户拥有的多个IM实例是该IM的潜在接受者,则图7的过程将继 续步骤706;否则,该过程将从步骤702开始重复。
在步骤706,即时消息递送控制引擎112 (参看图1)检验多个 IM实例中的第一 IM实例,其中该多个IM实例-陂确定为该IM的潜 在接受者。如果即时消息递送控制引擎112 (参看图1)在步骤708 确定该消息的大小和/或该消息的类型能够为执行当前被检验的IM 实例的计算设备所接受,则该IM服务器102(参看图1)在步骤710 发起该消息在计算设备上的显示,其中该计算设备执行当前被检验 的IM实例。
在步骤708做出确定以前,即时消息递送控制引擎112(参看图 1)从属性数据库114 (参看图1)取回(1)该IM的一个或者多 个消息属性和/或元消息属性,其中取回的属性包括该IM的大小和/ 或类型,以及(2)来自规则数据库116的一个或多个预定义规则, 该头见则允许向当前被:检验的IM实例发送该IM,如果该IM的大小 小于预定义的阀值大小和/或如果该IM的类型是预定义类型。引发 随后步骤708的"是"分支的该确定包括即时消息递送控制引擎 112 (参看图1)基于取回的一个或者多个属性来确定取回的一个或 者多个预定义规则允许向当前正祐j全验的IM实例发送IM。在图7 的示例性过程中,确定取回的一个或者多个预定义规则允许发送IM 包括即时消息递送控制引擎确定该IM的大小小于预定义的阀值大 小和/或确定该IM的类型是预定义的类型。
例如,基于消息类型和最大大小的、处于图6B表650的第二数 据行的预定义规则指示如果该IM的类型是.doc或mp3以及该IM没有超过预定义的阀值大小1KB,则类型为电话1的计算设备允许 才妻收该IM。
如果即时消息递送控制引擎112 (参看图1)在步骤712确定并 非多个IM实例中所有的IM实例已经在开始于步骤708的循环中被 检验,则在步骤714中,即时消息递送控制引擎检验下一 IM实例, 以及该过程在步骤708开始重复。因此,在步骤708的确定中使用 的、当前正被检验的IM实例是(1 )第一 IM实例,如果开始于步 骤708的循环是该循环的第一次重复;或者是(2)在步骤714最近 一次执行中涉及的下一 IM实例,如果开始于步骤708的循环是第一 次重复之后的重复。
返回步骤708后,如果即时消息递送控制引擎112 (参看图1) 确定该信息的大小和该信息的类型不能够被执行当前被检验的IM 实例的计算设备所接受,则该IM服务器102(参看图1)在步骤716 发起错误信息在计算设备上的显示,其中该计算设备不允许显示该 IM。该错误信息可以指示基于对IM属性应用预定义^L则,该计 算设备不允许接收该IM。
在步骤718, IM服务器102(参看图l)发起状态信息在一个或 者多个计算设备的显示,其中这些计算设备允许接收该IM。该状态 信息可以指示基于对IM属性应用预定义规则,已经成功接收了该 IM的计算设备状态,以及不允许接收该IM的计算设备的状态。步 骤712跟随在步骤718后。步骤712的"否,,分支已在上面描述了。
返回步骤712,如果即时消息递送控制引擎112 (参看图l)确 定多个IM实例中的所有IM实例都已经在开始于步骤708的循环中 被检验,则图7中的过程在步骤720终止。
计算系统
图8是依照本发明实施方式的、包括在图1中系统的并且实现 图2A-图2B的过程的计算设备的框图。即时消息服务器计算系统102 (也称为计算系统102)通常包括CPU 802、存储器804、输入/输出(1/0)接口 806和总线808。计算系统102耦合到1/0设备810、存 储单元812以及包括属性数据库114和规则数据库116的一个或者 多个数据仓库。CPU 802执行计算系统102的计算功能和控制功能。 CPU 802可以包括单个处理单元,或者分布在处于一个或者多个位 置的一个或者多个处理单元上(例如,在客户端或者服务器上)。
存储器804可以包括任何已知类型的数据存储介质和/或数据传 输介质,包括大容量存储、磁介质、光介质、随机访问存储器(RAM)、 只读存储器(ROM)、数据緩存、数据对象等等。存储器804的緩 存存储器元素提供至少某些程序代码的临时存储,以减少在执行中 必须从大容量存储取回代码的次数。存储器804还可以存储即时消 息或者附加到即时消息的计算机文件,其是从 一 个用户计算单元(例 如,图1中的计算单元104、 106或者108)接收的并通过图2A-2B 的过程中请求的动作发送到另一个用户的。例如,存储单元812是 磁盘驱动器或者光盘驱动器,它们可以存储包括即时消息或者附加 到即时消息的计算机文件的数据,其是从一个用户计算单元(例如, 图1中的计算单元104、 106或者108)接收的并通过图2A-2B的过 程中请求的动作发送到另一个用户的。而且,与CPU 802类似,存 储器804可以驻留在单个物理位置,包括一个或者多个类型的数据 存储,或者分布在很多不同形式的物理系统中。而且,例如,存储 器8(M可以包括跨越LAN、 WAN或者存储区域网络(SAN )(没有 示出)的分布式数据。
1/0接口 806包括用于向外部来源或者从外部来源交换信息的任 何系统。1/0设备810包括任何已知类型的外部设备,包括但不仅限 于显示监视器、键盘、指点设备、扬声器、手持设备、打印机、传 真机等等。1/0设备可以直接地或者通过1/0接口 806耦合到计算系 统102。总线808在计算系统102的每个组件之间提供通信链路,以 及可以包括任何类型的传输链路,包括电的、光的、无线的等等。
1/0接口 806还允许计算系统102存储和从辅助存储设备(例如, 存储单元812)取回信息(例如,程序指令或者数据)。通过I/0接口 806取回的数据可以包括即时消息或者附加到即时消息的计算机 文件,其是从一个用户计算单元(例如,图1中的计算单元104、 106 或者108)接收的并通过图2A-2B的过程中请求的动作发送到另一 个用户的。该辅助存储设备可以是非易失性存储设备(例如,接收 CD-ROM盘的CD-ROM驱动)。计算系统102可以存储以及从其它 辅助存储设备(未示出)取回信息,该辅助存储设备可以包括直接 访问存储设备(DASD)(例如,硬盘)、磁-光盘驱动、磁带驱动 或者无线通信设备。
存储器804包括用于即时消息递送控制引擎112改进IM系统的 控制的程序代码。存储器804还包括操作系统(例如,Linux) 814。 另外,存储器804可以包括其它未在图8中示出的系统。
即时消息递送控制引擎112可以采用全部硬件实施方式的形 式、全部软件实施方式的形式或者既包括硬件实施元素也包括软件 元素的形式。在一种实施方式中,即时消息递送控制引擎112通过 软件实现,其中包括但不仅限于固件、常驻软件、微代码等等。
另外,即时消息递送控制引擎112可以采用能够从计算机可用 介质或者计算机可读介质访问的计算机程序产品的形式,其中,该 介质提供由计算系统102或任何指令执行系统使用或与其结合的程 序代码,以便提供和促进本发明的能力。为了本描述的目的,计算 机可用介质或者计算机可读介质可以是任何这样的装置,其可以包 含、存储、递送、传播或者传送程序,其中该程序是由该指令执行 系统、装置或者设备使用,或者与该指令执行系统、装置或者设备 结合。
该介质可以是基于电的、基于磁的、基于光的、基于电磁的、 基于红外线的或者基于半导体的系统(或者装置或设备)。计算机 可读介质示例包括半导体或固态存储器、磁带、可移动计算机软盘、 RAM、 ROM、刚性;兹盘和光盘。当前光盘的示例包括只读存储光盘 (CD-ROM)、可读写存储光盘(CD-R/W)和DVD。
本发明的任何组件可以由服务提供者部署、管理、服务等等,以便针对改进IM系统的控制方法部署或者整合计算基础架构。因 此,本发明公开了用于支持计算机基础架构的过程,其包括整合、
持有、维护和部署计算机可读代码到计算系统(例如,计算系统102 ), 其中代码和该计算系统结合能够执行改进IM系统控制的方法。
在另一实施方式中,本发明提供了商业方法,该商业方法在订 阅、广告和/或费用基础上执行本发明的过程步骤。也就是说,诸如
Solution Integrator的月l务^是供者可以对用于改进IM系统控制的方法 进行创建、维护、支持等。在这种情况下,服务提供者可以为一个 或者多个客户对执行本发明的过程步骤的计算机基础架构进行创 建、维护、支持等等。作为回报,该服务提供者可以在订阅和/或费 用协议下接受来自客户的报酬,和/或该服务提供商可以接受来自销 售广告的报酬,其中该销售广告的内容是针对 一 个或者多个第三方 的。
此处描述的流程图以示例的方式提供。可以存在此处描述的图 或步骤(或操作)的变体,它们没有离开本发明的精神。例如,在 某些情况下,步骤可能以不同的顺序执行,或者可能增加、删除或 修改。所有这些变体被认为是本发明的一部分,如所附权利要求叙 述的那样。
尽管为了示例在此描述了本发明的实施方式,但是很多修改和 改变对本领域技术人员而言是显而易见的。因此,所附权利要求旨 在包含本发明的真正精神和范围之内的所有这些修改和改变。
权利要求
1.一种改进即时消息递送系统控制的计算机实现的方法,包括由计算系统利用参加IM会话的多个用户中第一用户的相同证书来发起多个即时消息(IM)实例,其中所述多个IM实例被包括在所述IM会话的多个IM实例中,以及其中所述多个IM实例正由多个计算设备执行;在所述发起以后,由所述计算系统通过所述多个IM实例的第一IM实例从所述第一用户接收表示所述多个IM实例的多个图形元素的图形元素选择,其中所述图形元素表示所述多个IM实例中的远程IM实例,以及其中所述远程IM实例与所述第一IM实例不同;在接收所述图形元素的所述选择以后,由所述计算系统通过所述第一IM实例从所述第一用户接收动作列表的动作的选择,其中接收所述动作的所述选择包括接收所述多个计算设备中远程计算设备执行所述动作的请求,其中所述远程计算设备远离所述第一用户,以及其中所述远程计算设备执行所述远程IM实例;以及由所述计算系统执行所述动作,其中执行所述动作包括控制所述远程计算设备的远程系统功能。
2. 如权利要求l所述的方法,还包括由所述计算系统通过所 述第一 IM实例从所述第一用户接收IM,其中接收执行所述动作的 请求包括接收将所述IM从所述远程IM实例发送到不同于所述多 个IM实例的IM实例的请求,其中所述IM实例包括在所述多个IM 实例中,其中执行所述动作包括向所述IM实例发送所述IM,其 中所述IM实例由所述多个用户的第二用户拥有,以及其中所述第二 用户与所述第一用户不同。
3. 如权利要求2所述的方法,还包括 由所述计算系统获取所述IM的一个或者多个属性;由所述计算系统获取用于允许向所述IM实例发送所述IM的一个或者多个预定义规则;由所述计算系统确定所述一个或者多个预定义规则允许向所述IM实例发送所述IM,其中所述确定是基于所述一个或者多个属性的。
4. 如权利要求3所述的方法,其中所述一个或者多个属性包括 所述IM的大小,其中如果所述IM的所述大小小于预定义阀值大小, 则所述一个或者多个预定义失见则允许向所述IM实例发送所述IM; 以及确定所述一个或者多个预定义规则允许所述发送包括确定所 述IM的所述大小小于所述预定义阀值大小。
5. 如权利要求3所述的方法,其中所述一个或者多个属性包括 所述IM的类型,其中如果所述IM的所述类型是预定义类型,则所 述一个或者多个预定义A见则允许向所述IM实例发送所述IM;以及 确定所述一个或者多个预定义M^则允许所述发送包括确定所述IM 的所述类型是所述预定义类型。
6. 如权利要求l所述的方法,其中所述控制所述远程系统功能 包括由所述计算系统响应于接收执行所述行动的所述请求,向驻程系统功能的请求,其中执行所述远程系统功能促进执行所述动作。
7. 如权利要求6所述的方法,其中所述代理程序对所述远程系 统功能的所述执行选自所述远程IM实例的远程退出以将所述远程 IM实例从所述IM会话中删除;IM实例的远程登陆以将所述IM实 例加入到所述IM会话中;从所述远程IM实例向所述多个IM实例 中的一个或者多个IM实例远程地发送IM;以及向所述多个IM实 例中的一个或者多个IM实例远程地发送计算才几文件。
8. 如权利要求7所述的方法,其中由所述代理程序执行所述远 程系统功能是向所述多个IM实例中所述一个或者多个IM实例远 程地发送所述计算机文件,其中发送针对所述代理程序的用于发起所述远程系统功能的执 行的所述请求包括发送针对所述代理程序的用于从耦合到所述远程计算设备的数据仓库获取所述计算机文件的请求,其中所述控制所述远程系统功能还包括在发送所述获取所述计 算机文件的所述请求以后,从所述数据仓库获取所述计算机文件, 以及在从所述数据仓库获取所述计算机文件以后,由所述计算系统 接收所述计算机文件,其中所述执行所述动作包括向所述多个IM实例中所述一个或 者多个IM实例发送所述计算机文件,其中所述一个或者多个实例没 有包括在所述多个IM实例中。
9. 如权利要求l所述的方法,还包括所述计算系统在所述发 起以后,向所述多个计算设备中的第一计算设备发送幕前表示,其 中所述幕前表示包括所述多个IM实例的多个实例属性,其中所述第 一计算设备执行所述第一 IM实例,以及其中所述第一用户物理地位 于所述第一计算设备。
10. 如权利要求9所述的方法,其中所述幕前表示包括关于所述 第一计算设备的信息,其中所述信息选自所述第 一 计算设备的互联网协议地址;所述第一计算设备的物理位置;所述物理位置的预定义安全等级;一个或者多个数据类型,其中依据预定义标准,允许所述第一计 算设备将所述数据类型向所述第 一用户呈现;基于与所述第 一计算设备相关联的网络连接类型的限制;以及 基于与所述第一计算设备的显示特征或者音频特征相关联的限制。
11. 如权利要求l所述的方法,还包括所述计算系统在所述发 起以后,向所述多个计算设备发送幕前表示,其中所述幕前表示包 括所述多个用户的多个用户属性以及所述IM会话的一个或者多个会话属性。
12. 如权利要求11所述的方法,其中所述幕前表示包括关于所 述多个用户和所述IM会话的信息,其中所述信息选自所述多个用户中的用户的名字;所述多个计算设备中的计算设备的名称,其中所述计算设备由所 述IM会话中的所述用户拥有;所述IM会话的日期和时间;以及 所述用户的地理位置。
13. —种计算系统,包括处理器以及耦合到所述处理器的计算机 可读存储器单元,所述存储器单元包括指令,当所述处理器执行所 述指令时,将实现改进即时消息递送系统的控制的方法,所述方法包括利用参加IM会话的多个用户中第 一用户的相同证书来发起多个 即时消息(IM)实例,其中所述多个IM实例-波包4舌在所述IM会话 的多个IM实例中,并且其中所述多个IM实例正由多个计算设备执行;在所述发起以后,通过所述多个IM实例的第一 IM实例从所述 第一用户接收表示所述多个IM实例的多个图形元素的图形元素选 择,其中所述图形元素表示所述多个IM实例中的远程IM实例,以 及其中所述远程IM实例与所述第一 IM实例不同;在接收所述图形元素的所述选择以后,通过所述第一 IM实例从 所述第一用户接收动作列表的动作的选择,其中所述接收所述动作 的所述选择包括接收所述很多计算设备的远程计算设备执行所述 动作的请求,其中所述远程计算设备远离所述第一用户,以及其中 所述远程计算设备执行所述远程IM实例;以及执行所述动作,其中所述执行所述动作包括控制所述远程计算 设备的远程系统功能。
14. 如权利要求13所述的系统,其中所述方法还包括通过所 述第一IM实例从所述第一用户接收IM,其中所述接收执行所述动 作的所述请求包括接收将所述IM从所述远程IM实例发送到不同 于除所述多个IM实例的IM实例的请求,其中所述IM实例包括在 所述多个IM实例中,其中所述执行所述动作包括向所述IM实例发送所述IM,其中所述IM实例由所述多个用户的第二用户拥有,以 及其中所述第二用户与所述第一用户不同。
15. 如权利要求14所述的系统,还包括 获取所述IM的一个或者多个属性;获取用于允许向所述IM实例发送所述IM的一个或者多个预定 义头见则;以及确定所述一个或者多个预定义规则允许向所述IM实例发送所述 IM,其中所述确定是基于所述一个或者多个属性的。
16. 如权利要求15所述的系统,其中所述一个或者多个属性包 括所述IM的大小,其中如果所述IM的所述大小小于预定义阀值大 小,则所述一个或者多个预定义规则允许向所述IM实例发送所述 IM,并且确定所述一个或者多个预定义规则允许所述发送包括确 定所述IM的所述大小小于所述预定义阀值大小。
17. 如权利要求15所述的系统,其中所述一个或者多个属性包 括所述IM的类型,其中如果所述IM的所述类型是预定义类型,则 所述一个或者多个预定义^L则允许向所述IM实例发送所述IM,并 且确定所述一个或者多个预定义规则允许所述发送包括确定所述 IM的所述类型是所述预定义类型。
全文摘要
本发明涉及用于改进即时消息递送系统的控制的方法和系统。利用参加IM服务器所控制的IM会话的多个用户中用户的相同证书来发起多个即时消息(IM)实例。幕前表示使得用户能够管理实例属性以及允许任何用户查看对话连接信息。该IM服务器接收该用户的图形元素的选择,其中该图形元素表示多个IM实例中的远程IM实例。通过第一IM实例,该IM服务器接收该用户的、用于计算设备执行包括与该远程IM实例交互的动作的请求。执行该动作的计算设备远离用户,并且执行该远程IM实例。通过控制计算设备的远程系统功能来执行该动作。
文档编号H04L12/58GK101494620SQ20091000395
公开日2009年7月29日 申请日期2009年1月23日 优先权日2008年1月24日
发明者C·S·林加费尔特, D·P·梅里尔, J·E·小穆尔 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1