CN101001260B - 存储和恢复远程用户接口的状态信息的方法和设备 - Google Patents
存储和恢复远程用户接口的状态信息的方法和设备 Download PDFInfo
- Publication number
- CN101001260B CN101001260B CN2007100003565A CN200710000356A CN101001260B CN 101001260 B CN101001260 B CN 101001260B CN 2007100003565 A CN2007100003565 A CN 2007100003565A CN 200710000356 A CN200710000356 A CN 200710000356A CN 101001260 B CN101001260 B CN 101001260B
- Authority
- CN
- China
- Prior art keywords
- state information
- server
- rui
- user interface
- remote user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000003860 storage Methods 0.000 claims abstract description 41
- 238000012545 processing Methods 0.000 claims abstract description 14
- 230000004044 response Effects 0.000 claims description 55
- 230000008569 process Effects 0.000 claims description 12
- 238000011084 recovery Methods 0.000 description 33
- 238000010586 diagram Methods 0.000 description 14
- 238000004321 preservation Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 235000014510 cooky Nutrition 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 102100031476 Cytochrome P450 1A1 Human genes 0.000 description 1
- 101000941690 Homo sapiens Cytochrome P450 1A1 Proteins 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/142—Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/544—Remote
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/545—Gui
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2816—Controlling appliance services of a home automation network by calling their functionalities
- H04L12/2818—Controlling appliance services of a home automation network by calling their functionalities from a device located outside both the home and the home network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2816—Controlling appliance services of a home automation network by calling their functionalities
- H04L12/282—Controlling appliance services of a home automation network by calling their functionalities based on user interaction within the home
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
提供了一种在通用即插即用(UPnP)环境中恢复远程用户接口(RUI)的设备和方法。在所述设备和方法中,RUI客户机通过使用不用重新加载网页处理超文本传输协议(HTTP)请求的HTTP对象来请求外部存储器服务器存储RUI的状态信息;和通过使用存储的状态信息来恢复RUI的原始状态。因此,可将在UPnP环境中存储和恢复远程用户接口的状态信息的方法应用于具有不允许存储远程用户接口的状态信息的无状态特性的基于HTTP的远程协议模型。
Description
本申请要求于2006年1月12日在USPTO提交的第60/758,219号美国临时专利申请以及于2006年5月11日在韩国知识产权局提交的第10-2006-0042617号韩国专利申请的利益,所述申请完全公开于此,以资参考。
技术领域
与本发明一致的设备和方法涉及恢复远程用户接口(RUI)的状态信息,更具体地讲,涉及在通用即插即用(UPnP)环境下恢复RUI。
背景技术
图1是传统的基于通用即插即用(UPnP)的远程用户接口(RUI)网络系统(“系统”)的框图。参照图1,所述系统包括RUI控制点(CP)11、RUI客户机12和RUI服务器13。这里,RUI控制点(CP)11对应于支持远程用户接口的UPnP CP,RUI客户机12和RUI服务器13对应于支持远程用户接口的UPnP受控装置(CD)。
根据UPnP,RUI CP11发现并控制RUI客户机12和RUI服务器13。在RUI CP 11的控制下连接的RUI客户机12和RUI服务器13根据带外远程协议(诸如,远程桌面协议(RDP)和扩展远程技术(XRT)协议)处理经RUI接收的请求和响应。
图2是示出根据UPnP存储和恢复RUI的状态信息的传统处理的示图。具体地讲,图2的处理涉及第一RUI客户机22与RUI服务器24的连接被改变为第二RUI客户机23与RUI服务器24的连接的情况。
在操作201,RUI CP 21通过向第一RUI客户机22调用GetCurrentConnection()来搜索当前进行的RUI连接,并从搜索的RUI连接得知与RUI服务器24的连接。
在操作202,RUI CP 21向RUI服务器24调用SetUILifetime()以命令RUI服务器24将当前进行的RUI连接保持预时序间。
在操作203,RUI CP 21向第一RUI客户机22调用Disconnect()以终止进行的RUI连接。
在操作204,RUI CP 201向第二RUI客户机23调用Connect()以开始根据操作202给出的命令保持的RUI连接。
然而,如上所述,图2的传统方法仅适用于允许URI的所有状态信息存储在RUI服务器中的远程协议模型。然而,在基于超文本传输协议(HTTP)的远程协议模型的情况下,当处理请求和响应的事务结束时,由于HTTP的无状态特性而导致远程接口的状态信息丢失并且没有被存储,因此,RUI客户机管理大多数状态信息。
因此,根据UPnP存储和恢复RUI的状态信息的传统处理适用于RUI的所有状态信息都存储在RUI服务器中的诸如RDP和XRT的远程协议模型。然而,传统处理的问题是:它不能应用于大多数状态信息由RUI客户机管理的诸如HTTP的远程协议模型。具体地讲,基于二进制协议的RDP和XRT需要比HTTP更宽的网络带宽。因此,由于基于HTTP的RUI被广泛使用,所以存在以上问题。
发明内容
本发明提供了一种允许如下处理应用于具有不允许存储远程用户接口(RUI)的状态信息的无状态特性的基于超文本传输协议(HTTP)的远程协议模型的方法和设备,所述处理是在通用即插即用(UPnP)环境中存储和恢复RUI的状态信息的处理。
本发明还提供了一种记录有用于执行所述方法的程序的计算机可读记录介质。
根据本发明的一方面,提供了一种允许从服务器接收远程用户接口的客户机请求保存远程用户接口的状态信息的方法,该方法包括:通过使用不用重新加载远程用户接口处理预定请求的对象来获得在使用远程用户接口时所产生的远程用户接口的状态信息;和请求存储获得的状态信息。
根据本发明的另一方面,提供了一种记录有用于执行请求存储关于远程用户接口的状态信息的方法的程序的计算机可读介质。
根据本发明的另一方面,提供了一种允许使用从服务器提供的远程用户接口的客户机请求存储远程用户接口的状态信息的设备,该设备包括:远程用户接口控制点模块,获得关于提供用于存储状态信息的存储器的存储器服务器的信息;和网络浏览器模块,基于远程用户接口控制点模块获得的关于存储器服务器的信息,通过使用不用重新加载远程用户接口处理预定请求的对象来请求存储器服务器存储状态信息。
根据本发明的另一方面,提供了一种允许从服务器接收远程用户接口的客户机恢复远程用户接口的状态信息的方法,该方法包括:通过使用不用重新加载远程用户接口来处理预定请求的对象来获得在使用远程用户接口时所产生的状态信息;和在远程用户接口中反映获得的状态信息。
根据本发明的另一方面,提供了一种记录有用于执行恢复关于远程用户接口的状态信息的方法的程序的计算机可读介质。
根据本发明的另一方面,提供了一种允许从服务器接收远程用户接口的客户机恢复远程用户接口的状态信息的设备,该设备包括:远程用户接口控制点模块,获得关于提供用于存储状态信息的存储器的存储器服务器的信息;和网络浏览器模块,基于远程用户接口控制点模块获得的关于存储器服务器的信息,通过使用不用重新加载远程用户接口来处理预定请求的对象从存储器服务器获得状态信息,并在远程用户接口中反映获得的状态信息。
附图说明
通过参照附图对本发明示例性实施例的详细描述,本发明的上述和其它方面将变得更加清楚,其中:
图1是传统的基于通用即插即用(UPnP)的远程用户接口(RUI)网络系统的框图;
图2是示出根据UPnP来存储和恢复RUI的状态信息的传统处理的示图;
图3是根据本发明示例性实施例的基于UPnP的RUI网络系统的框图;
图4是根据本发明示例性实施例的RUI客户机的框图;
图5示出根据本发明示例性实施例的代表状态存储器(SS)处理器的接口的句法;
图6示出根据本发明示例性实施例的代表传输控制协议(TCP)连接对象的接口的句法;
图7是根据本发明示例性实施例的RUI服务器的框图;
图8A和图8B示出根据本发明示例性实施例的代表可保存页的句法;
图9A和图9B示出根据本发明的代表图8A和图8B所示的句法所代表的可保存页的另一示例性实施例的句法;
图10是根据本发明示例性实施例的SS服务器的框图;
图11示出根据本发明示例性实施例的GETSTATES请求消息的格式;
图12示出根据本发明示例性实施例的GETSTATES响应消息的格式;
图13示出根据本发明示例性实施例的保存请求消息的格式;
图14示出根据本发明示例性实施例的恢复页请求消息的格式;
图15示出根据本发明示例性实施例的恢复页响应消息的格式;
图16示出根据本发明示例性实施例的恢复请求消息的格式;
图17示出根据本发明示例性实施例的代表对应于恢复响应文档的可保存页的句法;
图18是根据本发明示例性实施例的存储RUI的状态信息的方法的时序图;
图19是根据本发明示例性实施例的恢复RUI的状态信息的方法的时序图;和
图20是根据本发明示例性实施例的作为图7的RUI服务器和图10的SS服务器的组合的设备的框图。
具体实施方式
下面将参照附图来详细描述本发明的示例性实施例。在本公开中,将关于包含HTTP对象的网页来描述基于超文本传输协议(HTTP)的远程用户接口(RUI),其中,HTTP是不存储状态信息的无状态协议,HTTP对象是不用重新加载网页来处理HTTP请求的Java脚本对象。然而,本发明所属技术领域的普通技术人员应该清楚,本发明的示例性实施例可适用于其它类型的远程用户接口,并不仅仅适用于网页。
图3是根据本发明示例性实施例的基于通用即插即用(UPnP)的RUI网络系统(“系统”)的框图。参照图3,所述系统包括RUI客户机31和第NRUI客户机32、RUI服务器33和34以及状态存储器(SS)服务器35。具体地讲,SS服务器35是提供用于存储对应于RUI的网页的状态信息的状态存储器的服务器。此外,RUI客户机31、第N RUI客户机32以及RUI服务器33和34是2箱模型,每个包括内置RUI控制点(CP)模块并在UPnP发现期间获得关于SS服务器35的信息。然而,RUI客户机31和32以及RUI服务器33和34不必包括内置RUI CP模块,并且在这种情况下可从另一节点接收关于SS服务器35的信息。
图4是根据本发明示例性实施例的RUI客户机4的框图。参照图4,RUI客户机4包括RUI CP模块41、RUI受控装置(CD)模块42和网络浏览器模块43。具体地讲,RUI CP模块41和RUI CD模块42是当RUI客户机4位于UPnP可适用的自治网络(诸如家庭网络)中时所需的可选模块。此外,RUI CP模块41可位于RUI客户机4的外部而不是位于其内部。
RUI CP模块41用作发现并控制UPnP CD的UPnP CP。具体地讲,根据本发明的示例性实施例,RUI CP模块41在RUI服务器7和SS服务器10的发现期间基于UPnP获得关于SS服务器10的信息,其中,RUI服务器7和SS服务器10是基于UPnP的CD。此外,RUI CP模块41将关于SS服务器10的信息提供给SS处理器431以请求存储远程接口(即,网页)的状态信息。
RUI客户机4可在HTTP头中包括指示它包括RUI CP模块41的“<hasControlPoint>true</hasControlPoint>”。
RUI CD模块42通告它是UPnP CD,并用作受UPnP CP控制的UPnP CD,其中,UPnP CP响应于所述通告发现RUI CD模块42。
网络浏览器模块43用作基于HTTP的通用网络浏览器。也就是说,网络浏览器模块43是这样一种客户机模块:从用户接收对对应于远程用户接口的网页的请求,将所述请求发送给包括网络服务器的RUI服务器7,并渲染响应于所述请求获得的网页以显示渲染结果。
具体地讲,网络浏览器模块43其中可包括SS处理器431或者以插件的形式包括SS处理器431。SS处理器431是仅当RUI CP模块41存在时所需的可选模块。RUI CP模块41和SS处理器431能够经进程间通信(IPC)或UNIX域套接字建立内部通信。当接收到HTTP头并识别出RUI客户机4包括RUI CP模块41时,RUI服务器7可使用SS处理器431来提供图8A和图8B所示的句法所代表的包含Java脚本的可保存页以获得关于SS服务器10的信息。也就是说,当执行Java脚本时,SS处理器431从RUI CP模块41获得关于SS服务器10的信息,并向可保存页提供获得的信息。
图5示出根据本发明示例性实施例的代表图4所示的SS处理器431的接口的句法。参照图5,SS处理器431的接口提供代表SS服务器的统一资源定位符(URL)(数组URL)和SS服务器的名称(数组名称)的属性,其中,SS服务器提供用于存储对应于RUI的网页的状态信息的状态存储器。
此外,网络浏览器模块43以本地对象或插件形式包括HTTP对象432。HTTP对象432是不用重新加载网页来处理HTTP请求的Java脚本对象。HTTP对象432可以是XMLHttpRequest或传输控制协议(TCP)连接对象。
图6示出根据本发明示例性实施例的代表TCP连接对象的接口的句法。参照图6,TCP连接对象的接口提供关于通知TCP连接状态的改变的事件的回调、关于通知数据到达的事件的回调、关于通知发生数据传输错误的事件的回调、打开TCP/IP连接的方法、获得数据的方法、发送数据的方法等。
网络浏览器模块43从RUI服务器7接收图8A和图8B所示的句法所代表的可保存页。此外,在包括在网页中的Java脚本被执行以产生RUI服务器7的状态信息的情况下,当从用户接收到保存关于RUI的状态信息的命令时,即,当用户点击可保存页上的“保存”按钮时,网络浏览器模块43请求在用户使用所述网页时所产生的关于RUI服务器7的状态信息。也就是说,网络浏览器模块43将图11所示的GETSTATES请求消息发送给RUI服务器7。
此外,网络浏览器模块43获得响应于所述请求的RUI服务器7的状态信息。也就是说,网络浏览器模块43从RUI服务器7接收响应于GETSTATES请求消息的图12所示的GETSTATES响应消息,并通过执行包括在网页中的Java脚本获得RUI服务器7的状态信息。如果用户使用关于产品销售的网页,那么关于用户选择的产品的信息保留在RUI服务器7中。此外,如果用户使用关于用户认证的网页,那么关于用户认证结果的信息保留在RUI服务器7中。这些信息项是RUI服务器7的状态信息的示例。
此外,网络浏览器模块43执行包括在网页中的Java脚本以从网页读取在用户使用网页时所产生的RUI客户机4的状态信息。在用户使用网页的同时,产生对应于来自用户的输入值的视听(AV)对象的状态信息、形式输入信息和cookie信息。这些信息项是RUI客户机4的状态信息的示例。
为了请求SS服务器10保存以上产生的信息和获得的网页的状态信息(即,RUI客户机4和RUI服务器7的状态信息),网络浏览器模块43从RUICP模块41或RUI服务器7的RUI CP模块71接收关于SS服务器10的信息。更具体地讲,网络浏览器模块43可执行包括在网页中的Java脚本以将SS服务器10的信息显示给用户,以便用户可选择SS服务器10作为用于存储网页的状态信息的存储器服务器。另外,网络浏览器模块43可请求SS处理器431提供SS服务器10的信息并将获得的信息显示给用户,以便用户可选择SS服务器10作为用于存储网页的状态信息的存储器服务器。
此外,网络浏览器模块43执行网页中的Java脚本以通过使用用户选择的SS服务器10的信息(即,SS服务器10的URL)来请求SS服务器10保存网页的状态信息。也就是说,网络浏览器模块43将图13所示的保存请求消息发送给SS服务器10。
此外,当从用户接收到显示可根据用户的选择恢复的网页列表(即,恢复页列表)的命令时,网络浏览器模块43从RUI CP模块41或RUI服务器7的RUI CP模块71接收SS服务器10的信息。此外,网络浏览器模块43通过使用SS服务器10的信息(即,SS服务器10的URL)来请求SS服务器10提供恢复页列表。也就是说,网络浏览器模块43将图14所示的恢复页请求消息发送给SS服务器10。
此外,网络浏览器模块43从所述请求的响应获得恢复页列表。也就是说,网络浏览器模块43从SS服务器10接收响应于恢复页请求消息的图15所示的恢复页响应消息,并从恢复页响应消息获得对应于恢复页列表的网页(RUI)的URL、RUI服务器7的状态信息和作为存储RUI客户机4的状态信息的站点的位置信息的URL。此外,网络浏览器模块43将恢复页列表显示给用户,并从观看所显示的恢复页列表的用户接收选择。也就是说,将用户期望恢复的网页的URL给予网络浏览器模块43。
此外,网络浏览器模块43请求RUI服务器7恢复用户选择的网页。也就是说,网络浏览器模块43通过将图16所示的恢复请求消息提供给RUI服务器7来请求RUI服务器7开始执行RUI应用程序,所述恢复请求消息包含RUI服务器7的状态信息和作为存储RUI客户机4的状态信息的站点的位置信息的URL。
此外,网络浏览器模块43将图16所示的恢复请求消息发送给RUI服务器7,并接收作为恢复请求消息的响应的图17所示的句法所代表的可保存页,所述可保存页包含允许使用作为存储RUI客户机4的状态信息的站点的位置信息的URL接收RUI客户机4的状态信息的Java脚本。
此外,网络浏览器模块43执行图17所示的句法所代表的可保存页中的Java脚本,以从SS服务器10获得RUI客户机4的状态信息,所述状态信息是通过使用作为存储RUI客户机4的状态信息的站点的位置信息的URL来恢复选择的网页所需的信息。此外,网络浏览器模块43执行可保存页中的Java脚本以在可保存页中反映RUI客户机4的状态信息,从而在网页中恢复RUI客户机4的状态。
图7是根据本发明示例性实施例的图4的RUI服务器7的框图。参照图7,RUI服务器7包括RUI CP模块71、RUI CD模块72、网络服务器模块73、RUI应用程序模块74、状态管理器75和SS服务器选择器76。具体地讲,RUI CP模块71和RUI CD模块72是当RUI服务器7位于UPnP可适用的自治网络(诸如家庭网络)中时所需的可选模块。此外,RUI CP模块71可位于RUI服务器7的外部而不是位于其内部。
RUI CP模块71用作发现并控制UPnP CD的UPnP CP。具体地讲,根据本发明的示例性实施例,当RUI客户机4不包括RUI CP模块41时,RUI CP模块71在SS服务器10的发现期间根据UPnP获得SS服务器10的信息,并将该信息提供给SS服务器选择器76。
RUI CD模块72通告它是UPnP CD,并用作受UPnP CP控制的UPnP CD,其中,UPnP CP根据所述通告发现RUI CD模块72。
网络服务器模块73用作基于HTTP的通用网络服务器。也就是说,网络服务器模块73是这样一种HTTP服务器模块:从RUI客户机4接收对应用程序的请求,并且响应于所述请求处理应用程序和提供处理结果。具体地讲,当从RUI客户机4接收到对一般网页的请求时,网络服务器模块73响应于所述请求创建并提供网页。
管理RUI服务器7的状态信息的状态管理器75是仅当在RUI客户机4的用户使用与RUI服务器7提供的RUI对应的网页时产生RUI服务器7的状态信息时所需的可选模块。更具体地讲,当从RUI客户机4接收到对在RUI客户机4的用户使用从RUI服务器7提供的网页时所产生的RUI服务器7的状态信息的请求时,状态管理器75将RUI服务器7的状态信息提供给RUI客户机4。也就是说,当经网络服务器模块73接收到图11所示的GETSTATES请求消息时,响应于GETSTATES请求消息,状态管理器75发送图12所示的GETSTATES响应消息。
此外,当从RUI客户机4接收到RUI服务器7的状态信息时,状态管理器75基于接收的信息恢复RUI服务器7的状态。也就是说,当从RUI客户机4接收到图16所示的恢复请求消息中的“ServerStatesString”时,状态管理器75基于ServerStatesString”恢复RUI服务器7的状态。
RUI应用程序模块74执行用于与RUI远程用户接口对应的网页的应用程序。更具体地讲,当经网络服务器模块73从RUI客户机模块4接收到网页请求时,RUI应用程序模块74创建提供单元(例如,“保存”按钮)的可保存页,并将可保存页提供给RUI客户机4,其中,用户可经所述单元来命令保存网页的状态信息。
此外,当从RUI客户机4接收到恢复用户选择的网页的请求时,RUI应用程序模块74通过使用作为存储RUI客户机4的状态信息的站点的位置信息的URL来创建包含Java脚本的可保存页,并将可保存页提供给RUI客户机4,其中,所述Java脚本允许RUI客户机4获得RUI客户机4的状态信息。
SS服务器选择器76是仅当RUI CP模块71存在时所需的可选模块。SS服务器选择器76创建将由RUI CP模块71获得的关于SS服务器10的信息显示给用户的呈现页,并将所述信息提供给RUI客户机4。此外,如上所述,当识别出所述呈现页的用户选择SS服务器10时,SS服务器选择器76通过使用Java脚本的opener对象将关于SS服务器10的信息提供给调用窗口(未示出)。
图8A和图8B示出根据本发明示例性实施例的代表可保存页的句法。参照图8A和图8B,可保存页是超文本标记语言(HTML)文档。如图8A和图8B所示,可保存页将“保存”按钮提供给用户,通过回调“保存”按钮的点击事件从RUI服务器7被返回的可保存页中的Java脚本被执行以通过使用XMLHttpRequest或TCP连接对象来执行GETSTATES命令和保存命令,为了基于HTTP通过使用TCP连接对象来执行GETSTATES命令和保存命令,HTTP请求被直接构造为HTTP中示出的图8A和图8B所示的getserverstate()函数或save()函数,HTTP请求通过sendData()被发送。当在没有TCP连接对象的情况下使用XMLHttpRequest时,可通过使用“open(),onreadystatechangeproperty,responseText property,send method()”来处理HTTP请求。在打开图8A和图8B所示的“startSelectingSSS()”中的空白窗口之后,基于URL和名称创建超链接,并且href属性的每个超链接被连接至opener.save(url)回调。
更具体地讲,网络浏览器模块43使用HTTP对象432和“getserverstate()”来发送GETSTATES请求消息以请求RUI服务器7的状态信息。也就是说,网络浏览器模块43通过打开新套接字(即,不是对应于RUI的网页正使用的套接字)并经所述新套接字发送GETSTATES请求消息来请求RUI服务器7的状态信息。
此外,网络浏览器模块43通过使用HTTP对象432和“Setserverstate()”来接收GETSTATES响应消息,并从GETSTATES响应消息获得RUI服务器7的状态信息。也就是说,网络浏览器模块43经新套接字接收GETSTATES响应消息,并获得RUI服务器7的状态信息。
具体地讲,网络浏览器模块43通过使用HTTP对象432和“save(url)”来发送保存请求消息以请求SS服务器10保存网页的状态信息。也就是说,网络浏览器模块43通过打开新套接字(即,不是对应于RUI的网页正使用的套接字)并经所述新套接字发送保存请求消息来请求SS服务器10保存网页的状态信息。
具体地讲,网络浏览器模块43使用HTTP对象432和“checkSaveResult()”从SS服务器10获得RUI客户机4的状态信息。也就是说,网络浏览器模块43打开新套接字(即,不是对应于RUI的网页正使用的套接字),经所述新套接字请求SS服务器10提供RUI客户机4的状态信息,并经新套接字从SS服务器10获得响应于所述请求的RUI客户机4的状态信息。
如果RUI客户机4不包括RUI CP模块41和SS处理器431,并且RUI服务器7包括RUI CP模块71和SS服务器选择器76,那么RUI服务器7提供图9A和图9B所示的句法所代表的可保存页,例如,不同于图8A和图8B所示的句法所代表的可保存页。
图9A和图9B示出根据本发明的代表图8A和图8B所示的句法所代表的可保存页的另一示例性实施例的句法。当RUI服务器7包括RUI CP模块71和SS服务器选择器76时,图9A和图9B所示的句法所代表的可保存页是HTML文档形式。当点击可保存页中的“保存”按钮时,可保存页中的Java脚本“getserverstate()”、“setserverstate()”和“startSelectingSSS()”被顺序执行,并且“startSelectingSSS()”执行“window.open()”。因而,SS服务器选择器76以超链接的形式提供SS服务器列表,并且对应于SS服务器的每个超链接的点击事件处理器被设置为“opener.save(url)”。结果,“save()”函数被调用以执行“保存”命令。
图10是根据本发明示例性实施例的SS服务器10的框图。参照图10,SS服务器10包括RUI CD模块101、网络服务器模块102、保存处理器103、RUI恢复单元104和状态存储单元105。
RUI CD模块101通告它是UpnP CD,并用作受根据所述通告发现RUICD模块101的RUI客户机4的UPnP CP模块41或RUI服务器7的UPnP CP模块71控制的UPnP CD。也就是说,RUI CD模块101在其描述中可包括诸如<hasStateStorage>true</hasStateStoage>的信息以通告SS服务器10包括能够存储远程接口(即,网页)的状态信息的状态存储单元105。
网络服务器模块102用作基于HTTP的通用网络服务器。也就是说,网络服务器模块102是这样一种HTTP服务器模块:从RUI客户机4接收对应用程序的请求,并响应于所述请求处理应用程序和提供处理结果。具体地讲,网络服务器模块102接收并处理从RUI客户机4接收的保存并恢复网页的状态信息的命令。
当经网络服务器模块102接收到图13所示的保存请求消息时,保存处理器103将包含在保存请求消息中的网页的所有状态信息(即,RUI客户机4的状态信息和RUI服务器7的状态信息)存储在状态存储单元105中。
RUI恢复单元104允许RUI客户机4选择并恢复用户期望的网页的状态信息。更具体地讲,当从RUI客户机4接收到对恢复页列表的请求时,RUI恢复单元104提供存储在状态存储单元105中的恢复页(对应于RUI的网页)的URL、RUI服务器7的状态信息和作为存储如图18所示的第一RUI客户机401的状态信息的站点的位置信息的URL。也就是说,当经网络服务器模块102从RUI客户机4接收到图14所示的恢复页请求消息时,RUI恢复单元104响应于所述消息发送图15所示的恢复页响应消息。此外,如果用户选择了恢复页之一,那么当接收到对选择的恢复页的请求时,RUI恢复单元104创建包含Java脚本的可保存页并将该可保存页返回到图18所示的第二RUI客户机402,所述Java脚本使得通过使用作为存储RUI客户机4的状态信息的站点的位置信息的URL能够获得RUI客户机4的状态信息。也就是说,当经网络服务器模块102接收到图16所示的恢复请求消息,RUI恢复单元104响应于接收的消息将图17所示的句法所代表的可保存页发送给RUI客户机4。
此外,当接收到对RUI客户机4的状态信息的请求时,RUI恢复单元104从状态存储单元105读取RUI客户机4的状态信息并将其提供给RUI客户机4,其中,恢复提供给RUI客户机4的可保存页需要RUI客户机4的状态信息。
状态存储单元105存储从RUI客户机4接收的网页的所有状态信息,例如,RUI客户机4的状态信息和RUI服务器7的状态信息(诸如关于用户使用RUI时所产生的cookie的信息、关于形式的信息、AV对象信息)。
图11示出根据本发明示例性实施例的GETSTATES请求消息的格式。图11的GETSTATES请求消息是HTTP GET请求消息类型。参照图11,为了请求RUI服务器7的状态信息,在GET请求行中输入作为RUI服务器7的状态信息的URL的名称“GETSTATES”。然而,本领域普通技术人员应该清楚,也可使用除了“GETSTATES”以外的名称。此外,用户代理头包含指示RUI客户机4可支持基于HTTP的远程用户接口的“Protocol/Version(capability_string)”,并且可包含指示RUI客户机4包括尽管图11中未示出的RUI CP模块41的“>;hasControlPoint>;true;>;/hasControlPoint>;”。具体地讲,“>;hasControlPoint>;true;>;/hasControlPoint>;”是允许诸如“<hasControlPoint>true</hasControlPoint>”的XML片段从URL溢出的字符串。
图12示出根据本发明示例性实施例的GETSTATES响应消息的格式。图12的GETSTATES响应消息是HTTP GET响应消息类型。参照图12,GETSTATES响应消息中的内容类型字段记录RUI服务器7的状态信息的内容类型值。内容类型值可以是文本/平面图或者应用程序/x-www-url-encoded。此外,GETSTATES响应消息中包含服务器状态的字符串的字段记录RUI服务器7的状态信息值。这里,RUI服务器7的状态信息值必须被确定以通过RUI服务器7的RUI应用程序模块74提供的网页中的Java脚本被解释。
图13示出根据本发明示例性实施例的保存请求消息的格式。图13的保存请求消息是HTTP GET请求消息类型。参照图13,“POST/SAVE?_name_=NameForToBeSaved States”字段的“/SAVE”是保存RUI应用程序模块74产生的RUI的状态信息的命令。
“POST/SAVE?_name_=NameForToBeSavedStates”字段的“?_name_=NameForToBeSavedStates”指示将存储在SS服务器10中的网页的名称,其必须被设置为具有唯一值。例如,唯一名称可以是“<title>tag+saved time”。如果具有与指示的名称相同的名称的网页已经存储在接收到该消息的SS服务器10的状态存储单元105中,那么指示的名称被重命名并被存储。
“Content-Type:application/x-www-form-urlencoded”字段代表保存请求消息体的内容的多用途互联网邮件扩展(MIME)类型,其中,保存请求消息的格式应该被固定以便SS服务器10可理解它。此外,作为保存请求消息体的一部分的“_url_=URLForTheOriginalPageToBeSaved&_serverStates=opaque_server_states_string....”字段指示RUI服务器7的RUI应用程序模块74所产生的网页的URL和RUI服务器7的状态信息。具体地讲,“_serverStates_”的值由SS服务器10解释,因而可以如RUI服务器7所期望的那样被设置。然而,必须在RUI服务器7和SS服务器10之间预先确定“_url_=URLForTheOriginalPageToBeSaved&_serverStates_=opaque_server_states_string...”字段的键(即,“_url_”和“serverStates_”),以便SS服务器10可理解所述键。
“Opaque strings for any RUIC states”字段代表RUI客户机4的状态信息,例如,cookie信息、形式输入信息、AV对象状态信息。与“_url_”和“serverStates_”不同,由于这些字符串也是RUI客户机4的状态信息,所以不必将这些字符串的键值设置为被SS服务器10理解。也就是说,这些字符串的键值可被设置为只有RUI服务器7可理解它们。
图14示出根据本发明示例性实施例的恢复页请求消息的格式。图14的恢复页请求消息是HTTP GET请求消息类型。可以以包括在SS服务器10的描述中的基于XML的列表形式来提供代表恢复页列表“/UI_restore_page”字段。例如,可以以作为RUI服务器7的“GetCompatibleAction()”的返回值的“A_ARG_TYPE_CompatibleUIs”形式来描述基于XML的列表。在这种情况下,可从跟随“A_ARG_TYPE_CompatibleUIs”的每个状态信息元素的协议元素的“<uri>”元素识别出恢复页之一。
图15示出根据本发明示例性实施例的恢复页响应消息的格式。图15的恢复页响应消息是HTTP GET响应消息类型。参照图15,响应于恢复页响应消息返回列出恢复URL的超链接的文档。每个恢复URL具有以下元素。http://RUIS-IP-ADDR:PORT/RUIAppPath指示RUI应用程序的路径,即,RUI服务器7的原始RUI应用程序页的URL。“ServerSideStates”代表当RUI已经被存储时原始RUI服务器的服务器侧的状态信息的URL。“_savedstatesurl_=AURLForSavedStates”代表存储在SS服务器10中的RUI客户机4的状态信息的位置信息的URL。
当用户选择超链接之一时,RUI服务器7请求原始RUI服务器选择的应用程序。在这种情况下,如上所述,存储在SS服务器10中的RUI客户机4的RUI的状态信息的位置信息和RUI服务器7的RUI的状态信息被一起发送。
图16示出根据本发明示例性实施例的恢复请求消息的格式。图16的恢复请求消息是HTTP GET请求消息类型。参照图16,GET请求行的“/RUIAppPath”的值必须与图8A所示的保存命令中的“_url_key”的路径组件相同。“ServerStatesString”是可选的,并且必须具有与保存命令中的“_serverStates_key”相同的值。“_savedstatesurl_”指示存储在SS服务器10中的作为RUI客户机4的RUI的状态信息的位置信息的URL。
图17示出根据本发明示例性实施例的对应于恢复响应文档的可保存页的句法。通过从SS服务器10读取RUI的状态信息并将用于恢复RUI的状态的Java脚本添加到图8A和图8B所示的句法所代表的原始可保存页来获得图17所示的句法所代表的可保存页。
更具体地讲,网络浏览器模块43通过使用HTTP对象432、“startRestoringUIStates(URLForSavedStates)”和“restoreUIStates()”从SS服务器10获得第一RUI客户机401的状态信息。也就是说,网络浏览器模块43打开新套接字,并经所述新套接字请求SS服务器10提供第一RUI客户机401的状态信息,所述新套接字不是对应于RUI的网页正使用的套接字。接下来,网络浏览器模块43经新套接字接收对所述请求的响应,并通过使用接收的响应从SS服务器10获得第一RUI客户机401的状态信息。
可使用TCP连接对象从SS服务器10读取RUI的状态信息。图14示出经图6所示的TCP连接对象的接口从SS服务器10读取RUI的状态信息的方案。另外,可通过使用XMLHttpRequest(诸如,“open()”、“send()”、“onreadystatuschange”和“responseText”)从SS服务器10读取RUI的状态信息,然后恢复RUI。
图18是根据本发明示例性实施例的存储RUI的状态信息的方法的时序图。图18的方法包括图4所示的RUI客户机4、图7所示的RUI服务器7和图10所示的SS服务器10执行的时序操作。因此,尽管这里没有描述,但是图4所示的RUI客户机4、图7所示的RUI服务器7和图10所示的SS服务器10的以上操作也适用于图18所示的方法。
然而,由于根据本发明示例性实施例的存储RUI的方法应用于两个RUI客户机,所以为了方便,图4所示的RUI客户机4将被划分为第一RUI客户机401和第二RUI客户机402。通常,第一RUI客户机401和第二RUI客户机402是单独的RUI客户机,但是它们可被看作是单个RUI客户机。例如,在前者的情况下,用户使用多个RUI客户机中的网页,在后者的情况下,用户顺序使用第一网页、第二网页,并且第一网页仅在单个RUI客户机中。
在操作181,第一RUI客户机401从用户接收对对应于RUI的网页的请求。
在操作182,第一RUI客户机401请求RUI服务器7提供在操作181请求的网页。
在操作183,RUI服务器7向第一RUI客户机401提供在操作182请求的网页。这里,RUI服务器7提供的网页是包含单元(即,保存按钮)的可保存页,由此用户可保存所述网页的状态信息。
在操作184,当用户点击保存按钮时,第一RUI客户机401接收保存网页的状态信息的命令。
在操作185,第一RUI客户机401将GETSTATES请求消息发送给RUI服务器7以请求RUI服务器7提供所述状态信息。接下来,RUI服务器7接收GETSTATES请求消息,并响应于GETSTATES请求消息发送GETSTATES响应消息。接下来,第一RUI客户机401接收GETSTATES响应消息,获得包含在GETSTATES响应消息中的RUI服务器7的状态信息。操作185是可选的,当RUI服务器7管理RUI的状态信息时需要操作185。
具体地讲,在操作185,第一RUI客户机401通过使用HTTP对象432发送GETSTATES请求消息来请求RUI服务器7的状态信息。此外,在操作185,第一RUI客户机401通过使用HTTP对象432接收GETSTATES响应消息,从GETSTATES响应消息获得RUI服务器7的状态信息。
也就是说,在操作185,第一RUI客户机401打开新套接字(即,不是RUI正使用的套接字),并经所述新套接字发送GETSTATES请求消息以请求RUI服务器7的状态信息。此外,在操作185,第一RUI客户机401经所述新套接字接收GETSTATES响应消息,从GETSTATES响应消息获得RUI服务器7的状态信息。
在操作186,第一RUI客户机401从网页读取在用户使用所述网页时产生的第一RUI客户机404的状态信息。
在操作187,第一RUI客户机401将保存请求消息发送给SS服务器10以请求SS服务器10保存网页的状态信息。具体地讲,在操作187,第一RUI客户机401通过使用HTTP对象432发送保存请求消息来请求SS服务器10保存网页的状态信息。
也就是说,在操作187,第一RUI客户机401打开新套接字(即,不是对应于RUI的网页正使用的套接字),并经所述新套接字发送保存请求消息以请求SS服务器10保存网页的状态信息。
在操作188,SS服务器10接收保存请求消息,并将包括在保存请求消息中的网页的状态信息保存在状态存储单元105中。
图19是根据本发明示例性实施例的恢复RUI的状态信息的方法的时序图。图19的方法包括图4所示的RUI客户机4、图7所示的RUI服务器7和图10所示的SS服务器10执行的时序操作。因此,尽管这里没有描述,但是图4所示的RUI客户机4、图7所示的RUI服务器7和图10所示的SS服务器10的以上操作也适用于图18所示的方法。具体地讲,在图18所示的方法的所有操作结束之后执行图19所示的方法。
在操作191,第二RUI客户机402从用户接收显示恢复页列表的命令。
在操作192,第二RUI客户机402将恢复页请求消息发送给SS服务器10以请求恢复页列表。接下来,SS服务器10接收恢复页请求消息,并响应于恢复页请求消息发送恢复页响应消息。接下来,第二RUI客户机402接收恢复页响应消息,从接收的消息获得恢复页列表,即,对应于RUI的网页的URL、RUI服务器7的状态信息和作为存储第一RUI客户机401的状态信息的站点的位置信息的URL。接下来,第二RUI客户机402将恢复页列表显示给用户。
在操作193,第二RUI客户机142接收用户的输入,其中,用户的输入指示用户已从恢复页列表中选择恢复页之一。也就是说,第二RUI客户机402被通知用户期望恢复的网页的URL。
在操作194,第二RUI客户机402请求RUI服务器7恢复选择的网页。也就是说,第二RUI客户机402向RUI服务器7提供RUI服务器7的状态信息和作为存储第一RUI客户机401的状态信息的站点的位置信息的URL以请求RUI服务器7开始执行用于RUI的应用程序。
在操作195,RUI服务器7通过使用在操作194提供的RUI服务器7的状态信息在网页中恢复RUI服务器7的状态。接下来,RUI服务器7通过使用第二RUI客户机402在操作194提供的作为存储第一RUI客户机401的状态信息的站点的位置信息的URL来创建包含使得第一RUI客户机401的状态信息被获得的Java脚本的可保存页,并将该可保存页返回给第二RUI客户机402。
在操作196,第二RUI客户机402执行在操作195返回的可保存页中的Java脚本以通过使用作为存储第一RUI客户机401的状态信息的站点的位置信息的URL从SS服务器10获得恢复选择的网页所需的第一RUI客户机401的状态信息。具体地讲,在操作196,第二RUI客户机402通过使用HTTP对象432从SS服务器10获得第一RUI客户机401的状态信息。
也就是说,在操作196,第二RUI客户机402打开新套接字(即,不是对应于RUI的网页正使用的套接字),并经所述新套接字请求SS服务器10提供第一RUI客户机401的状态信息。接下来,在操作196,第二RUI客户机402经所述新套接字接收对所述请求的响应,从SS服务器10获得包含在所述响应中的第一RUI客户机401的状态信息。
在操作197,第二RUI客户机402执行从RUI服务器7返回的可保存页中的Java脚本以在可保存页中反映在操作196获得的第一RUI客户机401的状态信息,从而在网页中恢复第一RUI客户机401的状态。
图20是根据本发明示例性实施例的作为图7所示的RUI服务器7和图10所示的SS服务器10的组合的设备的框图。图20的设备包括RUI CD模块201、网络服务器模块202、RUI应用程序模块203、状态管理器204、保存处理器205、RUI恢复单元206和状态存储单元207。由于RUI服务器7和SS服务器10的功能被组合在图20的设备中,所以不需要选择SS服务器的处理,因而,图7的SS服务器选择器76不包括在图20的设备中。也就是说,可通过使用图20所示的设备的URL作为参数来直接调用save()函数,而不必调用图8A和图8B或者图9A和图9B所示的句法所代表的可保存页的“setserverstate()”字段中的“startSelectingSSS()”。
本领域普通技术人员将清楚,本发明不限于图20的设备的结构,也就是说,可基于本发明的上述示例性实施例以各种方式设计所述设备。
可将本发明的以上示例性实施例实现为可由计算机系统执行的程序,并且可经计算机可读介质由通用数字计算机执行。此外,可经各种装置将以上示例性实施例中使用的数据结构记录在计算机可读介质中。
计算机可读介质的示例包括磁记录介质(ROM、软盘、硬盘等)、光学记录介质(CD-ROM、DVD等)或载波(诸如通过互联网的传输)。
根据本发明,RUI客户机通过使用不用重新加载网页来处理HTTP请求的HTTP对象来请求外部存储器服务器存储RUI的状态信息,并通过使用存储的状态信息来恢复RUI的原始状态。因此,根据本发明的根据UPnP来存储和恢复RUI的状态信息的方法可适用于具有不允许保存RUI的状态信息的无状态特性的基于HTTP的远程协议模型。
具体地讲,如上所述,不用重新加载网页来处理HTTP请求的HTTP对象的使用去除了对重新加载网页的复杂交互程序的需要,从而用非常简单的交互程序来恢复基于具有无状态特性的HTTP的RUI。
此外,根据本发明,关于存储器服务器的信息被显示以允许用户选择期望的存储器服务器来存储RUI的状态信息。此外,根据本发明,恢复页列表被显示以允许用户从恢复页列表中选择其状态信息存储在存储器服务器中的要恢复的网页。
尽管已参照本发明的示例性实施例具体示出和描述了本发明,但是本领域技术人员应该理解,在不脱离权利要求所限定的本发明的精神和范围的情况下,可以对其进行形式和细节上的各种改变。
Claims (24)
1.一种允许客户机请求保存远程用户接口的状态信息的方法,所述客户机从服务器接收远程用户接口,该方法包括:
客户机通过使用不用重新加载远程用户接口处理预定请求的对象来获得在使用远程用户接口时所产生的远程用户接口的状态信息;和
客户机通过向不同于客户机的装置发送包括获得的状态信息的消息来请求在所述装置中存储所述获得的状态信息。
2.如权利要求1所述的方法,其中,所述远程用户接口是基于不允许存储状态信息的无状态协议的网页。
3.如权利要求2所述的方法,其中,所述对象是不用重新加载网页来处理预定请求的Java脚本对象。
4.如权利要求1所述的方法,其中,所述获得步骤包括:打开新套接字,并经所述新套接字获得所述状态信息,其中,所述新套接字不是远程用户接口正使用的套接字。
5.如权利要求1所述的方法,其中,所述请求步骤包括:打开新套接字,并将所述新套接字请求存储所述状态信息,其中,所述新套接字不是远程用户接口正使用的套接字。
6.如权利要求1所述的方法,其中,所述请求步骤包括:将所述请求发送给提供用于存储所述状态信息的存储器的存储器服务器。
7.如权利要求6所述的方法,还包括:用户选择要存储所述状态信息的存储器服务器,
其中,所述请求步骤包括:基于关于选择的存储器服务器的信息将所述请求发送给所述存储器服务器。
8.如权利要求1所述的方法,其中,所述获得步骤包括:
获得在使用远程用户接口时所产生的服务器的状态信息;和
获得在使用远程用户接口时所产生的客户机的状态信息。
9.如权利要求8所述的方法,还包括:当从用户接收到存储服务器的状态信息的命令时,请求服务器提供其状态信息,
其中,获得服务器的状态信息的步骤包括:从对所述请求的响应获得服务器的状态信息。
10.如权利要求8所述的方法,其中,获得客户机的状态信息的步骤包括:从远程用户接口读取客户机的状态信息以获得客户机的状态信息。
11.一种允许客户机请求存储远程用户接口的状态信息的设备,所述客户机使用从服务器提供的远程用户接口,该设备包括:
远程用户接口控制点模块,获得关于提供用于存储所述状态信息的存储器的存储器服务器的信息;和
网络浏览器模块,基于远程用户接口控制点模块获得的关于存储器服务器的信息,通过使用不用重新加载远程用户接口处理预定请求的对象来请求存储器服务器存储所述状态信息,
其中,所述存储服务器不同于从所述服务器接收远程用户接口的客户机。
12.如权利要求11所述的设备,其中,网络浏览器模块通过使用所述对象获得在客户机使用远程用户接口时所产生的状态信息,并请求存储获得的状态信息。
13.如权利要求11所述的设备,其中,远程用户接口控制点模块在通用即插即用发现期间获得存储器服务器的信息。
14.一种允许客户机恢复远程用户接口的状态信息的方法,所述客户机从服务器接收远程用户接口,该方法包括:
客户机通过使用不用重新加载远程用户接口处理预定请求的对象来获得在使用远程用户接口时所产生的状态信息;和
客户机在远程用户接口中反映获得的状态信息,
其中,所述获得状态信息的步骤包括:所述客户机通过从不同于所述客户机的装置接收状态信息来从所述装置获得所述状态信息。
15.如权利要求14所述的方法,其中,所述远程用户接口是基于不允许存储状态信息的无状态协议的网页。
16.如权利要求15所述的方法,其中,所述对象是不用重新加载网页来处理预定请求的Java脚本。
17.如权利要求14所述的方法,其中,所述获得状态信息的步骤包括:打开新套接字,并经所述新套接字获得所述状态信息,其中,所述新套接字不是远程用户接口正使用的套接字。
18.如权利要求14所述的方法,其中,所述获得状态信息的步骤包括:从提供用于存储所述状态信息的存储器的存储器服务器获得所述状态信息。
19.如权利要求14所述的方法,其中,所述获得状态信息的步骤包括:获得在使用远程用户接口时所产生的客户机的状态信息,
所述反映获得的状态信息的步骤包括:在远程用户接口中反映获得的客户机的状态信息。
20.如权利要求14所述的方法,其中,所述获得状态信息的步骤还包括:
获得在使用远程用户接口时所产生的服务器的状态信息;和
将获得的服务器的状态信息提供给服务器。
21.如权利要求14所述的方法,还包括:将网页列表显示给用户,并允许识别出所显示的网页列表的用户从所述网页列表中选择一个网页,
其中,获得状态信息的步骤包括:获得恢复选择的网页所需的状态信息。
22.一种允许客户机恢复远程用户接口的状态信息的设备,所述客户机从服务器接收远程用户接口,该设备包括:
远程用户接口控制点模块,获得关于提供用于存储所述状态信息的存储器的存储器服务器的信息;和
网络浏览器模块,基于远程用户接口控制点模块获得的关于存储器服务器的信息,通过使用不用重新加载远程用户接口处理预定请求的对象从存储器服务器获得所述状态信息,并在远程用户接口中反映获得的状态信息,
其中,所述存储服务器不同于从所述服务器接收远程用户接口的客户机。
23.如权利要求22所述的设备,其中,网络浏览器模块通过使用所述对象请求存储器服务器提供在客户机使用远程用户接口时所产生的状态信息,并获得响应于所述请求的状态信息。
24.如权利要求22所述的设备,其中,远程用户接口控制点模块在通用即插即用发现期间获得存储器服务器的信息。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US75821906P | 2006-01-12 | 2006-01-12 | |
US60/758,219 | 2006-01-12 | ||
KR1020060042617 | 2006-05-11 | ||
KR10-2006-0042617 | 2006-05-11 | ||
KR1020060042617A KR100788693B1 (ko) | 2006-01-12 | 2006-05-11 | 원격 사용자 인터페이스의 상태 정보를 저장하고 복구하는방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101001260A CN101001260A (zh) | 2007-07-18 |
CN101001260B true CN101001260B (zh) | 2013-03-06 |
Family
ID=38500413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007100003565A Active CN101001260B (zh) | 2006-01-12 | 2007-01-12 | 存储和恢复远程用户接口的状态信息的方法和设备 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9094369B2 (zh) |
EP (2) | EP1808789B1 (zh) |
JP (1) | JP5122825B2 (zh) |
KR (1) | KR100788693B1 (zh) |
CN (1) | CN101001260B (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100788693B1 (ko) * | 2006-01-12 | 2007-12-26 | 삼성전자주식회사 | 원격 사용자 인터페이스의 상태 정보를 저장하고 복구하는방법 및 장치 |
KR101453956B1 (ko) * | 2008-01-14 | 2014-10-24 | 삼성전자주식회사 | 임베디드 브라우져 에이젼트를 기반으로 하는 디바이스 및 방법 |
US7912927B2 (en) * | 2008-03-26 | 2011-03-22 | Microsoft Corporation | Wait for ready state |
US8196118B2 (en) | 2008-03-27 | 2012-06-05 | Microsoft Corporation | Event set recording |
JP5151696B2 (ja) * | 2008-05-30 | 2013-02-27 | 富士通株式会社 | ユニフォームリソースロケータ情報を書き換えるプログラム |
WO2010002411A1 (en) * | 2008-07-03 | 2010-01-07 | Hewlett-Packard Development Company, L.P. | Memory server |
KR101580839B1 (ko) * | 2008-08-05 | 2015-12-29 | 삼성전자주식회사 | 홈 네트워크에서 rui 서버의 이벤트를 통지하는 방법 및이를 위한 장치 |
US9582292B2 (en) * | 2008-10-07 | 2017-02-28 | Microsoft Technology Licensing, Llc. | Merged tree-view UI objects |
KR20100049474A (ko) * | 2008-11-03 | 2010-05-12 | 삼성전자주식회사 | 원격 사용자 인터페이스를 다른 디바이스로 이전하기 위한 장치 및 방법 |
KR101647144B1 (ko) * | 2008-11-03 | 2016-08-23 | 삼성전자주식회사 | 원격 유저 인터페이스 서비스에서 리소스에 대한 제어 방법, 장치 및 그 저장 매체 |
KR101485806B1 (ko) | 2009-05-28 | 2015-01-23 | 삼성전자주식회사 | 원격 유저 인터페이스를 지원하는 홈 네트워크에서 이벤트 처리 방법 및 이를 위한 장치 |
US9015136B2 (en) * | 2010-01-22 | 2015-04-21 | Microsoft Technology Licensing, Llc | Storing temporary state data in separate containers |
US20110296460A1 (en) * | 2010-05-31 | 2011-12-01 | Samsung Electronics Co., Ltd. | Method and apparatus for providing remote user interface (ui) service |
KR20120039237A (ko) * | 2010-10-15 | 2012-04-25 | 삼성전자주식회사 | 사용자 인터페이스 갱신 방법 및 장치 |
KR20120039180A (ko) * | 2010-10-15 | 2012-04-25 | 삼성전자주식회사 | 홈 네트워크에서 사용자 인터페이스 페이지 제공 장치 및 방법 |
KR20130099520A (ko) * | 2012-02-29 | 2013-09-06 | 삼성전자주식회사 | Html을 이용한 사용자 인터페이스 이전 장치 및 방법 |
CN103368980B (zh) * | 2012-03-26 | 2018-02-16 | 财付通支付科技有限公司 | 一种jsonp数据请求方法和装置 |
US9842091B2 (en) * | 2013-03-15 | 2017-12-12 | Google Llc | Switching to and from native web applications |
CN104077117A (zh) * | 2013-03-26 | 2014-10-01 | 联想(北京)有限公司 | 信息处理方法和控制点设备 |
CN104579860B (zh) * | 2013-10-25 | 2018-10-12 | 华为终端有限公司 | 访问网络侧服务的方法、服务器和系统 |
US10025702B1 (en) | 2014-12-10 | 2018-07-17 | Amazon Technologies, Inc. | Browser capable of saving and restoring content item state |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3977484B2 (ja) | 1997-05-08 | 2007-09-19 | 矢崎総業株式会社 | 状態情報の管理方法及び通信システム |
US6324564B1 (en) * | 1998-06-02 | 2001-11-27 | Nettech Systems, Inc. | Optimized wireless communication system |
JP2000020472A (ja) * | 1998-06-30 | 2000-01-21 | Nec Home Electron Ltd | 情報処理装置 |
US6763371B1 (en) | 1999-05-10 | 2004-07-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for collaborative communication in a communication network |
US6725281B1 (en) | 1999-06-11 | 2004-04-20 | Microsoft Corporation | Synchronization of controlled device state using state table and eventing in data-driven remote device control model |
US6711618B1 (en) * | 1999-09-03 | 2004-03-23 | Cisco Technology, Inc. | Apparatus and method for providing server state and attribute management for voice enabled web applications |
US6820111B1 (en) * | 1999-12-07 | 2004-11-16 | Microsoft Corporation | Computer user interface architecture that saves a user's non-linear navigation history and intelligently maintains that history |
EP1285354B1 (en) * | 2000-05-09 | 2004-03-03 | Sun Microsystems, Inc. | Method and apparatus for proximity discovery of services |
US7194689B2 (en) * | 2000-08-22 | 2007-03-20 | Microsoft Corporation | Generic user control point tool for universal plug and play (UPnP) devices |
US20050066037A1 (en) * | 2002-04-10 | 2005-03-24 | Yu Song | Browser session mobility system for multi-platform applications |
US7987491B2 (en) * | 2002-05-10 | 2011-07-26 | Richard Reisman | Method and apparatus for browsing using alternative linkbases |
KR100440583B1 (ko) * | 2002-05-16 | 2004-07-19 | 한국전자통신연구원 | 외부 인터넷에 의한 댁내망의 UPnP장치 관리제어 장치및 방법 |
JP4391766B2 (ja) * | 2002-05-31 | 2009-12-24 | 株式会社エヌ・ティ・ティ・ドコモ | マルチプラットフォームアプリケーションのためのブラウザセッションモビリティシステム |
KR100458271B1 (ko) * | 2002-09-24 | 2004-11-26 | 에스케이커뮤니케이션즈 주식회사 | 커뮤니케이터 사용자 상태정보 제공방법 |
NO319854B1 (no) * | 2003-04-04 | 2005-09-26 | Telenor Asa | Fremgangsmate og system for handtering av web-sesjoner |
US7440997B2 (en) * | 2003-06-13 | 2008-10-21 | Microsoft Corporation | Mechanism for supporting browser navigation while preserving important application return states |
US7266550B2 (en) * | 2004-01-29 | 2007-09-04 | Sap Aktiengesellschaft | Managing application status information for a computer application |
KR20050077672A (ko) * | 2004-01-30 | 2005-08-03 | 엘지전자 주식회사 | 미디어 파일 중계 서비스 방법 및 시스템 |
JP4337591B2 (ja) * | 2004-03-19 | 2009-09-30 | 株式会社日立製作所 | 情報処理装置、ネットワークシステムおよびネットワークシステムの制御方法 |
KR100631708B1 (ko) * | 2004-06-16 | 2006-10-09 | 엘지전자 주식회사 | 푸쉬 투 토크 서비스를 제공하는 단말기, 푸쉬 투 토크 서비스를 이용한 친구 소개 시스템 및 그 방법 |
US7562131B2 (en) * | 2004-06-25 | 2009-07-14 | Intel Corporation | UPnP user interface system and method |
US20060168526A1 (en) * | 2005-01-12 | 2006-07-27 | Nokia Corporation | Platform-specific application user interface remoting |
US20060200570A1 (en) * | 2005-03-02 | 2006-09-07 | Nokia Corporation | Discovering and mounting network file systems via ad hoc, peer-to-peer networks |
US7770229B2 (en) * | 2005-05-11 | 2010-08-03 | Yahoo! Inc. | System and method for the propagation of DRM protected content |
JP5021184B2 (ja) * | 2005-06-09 | 2012-09-05 | 富士通株式会社 | 機器情報提供装置および機器情報提供方法 |
US20070005783A1 (en) * | 2005-06-30 | 2007-01-04 | Intel Corporation | Systems, methods, and media for controlling a media connection from within a remoting protocol |
US7844442B2 (en) * | 2005-08-16 | 2010-11-30 | Exent Technologies, Ltd. | System and method for providing a remote user interface for an application executing on a computing device |
US20070067305A1 (en) * | 2005-09-21 | 2007-03-22 | Stephen Ives | Display of search results on mobile device browser with background process |
KR100736090B1 (ko) * | 2005-09-28 | 2007-07-06 | 삼성전자주식회사 | 홈 네트워크에서 제 3의 장치의 이벤트를 처리하는 방법 및장치 |
KR100788693B1 (ko) * | 2006-01-12 | 2007-12-26 | 삼성전자주식회사 | 원격 사용자 인터페이스의 상태 정보를 저장하고 복구하는방법 및 장치 |
KR100813969B1 (ko) * | 2006-01-18 | 2008-03-14 | 삼성전자주식회사 | 원격 사용자 인터페이스의 상태 정보를 저장하고 복구하는방법 및 장치 |
-
2006
- 2006-05-11 KR KR1020060042617A patent/KR100788693B1/ko active IP Right Grant
-
2007
- 2007-01-03 EP EP07100066.5A patent/EP1808789B1/en active Active
- 2007-01-03 EP EP10173160.2A patent/EP2256646B1/en active Active
- 2007-01-11 JP JP2007003885A patent/JP5122825B2/ja active Active
- 2007-01-12 CN CN2007100003565A patent/CN101001260B/zh active Active
- 2007-01-12 US US11/652,489 patent/US9094369B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP1808789B1 (en) | 2016-08-17 |
JP2007188507A (ja) | 2007-07-26 |
US20070174300A1 (en) | 2007-07-26 |
KR20070075233A (ko) | 2007-07-18 |
EP2256646A1 (en) | 2010-12-01 |
EP1808789A2 (en) | 2007-07-18 |
US9094369B2 (en) | 2015-07-28 |
KR100788693B1 (ko) | 2007-12-26 |
CN101001260A (zh) | 2007-07-18 |
EP1808789A3 (en) | 2007-09-19 |
EP2256646B1 (en) | 2016-08-24 |
JP5122825B2 (ja) | 2013-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101001260B (zh) | 存储和恢复远程用户接口的状态信息的方法和设备 | |
CN101005501B (zh) | 存储和恢复远程用户接口的状态信息的方法和设备 | |
TW545059B (en) | Method and system for remote television replay control | |
CN108319483A (zh) | 网页处理方法、装置、终端及存储介质 | |
US20200267345A1 (en) | Remotely Accessed Virtual Recording Room | |
US20090285392A1 (en) | Real-Time Help Services for Web Applications | |
CN101529407A (zh) | 使用异步通信协议浏览网络资源的方法和装置 | |
CN104410875B (zh) | 实现iptv盒端业务零配置自动开通的系统及方法 | |
US20070156868A1 (en) | Efficient dynamic discovery of web services | |
US10733036B2 (en) | Programmatic implementations generated from an API call log | |
Mesnil | Mobile and Web Messaging: Messaging Protocols for Web and Mobile Devices | |
CN1953403A (zh) | 用于呈现监控报告的方法和系统 | |
US8230002B2 (en) | Method and system for automatic setup in web-based applications | |
US10635508B1 (en) | Programmatic implementations generated by recording user actions via an ephemeral user account | |
US8264725B1 (en) | Providing printable content | |
US20080072243A1 (en) | System and method for automating the transfer of data from a web interface to another | |
JP2006190033A (ja) | 情報処理システム及び通信再生処理方法 | |
CN101917476A (zh) | 超文本传输协议消息处理方法及其客户端系统 | |
Toman | Review of Web Service Technologies: REST over SOAP | |
JP2004506351A (ja) | リモートテレビジョン再生制御 | |
CN116016409A (zh) | 一种在线聊天系统 | |
CN116170310A (zh) | 目录服务器的数据更新方法、电子设备及事务引擎系统 | |
Winstanley et al. | Astro Runtime: an API to the virtual observatory | |
CN103856451A (zh) | 基于云端的登入管理系统及其方法 | |
Patel | Chat application using Ruby on Rails |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |