在实时协作性会话中跟踪并编辑资源的制作方法

文档序号:6454562阅读:132来源:国知局
专利名称:在实时协作性会话中跟踪并编辑资源的制作方法
在实时协作性会话中跟踪并编辑资源
些且 冃足
随着计算机的增长和因特网的降临,尤其是万维网("web")的成熟, 对话参与者之间经由其计算机系统的实时对话正日益变得普遍。这些虚拟地通 过计算机网络发生的对话正不断地取代传统的面对面会议。
诸如MICROSOFT LIVE MEETING等协作系统正日益被用来在可能在地 理上分布的人们之间进行这些虚拟会议。在一典型的场景中,会议组织者用协 作服务服务器安排虚拟会议,并提供期望参与该排定的虚拟会议的人员的列 表。会议组织者随后向所期望的每一参与者发送邀请,邀请参与者在预定的时 间出席该虚拟会议。
这些协作系统允许在虚拟会议期间共享资源。例如,与会者可以通过 将文档的复件上传到会议来共享这些文档。尽管与会者能够査看这些共享 文档,但在与会者试图对该共享文档进'行编辑时却发生了困难。因为该文 档只有一个复件被上传到会议,因此对该共享文档的任何改变只是在文档 的复件上进行,故而未反映在该文档的原件中。 概述
提供了用于在实时协作性会话中跟踪和编辑资源的方法和系统。协作系统 在参与者之间提供实时协作性会话。在协作会话中的参与者将资源的不可编辑 复件上传到该协作性会话中以供查看时,该协作系统将上传该资源的不可编辑 复件的参与者记录为该资源的原件的所有者,并记录该资源在该参与者的机器 上的位置。在同一个或另一个参与者在协作性会话期间尝试编辑该资源的不可 编辑复件时,协作系统定位资源的原件并开始在该协作性会话中以可编辑的形 式共享该资源。
提供本概述以便以简化的形式介绍将在以下详细描述中进一步描述的 一些概念。该概述不旨在标识所要求保护的主题的关键特征或必要特征, 也不旨在用于帮助确定所要求保护的主题的范围。 附图简述


图1是示出在其中协作系统可以操作的示例环境的高级框图。
5图2是示出根据某些实施例的协作系统处理共享资源的请求的流程图。
图3A-C是示出根据某些实施例的协作系统处理编辑共享资源的请求
的流程图。 详细描述
提供了用于在实时协作性会话中跟踪和编辑资源的方法和系统。在一些实 施例中,协作系统允许创建虚拟协作性会话或会议(在此互换地被称为"虚拟 会议"或"会议")并通过跟踪资源的原件的位置来编辑已被载入会议中的资 源的复件。在会议中的与会者将诸如,作为示例,文档、文件、图像等资源的 不可编辑复件上传到会议以供在会议期间查看时,协作系统将上传该资源的不 可编辑复件的与会者记录为资源的原件的所有者。协作系统还记录该资源被上 传的位置(例如,计算机名+完整路径)。随后,在与会者在会议期间尝试编 辑资源的该不可编辑复件时,协作系统定位资源的原件并开始在该协作性会话 中以可编辑的形式共享该资源。协作系统可以使用所记录的资源的原件的所有 者的指示和该资源在那一计算机上的位置来定位该资源的原件。
在一些实施例中,在共享该资源的可编辑复件以供编辑之前,协作系统可 以向该资源的原件的所有者要求共享该资源以供编辑的授权。协作系统还可以 询问所有者是否授权将对该资源的可编辑复件的控制给予尝试编辑该资源的 不可编辑复件的与会者以供编辑。例如,协作系统可以使得运行于所有者的计 算机系统(在此互换地被称为"机器")上的客户端应用程序显示一对话框或 一系列对话框,其显示关于共享该资源以供编辑的请求的信息,且通过其所有 者可以对所呈现的问题做出响应。
如果所有者授权共享该资源以供编辑并授权将对该资源的可编辑复件的
控制授予尝试编辑该资源的不可编辑复件的与会者,则协作系统使得该资源以
可编辑的形式被共享并将对该资源的控制给予尝试编辑该资源的不可编辑复
件的与会者以供编辑。例如,协作系统可以使得运行于所有者的机器上的客户
端应用程序启动资源的应用程序共享。资源的应用程序共享使得该资源的原件
以可编辑的形式被加载到会议中,从而允许对该资源的原件进行编辑。 如果所有者授权共享该资源以供编辑但不授权向尝试编辑该资源的不可
编辑复件的与会者授予对该资源的可编辑复件的控制,则协作系统使得该资源以可编辑的形式被上传到会议中并将对该资源的可编辑复件的控制给予所有 者。在该情况中,所有者保留对该资源的可编辑复件的控制,即使另一与会者 第一个尝试编辑该资源的不可编辑复件。最后,如果所有者不授权共享该资源 以供编辑,则协作系统向尝试编辑该资源的复件的与会者通知所有者拒绝共享 该资源以供编辑。
在一些实施例中,协作系统还可以标识该资源的原件在所有者的机器上的 位置,并验证该资源的原件位于所标识的位置。例如,协作系统可以在询问所 有者其是否想要共享该资源以供编辑之前尝试验证该资源的原件位于所标识 的位置。协作系统可以使用各种公知的远程过程调用或远程命令技术的任一种 来验证该资源的原件位于所标识的位置。如果协作系统不能验证该资源的原件 的位置,则协作系统可以请求所有者提供该资源的原件的当前位置。在一些实 施例中,协作系统还可以询问所有者其是否想要共享另一资源以供编辑。如果 所有者提供该资源的原件的当前位置,则协作系统可以通过询问所有者是否授 权将对该资源的可编辑复件的控制给予尝试编辑该资源的不可编辑复件的与 会者以供编辑来继续。如果所有者指示要共享另一资源以供编辑,则协作系统 可以使得所有者的机器打开一对话框,所有者可以通过其指定要共享以供编辑 的新资源。如果所有者既没有提供该资源的原件的当前位置又没有指示要共享 新资源以供编辑,则协作系统将该情况作为所有者未授权共享该资源以供编辑 来对待。在该情况中,协作系统向尝试编辑该资源的复件的与会者通知所有者 拒绝共享该资源以供编辑。
图1是示出在其中协作系统可以操作的示例环境的高级框图。该环境仅是 合适的操作环境的一个示例,并不旨在对在此所述的协作系统的使用范围或功 能提出任何限制。如图所示,该环境包括服务器计算机系统102以及各自都耦
合到网络106的多个机器104。服务器计算机系统包括协作系统108和资源所 有者表110。协作系统在服务器上执行,并通过"主存" 一个或多个会议来提 供协作服务。协作系统利用资源所有者表来维护被上传到这些会议的资源的不 可编辑复件的记录和这些被上传的资源的原件的位置。资源所有者表包括资源 记录112,且每一资源记录都被示为包括,作为示例,含有资源ID字段114、 所有者ID字段116和位置字段117的三个字段。资源ID字段的内容标识以不可编辑形式被上传到会议的资源。所有者ID字段的内容标识将该资源的不可 编辑复件最初上传到会议的与会者。位置字段的内容指定该资源的原件在上传 与会者的机器上的位置。
如图1所示,协作系统可以正向与会者112提供会议服务。每一参与者都 可以在他或她的机器上执行客户端应用程序120来访问协作系统并参与到一个 会议或多个会议中。在机器上执行的客户端使在这些机器处的参与者能够与协 作系统进行交互。为简明起见,图1中仅示出了一个服务器计算机系统,并且 本领域的技术人员可以理解,协作系统和/或资源所有者表可以分布在多个服务 器计算机系统上。
一般而言,网络是有助于例如附连的服务器计算机系统和多个机器之间的 电子内容传送的通信链路。在一些实施例中,网络包括因特网。可以理解,网 络可以包括一种或多种其它类型的网络,如局域网、广域网、点对点拨号连接、 无线网络等等。
其上实现协作系统的计算设备,包括服务器计算机系统和机器,可以包括 中央处理单元、存储器、输入设备(例如,键盘和定点设备)、输出设备(例 如,显示设备)以及存储设备(例如,磁盘驱动器)。存储器和存储设备是可 包含实现协作系统的指令的计算机可读介质。此外,数据结构和消息结构可被
存储或经由诸如通信链路上的信号等的数据传输介质发送。可以使用各种通信 链路,如因特网、局域网、广域网、点对点拨号连接、蜂窝电话网络等。
协作系统的各实施例可以在各种操作环境中实现,这些操作环境包括个人 计算机、服务器计算机、手持式或膝上型设备、多处理器系统、基于微处理器 的系统、可编程消费电子产品、数码相机、网络PC、小型计算机、大型计算 机、包括上述系统或设备中的任一种的分布式计算环境等。计算机系统可以是 蜂窝电话、个人数字助理、智能电话、个人计算机、可编程消费电子产品、数 码照相机等。
协作系统可以在诸如程序模块等由一个或多个计算机或其它设备执行的 计算机可执行指令的通用上下文中描述。 一般而言,程序模块包括执行特定任 务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。通常, 程序模块的功能可以在各实施例中按需进行组合或分布。图2是示出根据某些实施例的协作系统处理共享资源的请求的流程图。作
为示例,协作系统可以主存若干参与者正在出席的会议。在框202,协作系统 从与会者之一接收将要共享的资源上传到该会议中的请求。在框204,协作系 统检査来确定做出请求的与会者是否被授权来将资源上传到该会议。例如,协 作系统可以基于许可等级来规定多个参与者类别,如"主持者"和"参加者", 其中主持者具有在会议期间执行比参加者额外的或更多的功能的许可。若干协 作系统确定做出请求的与会者未被授权来将资源上传到会议,则在框206,协 作系统报告该错误情况。例如,协作系统可以只允许主持人或会议中具有足够 许可的其它参与者上传资源,而做出请求的与会者可以是不具有将资源上传到 会议所必需的许可等级的参加者。在该情况中,协作系统可以将该失败的将资 源上传到会议的请求记录到错误日志中。协作系统还可以向与会者中的每一个 提供一个通知,该通知是关于做出请求的特定与会者将资源上传到会议的失败 的尝试的。
在框204,如果协作系统确定做出请求的与会者被授权将资源上传到会议 中,则在框208,协作系统从该与会者的机器接收该资源的不可编辑复件。例 如,协作系统可以指示在该与会者的机器上执行的客户端应用程序以不可编辑 的形式启动该资源的显示。作为响应,该与会者的机器上的客户端应用程序可 以生成该资源的不可编辑复件并通过将其上传到会议中来启动该资源的不可 编辑复件的显示。作为示例,客户端应用程序能以MICROSOFT Office Document Imaging (MODI)(微软Office文档成像)格式或各种其它公知的 不可编辑格式的任一种来生成该资源的复件以产生该资源的不可编辑形式。
在框210,协作系统创建将该资源的不可编辑复件上传到会议中的与会者 的记录。例如,协作系统可以在资源所有者表中创建记录,并在资源ID字段 中标识资源的不可编辑复件、在所有者ID字段中指示该与会者的机器的身份 (例如,计算机名、机器的IP地址等)、以及在位置字段中指示该资源在该 与会者的机器上的位置。通过在资源所有者表中创建记录,协作系统能够跟踪 将该资源的不可编辑复件上传到会议中的与会者和以不可编辑形式上传到会 议中的资源的原件的位置。在框212,协作系统将该资源的不可编辑复件提供 给与会者的机器中的每一个。本领域的技术人员可以理解,对于此处所公开的这个以及其它过程和方 法,在过程和方法中执行的各功能可以按不同的次序来实现。此外,所概述的 步骤仅是示例性的,并且某些步骤可以是可任选的、与更少的步骤相结合、或 扩展成额外的步骤而不损害本发明的本质。
图3A-C是示出根据某些实施例的协作系统处理编辑共享资源的请求的流
程图。在框302,协作系统接收编辑在会议中共享的资源的不可编辑复件的请
求。作为示例,会议中的主持者可以査看先前被上传到会议中的诸如文档等资 源的不可编辑复件的图像,并觉得有必要编辑该资源。会议主持者可以例如在 主持者的机器上执行的客户端应用程序的用户界面上调用命令来编辑该资源。
作为响应,客户端应用程序可以将该请求发送给协作系统。在框304,协作系 统检査以确定请求者(即,请求编辑该资源的与会者)是否具有足够的特权来 编辑该资源。例如,协作系统可以只允许会议中的主持者编辑会议中共享的资 源。如果协作系统确定请求者不具有足够的特权来编辑该资源,贝U,在框306, 协作系统报告该错误情况。例如,协作系统可以通知请求者,由于缺少足够的 特权而拒绝该请求。协作系统还可以向会议中的主持者提供编辑该资源的失败 的尝试的通知。
在框304,如果协作系统确定请求者确实具有足够的特权来编辑该资源, 则在框308,协作系统检查以确定其是否可以标识该资源的所有者。该资源的 所有者是将该资源的不可编辑复件上传到会议中以供显示或查看的与会者。在 一些实施例中,协作系统可以从资源所有者表确定该资源的所有者的身份。如 果协作系统不能标识该资源的所有者,则在框306,协作系统报告该错误情况。 例如,协作系统可以通知请求者,由于其不能标识该资源的所有者而拒绝该请 求。
在框308,如果协作系统能够标识该资源的所有者的身份,则在框310, 协作系统检查以确定该资源的原件是否位于所标识的所有者的机器上。通过执 行对所标识的所有者的机器的检查,协作系统可以验证该资源的原件的位置。 协作系统可以使用各种公知的过程调用/通信技术的任一种来检查所标识的所 有者的机器以查看该资源的原件是否存在。如果协作系统确定该资源的原件位 于所标识的所有者的机器上,则在框312,协作系统检査以确定请求者是否也是该资源的所有者。如果协作系统确定请求者是该资源的所有者,则在框314,
协作系统以可编辑的形式启动该资源的共享。例如,协作系统可以指示在所有 者的机器上执行的的客户端应用程序启动所有者机器上的资源的应用程序共 享。作为响应,所有者机器上的客户端应用程序可以在会议中启动该资源的可
编辑复件的共享。在以可编辑的形式启动该资源的共享之后,在框316,协作 系统将对被用来编辑该资源的应用程序的控制授予请求者,其在该实例中恰巧 是该资源的所有者。这允许请求者编辑该资源。
在框312,如果协作系统确定请求者不是该资源的所有者,则在框318, 协作系统向所标识的所有者通知请求者编辑该资源的期望,并向所有者要求允 许在会议中编辑该资源的授权。例如,协作系统可以指示在所有者的机器上执 行的客户端应用程序启动向所有者通知请求者编辑该资源的期望的对话框(例 如,交互式菜单、用户界面等)。所有者机器上的客户端应用程序还可以使用 该对话框向所有者要求允许在会议中编辑该资源的授权。所有者可以查看客户 端应用程序所显示的信息并适当地通过该对话框对这些问题做出响应。在框 320,协作系统检査以确定该资源的所有者是否授权编辑该资源。如果协作系 统确定所有者不授权编辑该资源,则在框322,协作系统拒绝编辑该资源的请 求。协作系统可以向请求者通知该资源的所有者拒绝允许编辑该资源。
在框320,如果协作系统确定所有者授权编辑该资源,则在框324,协作 系统以可编辑的形式启动该资源的共享。在框326,协作系统向所有者要求授 权以向请求者授予对被用来编辑该资源的应用程序的控制。例如,所有者机器 上的客户端应用程序可以要求授权以向请求者授予对被用来编辑该资源的应 用程序的控制。在框328,协作系统检查以确定该资源的所有者是否授权向请 求者授予该控制。如果协作系统确定所有者授权向请求者授予该控制,则在框 330,协作系统向请求者授予对被用来编辑该资源的应用程序的控制。这允许 请求者编辑该资源。否则,如果协作系统确定所有者不授权向请求者授予该控 制,则在框332,协作系统向所有者授予对被用来编辑该资源的应用程序的控 制。这允许所有者保留对该资源的控制。
在框310,如果协作系统确定该资源的原件不位于所标识的所有者的机器 上,则在框334,协作系统向所标识的所有者通知请求者编辑该资源的期望,以及在所有者的机器上成功地定位该资源的原件的失败。例如,自所有者最初 将该资源的不可编辑复件上传到会议中以供共享以来,所有者可能已经使用不
同的机器重新加入会议。在框336,协作系统询问所有者是否想要提供该资源 的原件的位置。在框338,协作系统检查以确定所有者是否想要提供该资源的 原件的新位置。如果协作系统确定所有者不想提供该资源的原件的新位置,则 在框340,协作系统拒绝编辑该资源的请求。协作系统可以向请求者通知定位 该资源的原件的失败和资源所有者拒绝提供该资源的原件的新位置。
如果协作系统确定所有者想要提供该资源的原件的新位置,则在框342, 协作系统从所有者接收该资源的原件的新位置。协作系统随后在框324继续处 理。例如,在框324,协作系统使得该资源在会议中以可编辑的形式被共享。 协作系统随后可以向所有者要求授权以向请求者授予对被用来编辑该资源的 应用程序的控制(框326),且取决于所有者的响应,向请求者授予对应用程 序的控制(框330)或向所有者授予对应用程序的控制(框332)。
在一些实施例中,在确定所有者不想提供该资源的原件的新位置(框338) 时,协作系统可以询问所有者是否想要在会议中开始共享另一资源以供编辑。 在所有者期望在会议中开始共享另一资源以供编辑的情况中,协作系统可以从 所有者的机器接收(例如,上传)新资源的可编辑复件,并向所有者授予对该 新资源的可编辑复件的控制以供编辑。
尽管用对结构特征和/或方法动作专用的语言描述了本主题,但可以理 解,所附权利要求书中定义的主题不必限于上述具体特征或动作。因此, 本发明的范围只由所附权利要求书定义,且上述具体特征和动作是作为实 现权利要求的示例形式而公开的。
权利要求
1. 一种在协作系统中的跟踪实时协作性会话中的资源的不可编辑复件的方法,所述方法包括接收所述资源的不可编辑复件以供在所述实时协作性会话中查看(208);以及记录所述资源的不可编辑复件的原件的位置(210),以便在所述实时协作性会话期间,可以使用所记录的位置来标识所述资源的不可编辑复件的所述原件的所有者。
2. 如权利要求1所述的方法,其特征在于,所记录的位置标识所述资 源在所有者的机器上的位置。
3. 如权利要求l所述的方法,其特征在于,还包括 在接收到编辑所述资源的不可编辑复件的请求(302)时, 获得允许编辑所述资源的不可编辑复件的授权(320);以及 以可编辑的形式启动所述资源的共享(324)。
4. 如权利要求3所述的方法,其特征在于,所述资源是从所述所有者 的机器共享的。
5. 如权利要求3所述的方法,其特征在于,所述允许编辑所述资源的 不可编辑复件的授权是从所述资源的不可编辑复件的所述原件的所有者获 得的。
6. 如权利要求3所述的方法,其特征在于,还包括,在无法获得允许 编辑所述资源的不可编辑复件的授权时,拒绝编辑所述资源的不可编辑复 件的请求(322)。
7. 如权利要求3所述的方法,其特征在于,还包括,以所述可编辑的 形式向所述实时协作性会话的请求编辑所述资源的不可编辑复件的参与者 授予对所述资源的控制(330)。
8. 如权利要求3所述的方法,其特征在于,还包括,以所述可编辑的 形式向所述资源的不可编辑复件的所述原件的所有者授予对所述资源的控 制(332)。
9. 如权利要求3所述的方法,其特征在于,还包括,验证所述资源的不可编辑复件的所述原件的位置(310)。
10. 如权利要求9所述的方法,其特征在于,还包括,在无法验证所 述资源的不可编辑复件的所述原件的位置时,从所述资源的不可编辑复件 的所述原件的所有者接收所述资源的不可编辑复件的所述原件的新位置(342)。
11. 一种包含用于通过一种方法来控制协作系统跟踪实时协作性会 话中的资源的不可编辑复件的指令的计算机可读介质,所述方法包括主存多个与会者之间的会议;从所述与会者中的一个接收资源的不可编辑复件以供在所述会议期间 查看(208);以及将上传所述资源的不可编辑复件以供在所述会议期间査看的与会者记 录为所述资源的原件的所有者(210)。
12. 如权利要求11所述的计算机可读介质,其特征在于,所述资源 的原件的所有者被记录在资源所有者表中。
13. 如权利要求11所述的计算机可读介质,其特征在于,所述记录 包括记录被所述与会者用来上传所述资源的不可编辑复件以供在所述会议 期间查看的机器的指示。
14. 如权利要求ll所述的计算机可读介质,其特征在于,还包括 检测所述与会者中的另一个的编辑所述资源的不可编辑复件的尝试(302);获得允许所述与会者中的所述另一个编辑所述资源的不可编辑复件的授权(302);使得所述资源在所述会议期间以可编辑的形式被共享(324);以及 以所述可编辑的形式向所述与会者中的所述另一个允许对所述资源的 控制以供编辑(330)。
15. 如权利要求14所述的计算机可读介质,其特征在于,还包括 无法获得允许所述与会者中的所述另一个编辑所述资源的不可编辑复件的授权;以及不允许所述与会者中的所述另一个编辑所述资源的可编辑复件。
16. 如权利要求15所述的计算机可读介质,其特征在于,还包括, 在无法获得允许所述与会者中的所述另一个编辑所述资源的不可编辑复件 的授权时,不使得所述资源以可编辑的形式被共享(322)。
17. 如权利要求15所述的计算机可读介质,其特征在于,还包括, 在无法获得允许所述与会者中的所述另一个编辑所述资源的不可编辑复件 的授权时,以所述可编辑的形式向所述资源的原件的所有者授予对所述资 源的控制以供编辑。
18. 如权利要求14所述的计算机可读介质,其特征在于,还包括, 验证所述资源的原件的位置(310)。
19. 一种用于跟踪实时协作性会话中的资源的不可编辑复件的协作 系统(108),所述系统包括被配置为在所述协作性会话的参与者之间提供协作性会话的组件; 被配置为以不可编辑的形式接收资源以供在所述协作性会话期间查看 (208)的组件;以及被配置为记录以所述不可编辑的形式接收以供在所述协作性会话期间 查看的所述资源的原件的位置(210)的组件。
20. 如权利要求19所述的系统,其特征在于,还包括,被配置为当 在所述协作性会话期间检测到编辑所述资源的尝试时要求允许编辑所述资 源的授权的组件。
全文摘要
提供了用于在实时协作性会话中跟踪和编辑资源的方法和系统。协作系统在参与者之间提供实时协作性会话。在协作会话中的参与者将资源的不可编辑复件上传到该协作性会话中以供查看时,该协作系统将上传该资源的不可编辑复件的参与者记录为该资源的原件的所有者,并记录该资源在该参与者的机器上的位置。在同一个或另一个参与者在协作性会话期间尝试编辑该资源的不可编辑复件时,协作系统定位资源的原件并开始在该协作性会话中以可编辑的形式共享该资源。
文档编号G06F19/00GK101427257SQ200780014104
公开日2009年5月6日 申请日期2007年1月25日 优先权日2006年4月21日
发明者J·M·斯蒂文斯, K·克鲁姆, K·米特拉 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1