桌面共享方法和系统的制作方法

文档序号:6593636阅读:259来源:国知局
专利名称:桌面共享方法和系统的制作方法
桌面共享方法和系统技术领域
本发明一般涉及不同计算机之间的数据共享,具体地涉及用于启用对具有将与至 少一个其它计算机共享的显示区的主机计算机的远程控制的桌面共享应用、方法、和包含 该方法的计算机可读介质。
背景技术
包括执行桌面共享应用以允许计算机共享显示信息的计算机的联网计算机系统 被广泛了解和使用。在这些计算机系统中,一个计算机(主机计算机)使用此类桌面共享 应用将其桌面的图像发送到多个远程计算机。所述远程计算机可以根据远程计算机的操作 环境使用各种策略来显示主机计算机桌面图像。
Windows是用于计算机的众所周知的操作环境。在此操作环境中,由在一个或多个 窗口中的桌面图形用户界面显示将被呈现给用户的信息。在共享显示信息并在Windows环 境中操作的计算机系统中,当主机计算机桌面的图像被经由会议服务器发送到远程计算机 时,每个远程计算机在窗口内显示主机计算机桌面图像。这样的桌面共享要求每个个人计 算机与会议服务器之间的大的稳定网络连接,尤其是在同时运行诸如视频会议的其它应用 的情况下。
在某些情况下,期望允许由具有共享显示区的特定主机计算机的远程计算机来进 行远程控制。诸如由加拿大亚伯达省卡尔加里市的SMART技术公司提供的Bridgit 的Web 会议软件使得会议期间的用户能够在共享桌面时允许在会议期间经由其它客户端计算机 通过远程控制对桌面有所贡献。通常,这由远程用户经由菜单选择手动地请求共享桌面的 远程控制来进行。作为响应,主机计算机的用户接收弹出信息或其它通知,并且主机计算机 的用户随后选择是同意还是拒绝对桌面的远程控制的请求。在同意远程控制时,键盘和鼠 标命令被经由计算机网络从远程控制计算机路由到主机计算机。
已经发现手动请求和明确的同意/拒绝过程对于用户而言是繁琐的,因为其能 够打扰并因此阻止计算机网络所支持的协作过程。仅举几个例子,在诸如由Microsoft、 WebEx, Adobe和VNC提供的那些其它系统中遇到此缺点。
如将认识到的,期望对在其中计算机共享显示信息的环境中的图形用户界面的改 进。因此,本发明的目的是提供用于启用对具有将被与至少一个客户端计算机共享的显示 区的主机计算机的远程控制的新颖方法和系统。发明内容
根据本发明的一方面,在一种在至少两个计算机之间共享显示信息的分布式计算 机网络中,提供了一种启用对具有将与至少一个客户端计算机共享的显示区域的主机计算 机的远程控制的方法,包括在主机计算机处于本地控制时,跟踪自从发生本地用户输入事 件以来所流逝的时间;在所流逝的时间超过阈值量的情况下,启用由客户端计算机进行的 对主机计算机的远程控制。
根据另一方面,提供了一种桌面共享应用,包括共享显示区域;所述桌面共享应 用可动态地在主机模式与客户端模式之间调节,在所述主机模式下,所述共享显示区域显 示上面正在执行桌面共享应用的主机计算机的桌面的共享区,并且在所述客户端模式下, 所述共享显示区域显示所述桌面共享应用与之通信的客户端计算机的桌面的共享区,该客 户端计算机执行调节在主机模式下的桌面共享应用;所述主机模式下的所述桌面共享应用 跟踪自从所述主机计算机上的本地用户输入事件以来所流逝的时间,并且在所流逝的时间 超过阈值量的情况下,启用由客户端计算机进行的对所述主机计算机的远程控制。
根据另一方面,在一种在至少两个计算机之间共享显示信息的分布式计算机网络 中,提供了一种远程地控制共享桌面的方法,包括与客户端计算机共享主机计算机上的桌 面的区域;从客户端计算机接收远程地控制主机计算机的桌面的请求;以及在自从主机计 算机上的本地用户输入活动以来所流逝的时间超过阈值量的情况下,将对主机计算机的远 程控制转移到客户端计算机。
根据另一方面,提供了一种计算机可读介质,其包含用于启用对具有将与至少一 个客户端计算机共享的显示区域的主机计算机的远程控制的计算机程序,该计算机程序包 括在主机计算机处于本地控制时跟踪自从已发生本地用户输入事件以来所流逝的时间计 算机程序代码;以及使得在所流逝的时间超过阈值量的同时能够由客户端计算机进行主机 计算机的远程控制的计算机程序代码。
根据另一方面,提供了一种包含用于一种在至少两个计算机之间共享显示信息的 分布式计算机网络中远程地控制共享桌面的计算机程序的计算机可读介质,该计算机程序 包括与客户端计算机共享主机计算机上的桌面的区域的计算机程序代码;从客户端计算 机接收远程地控制主机计算机的桌面的请求的计算机程序代码;以及在自从主机计算机上 的本地用户输入活动以来所流逝的时间已超过阈值量的情况下将对主机计算机的远程控 制转移到客户端计算机的计算机程序代码。
用于启用远程控制的时间流逝机制的有利之处在于其模拟在某人说话之后发生 的交谈中的自然停顿,指示该发言权对其它说话人/贡献者开放。该时间流逝机制与要求 主机计算机的本地用户点击对话框以许可另一用户远程地控制主机计算机的先前已知的 机制相比对于在会议或其它环境中协作的用户而言更加直观。即使是利用这种有用的机 制,根据实施例,通过能够调整会议设置以指定对主机计算机的远程控制是否被完全启用 并在任何时间从远程控制器恢复对主机计算机的控制,主机计算机的本地用户保持了对主 机计算机的最终控制。


现在仅以示例的方式参照附图来描述本发明的实施例,在附图中
图1示出其中本发明被应用于的典型网络拓扑结构的示意性表示;
图2示出依照本发明的桌面共享应用的展示者(presenter)的图形用户界面 (“⑶I”)
图3示出与图2的展示者的⑶I相对应的查看者的⑶I ;
图4示出查看者的GUI,其中展示者已展现会议参加者列表;
图5示出查看者的⑶I,其中展示者已经由图4所示的邀请按钮的选择邀请另一参加者加入会议;
图6示出查看者的⑶I,其中正在帧和子帧中显示web照相机(“webcam”)视频;
图7示出展示者的GUI包括webcam视频和webcam菜单;
图8示出具有所展现的主菜单的工具子菜单的展示者的GUI ;
图9示出与图8的展示者的⑶I相对应的查看者的⑶I ;
图10示出其中两个参加者在绘画的展示者的⑶I ;
图11示出与图10的展示者的⑶I相对应的查看者的⑶I ;
图12示出调整大小之后的展示者的⑶I ;
图13示出与图12的经调整大小的展示者的⑶I相对应的查看者的⑶I ;
图14示出查看者的GUI,其中查看者正在等待共享其桌面;
图15示出图2的展示者的GUI,其中出现对话框以允许查看者共享其桌面;
图16示出在等待桌面共享开始时的新的展示者的GUI ;
图17示出采取(assume)桌面共享之后的新的展示者的GUI ;
图18示出采取桌面共享之后的旧的展示者的⑶I ;
图19是示出用于启用由客户端计算机远程控制主机计算机的方法中的步骤的流 程图20示出其中可以启用远程控制的会话期间的查看者的GUI ;
图21示出具有用于禁用远程控制的选项的展示者的GUI上可用的下拉菜单;
图22至M示出具有展示者的共享桌面的远程控制的查看者可用的⑶I ;以及
图25示出已经被拒绝主机计算机的远程控制的查看者可用的⑶I。
具体实施方式
转到图1,示出了示例性计算环境20且其包括通过通信网络观通信的一对计算 机24a,24bο计算机24a,24b与在Morrison等人的美国专利申请No. 10/312, 983和Akitt 等人的美国专利申请No. 10/354,168中所述类型的触摸屏3h、32b通信,上述两个专利申 请的内容通过引用合并到本文中。计算机Ma、24b还与web照相机36a、36b (在本文中称 为“webcam”)、键盘40a、40b和鼠标44a、44b通信。计算机Ma、Mb中的每一个还经由通 信网络28与会议服务器48通信。本领域的技术人员应认识到出于说明的目的示出两个计 算机。在典型的会议环境中,许多计算机将通过通信网络观通信。
个人计算机2 和24b中的每一个在Windows环境中操作并包括桌面。本文所使 用的“桌面”意指操作系统的图形用户界面和在监视器上显示的应用。其包括但不限于操 作系统的“桌面”、诸如任务栏和滚动条的控件、任何图标和应用窗口。
桌面允许在窗口中向用户呈现信息。每个个人计算机运行允许个人计算机2 和 24b共享显示信息的桌面共享应用。在此特定示例中,个人计算机2 和24b运行SMART Bridgit会议软件。此桌面共享应用允许在个人计算机之间建立会议,其中,一个个人计算 机在某时被指定为主机或“展示者”计算机且其余个人计算机被指定为客户端或“参加者” 计算机。主机计算机桌面的图像在会议中被经由会议服务器48发送到客户端计算机并在 客户端计算机的监视器上全屏显示。在图1的环境中,在触摸屏3 和32b上呈现主机计 算机桌面。如将描述的,可以使得客户端计算机能够在一定程度上控制主机计算机。
主机和客户端计算机两者经由SSL链接与会议服务器48通信以提供针对被发送 的任何敏感信息的安全性。
图2示出在主机计算机上运行的桌面共享应用的图形用户界面(“⑶I”)。⑶I 100包括操作系统的桌面上的窗口。操作系统的桌面包括通过程序菜单按钮108和通知区 域112提供对一组功能的访问的任务栏104。⑶I 100被示为具有由框架120定义的共享 区116。工具栏IM被示为被锚定到框架的顶部并包括一组按钮,包括主菜单按钮128、指 针选项按钮132、绘画选项按钮136、webcam菜单按钮140和参加者列表按钮144。
可以根据需要调整⑶I 100的框架120以选择用于会议的桌面的初始共享区116。 以这种方式,主机或展示者可以控制被发送到客户端计算机且被呈现给观看者的主机计算 机的桌面的一部分。在某些情况下,可能期望操纵框架120以从共享区排除敏感控件,从而 保证不允许其它参加者对其进行访问。每次只能选择指针选项按钮132和绘画选项按钮 136中的一个。在本示例中,选择指针选项按钮132,指示指针输入将被解释为鼠标指针事 件。当选择了绘画选项按钮时,指针输入被解释为绘画事件。可以转换(toggle)参加者列 表按钮144以显示或隐藏会议中的参加者列表。在此列表中,用出现在展示者的姓名下面 的词语“展示者”来对其进行识别。
图3示出看起来如同到非展示参加者或观看者的⑶I 100。⑶I 100采取覆盖客 户端计算机的桌面的窗口的形式。GUI 100示出展示者的桌面的共享区116,并具有所示的 相同工具栏124。在本示例中,展示者已选择不允许查看者远程地控制展示者的桌面。结 果,诸如任务栏104的共享区116的某些区域被阴影化以向查看者指示该任务栏是展示者 的任务栏而不是其桌面上的那个任务栏,并且与该任务栏的交互是不可能的。
展示者可以可选地选择将与特定程序相关联的窗口阴影化或完全隐藏。例如,在 即时消息客户端被安装在展示者的计算机上的情况下,可能期望隐藏消息窗口,因为在这 些窗口中可能包含敏感和/或个人信息。并且,在应用提供分散注意力或不稳定的界面时, 可能期望隐藏该应用的窗口。要隐藏的应用的另一示例是可以出现在桌面上的窗口中的任 务管理器,因为任务管理器通常提供对计算机的管理性控制。展示者可以选择打开呈现当 前执行的应用的列表的对话框(未示出)并通过点击应用名来选择隐藏特定的应用。用于 每个应用的这些设置可以保持直至展示者选择对其进行修改为止。虽然此窗口可能不包含 敏感信息,但可能期望将该窗口阴影化以避免在远程查看者被给予远程控制访问的情况下 潜在地为查看者提供对展示者的计算机的远程管理权限。
查看者可以选择在窗口中或全屏地显示共享区116。在任一种情况下,共享区都可 以被相应地缩放,或者可以以其原始尺寸显示。在这种情况下,提供滚动条和其他类似导航 控件以使得查看者能够查看共享区的隐藏部分。
⑶I 100的框架120的颜色针对展示者和查看者两者而改变以反映呈现的控制状 态。当展示者已选择拒绝查看者的远程控制访问时,框架120以蓝色向展示者出现并以绿 色向查看者出现。当展示者已选择同意查看者的远程控制访问时,框架120以红色向展示 者和查看者出现。
展示者可以在沿着框架120的内部边缘的任一点处手动地对工具栏1 进行定 位。当展示者移动工具栏IM时,显示给查看者的工具栏IM跟踪展示者的工具栏的移动。 这允许展示者控制查看者看到的内容以保证重要的信息不被隐藏。
在会议的过程期间提供源于工具栏124的各种气球提示。该气球提示通知参加者 何时加入或离开会议以及其它重要事件。参加者具有关闭这些气球提示的选项。另外,可 以以类似的方式、单独地或与气球提示相结合地可选使用音频提示。
图4示出呈现给查看者的桌面共享应用的⑶I 100,其中,展示者已通过点击参加 者列表按钮144打开参加者列表148以便邀请另一参加者加入会议。参加者列表148按姓 名列出会议的参加者,指示谁在展示,并包括用于邀请其它参加者加入会议的“发送邀请” 按钮152。
图5示出在“发送邀请”按钮152被选择时出现的对话框156。对话框156显示包 括会议服务器的地址164、会议ID 168、和到加载应用的文件参考链接172的会议URL链接 160。会议ID 168是为会议生成的唯一标识符。此外,对话框156包括复选框176和“电子 邮件”按钮180。可以选择复选框176以用被发送到受邀参加者的电子邮件包括用于会议 的密码,其中会议是受到密码保护的。当选择了“电子邮件”按钮180时,用适当的指令打 开电子邮件表格。如果适当的话,向电子邮件表格的消息主体插入会议URL 160和用于会 议的密码。结果,为了完成该邀请,用户只须插入会议受邀者的电子邮件地址。然后准备发 送邀请。
当受邀者接收到电子邮件邀请时,为了加入会议,受邀者在打开电子邮件之后只 须点击在电子邮件消息中呈现的会议URL链接160。会议URL链接160指的是将被经由超文 本传输协议(“HTTP”)访问的文件。结果,在受邀者的计算机上启用默认Web浏览器以下 载指定文件。当Web浏览器连接到由完全合格的地址164指定的会议服务器时,会议服务器 从受邀者的计算机检索浏览器cookie并将其插入会议服务器48的地址和会议ID 168中。 浏览器cookie的名称本身对应于因特网地址,会议服务器的完全合格的域名或IP地址。如 果受邀者的计算机从未访问会议服务器,则会议服务器将不发现相应的浏览器cookie。结 果,会议服务器创建浏览器cookie并在存储会议服务器的地址和会议ID时连同展示者的 计算机的地址一起插入识别cookie的报头中。然后,会议服务器将浏览器cookie返回到 受邀者的计算机以便存储在浏览器cookie目录中。
另外,会议服务器48返回小的加载应用。当加载应用已被受邀者的计算机接收到 并执行时,其确定桌面共享应用是否已被安装在受邀者的计算机上。当桌面共享应用被下 载到计算机时,其被加载应用存储在特定系统目录中。如果加载应用在系统目录中未检测 到桌面共享应用,则加载应用从会议服务器48下载桌面共享应用并将其保存在特定系统 目录。
一旦桌面共享应用位于系统目录中,则加载应用在其中由Web浏览器维护的浏览 器cookie的目录中搜索与会议服务器相关联的浏览器cookie。由于可能存在多于一个的 会议服务器,并且每个会议服务器与预先未知的唯一因特网地址相关联,所以加载应用基 于被修改的日期字段按照降序的日期顺序检验浏览器cookie目录中的浏览器cookie,直 至定位到具有将其识别为存储会议服务器的地址和会议ID的报头的浏览器cookie为止。 虽然Web浏览器与之通信的网站只能从计算机的浏览器cookie目录检索其自己的浏览器 cookie,但加载应用能够访问所有cookie,因为其被在受邀者的计算机上本地执行。
当定位到包含会议服务器的地址和会议ID的最近修改的浏览器cookie时,加载 应用读取并注册此信息。
然后,加载应用经由包括作为参数的会议服务器的地址和会议ID的命令行命令 启用桌面共享应用。然后,桌面共享应用使用此信息来立即连接到该参数所指定的会议。结 果,在不要求诸如会议服务器名的手动输入和会议选择的用户输入的情况下连接到会议。
由于会议ID 168对于其为之生成的会议而言是唯一的,所以使用存储在浏览器 cookie中的信息来连接到会议的后续尝试导致桌面共享应用简单地被连接到指定的会议 服务器。
图6示出⑶I 100,其中查看者已选择查看webcam视频。视频帧184至少最初在 展示者的触摸屏旁边示出来自webcam的webcam视频。子帧188最初在查看者的个人计算 机旁边示出来自webcam的webcam视频。通过选择子帧188,查看者可以促使用于子帧188 的webcam视频的源被与视频帧184的源切换。这导致来自展示者的webcam视频在子帧 188中显示和来自查看者的webcam视频在帧184中显示。在存在具有webcam的多个参与 者的情况下,提供多个子帧188。
图7示出webcam菜单按钮140已被选择以展现webcam菜单192时的查看者的 ⑶I 100。webcam菜单允许参加者选择是否与会议的其它参加者共享其webcam视频馈送和 是显示还是隐藏视频帧184。
图8示出当展示者已从主菜单按钮1 选择“工具”菜单项时向展示者显示的⑶I 100。所展现的子菜单196允许展示者选择桌面共享应用应如何解释指针输入。如所示, 可以将指针输入解释为鼠标指针移动、许多笔或标记中的一个、橡皮擦、大箭头指针或聚光 灯。
图9示出查看者所看到的图8的⑶I 100。如图3至6中的任务栏一样,展示者所 打开的菜单和子菜单被阴影化以指示其为不可能与之相交互的对象。
图10示出显示给展示者的⑶I 100,其中绘画选项按钮136已被选择。在本示例 中,允许查看者在主菜单的“共享选项”子菜单(未示出)下进行远程注释的选项已被启用。 桌面共享应用在桌面的共享区顶上提供可以在其上绘画的透明虚拟渲染层。随着展示者和 查看者进行注释,该注释被接收并被共同地绘画在渲染层上。由展示者进行的绘画200和 由查看者进行的绘画204两者都同时出现在共享区116上,并且可以允许展示者和观看者 的同时贡献,由此提供用于注释的共享区域。作为默认,每个用户被分配用于此类绘画的不 同颜色。在参加者列表中识别被分配给参加者的颜色,可以通过选择参加者列表按钮144 来使所述参加者列表暴露。
另外,在本示例中,展示者和查看者两者都已从主菜单的“工具”子菜单选择“屏幕 指针”。结果,加标签的箭头指针208在共享区116中出现,其位置和定向与展示者的鼠标 指针的位置和最后移动方向相对应。并且,加标签的箭头指针212在共享区116中出现,其 位置和定向与查看者的鼠标指针的位置和最后移动方向相对应。如果参加者正在在尺寸缩 小的窗口中查看共享区,则在共享区中进行的任何绘画被相应地缩放。
图11示出查看者所看到的图10的⑶I 100。图12示出在已被通过部分地跨越屏 幕向左拖曳框架的右侧部分并部分地沿着屏幕向上拖曳框架的底部部分而调整大小之后 显示给展示者的⑶I 100。结果得到的共享区116不再包括任务栏104。在某些情况下,可 能期望仅仅显示桌面的一部分以便保持参加者集中于屏幕的关键区域,隐藏可以包含敏感 信息的屏幕的一部分,或降低桌面共享应用的网络资源要求(通过减少要求向每个参加者10发送的信息量)。此外,可以将敏感控件隐藏或使其它参加者不可访问。
图13示出查看者所看到的图12的⑶I 100。作为共享区的调整大小的结果,⑶I 100的共享区116不包括展示者的任务栏并因此对于查看者而言不可见。
桌面共享应用允许展示者的角色转移到会议中的另一参加者。图14示出在查看 者已请求共享其桌面之后立即被显示给观看者的GUI 100。图15示出被显示给展示者的结 果得到的GUI 100。如可以看到的,对话框出现以使得展示者能够暂时或在会议的持续时间 内允许或拒绝查看者的共享其桌面的请求。
图16示出在展示者已接受查看者的共享其桌面的提议之后显示给查看者的GUI 100。在共享区116中显示通知消息220。图17示出显示给查看者、由于会议的控制转移而 现在是展示者的GUI 100。在图18中示出显示给先前的展示者、现在为查看者的结果GUI 100。
由于网络带宽在因特网会议领域中通常是最有限的资源,所以桌面共享应用依赖 于许多方法来减少由计算机Ma、Mb向和从会议服务器48发送的数据量。授予加拿大亚 伯达省卡尔加里市的SMART技术公司的美国专利申请序号10/888,793公开了减少数据传 输的方法,并且其通过引用整体地合并到本文中。
现在将描述用于启用对主机计算机的远程控制的方法。在已为客户端计算机上的 查看者给予对主机计算机进行远程控制访问的情况下,查看者可以与主机计算机上的展示 者桌面的共享区相交互。包括按钮点击和移动的查看者的鼠标事件如同其在展示者的计算 机上本地地发生一样被处理。
图19是示出用于启用由客户端计算机24b远程控制主机计算机Ma的方法300 中的步骤的流程图。应理解的是,在每个上运行的桌面共享应用是可动态调节的,使得计算 机2 可以替选地被布置为处于客户端模式的客户端计算机且计算机24b可以被布置为处 于主机模式的主机计算机。然而,为了易于理解,根据以下内容,计算机Ma已被布置为主 机计算机。此外,虽然在本文中为了易于理解而参考一个客户端计算机Mb,并且虽然在某 个时间只有一个客户端计算机24b能够被转移远程控制,但可以允许任何数目的客户端计 算机24b在主机计算机2 的本地和远程控制期间访问共享显示区。
方法300从主机计算机2 处于本地控制下开始(步骤310)。这是第一次被发 起时的会议会话的状态。在共享主机计算机2 上的本地桌面时,在主机计算机2 在其 桌面被共享时自动地向会议服务器48发送PAUSE(假)消息时远程控制被启用。应理解的 是,如将描述的,远程控制的启用是用于远程控制转移的前提。还应理解的是主机计算机 24a上的展示者能够选择是否允许远程控制并从而控制主机计算机2 是否一直向会议服 务器发送PAUSE (假)消息。图21示出具有用于禁用远程控制的选项的展示者的⑶I 100 上可用的下拉菜单。如果已允许远程控制,则由主机计算机2 发送的PAUSE(假)消息使 得任何客户端计算机24b在会议期间能够根据如下文将描述的某些条件被同意进行主机 计算机Ma的远程控制。
图20示出其中可以启用远程控制的会话期间的客户端计算机24b上的查看者的 ⑶I 100。主机计算机2 的本地用户已借助于主机计算机2 的本地控制写下“用户A书 写某个文本! ”。
返回图19,在处于本地控制时,由主机计算机来跟踪自从诸如主机计算机上的鼠标点击、键盘输入或笔输入的最后本地用户输入事件以来所流逝的时间(步骤31幻。如果 所流逝的时间未超过阈值量(步骤314),该阈值量出于以下目的是三(3)秒,但其可以适当 地是另一值(诸如在约两O)与约五(5)秒之间),则在步骤312处继续所流逝的时间的 跟踪。当在主机计算机2 处发生本地用户输入事件时,所流逝的时间被复位为零(0)并 由主机计算机Ma向会议服务器48发送PAUSE (真)消息以禁用远程控制,从而防止客户 端计算机24b获得(或继续)主机计算机2 的远程控制,如果该PAUSE (真)消息不是先 前刚刚发送的。否则,如果所流逝的时间超过该阈值,则主机计算机Ma通过向会议服务器 48发送PAUSE (假)消息来通知会议服务器48远程控制被启用。
同时,会议服务器48已经在侦听来自客户端计算机Mb的REMOTE CONTROL (远程 控制)请求,该REMOTE CONTROL请求在用户用他/她的鼠标点击客户端计算机24b的共享 显示区时被发送。
如果已经从主机计算机2 接收到PAUSE (真)消息,则来自客户端计算机24b的 REMOTE CONTROL请求被利用DENY (拒绝)消息返回。客户端计算机24b进行响应,向其用 户显示远程控制当前未被启用的消息。例如,如图25所示,客户端计算机24b可以显示诸 如“请等待展示者恢复远程控制会话!,,的消息。
如果已经从主机计算机2 接收到PAUSE (假)消息,则在接收到REMOTE CONTROL请求时,会议服务器48向在会议中的其它客户端计算机24b发送REMOTE CONTROL PENDING(远程控制待决)消息以便暂时停止额外的REMOTE CONTROL请求。然后,会议服务 器48将REMOTE CONTROL请求转送到主机计算机Ma。主机计算机2 通过改变内部许可 ID、并向会议服务器48发送REMOTE CONTROL RESPONSE (远程控制响应)和REMOTE CONTROL PERMISSION CHANGE(远程控制许可改变)消息两者来立即批准该请求。
当接收到 REMOTE CONTROL RESPONSE 和 REMOTE CONTROL PERMISSION CHANGE 消 息时,会议服务器更新其内部远程控制ID JfREMOTE CONTROL PERMISSION CHANGE消息转 送到所有客户端计算机24b,并将REMOTE CONTROL RESPONSE消息转送到发出请求的客户 端计算机Mb以由发出请求的客户端计算机24b完成远程控制的启用。然后,废除REMOTE CONTROL PENDING消息以允许完成对远程控制的后续请求和同意(步骤318)。主机计算机 2 向其用户显示其处于远程控制下的可见指示。在本实施例中,所述可见指示是带有具有 远程控制的客户端计算机24b上的用户名的光标标签和/或指示客户端计算机24b具有远 程控制的与其工具栏界面相邻的气泡窗口。图22至M示出可用于具有展示者的共享桌面 的远程控制的查看者的GUI 100。在图22中,存在两个指示以向查看者“用户B”指示用户 具有对主机或展示者的桌面的控制。在图23和M中示出了被隔离和放大的两个指示。
用于启用远程控制的时间流逝机制的有利之处在于其模拟在某人说话之后发生 的交谈中的2 5秒的自然停顿,指示该发言权对其它说话人/贡献者开放。该时间流逝 机制与要求主机计算机Ma的本地用户手动地点击对话框以许可另一用户远程地控制主 机计算机Ma的先前已知的机制相比对于在会议或其它环境中协作的用户而言更加直观。 即使具有这种有用的机制,主机计算机Ma的本地用户通过能够调整会议设置以指定主机 计算机Ma的远程控制是否被完全启用并如将描述的那样在任何时间恢复主机计算机2 的控制来保持对主机计算机Ma的最终控制。
在某个时间仅对一个计算机Ma、24b同意控制减少关于正在对主机计算机2 进12行什么修改的混乱,并且还进行自动地对后续请求者同意远程控制以更好地跟踪会议的自 然谈话风格。这与其它系统的不同之处在于向第一请求者同意不能应请求被简单地转移到 第二请求者的控制。虽然在理论上自动地对后续请求者同意控制使得任何会议参加者能够 在其贡献期间干扰任何远程用户,但在实践中,已经发现用户趋向于遵循轮换的自然顺序, 并且不会长时间地持续相互干扰。
转到图19,利用已在步骤318处向请求者同意的控制,在会议服务器48处从具有 远程控制的客户端计算机24b接收具有远程控制的客户端计算机24b上的远程用户输入事 件,诸如鼠标、键盘和笔输入事件,并将其路由到主机计算机Ma。主机计算机Ma如同远程 用户输入事件被本地输入一样对待它们。在远程控制期间,主机计算机2 继续侦听主机 计算机2 处的本地用户输入事件(步骤320)。应理解的是,虽然为了易于理解已将侦听 本地用户输入事件示为串行过程,但可以采用硬件中断在任何时间打断远程控制过程以使 得主机计算机2 能够恢复本地控制。
在发生本地用户输入事件的情况下,然后主机计算机2 通过发送许可变化消息 和PAUSE (真)消息来立即恢复本地控制(步骤310)。由会议服务器48向会议中的所有客 户端计算机24b发送许可变化消息,从而防止所有客户端计算机24b远程地控制主机计算 机Ma。如可以看到的,主机计算机Ma的用户能够在任何时间恢复主机计算机Ma的本 地控制,并且同样地不必经历重新获得本地控制的请求过程。如果在步骤320处未发生本 地用户输入事件,则确定是否已从其它客户端计算机24b接收到对远程控制的请求(步骤 322)。如果已从其它客户端计算机24b接收到对远程控制的请求,则如上所述立即同意远 程控制(步骤318),并且经由会议服务器48将键盘、鼠标和笔输入事件从第二发出请求的 客户端计算机24b路由到主机计算机Ma。此机制使得能够在会议参加者之间快速地转移 对主机计算机Ma的远程控制,从而使得参加者能够以会议的速度并以很少的开销对主机 计算机2 进行更改。如果未接收到对远程控制的请求,则由具有远程控制的当前客户端 计算机Ma来保持远程控制(步骤324)。应理解的是,在远程控制期间的任何时间,如果在 主机计算机2 处接收到本地用户输入事件,则如上所述地恢复主机计算机Ma的本地控 制。
虽然上文已将远程控制从一个客户端计算机24b到第二发出请求的客户端计算 机24b的转移描述为通常在被请求时立即进行,但可以有替选。例如,可以仅在自从当前远 程控制器上的远程用户输入事件以来所跟踪的时间已超过三C3)秒阈值、或如上所述或可 能适当的另一适当阈值的情况下,启用远程控制的转移。这类似于在主机计算机2 在阈 值时间内未接收到任何本地用户输入事件时如上所述地启用远程控制。
上面已描述了与会议系统一起使用,包括经由诸如由加拿大亚伯大省卡尔加里市 的SMART 技术公司所提供的Bridgit 技术提供的中央会议服务器48来路由远程控制命 令。应理解的是,所述方法还可适用于其它网络架构,诸如对等网络等等。
用于启用远程控制的上述方法和桌面共享应用可以整体地或部分地由包括但不 限于例程、程序、对象组件、数据结构等的程序模块来实现,并且可以被实现为存储在计算 机可读介质上的计算机可读程序代码。该计算机可读介质是能够存储随后可以被计算机系 统读取的数据的任何数据存储设备。计算机可读介质的示例包括例如只读存储器、随机存 取存储器、USB密钥、闪速存储器(诸如SD卡)、CD-ROM、DVR-R0M、磁带和光学数据存储设备。计算机可读程序代码还可以分布在包括耦合计算机系统的网络上,以便以分布式方式 存储并执行计算机可读程序代码。
本发明的上述实施例意在本发明的示例且在不脱离仅仅由权利要求限定的本发 明的范围的情况下可以由本领域的技术人员对其进行变更和修改。
权利要求
1.在一种在至少两个计算机之间共享显示信息的分布式计算机网络中,一种启用对具 有将与至少一个客户端计算机共享的显示区域的主机计算机的远程控制的方法,所述方法 包括在所述主机计算机处于本地控制时,跟踪自从发生本地用户输入事件以来所流逝的时间;在所流逝的时间超过阈值量的情况下,启用由客户端计算机进行的对所述主机计算机 的远程控制。
2.如权利要求1所述的方法,包括当在所述主机计算机处发生本地用户输入事件时恢复对所述主机计算机的本地控制。
3.如权利要求1所述的方法,其中,在远程控制被启用的情况下,将远程控制转移到发 出请求的客户端计算机。
4.如权利要求3所述的方法,包括 将远程控制转移到第二客户端计算机。
5.如权利要求3所述的方法,其中,仅在自从所述客户端计算机处的远程用户输入事 件以来所流逝的时间超过所述阈值量时才启用远程控制到第二客户端计算机的转移。
6.如权利要求5所述的方法,其中,在发生来自所述第二客户端计算机的请求时立即 发生远程控制到所述第二客户端计算机的转移。
7.如权利要求1所述的方法,其中,在远程控制未被启用的情况下,在发出请求的客户 端计算机处显示指示远程控制未被启用的消息。
8.如权利要求3所述的方法,其中,通过鼠标点击在所述客户端计算机上显示的共享 显示区域来提供对远程控制的请求。
9.如权利要求3所述的方法,包括在所述主机计算机处显示所述客户端计算机正在远程地控制所述主机计算机的通知消息。
10.如权利要求2所述的方法,其中,所述主机计算机处的所述本地用户输入事件是鼠 标活动事件、键盘活动事件、或笔活动事件。
11.如权利要求9所述的方法,其中,所述通知消息是所述主机计算机上的光标标签和 邻近于工具栏界面的气泡窗口中的至少一个。
12.如权利要求3所述的方法,还包括使得所述主机计算机上的用户能够暂停由所述 客户端计算机对所述主机计算机的远程控制和解除暂停。
13.如权利要求1所述的方法,其中,所述阈值量约为3秒。
14.如权利要求1所述的方法,其中,所述阈值量在约2秒与约5秒之间。
15.如权利要求1所述的方法,其中,所述主机计算机经由会议服务器与所述至少一个 客户端计算机共享其显示区域。
16.如权利要求15所述的方法,其中,所述主机计算机跟踪自从发生本地用户输入事 件以来所流逝的时间。
17.如权利要求16所述的方法,其中,所述主机计算机在所流逝的时间超过所述阈值 量的情况下通过向所述会议服务器发送远程控制启用消息来启用远程控制。
18.如权利要求17所述的方法,其中,所述主机计算机通过在已发生本地用户输入事件的情况下向所述会议服务器发送远程控制禁用消息来禁用远程控制,从而恢复对所述主 机计算机的本地控制。
19.如权利要求18所述的方法,其中,所述会议服务器侦听来自所述至少一个客户端 计算机的远程控制请求。
20.如权利要求19所述的方法,其中,所述会议服务器在远程控制未被启用的情况下 向发出请求的客户端计算机发送对远程控制请求的拒绝。
21.如权利要求19所述的方法,其中,在从客户端计算机接收到远程控制请求后,所述 会议服务器向所述至少一个客户端计算机中的其它计算机发送远程控制待决消息,从而暂 时停止附加远程控制请求。
22.如权利要求21所述的方法,其中,所述会议服务器将接收到的远程控制请求转送 到所述主机计算机以供批准,在由所述主机计算机向所述会议服务器发送远程控制批准消 息后,允许所述发出请求的客户端计算机远程地控制所述主机计算机。
23.如权利要求3所述的方法,其中,在所述主机计算机的远程控制期间,所述主机计 算机显示所述主机计算机处于远程控制下的可见指示。
24.一种桌面共享应用,包括共享显示区域;所述桌面共享应用可动态地在主机模式与客户端模式之间调节,在所述主机模式下, 所述共享显示区域显示上面正在执行所述桌面共享应用的主机计算机的桌面的共享区,并 且在所述客户端模式下,所述共享显示区域显示所述桌面共享应用与之通信的客户端计算 机的桌面的共享区,所述客户端计算机执行被调节在主机模式下的桌面共享应用;所述主机模式下的所述桌面共享应用跟踪自从所述主机计算机上的本地用户输入事 件以来所流逝的时间,并且在所流逝的时间超过阈值量的情况下,启用由客户端计算机进 行的对所述主机计算机的远程控制。
25.如权利要求M所述的桌面共享应用,其中,所述主机模式下的所述桌面共享应用 在所述主机计算机处发生本地用户输入事件时恢复对所述主机计算机的本地控制。
26.如权利要求M所述的桌面共享应用,其中,所述桌面共享应用在远程控制被启用 的情况下将远程控制转移到发出请求的客户端计算机。
27.如权利要求沈所述的桌面共享应用,其中,所述主机模式下的桌面共享应用将远 程控制转移到第二客户端计算机。
28.如权利要求M所述的桌面共享应用,其中,所述阈值量约为3秒、
29.如权利要求M所述的桌面共享应用,其中,所述阈值量在约2秒与约5秒之间。
30.如权利要求M所述的桌面共享应用,其中,所述主机模式下的桌面共享应用经由 会议服务器与所述至少一个客户端计算机共享所述显示区域。
31.如权利要求30所述的桌面共享应用,其中,所述主机模式下的桌面共享应用跟踪 自从发生本地用户输入事件以来所流逝的时间。
32.如权利要求31所述的桌面共享应用,其中,所述主机模式下的桌面共享应用在所 流逝的时间超过所述阈值量的情况下通过向所述会议服务器发送远程控制启用消息来启 用远程控制。
33.如权利要求32所述的桌面共享应用,其中,所述主机模式下的桌面共享应用在已发生本地用户输入事件的情况下通过向所述会议服务器发送远程控制禁用消息来禁用远 程控制,从而恢复对所述主机计算机的本地控制。
34.如权利要求30所述的桌面共享应用,其中,所述客户端模式下的桌面共享应用将 本地用户的远程控制请求发送到所述会议服务器。
35.如权利要求34所述的桌面共享应用,其中,所述客户端模式下的桌面共享应用在 对处于主机模式下的所述主机计算机的远程控制未被启用的情况下从所述会议服务器接 收对远程控制请求的拒绝。
36.在一种在至少两个计算机之间共享显示信息的分布式计算机网络中,一种用于远 程地控制共享桌面的方法包括与客户端计算机共享主机计算机上的桌面的区域;从所述客户端计算机接收远程地控制所述主机计算机的桌面的请求;以及在自从所述主机计算机上的本地用户输入活动以来所流逝的时间已超过阈值量的情 况下,将对所述主机计算机的远程控制转移到所述客户端计算机。
37.如权利要求36所述的方法,其中,所述主机计算机发送用于启用由所述客户端计 算机进行的对所述主机计算机的远程控制的远程控制启用消息。
38.如权利要求37所述的方法,其中,经由会议服务器来发送和接收远程地进行控制 的所述请求和所述远程控制启用消息。
39.如权利要求38所述的方法,其中,所述会议服务器在对所述主机计算机的远程控 制未被启用的情况下自动地拒绝远程地控制所述主机计算机的桌面的请求。
40.一种包含计算机程序的计算机可读介质,所述计算机程序用于启用对具有将与至 少一个客户端计算机共享的显示区域的主机计算机的远程控制,所述计算机程序包括在所述主机计算机处于本地控制时跟踪自从已发生本地用户输入事件以来所流逝的 时间的计算机程序代码;以及在所流逝的时间超过阈值量的情况下启用由客户端计算机进行的对所述主机计算机 的远程控制的计算机程序代码。
41.一种包含计算机程序的计算机可读介质,所述计算机程序用于在一种在至少两个 计算机之间共享显示信息的分布式计算机网络中远程地控制共享桌面,所述计算机程序包 括与客户端计算机共享主机计算机上的桌面的区域的计算机程序代码;从所述客户端计算机接收远程地控制所述主机计算机的桌面的请求的计算机程序代 码·’以及在自从所述主机计算机上的本地用户输入活动以来所流逝的时间已超过阈值的情况 下将对所述主机计算机的远程控制转移到所述客户端计算机的计算机程序代码。
全文摘要
在一种在至少两个计算机之间共享显示信息的分布式计算机网络中,一种启用对具有将与至少一个客户端计算机共享的显示区的主机计算机的远程控制的桌面共享应用程序、方法、和包含该方法的计算机可读介质。所述方法包括在主机计算机处于本地控制时跟踪自从发生本地用户输入事件以来所流逝的时间;以及在所流逝的时间超过阈值量的情况下,启用由客户端计算机进行的对主机计算机的远程控制。
文档编号G06F15/16GK102037459SQ200980118654
公开日2011年4月27日 申请日期2009年5月21日 优先权日2008年5月21日
发明者丹尼尔·米切尔, 大卫·拉比内, 沃伊泰克·奎贝尔, 马克·阿尔托萨尔 申请人:智能技术无限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1