管理用户界面的设备和方法

文档序号:7971553阅读:223来源:国知局
专利名称:管理用户界面的设备和方法
技术领域
与本发明一致的设备和方法涉及管理用户界面,更具体地说,涉及管理用户界面,其中,使用超文本标志语言(HTML)和超文本传送协议(HTTP)来管理由网络上的服务器提供的应用程序的用户界面的状态。
背景技术
通过远程服务器提供应用程序的技术包括微软的远程桌面协议(RDP)和因特尔的扩展远程协议。这些远程技术是基于二进制位图传输协议的,并且,当提供应用程序时,它们具有需要较大的网络带宽的缺点。具体地说,当远程应用程序的用户界面使用音频和/或视频流传输时,所需的网络带宽变得更大。
同时,当通过预定客户机使用由服务器提供的应用程序执行工作的用户通过另一客户机使用所述应用程序执行工作时,该用户可稍后请求一致的用户界面。也就是说,用户想要将与通过第一客户机完成工作所用的用户界面相同的用户界面通过第二客户机显示。
图1示出在客户机已经改变的情况下提供远程应用程序的传统系统。参照图1,在通用即插即用(UPnP)环境中,所述系统包括远程控制点10、远程服务器20、第一远程客户机31和第二远程客户机32。
UPnP环境的联网操作包括寻址、发现、描述、控制、事件触发(eventing)和呈现。远程控制点10确认正在进行与第一远程客户机31的连接。然后,远程控制点10使远程服务器20在预定时间内保持用于当前操作连接的用户界面的状态,并且使远程服务器20存储所述状态。
然后,远程控制点10终止远程服务器20和第一远程客户机31之间的连接,建立远程服务器20和第二远程客户机32之间的连接,并接着命令远程服务器20将存储的用户界面提供给第二远程客户机32。
然而,在用户界面的各个状态中,除了由远程服务器20管理的用户界面状态之外,还存在由远程客户机31和远程客户机32管理的状态。例如,web浏览器的客户机cookie、表格输入和音频/视频对象都由远程客户机管理。因此,根据传统技术存储在远程服务器20中的用户界面的状态不包括由远程客户机31和远程客户机32管理的状态。
当远程服务器不包括存储单元时,没有存储并恢复用户界面的方法。因此,需要解决该问题。

发明内容
根据本发明的一方面,提供一种用于管理用户界面的设备,所述设备包括包产生单元,产生指示在网络上存在一个或多个远程服务器的通知包;web服务器,管理通过网络发送的预定应用程序的用户界面的状态的存储命令或者作为发布通知包的结果而接收的提取命令;状态存储单元,根据存储命令存储用户界面的状态;以及通信单元,发送根据提取命令从存储的用户界面的状态之中提取的预定用户界面的状态。
根据本发明的另一方面,提供一种用于显示用户界面的设备,所述设备包括服务器检索单元,搜索存储关于提供的应用程序的用户界面的状态的服务器;状态管理请求单元,根据搜索结果产生关于用户界面的状态的存储命令包或提取命令包;通信单元,发送用户界面的状态或所述包;以及web浏览器,显示响应于提取命令包的发送而接收的预定用户界面。
根据本发明的另一方面,提供一种管理用户界面的方法,所述方法包括产生指示在网络上存在一个或多个远程服务器的通知包;管理通过网络发送的预定应用程序的用户界面的状态的存储命令或者作为发布通知包的结果而接收的提取命令;根据存储命令存储用户界面的状态;以及发送根据提取命令从存储的用户界面的状态之中提取的预定用户界面的状态。
根据本发明的另一方面,提供一种显示用户界面的方法,所述方法包括搜索存储关于提供的应用程序的用户界面的状态的服务器;根据搜索结果产生关于用户界面的状态的存储命令包或提取命令包;发送用户界面的状态或所述包;以及显示响应于提取命令包的发送而接收的预定用户界面。


通过下面结合附图对本发明示例性实施例进行的详细描述,本发明的上述和其它特点和优点将会变得更加清楚,其中图1示出在客户机已经改变的情况下提供远程应用程序的传统系统;图2示出根据本发明示例性实施例的管理用户界面的系统;图3是示出根据本发明示例性实施例的提供应用程序的远程服务器的框图;图4是示出根据本发明示例性实施例的管理用户界面的状态的存储服务器的框图;图5是示出根据本发明示例性实施例的接收应用程序的远程客户机的框图;图6示出根据本发明示例性实施例的关于用户界面的状态的超文本标志语言(HTML)代码;图7A和图7B分别示出根据本发明示例性实施例的关于存储命令包和提取命令包的HTML代码;图8是示出根据本发明示例性实施例的搜索存储服务器的过程的流程图;图9是示出根据本发明示例性实施例的在通用即插即用(UPnP)环境中搜索存储服务器的过程的流程图;图10是示出根据本发明示例性实施例的检索用户界面的状态的过程的流程图;图11是示出根据本发明示例性实施例的管理用户界面的状态的过程的流程图;以及图12是示出根据本发明示例性实施例的接收应用程序的过程的流程图。
具体实施例方式
参照下面对示例性实施例的详细说明和附图可以更加容易地理解本发明的优点和特点以及实现本发明的优点和特点的方法。然而,本发明可以以许多不同的形式被实施并且不应被解释为局限于在此阐述的示例性实施例。更恰当地,提供这些实施例使得本公开将会彻底和完整并完全地将本发明的构思传达给本领域的技术人员,并且本发明将仅由所附权利要求进行限定。贯穿说明书相同的标号指示相同的部件。
现在将参照附图更加完全地描述本发明,在附图中,显示了本发明的示例性实施例。
图2示出根据本发明示例性实施例的管理用户界面的系统。参照图2,所述系统包括远程服务器300、存储服务器400、远程客户机500和网络200。
在网络200上可存在一个或多个远程服务器300。远程服务器300将应用程序提供给远程客户机500。为了实现这个目的,远程服务器211至213中的每一个可具有web服务器,并且可周期性地发送指示其连接到网络200的通知包。
这里,所述应用程序可包括可在远程客户机500中执行的应用程序,并且还可包括网页。
另外,远程服务器300可根据远程客户机500的请求发送它的状态。远程服务器300的状态可包括所提供的应用程序的统一资源标识符(URL)。网络200可以是有线网络或无线网络。网络200使用HTTP在各个装置之间传送数据。
远程客户机500显示由远程服务器300提供的应用程序。为了实现这个目的,远程客户机500可包括web浏览器。为了实现应用程序,首先,远程客户机500在网络200上搜索远程服务器300。可通过接收通知包来执行搜索远程服务器300这一操作。远程客户机500通过查阅包括在通知包中的远程服务器300的地址与远程服务器300通信,并请求期望的应用程序。
在通过这个过程接收应用程序的同时,远程客户机500可停止接收应用程序,并且所提供的应用程序稍后可再次被提供。为了实现这个目的,远程客户机500在停止接收时发送关于应用程序的用户界面的状态,从而可存储所述状态。
与远程服务器300相同,存储服务器400也周期性地发送指示存储服务器400连接到网络200的通知包,并且,为了实现这个目的,存储服务器可具有web服务器。接收存储服务器400的通知包的远程客户机500通过查阅包括在所述通知包中的存储服务器400的地址与存储服务器400通信,并且将关于提供给远程客户机500的应用程序的用户界面的状态发送到存储服务器400。
这里,用户界面的状态包括关于应用程序的远程服务器300的状态和远程客户机500的状态。远程服务器300的状态包括关于如上所述的应用程序的URL的信息,远程客户机500的状态包括web浏览器cookie、表格输入和音频/视频对象。
可以按HTML格式将用户界面的状态提供给存储服务器400,并且可涉及由一个或多个远程服务器300提供的应用程序。
例如,第一远程客户机231可同时从第一远程服务器211和第二远程服务器212接收应用程序。此时,第一远程客户机231想要存储的用户界面的状态包括第一远程服务器211的状态、第二远程服务器212的状态和第一远程客户机231的web浏览器的cookie、表格输入和音频/视频对象。
同时,通过第一远程客户机231操作由一个或多个远程服务器300提供的应用程序的用户可停止所述操作,并在存储服务器400中存储用户界面的状态,接着,可通过第二远程客户机232继续操作应用程序。
在这种情况下,第二远程客户机232接收由存储服务器400发送的通知包,确认在网络200上存在存储服务器400,接着,请求存储服务器400发送用户界面的状态。
根据远程客户机500的请求,存储服务器400发送用户界面的状态,所述用户界面的状态可包括关于由多个远程服务器300提供的多个应用程序的用户界面的状态。
接收关于多个应用程序的用户界面的状态的第二远程客户机232可同时接收包括在用户界面的状态中的多个应用程序,或者可接收由用户选择的一个或多个应用程序。
图3是示出根据本发明示例性实施例的提供应用程序的远程服务器的框图。参照图3,远程服务器300包括应用程序产生单元310、包产生单元320、web服务器330、控制单元340、状态管理单元350和通信单元360。
应用程序产生单元310产生将提供给远程客户机500的应用程序。这里,所述应用程序可包括可在远程客户机500中执行的应用程序,并且还可包括网页。
包产生单元320产生指示在网络上存在远程服务器300的通知包。该通知包包括远程服务器300的地址。通过查阅这个地址,远程客户机500可与远程服务器300通信。可通过通信单元360周期性地发送通知包,web服务器330通过使用客户机/服务器模型和HTTP将应用程序提供给远程客户机500。根据在远程服务器300上操作的操作系统,可将Apache、互联网信息服务器(IIS)、企业服务器或Lotus Domino服务器用作web服务器330。
状态管理单元350将关于提供的应用程序的用户界面的状态提供给远程客户机500。这里,由状态管理单元350管理的状态仅指示远程服务器300的状态,并且可包括应用程序的URL。
如果从远程客户机500接收到发送用户界面的状态的请求,则状态管理单元350确认关于当前提供的应用程序的用户界面的状态,接着,通过通信单元360发送确认结果。
通信单元360与远程客户机500通信,发送应用程序或用户界面的状态,并且接收请求用户界面的状态的包。
在通信单元360和远程客户机500之间通信的方法可以是有线通信方法,诸如以太网、通用串行总线(USB)、IEEE 1394、串行通信和并行通信方法,并且还可以是无线通信方法,诸如红外通信、蓝牙、家用射频(RF)和无线LAN方法。
通过通信单元360发送和接收的包可具有HTML格式。这样,与作为图像数据提供用户界面的方法相比,可减少网络负载。
控制单元340确定通过通信单元360接收的包的类型,并执行对应用程序产生单元310、包产生单元320、web服务器330、状态管理单元350、通信单元360和远程服务器300的全部控制。
图4是示出根据本发明示例性实施例的管理用户界面的状态的存储服务器的框图。参照图4,存储服务器400包括状态存储单元410、web服务器420、控制单元430、包产生单元440和通信单元450。
状态存储单元410存储从远程客户机500接收的用户界面的状态。这里,用户界面的状态可包括远程客户机500的web浏览器cookie、表格输入、音频/视频对象和提供应用程序的远程服务器300的状态。远程服务器300的状态可包括一个或多个远程服务器300的状态。
当存储用户界面的状态时,可以将预定的名称给予每个用户界面的状态。这里,可由远程客户机500的用户直接输入名称,或者可通过自动组合存储状态的时间、应用程序的名称、远程服务器的名称或远程服务器的地址来产生名称。
状态存储单元410包括能够输入和输出信息的模块,诸如硬盘、闪存、压缩闪存(CF)卡、安全数字(SD)卡、智能媒体(SM)卡、多媒体卡(MMC)或存储棒。
web服务器420通过使用客户机/服务器模型和HTTP将用于存储用户界面的状态的界面提供给远程客户机500。也就是说,远程客户机500的用户可通过由web服务器420提供的界面来存储和提取用户界面的状态。
包产生单元440产生指示在网络上存在存储服务器400的通知包。该通知包包括存储服务器400的地址。通过查阅所述地址,远程客户机500可与存储服务器400通信。可通过通信单元450周期性地发送通知包。
通信单元450通过与远程客户机500通信来发送和接收通知包、存储命令、提取命令或用户界面的状态。在通信单元450和远程客户机500之间通信的方法可以是有线通信方法,诸如以太网、通用串行总线(USB)、IEEE1394、串行通信和并行通信方法,并且还可以是无线通信方法,诸如红外通信、蓝牙、家用射频(RF)和无线LAN方法。通过通信单元450发送和接收的包可具有HTML格式。
控制单元430确定通过通信单元450接收的包的类型,并且执行对状态存储单元410、web服务器420、包产生单元440、通信单元450和存储服务器400的全部控制。
同时,远程服务器300和存储服务器400可以置于一个设备(以下称为集成服务器)中。集成服务器将应用程序提供给远程客户机500,并可根据远程客户机500的请求存储用户界面的状态。
将被存储在集成服务器中的用户界面的状态可包括关于由另一远程服务器提供的应用程序的用户界面的状态,以及关于由集成服务器提供的应用程序的用户界面的状态。
图5是示出根据本发明示例性实施例的接收应用程序的远程客户机的框图。参照图5,远程客户机500包括状态管理请求单元510、存储单元520、web浏览器530、控制单元540、服务器检索单元550和通信单元560。
状态管理请求单元510产生请求远程服务器300的状态的请求包、用于存储用户界面的状态的存储命令的包(以下称为存储命令包)、和用于提取用户界面的状态的提取命令的包(以下称为提取命令包)。
通过通信单元560发送每个包,并且将请求包发送到远程服务器300,将存储命令包和提取命令包发送到存储服务器400。
web浏览器530显示由远程服务器300提供的应用程序,或者显示响应于提取命令包从存储服务器400接收的用户界面。
这里,web浏览器530显示关于由存储服务器400提供的多个用户界面的状态的名称。此时,用户选择显示的名称中的一个,从而用户可操作期望的应用程序。
服务器检索单元550搜索远程服务器300或存储服务器400。远程服务器300和存储服务器400周期性地发布通知包,以指示它们连接到网络。服务器检索单元550分析通过通信单元560接收的通知包,并确定在网络上是否存在远程服务器300或存储服务器400。
如果服务器检索单元550确定在网络上存在远程服务器300或存储服务器400,则将包括在通知包中的远程服务器300或存储服务器400的地址传送到控制单元540。
通过查阅由服务器检索单元550传送的地址,控制单元540使web浏览器530与远程服务器300的web服务器330或存储服务器400的web服务器420彼此之间能够通信。
另外,控制单元540执行对状态管理请求单元510、存储单元520、web浏览器530、服务器检索单元550、通信单元560和远程客户机500的全部控制。
存储单元520存储关于形成网络的外围设备的缓存信息。由服务器检索单元550检索的远程服务器300和存储服务器400的地址可包括在缓存信息中。另外,在存储服务器400的情况下,可添加和存储附加标志。存储单元520可包括能够输入和输出数据的硬盘、闪存、CF卡、SD卡、SM卡、MMC、存储棒以及其它模块。
通信单元560通过与远程服务器300或存储服务器400通信来发送和接收应用程序、请求包、存储命令包和提取命令包。
这里,通信单元560可通过使用HTTP来发送和接收应用程序、用户界面的状态或包,并且可使用HTML形成用户界面的状态和所述包。
图6示出根据本发明示例性实施例的关于用户界面的状态的超文本标志语言(HTML)代码。
参照图6,由远程客户机产生HTML代码600,并且将其发送到存储服务器。
如上所述,用户界面的状态可包括应用程序的URL、远程客户机的web浏览器的cookie、表格输入、音频/视频对象和远程服务器的地址。HTML代码600可包括应用程序的多个用户界面的状态。
在图6中,在_url#_中,输入关于一个或多个应用程序的URL。例如,在_url1_中,可输入第一应用程序的URL(URLForPageToBeSaved#1),并且在_url2_中,可输入第二应用程序的URL(URLForPageToBeSaved#2)。
每个用户界面的状态可包括一个cookie(url#.cookie)、一个或多个表格输入(url#.form.formid#)、音频/视频对象(url#.av.avobjid#.state#)和远程服务器的状态(url#.server)。
在表格输入中,formid#指示表格输入的唯一号码,并且根据输入值(formid#_value_string)的类型确定表格输入的类型。例如,如果输入值的类型是文本,则表格输入的类型变成文本。
在音频/视频对象中,avobjid#指示音频/视频对象的唯一号码,并且state#指示关于音频/视频对象的URL或再现信息。例如,如果state#指示音频/视频对象的 URL,则可将其表示为 url.av.avobjid.data=http://192.168.0.1/videos/efg.mpg。如果state#指示音频/视频对象的再现信息,则可将其表示为url.av.avobjid.playPosition=93847。这里,playPosition指示当再现音频/视频对象时的预定再现位置。
由远程客户机向远程服务器请求的远程服务器的状态作为远程服务器的状态被输入。例如,当远程客户机连接到远程服务器,并接收电子节目指南(EPG)信息作为应用程序时,远程服务器可按状态progid:123/recordStartTime:09\:00AM/step:3作出响应。因此,可将其表示为url.server=progid:123/recordStartTime:09\:00AM/step:3。
图7A和图7B分别示出根据本发明示例性实施例的关于存储命令包700A和提取命令包700B的HTML代码。存储命令包700A包括用户界面的名称(/SAVE?_name_),远程客户机的名称(HOST)、包的大小(Content_Length)和HTML文档的类型(Content_Type),并且包括关于上面参照图6描述的用户界面的状态的HTML代码。
这里,可由远程客户机500的用户直接输入用户界面的名称,或者可通过自动组合存储名称的时间、应用程序的名称、远程服务器的名称或远程服务器的地址来产生名称。
此时,如果包括在存储命令包700A中的用户界面的名称与已经存储在存储服务器400中的用户界面的名称相同,则由用户指定不同的名称,或由存储服务器400指定任意的名称。例如,通过将预定号码添加到接收的用户界面的名称,存储服务器400可区分已经存储的用户界面的名称与所述名称,同时,远程客户机500可发送存储命令包700A,以存储关于由多个远程服务器300提供的各个应用程序的多个用户界面的状态。因此,存储命令包700A可包括多个用户界面的状态。
如图7B所示,提取命令包700B包括期望提取的用户界面的名称(/RESTORE?_name)和关于远程客户机的名称(HOST)的HTML代码。
接收提取命令包700B的存储服务器400在用户界面的状态之中提取具有与包700B相应的用户界面的名称的状态,并将该状态发送到远程客户机500。
图8是示出根据本发明示例性实施例的搜索存储服务器的过程的流程图。
从远程服务器300或存储服务器400接收通知包的远程客户机500通过查阅包括在通知包中的地址,将HTTP请求包(HTTP请求)发送到远程服务器300或存储服务器400。
首先,当在操作S810将HTTP请求包发送到不具有存储单元的远程服务器300时,在操作S820,远程服务器300将HTTP响应包发送到远程客户机500。这里,HTTP响应包的头不包括指示远程服务器300具有存储单元的标志。
因此,在操作S830,如果远程客户机500将HTTP请求包发送到作为网络上存在的另一服务器的存储服务器400,则在操作S840,存储服务器400将HTTP响应包发送到远程客户机500。这里,HTTP响应包的头包括指示存储服务器400具有存储单元的标志。例如,可将如下所示的标志插入所述头RUIS-CapabilitiesStateStorage这里,RUIS指示远程用户界面服务器(诸如分别具有web服务器330和web服务器420的远程服务器300和存储服务器400)和集成服务器。
然后,如果在操作S850用户输入存储命令,则在操作S860,远程客户机500收集关于当前操作的应用程序的用户界面的状态。也就是说,通过从提供应用程序的远程服务器300请求应用程序的URL,远程客户机500接收应用程序的URL,并确认web浏览器的cookie、表格输入和音频/视频对象。
然后,在操作S870,远程客户机500将存储命令包700A发送到存储服务器400,所述存储命令包700A包括用户界面的名称、远程客户机的名称、包的大小、HTML文档的类型和关于收集的用户界面的状态的HTML代码。存储服务器400存储包括在存储命令包700A中的关于用户界面的状态的HTML代码。
图9是示出根据本发明示例性实施例的在通用即插即用(UPnP)环境中搜索存储服务器的过程的流程图。
远程客户机500的服务器检索单元550执行UPnP的控制点的角色,远程服务器300的控制单元340和包产生单元320或存储服务器400的控制单元430和包产生单元440执行受控装置的角色。这样,可执行远程客户机500和远程服务器300或存储服务器400之间的UPnP通信。
远程客户机500通过发现步骤从远程服务器300或存储服务器400接收通知包。然后,通过查阅包括在通知包中的地址,远程客户机500用HTTMGET方法将装置描述文档(DDD)请求包发送到远程服务器300或存储服务器400。
首先,当在操作S910将DDD请求包发送到不具有存储单元的远程服务器300时,在操作S920,远程服务器300将DDD响应包发送到远程客户机500。这里,DDD响应包的头不包括指示远程服务器300具有存储单元的信息。
因此,在操作S930,远程客户机500分析接收的DDD响应包,并更新关于形成网络的外围设备的缓存信息。然后,在将更新的缓存信息存储在存储单元520中之后,在操作S940,远程客户机500将DDD请求包发送到作为网络上存在的另一服务器的存储服务器400。
在操作S950,接收DDD请求包的存储服务器400将DDD响应包发送到远程客户机500。这里,DDD响应包包括指示存储服务器400具有存储单元的信息。例如,可将如下所示的信息插入DDD响应包。
<RUIS-Capabilities>StateStorage</RUIS-Capabilities>
因此,在操作S960,远程客户机500分析接收的DDD响应包,更新缓存信息,并将更新的缓存信息存储在存储单元520中。对网络上存在的所有装置执行DDD请求包的传输和DDD响应包的分析。因此,关于多个具有存储单元的存储服务器400的信息可包括在缓存信息中。
然后,如果在操作S970用户输入存储命令,则在操作S980,远程客户机500收集关于当前操作的应用程序的用户界面的状态。
然后,在从包括在缓存信息中的存储服务器列表中选择一个存储服务器400之后,在操作S990,远程客户机500将包括用户界面的状态的存储命令包700A发送到选择的存储服务器400。这里,可由用户执行存储服务器400的选择。
图10是示出根据本发明示例性实施例的检索用户界面的状态的过程的流程图。
当远程客户机500的服务器检索单元550执行UPnP的控制点的角色,存储服务器400的控制单元430和包产生单元440执行受控装置的角色时,可执行远程客户机500和存储服务器400之间的UPnP通信。
远程客户机500通过发现步骤从存储服务器400接收通知包。在操作S1010,通过查阅包括在通知包中的地址,远程客户机500将DDD请求包发送到存储服务器400。
在操作S1020,接收DDD请求包的存储服务器400将DDD响应包发送到远程客户机500。这里,DDD响应包包括应用程序的列表,并且还可包括关于每个应用程序的用户界面的URL。
例如,可将下面的XML代码插入DDD响应包。
<uilist xmlns=”urn:schemas-upnp-org:remoteui:uilist-1-0”xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”xsi:schemaLocation=”urn:schemas-upnp-org:remoteui:uilist-1-0CompatibleUIs.xsd”>
<ui>
<uiID>4560-9876-1265-8758</uiID>
<name>Music player</name>
<description>Music browsing and playback application</description>
<iconList>...</iconList>
<fork>true</fork>
<lifetime>-1</lifetime>
<protocol shortName=”VNC”>
<uri>http://192.168.0.2/SRH</uri>
<protocolInfo>...opaque...</protocolInfo>
</protocol>
</ui>
这里,http://192.168.0.2/SRH指示存储服务器400的模块,其中,在所述模块中存储用户界面的状态。即,存储状态存储单元410的地址。
因此,远程客户机500分析接收的DDD响应包,更新缓存信息,并将更新的缓存信息存储在存储单元520中。
然后,根据用户输入的检索用户界面的状态的命令,远程客户机500提取包括在缓存信息中的存储服务器400的状态存储单元410的地址。通过使用提取的地址,在操作S1030,远程客户机500发送HTTP请求包,以与存储服务器400通信。
相应地,在操作S1040,存储服务器400发送HTTP响应包,在所述HTTP响应包中以HTML或可扩展标志语言(XML)格式插入关于用户界面的状态的列表。也就是说,用于每个用户界面的状态的超链接包括在HTTP ACK包中。超链接的示例如下<a href=“http://RUIS-IP-ADDR:PORT/RESTORE?name=’EPG Saved21th Oct 9:00AM”onClick=“javascript:savedStateHandler”>EPG Saved 21thOct 9:00AM</a>
通过远程客户机500的web浏览器530输出HTML格式列表,并且用户在输出列表中选择期望的用户界面的状态。
在操作S1050,将插入选择结果的包,即,提取命令包700B发送到存储服务器400。在操作S1060,存储服务器400从状态存储单元410提取包括在提取命令包700B中的用户界面的状态,并将所述状态发送到远程客户机500。远程客户机500根据接收的用户界面的状态来恢复关于应用程序的用户界面。
图11是示出根据本发明示例性实施例的管理用户界面的状态的过程的流程图。
为了管理用户界面的状态,存储服务器400的包产生单元440产生指示在网络上存在存储服务器400的通知包。在操作S1110,通过通信单元450周期性地发送通知包,并且,由于发送了通知包,所以web服务器420通过通信单元450与远程客户机500执行通信。
然后,在操作S1120,web服务器420从远程客户机500接收存储命令包700A。状态存储单元410存储包括在接收的存储命令包700A中的用户界面的状态。这里,用户界面的状态包括远程客户机500的web浏览器的cookie、表格输入、音频/视频对象和应用程序的URL。
然后,在操作S1130,web服务器420从远程客户机500接收提取命令包700B。控制单元430搜索状态存储单元410,并提取包括在提取命令包700B中的用户界面的状态。
在操作S1140,通过通信单元450将提取的用户界面的状态发送到远程客户机500。基于提取的状态,远程客户机500显示关于期望被恢复的应用程序的用户界面。
图12是示出根据本发明示例性实施例的接收应用程序的过程的流程图。
为了恢复由远程服务器300提供的应用程序,在操作S1210,远程客户机500的服务器检索单元550搜索能够存储关于提供的应用程序的用户界面的状态的存储服务器400。服务器检索单元550分析通过通信单元560接收的通知包,并确定网络上是否存在存储服务器400。
如果服务器检索单元550的检索结果指示在网络上存在存储服务器400,则在操作S1220,状态管理请求单元510根据用户的存储命令输入产生关于用户界面的状态的存储命令包700A。
为了产生存储命令包700A,状态管理请求单元510收集关于当前操作的应用程序的用户界面的状态。用户界面的状态包括应用程序的URL、web浏览器的cookie、表格输入和音频/视频对象。在操作S1230,通过通信单元560将存储命令包700A发送到存储服务器400。
这里,可从远程服务器300供给应用程序的URL。例如,可将包括下面的HTTP代码的HTTP请求包发送到远程服务器300。
http://192.168.1.1/EPG/record/GETSTATE响应于HTTP请求包,远程服务器300将HTTPACK包发送到远程客户机500。HTTPACK包可包括包含关于应用程序的信息的下面的HTTP代码。
progid:123/recordStartTime:09\:00AM/recordEndTime:10\:00AM/step:3由于接收到远程服务器300的状态,所以状态管理请求单元510可产生包含下面的HTTP代码的存储命令包700A。
_url1_=http://192.168.1.1/EPG/recordurl1.server=progid:123/recordStartTime:09\:00AM/recordEndTime:10\:30AM/step:3由于在操作S1240用户输入恢复命令以恢复用户界面的状态,所以在操作S1250,状态管理请求单元510产生提取命令包700B。在操作S1260,通过通信单元560将产生的提取命令包700B发送到存储服务器400。
由于发送了提取命令包700B,所以在操作S1270,通信单元560从存储服务器400接收用户界面的状态。在操作S1280,将接收的用户界面的状态传送到web浏览器530,web浏览器530根据接收的用户界面的状态显示关于预定的应用程序的用户界面。
如上所述,本发明示例性实施例提供的用户界面的设备和方法可提供以下优点。
首先,通过在单独的装置中存储由网络上的服务器提供的应用程序的用户界面的状态,可将相同的用户界面提供给通过不同的客户机接收应用程序的用户。
此外,可同时管理关于由网络上存在的多个服务器提供的多个应用程序的用户界面。
在对详细说明的总结中,本领域的技术人员应该理解,在实质上不脱离本发明的原理的情况下,可以对示例性实施例进行各种变化和修改。因此,公开的本发明的示例性实施例仅用于一般和描述意义,而不是限制性的目的。
权利要求
1.一种用于管理用户界面的设备,所述设备包括包产生单元,产生指示在网络上存在一个或多个远程服务器的通知包;web服务器,管理存储通过网络发送的预定应用程序的用户界面的状态的命令或者作为发布通知包的结果而接收的提取命令;状态存储单元,根据存储命令存储用户界面的状态;以及通信单元,发送根据提取命令从存储的用户界面的状态之中提取的预定用户界面的状态。
2.如权利要求1所述的设备,其中,所述网络包括使用HTTP的网络。
3.如权利要求1所述的设备,其中,所述通信单元发送和接收通知包、存储命令、提取命令或使用HTML形成的用户界面的状态。
4.如权利要求1所述的设备,其中,所述用户界面的状态包括提供应用程序的服务器的状态和接收应用程序的客户机的状态中的至少一个。
5.如权利要求1所述的设备,还包括应用程序产生单元,产生应用程序。
6.一种用于显示用户界面的设备,所述设备包括服务器检索单元,搜索存储关于提供的应用程序的用户界面的状态的服务器;状态管理请求单元,根据搜索结果产生关于用户界面的状态的存储命令包或提取命令包;通信单元,发送用户界面的状态或所述包;以及web浏览器,显示响应于提取命令包的发送而接收的预定用户界面。
7.如权利要求6所述的设备,其中,所述用户界面的状态包括web浏览器的多个cookie、表格输入、音频/视频对象和提供应用程序的服务器的状态中的至少一个。
8.如权利要求6所述的设备,其中,所述通信单元使用HTTP发送用户界面的状态或所述包。
9.如权利要求6所述的设备,其中,所述通信单元发送所述包或使用HTML形成的用户界面的状态。
10.如权利要求6所述的设备,其中,所述用户界面的状态包括关于由一个或多个服务器提供的一个或多个应用程序的用户界面的状态。
11.一种管理用户界面的方法,所述方法包括产生指示在网络上存在一个或多个远程服务器的通知包;管理通过网络发送的预定应用程序的用户界面的状态的存储命令或者作为发布通知包的结果而接收的提取命令;根据存储命令存储用户界面的状态;以及发送根据提取命令从存储的用户界面的状态之中提取的预定用户界面的状态。
12.如权利要求11所述的方法,其中,所述网络包括使用HTTP的网络。
13.如权利要求11所述的方法,其中,发送预定用户界面的状态的步骤包括发送和接收通知包、存储命令、提取命令或使用HTML形成的用户界面的状态。
14.如权利要求11所述的方法,其中,所述用户界面的状态包括提供应用程序的服务器的状态和接收应用程序的客户机的状态中的至少一个。
15.如权利要求11所述的方法,还包括产生应用程序。
16.一种显示用户界面的方法,所述方法包括搜索存储关于提供的应用程序的用户界面的状态的服务器;根据搜索结果产生关于用户界面的状态的存储命令包或提取命令包;发送用户界面的状态或所述包;以及显示响应于提取命令包的发送而接收的预定用户界面。
17.如权利要求16所述的方法,其中,所述用户界面的状态包括web浏览器的多个cookie、表格输入、音频/视频对象和提供应用程序的服务器的状态中的至少一个。
18.如权利要求16所述的方法,其中,发送用户界面的状态和所述包的步骤包括使用HTTP发送用户界面的状态或所述包。
19.如权利要求16所述的方法,其中,发送用户界面的状态和所述包的步骤包括发送所述包或使用HTML形成的用户界面的状态。
20.如权利要求16所述的方法,其中,所述用户界面的状态包括关于由一个或多个服务器提供的一个或多个应用程序的用户界面的状态。
全文摘要
一种用于管理用户界面的设备和方法。用于管理用户界面的设备包括包产生单元,产生指示在网络上存在一个或多个远程服务器的通知包;web服务器,管理存储通过网络发送的预定应用程序的用户界面的状态的命令或者作为发布通知包的结果而接收的提取命令;状态存储单元,根据存储命令存储用户界面的状态;以及通信单元,发送根据提取命令从存储的用户界面的状态之中提取的预定用户界面的状态。
文档编号H04L12/24GK1972300SQ200610148508
公开日2007年5月30日 申请日期2006年11月17日 优先权日2005年11月17日
发明者金允洙 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1