KR20080071533A - 사용자 인터페이스를 관리하는 장치 및 방법 - Google Patents
사용자 인터페이스를 관리하는 장치 및 방법 Download PDFInfo
- Publication number
- KR20080071533A KR20080071533A KR1020080063549A KR20080063549A KR20080071533A KR 20080071533 A KR20080071533 A KR 20080071533A KR 1020080063549 A KR1020080063549 A KR 1020080063549A KR 20080063549 A KR20080063549 A KR 20080063549A KR 20080071533 A KR20080071533 A KR 20080071533A
- Authority
- KR
- South Korea
- Prior art keywords
- user interface
- state
- server
- packet
- application
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- 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]
-
- 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- 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/543—User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
-
- 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/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Telephonic Communication Services (AREA)
Abstract
본 발명은 사용자 인터페이스를 관리하는 장치 및 방법에 관한 것으로서, 네트워크 상에서 서버로부터 제공되는 어플리케이션의 사용자 인터페이스의 상태를 HTML(HyperText Markup Language) 및 HTTP(HyperText Transfer Protocol)을 이용하여 관리하는 사용자 인터페이스를 관리하는 장치 및 방법에 관한 것이다.
본 발명의 실시예에 따른 사용자 인터페이스를 관리하는 장치는 네트워크상에 존재함을 나타내는 통지 패킷을 생성하는 패킷 생성부와, 상기 네트워크를 통하여 전송되는 소정 어플리케이션의 사용자 인터페이스의 상태에 대하여, 상기 통지 패킷의 배포 결과로 수신되는 상기 상태의 저장 명령 또는 추출 명령을 관리하는 웹 서버와, 상기 저장 명령에 따라 상기 사용자 인터페이스의 상태를 저장하는 상태 저장부 및 상기 저장된 사용자 인터페이스의 상태 중 상기 추출 명령에 따라 추출된 특정 사용자 인터페이스의 상태를 송신하는 통신부를 포함한다.
사용자 인터페이스(User Interface), HTML, HTTP
Description
본 발명은 사용자 인터페이스를 관리하는 장치 및 방법에 관한 것으로서, 더욱 상세하게는 네트워크 상에서 서버로부터 제공되는 어플리케이션의 사용자 인터페이스의 상태를 HTML(HyperText Markup Language) 및 HTTP(HyperText Transfer Protocol)을 이용하여 관리하는 사용자 인터페이스를 관리하는 장치 및 방법에 관한 것이다.
원격으로 서버로부터 제공되는 어플리케이션을 이용하는 기술로는 마이크로소프트(Microsoft)사의 RDP(Remote Desktop Protocol)과 인텔(Intel)사의 (Extended Remoting Protocol) 등이 있다. 이러한 원격 기술은 바이너리(Binary) 기반의 비트맵(Bitmap) 전송 프로토콜을 기반으로 하는데, 어플리케이션을 제공함에 있어서 큰 네트워크 대역폭을 필요로 하는 단점이 있다. 특히, 원격 어플리케이션의 사용자 인터페이스(User Interface)가 오디오/비디오 스트리밍(Audio/Video Streaming)인 경우, 필요로 하는 네트워크의 대역폭은 더욱 커지게 된다.
한편, 특정 클라이언트를 통하여 서버로부터 제공되는 어플리케이션에 대한 작업을 수행 중인 사용자는 차후에 다른 클라이언트를 통하여 해당 어플리케이션에 대한 작업을 수행함에 있어서 사용자 인터페이스의 통일성을 요구할 수 있다. 즉, 사용자는 제 1 클라이언트를 통하여 특정 어플리케이션에 대한 작업이 종료된 시점의 사용자 인터페이스가 제 2 클라이언트를 통하여 디스플레이되기를 원하는 것이다.
도 1은 종래의 변경된 클라이언트를 통하여 원격 어플리케이션을 제공하는 시스템을 나타낸 도면으로서, UPnP(Universal Plug and Play) 환경하에서 시스템은 원격 제어 포인트(10), 원격 서버(20), 제 1 원격 클라이언트(31) 및 제 2 원격 클라이언트(32)를 포함하여 구성된다.
UPnP의 네트워킹 단계는 주소 지정(Addressing), 검색(Discovery) 설명(Description), 제어(Control), 이벤트 작업(Eventing) 및 프리젠테이션(Presentation)으로 구성되는데, 원격 제어 포인트(10)는 제 1 원격 클라이언트(31)에 의하여 작업 중인 연결(Connection)을 확인한다. 그리고, 원격 제어 포인트(10)는 원격 서버(20)로 하여금 현재 작업 중인 연결에 대한 사용자 인터페이스의 상태를 일정 시간 유지하도록 하고 저장하도록 한다.
그리고, 원격 제어 포인트(10)는 원격 서버(20)와 제 1 원격 클라이언트(31) 간의 연결을 종료시키고, 원격 서버(20)와 제 2 원격 클라이언트(32) 간의 연결을 체결시킨 후에 원격 서버(20)로 하여금 저장된 사용자 인터페이스를 제 2 원격 클라이언트(32)에게 제공하도록 명령한다.
그러나, 사용자 인터페이스의 상태 중 원격 서버(20)에 의하여 관리되는 것 들 이외에도 원격 클라이언트(31, 32)에 의하여 관리되는 것들이 있다. 예를 들어, 웹 브라우저의 쿠키(Client Cookie), 폼 입력(Form Input), 오디오/비디오 객체(Audio/Video Object) 등은 모두 원격 클라이언트에 의하여 관리되는데 이에 따라, 종래의 방식에 따른 원격 서버(20)에 저장된 사용자 인터페이스의 상태에는 원격 클라이언트(31, 32)에 의하여 관리되는 것이 포함되지 않는다.
특히, 원격 서버(20)에 저장 수단이 구비되어 있지 않는 경우 사용자 인터페이스의 상태를 저장하고 복원할 수 있는 방법이 없으므로 이에 대한 개선이 필요하게 되었다.
본 발명은 네트워크 상에서 서버로부터 제공되는 어플리케이션의 사용자 인터페이스의 상태를 별도의 장치에 저장시키고, 이를 HTML 및 HTTP를 통하여 제공하는데 그 목적이 있다.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해되어질 수 있을 것이다.
상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 사용자 인터페이스를 관리하는 장치는 네트워크상에 존재함을 나타내는 통지 패킷을 생성하는 패킷 생성부와, 상기 네트워크를 통하여 전송되는 소정 어플리케이션의 사용자 인터페이스의 상태에 대하여, 상기 통지 패킷의 배포 결과로 수신되는 상기 상태의 저장 명령 또는 추출 명령을 관리하는 웹 서버와, 상기 저장 명령에 따라 상기 사용자 인터페이스의 상태를 저장하는 상태 저장부 및 상기 저장된 사용자 인터페이스의 상태 중 상기 추출 명령에 따라 추출된 특정 사용자 인터페이스의 상태를 송신하는 통신부를 포함한다.
본 발명의 실시예에 따른 사용자 인터페이스를 디스플레이하는 장치는 제공된 어플리케이션에 대한 사용자 인터페이스의 상태를 저장하는 서버를 검색하는 서버 검색부와, 상기 검색 결과에 따라 상기 사용자 인터페이스의 상태에 대한 저장 명령 또는 추출 명령을 위한 패킷을 생성하는 상태 관리 요청부와, 상기 사용자 인터페이스의 상태 또는 상기 패킷을 송신하는 통신부 및 상기 추출 명령을 위한 패킷의 송신에 대한 응답으로 수신된 특정 사용자 인터페이스를 디스플레이하는 웹 브라우저를 포함한다.
본 발명의 실시예에 따른 사용자 인터페이스를 관리하는 방법은 네트워크상에 존재함을 나타내는 통지 패킷을 생성하는 단계와, 상기 네트워크를 통하여 전송되는 소정 어플리케이션의 사용자 인터페이스의 상태에 대하여, 상기 통지 패킷의 배포 결과로 수신되는 상기 상태의 저장 명령 또는 추출 명령을 관리하는 단계와, 상기 저장 명령에 따라 상기 사용자 인터페이스의 상태를 저장하는 단계 및 상기 저장된 사용자 인터페이스의 상태 중 상기 추출 명령에 따라 추출된 특정 사용자 인터페이스의 상태를 송신하는 단계를 포함한다.
본 발명의 실시예에 따른 사용자 인터페이스를 디스플레이하는 방법은 제공된 어플리케이션에 대한 사용자 인터페이스의 상태를 저장하는 서버를 검색하는 단계와, 상기 검색 결과에 따라 상기 사용자 인터페이스의 상태에 대한 저장 명령 또는 추출 명령을 위한 패킷을 생성하는 단계와, 상기 사용자 인터페이스의 상태 또는 상기 패킷을 송신하는 단계 및 상기 추출 명령을 위한 패킷의 송신에 대한 응답으로 수신된 특정 사용자 인터페이스를 디스플레이하는 단계를 포함한다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
상기한 바와 같은 본 발명의 사용자 인터페이스를 제공하는 장치 및 방법에 따르면 다음과 같은 효과가 하나 혹은 그 이상 있다.
첫째, 네트워크 상에서 서버로부터 제공되는 어플리케이션의 사용자 인터페이스의 상태를 별도의 장치에 저장시킴으로써, 서로 다른 클라이언트를 통하여 해당 어플리케이션을 제공받는 사용자에게 동일한 사용자 인터페이스를 제공할 수 있는 장점이 있다.
둘째, 네트워크 상에 존재하는 복수 개의 서버로부터 제공되는 복수 개의 어플리케이션에 대한 사용자 인터페이스를 동시에 관리할 수 있는 장점도 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
본 실시예에서 사용되는 '부'라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '부'는 어떤 역할들을 수행한다. 그렇지만 '부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생 시키도록 구성될 수도 있다. 따라서, 일 예로서 '부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '부'들로 결합되거나 추가적인 구성요소들과 '부'들로 더 분리될 수 있다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.
도 2는 본 발명의 실시예에 따른 사용자 인터페이스를 관리하는 시스템을 나타낸 도면으로서, 시스템은 원격 서버(300), 저장 서버(400) 및 원격 클라이언트(500)를 포함하여 구성된다.
네트워크(200)상에 원격 서버(300)는 적어도 하나 이상 존재할 수 있는데, 원격 서버(300)는 원격 클라이언트(500)에게 어플리케이션을 제공하는 역할을 한다. 이를 위하여, 각각의 원격 서버(211, 212, 213)는 웹 서버를 구비할 수 있으며, 자신이 네트워크(200)에 참여하고 있다는 통지 패킷을 주기적으로 송신할 수 있다. 여기서, 어플리케이션은 웹 페이지뿐만 아니라 실행 가능한 응용 프로그램이 포함될 수 있다.
또한, 원격 서버(300)는 원격 클라이언트(500)의 요청에 따라 자신의 상태를 송신할 수도 있다. 원격 서버(300)의 상태에는 제공 중인 어플리케이션의 URL(Uniform Resource Locator)이 포함될 수 있다.
여기서, 네트워크(200)는 유선 또는 무선 네트워크일 수 있는데, HTTP(HyperText Transfer Protocol)을 이용하여 각 장치간의 데이터를 전달하는 역할을 한다.
원격 클라이언트(500)는 원격 서버(300)로부터 제공받은 어플리케이션을 디스플레이하는 역할을 한다. 이를 위하여, 원격 클라이언트(500)는 웹 브라우저를 구비할 수 있다. 어플리케이션을 제공받기 위하여 원격 클라이언트(500)는 우선 네트워크(200)상에 원격 서버(300)가 존재하는지를 검색한다. 원격 서버(300)의 검색은 통지 패킷을 수신함으로써 수행될 수 있는데, 원격 클라이언트(500)는 통지 패킷에 포함된 원격 서버(300)의 주소를 참조하여 원격 서버(300)와 통신하고, 자신이 원하는 어플리케이션을 요청한다.
이와 같은 과정을 통하여 어플리케이션을 제공받는 도중에 원격 클라이언트(200)는 어플리케이션의 수신을 중단할 수 있다. 이 때, 제공 중이던 어플리케이션은 차후에 다시 제공받을 수도 있는데, 이를 위하여 원격 클라이언트(200)는 중단 시점에서의 어플리케이션에 대한 사용자 인터페이스(User Interface)의 상태를 저장 서버(400)로 송신하여 저장시킨다.
저장 서버(400) 또한 원격 서버(300)와 마찬가지로 자신이 네트워크(200)에 참여하고 있다는 통지 패킷을 주기적으로 송신하고, 이를 위하여 웹 서버를 구비할 수 있다. 저장 서버(400)의 통지 패킷을 수신한 원격 클라이언트(500)는 통지 패킷에 포함된 저장 서버(400)의 주소를 참조하여 저장 서버(400)와 통신하고, 자신이 제공받고 있던 어플리케이션에 대한 사용자 인터페이스의 상태를 저장 서버(400)로 송신한다.
여기서, 사용자 인터페이스의 상태에는 어플리케이션에 대한 원격 서버(300) 쪽의 상태 및 원격 클라이언트(500) 쪽의 상태를 포함하는데, 원격 서버(300) 쪽의 상태는 전술한 바와 같이 어플리케이션의 URL이 포함되고, 원격 클라이언트(500) 쪽의 상태는 웹 브라우저의 쿠키(Cookie), 폼 입력(Form Input) 및 오디오/비디오 객체(Audio/Video Object)를 포함한다.
사용자 인터페이스의 상태는 HTML(HyperText Markup Language)의 형태로 저장 서버(400)에 제공될 수 있는데, 적어도 하나 이상의 원격 서버(300)로부터 제공되고 있는 어플리케이션에 대한 것일 수 있다.
예를 들어, 제 1 원격 클라이언트(231)는 제 1 원격 서버(211) 및 제 2 원격 서버(212)로부터 동시에 어플리케이션을 제공받을 수 있는 것인데 이 때, 제 1 원격 클라이언트(231)가 저장하고자 하는 사용자 인터페이스의 상태에는 제 1 원격 서버(211)의 상태, 제 2 원격 서버(212)의 상태 및 자신의 웹 브라우저의 쿠키, 폼 입력 및 오디오/비디오 객체를 포함하는 것이다.
한편, 제 1 원격 클라이언트(231)를 통하여 적어도 하나 이상의 원격 서버(200)로부터 제공된 어플리케이션에 대한 작업을 수행하던 사용자는, 이에 대한 작업을 중지하고 사용자 인터페이스의 상태를 저장 서버(400)에 저장한 후에 제 2 원격 클라이언트(231)를 통하여 작업을 계속할 수 있다.
이 때, 제 2 원격 클라이언트(231)는 저장 서버(400)로부터 송신되는 통지 패킷을 수신하여 저장 서버(400)가 네트워크(200)상에 존재하고 있음을 확인한 후에 저장 서버(400)에게 해당 사용자 인터페이스의 상태를 요청한다.
원격 클라이언트(500)의 요청에 따라 저장 서버(400)는 해당 사용자 인터페이스의 상태를 송신하는데, 해당 사용자 인터페이스의 상태에는 복수 개의 원격 서버(300)로부터 제공되는 복수 개의 어플리케이션에 대한 사용자 인터페이스의 상태가 포함될 수 있다.
복수 개의 어플리케이션에 대한 사용자 인터페이스의 상태를 수신한 제 2 원격 클라이언트(232)는 사용자 인터페이스의 상태에 포함된 복수 개의 어플리케이션을 동시에 제공받거나, 사용자에 의하여 선택된 하나 또는 두 개 이상의 어플리케이션을 제공받을 수도 있다.
도 3은 본 발명의 실시예에 따른 어플리케이션을 제공하는 원격 서버를 나타낸 블록도로서, 원격 서버(300)는 어플리케이션 생성부(310), 패킷 생성부(320), 웹 서버(330), 제어부(340), 상태 관리부(350) 및 통신부(360)를 포함하여 구성된다.
어플리케이션 생성부(310)는 원격 클라이언트(500)에게 제공할 어플리케이션을 생성하는 역할을 한다. 여기서, 어플리케이션은 웹 페이지뿐만 아니라 원격 클라이언트(500)에서 실행될 수 있는 응용 프로그램을 포함한다.
패킷 생성부(320)는 원격 서버(300)가 네트워크상에 존재하고 있음을 나타내는 통지 패킷을 생성하는 역할을 한다. 통지 패킷에는 원격 서버(300)의 주소가 포함되어 있는데, 이를 참조하여 원격 클라이언트(500)는 원격 서버(300)와 통신할 수 있게 된다. 통지 패킷은 통신부(360)를 통하여 주기적으로 송신될 수 있다.
웹 서버(330)는 클라이언트/서버 모델과 HTTP를 이용하여 어플리케이션을 원격 클라이언트(500)에게 제공하는 역할을 한다. 웹 서버(330)로는 원격 서버(300)에서 구동되고 있는 운영 체계에 따라 아파치(Apache), IIS(Internet Information Server), 엔터프라이즈 서버(Enterprise Server) 또는 로터스 도미노 서버(Lotus Domino Server) 등이 사용될 수 있다.
상태 관리부(350)는 제공 중인 어플리케이션에 대한 사용자 인터페이스의 상태를 원격 클라이언트(500)에게 제공하는 역할을 한다. 여기서, 상태 관리부(350)에 의하여 관리되는 상태는 원격 서버(300) 측의 상태만을 의미하는 것으로서, 어플리케이션의 URL이 포함될 수 있다.
원격 클라이언트(500)로부터 사용자 인터페이스의 상태를 요청 받으면 상태 관리부(350)는 현재 제공 중인 어플리케이션에 대한 사용자 인터페이스의 상태를 확인한 후에 통신부(360)를 통하여 확인된 결과를 송신한다.
통신부(360)는 원격 클라이언트(500)와 통신하여 통지 패킷, 어플리케이션 또는 사용자 인터페이스의 상태를 송신하고 사용자 인터페이스의 상태에 대한 요청 패킷을 수신하는 역할을 한다.
통신부(360)와 원격 클라이언트간(500)의 통신 방식은 이더넷, USB, IEEE 1394, 직렬 통신(serial communication) 및 병렬 통신(parallel communication)과 같은 유선 통신 방식이 사용될 수 있으며, 적외선 통신, 블루투스, 홈 RF 및 무선 랜과 같은 무선 통신 방식이 사용될 수 있다.
여기서, 통신부(360)를 통하여 송수신되는 패킷 등은 HTML 형식에 의한 것일 수 있는데 이에 따라, 사용자 인터페이스를 영상 데이터로 제공하는 방식에 비하여 네트워크의 부하를 감소시킬 수 있다.
제어부(340)는 통신부(360)를 통하여 수신된 패킷의 종류를 판단하는 역할을 수행하며, 어플리케이션 생성부(310), 패킷 생성부(320), 웹 서버(330), 상태 관리부(350), 통신부(360) 및 원격 서버(300)의 전반적인 제어를 수행한다.
도 4는 본 발명의 실시예에 따른 사용자 인터페이스의 상태를 관리하는 저장 서버를 나타낸 블록도로서, 저장 서버(400)는 상태 저장부(410), 웹 서버(420), 제어부(430), 패킷 생성부(440) 및 통신부(450)를 포함하여 구성된다.
상태 저장부(410)는 원격 클라이언트(500)로부터 수신한 사용자 인터페이스의 상태를 저장하는 역할을 한다. 여기서, 사용자 인터페이스의 상태는 원격 클라이언트(500)의 웹 브라우저의 쿠키, 폼 입력, 오디오/비디오 객체 및 어플리케이션을 제공하는 원격 서버(300)의 상태를 포함하는데, 원격 서버(300)의 상태는 적어도 하나 이상의 원격 서버(300)의 상태가 포함될 수 있다.
사용자 인터페이스의 상태가 저장됨에 있어서 각 사용자 인터페이스의 상태에는 소정의 이름이 부여될 수 있다. 여기서, 이름은 원격 클라이언트(500)의 사용자에 의하여 직접 입력되거나, 저장 시점, 어플리케이션의 이름, 원격 서버의 이름 또는 원격 서버의 주소 등이 자동적으로 조합될 수도 있다.
상태 저장부(410)는 하드 디스크, 플래시 메모리, CF 카드(Compact Flash Card), SD 카드(Secure Digital Card), SM 카드(Smart Media Card), MMC(Multimedia Card) 또는 메모리 스틱(Memory Stick) 등 정보의 입출력이 가능한 모듈을 포함한다.
웹 서버(420)는 클라이언트/서버 모델과 HTTP를 이용하여 사용자 인터페이스의 상태 저장을 위한 인터페이스를 원격 클라이언트(500)에게 제공하는 역할을 한다. 즉, 원격 클라이언트(500)의 사용자는 웹 서버(420)로부터 제공된 인터페이스를 통하여 사용자 인터페이스의 상태를 저장하고 추출할 수 있게 된다.
패킷 생성부(440)는 저장 서버(400)가 네트워크상에 존재하고 있음을 나타내는 통지 패킷을 생성하는 역할을 한다. 통지 패킷에는 저장 서버(400)의 주소가 포함되어 있는데, 이를 참조하여 원격 클라이언트(500)는 저장 서버(400)와 통신할 수 있게 된다. 통지 패킷은 통신부(450)를 통하여 주기적으로 송신될 수 있다.
통신부(450)는 원격 클라이언트(500)와 통신하여 통지 패킷, 저장 명령, 추출 명령 또는 사용자 인터페이스의 상태를 송수신하는 역할을 한다. 통신부(450)와 원격 클라이언트(500)간의 통신 방식은 이더넷, USB, IEEE 1394, 직렬 통신 및 병렬 통신과 같은 유선 통신 방식이 사용될 수 있으며, 적외선 통신, 블루투스, 홈 RF 및 무선 랜과 같은 무선 통신 방식이 사용될 수 있다. 여기서, 통신부(450)를 통하여 송수신되는 패킷 등은 HTML 형식에 의한 것일 수 있다.
제어부(430)는 통신부(450)를 통하여 수신된 패킷의 종류를 판단하는 역할을 수행하며, 상태 저장부(410), 웹 서버(420), 패킷 생성부(440), 통신부(450) 및 저장 서버(400)의 전반적인 제어를 수행한다.
한편, 원격 서버(300)와 저장 서버(400)는 하나의 장치(이하, 통합 서버라 한다)에 구비될 수 있다. 즉, 통합 서버는 원격 클라이언트(500)에 어플리케이션을 제공하고, 원격 클라이언트(500)의 요청에 따라 사용자 인터페이스의 상태를 저장할 수 있는 것이다.
이 때, 통합 서버에 저장되는 사용자 인터페이스의 상태는 통합 서버에 의하여 제공되는 어플리케이션에 대한 사용자 인터페이스뿐만 아니라 별도의 원격 서버에 의하여 제공되는 어플리케이션에 대한 사용자 인터페이스의 상태가 포함될 수도 있다.
도 5는 본 발명의 실시예에 따른 어플리케이션을 제공받는 원격 클라이언트를 나타낸 블록도로서, 원격 클라이언트(500)는 상태 관리 요청부(510), 저장부(520), 웹 브라우저(530), 제어부(540), 서버 검색부(550) 및 통신부(560)를 포함하여 구성된다.
상태 관리 요청부(510)는 원격 서버(300)의 상태를 요청하기 위한 요청 패킷, 사용자 인터페이스의 상태에 대한 저장 명령을 위한 패킷(이하, 저장 명령 패킷이라 한다) 및 사용자 인터페이스의 상태에 대한 추출 명령을 위한 패킷(이하, 추출 명령 패킷이라 한다)를 생성하는 역할을 한다.
각 패킷은 통신부(560)를 통하여 송신되는데, 요청 패킷은 원격 서버(300)로 송신되고 저장 명령 패킷 및 추출 명령 패킷은 저장 서버(400)로 송신된다.
웹 브라우저(530)는 원격 서버(300)로부터 제공된 어플리케이션을 디스플레이하거나 추출 명령 패킷에 대한 응답으로 저장 서버(400)로부터 수신된 사용자 인터페이스를 디스플레이하는 역할을 한다.
여기서, 웹 브라우저(530)는 저장 서버(400)로부터 제공된 복수 개의 사용자 인터페이스의 상태에 대한 이름을 디스플레이하는데 이 때, 사용자는 디스플레이된 이름 중 하나를 선택함으로써 자신이 원하는 어플리케이션에 대한 작업을 수행할 수 있게 된다.
서버 검색부(550)는 원격 서버(300) 또는 저장 서버(400)를 검색하는 역할을 수행한다. 원격 서버(300) 및 저장 서버(400)는 자신들이 네트워크에 참여하고 있다는 것을 통지하기 위하여 주기적으로 통지 패킷을 배포하는데, 서버 검색부(550)는 통신부(560)를 통하여 수신된 통지 패킷을 분석하여 원격 서버(300) 또는 저장 서버(400)가 네트워크상에 존재하는지를 판단하는 것이다.
그리고, 만일 원격 서버(300) 또는 저장 서버(400)가 네트워크상에 존재하는 것으로 서버 검색부(550)에 의하여 판단된 경우 통지 패킷에 포함된 원격 서버(300)의 주소 또는 저장 서버(400)의 주소가 제어부로 전달된다.
제어부(540)는 서버 검색부(550)로부터 전달받은 주소를 참조하여 웹 브라우저(530)와 원격 서버(300)의 웹 서버(330) 또는 저장 서버(400)의 웹 서버(420)가 서로 통신할 수 있도록 한다. 또한, 제어부(540)는 상태 관리 요청부(510), 저장부(520), 웹 브라우저(530), 서버 검색부(550), 통신부(560) 및 원격 클라이언트(500)의 전반적인 제어를 수행한다.
저장부(520)는 네트워크를 구성하는 주변 장치에 대한 정보인 캐시 정보를 저장한다. 서버 검색부(510)에 의하여 검색된 원격 서버(300) 및 저장 서버(400)의 주소가 캐시 정보에 포함될 수 있고 또한, 저장 서버(400)의 경우 별도의 플래그가 부가되어 저장될 수 있다. 저장부(520)는 하드 디스크, 플래시 메모리, CF 카드, SD 카드, SM 카드, MMC 또는 메모리 스틱 등 정보의 입출력이 가능한 모듈을 포함한다.
통신부(560)는 원격 서버(300) 또는 저장 서버(400)와 통신하여 어플리케이션, 요청 패킷, 저장 명령 패킷 및 추출 명령 패킷 등을 송수신하는 역할을 한다.
여기서, 통신부(560)는 HTTP을 이용하여 어플리케이션, 사용자 인터페이스의 상태 또는 패킷을 송수신할 수 있는데, 사용자 인터페이스의 상태 및 패킷은 HTML로 구성된 것일 수 있다.
도 6은 본 발명의 실시예에 따른 사용자 인터페이스의 상태에 대한 HTML 코드를 나타낸 도면으로서, 원격 클라이언트에 의하여 생성되어 저장 서버로 송신되는 HTML 코드(600)를 나타낸 도면이다.
전술한 바와 같이, 사용자 인터페이스의 상태에는 어플리케이션의 URL, 원격 클라이언트의 웹 브라우저의 쿠키, 폼 입력, 오디오/비디오 객체 및 원격 서버의 주소가 포함될 수 있는데, HTML 코드(600)에는 어플리케이션에 의한 복수 개의 사용자 인터페이스의 상태가 포함될 수 있다.
도 6에서 _url #_에는 어플리케이션을 제공하는 적어도 하나 이상의 어플리케이션에 대한 URL이 입력되는데 예를 들어, _url1_에는 첫 번째 어플리케이션의 URL(URLForPageToBeSaved#1)이 입력되고, _url2_에는 두 번째 어플리케이션의 URL(URLForPageToBeSaved#2)이 입력될 수 있는 것이다.
각각의 사용자 인터페이스의 상태에는 하나의 쿠키(url #. cookie) 및 적어도 하나 이상의 폼 입력(url #. form . formid #)과 오디오/비디오 객체(url . av . avobjid #. state #)가 포함될 수 있으며, 원격 서버의 상태(url #. server)가 포함될 수 있다.
폼 입력에서 formid #는 폼 입력의 고유 번호를 나타내며, 그 형식(type)은 입력된 값(formid #_ value _ string)의 형식에 따라 결정된다. 예를 들어, 입력된 값의 형태가 텍스트(text)인 경우 폼 입력의 형식은 텍스트가 되는 것이다.
오디오/비디오 객체에서 avobjid #는 오디오/비디오 객체의 고유 번호를 나타내며, state#는 오디오/비디오 객체에 대한 URL 또는 재생 정보를 나타낸다. 예를 들어, 오디오/비디오 객체의 URL을 나타내는 경우 url . av . avobjid . data = http://192.168.0.1/videos/efg.mpg 와 같이 나타낼 수 있고, 오디오/비디오 객체의 재생 정보를 나타내는 경우 url.av.avobjid.playPostion = 93847과 같이 나타낼 수 있는 것이다. 여기서, playPosition은 오디오/비디오 객체가 재생됨에 있어서의 특정 재생 위치를 의미한다.
원격 서버의 상태에는 원격 클라이언트가 원격 서버에 요청한 원격 서버의 상태가 입력된다. 예를 들어, 원격 클라이언트가 원격 서버에 접속하여 어플리케이션으로서 EPG(Electronic Program Guide) 정보를 제공받고 있는 경우 원격 서버는 원격 클라이언트의 요청에 따라 progid :123/ recordStartTime :09\:00 AM / step :3과 같은 상태로 응답할 수 있는데 이에 따라, url . server=progid :123/ recordStartTime :09\:00 AM / step :3과 같이 나타낼 수 있는 것이다.
도 7a 내지 도 7b는 본 발명의 실시예에 따른 저장 명령 패킷 및 추출 명령 패킷에 대한 HTML 코드를 나타낸 도면으로서, 저장 명령 패킷(700a)은 사용자 인터페이스의 이름(/SAVE?_name_), 원격 클라이언트의 이름(HOST), 패킷의 크기(Content-Length) 및 HTML 문서의 형식(Content-Type)이 포함되며, 도 6을 통하여 전술한 사용자 인터페이스의 상태에 대한 HTML 코드가 포함된다.
여기서, 사용자 인터페이스의 이름은 원격 클라이언트(500)의 사용자에 의하여 직접 입력되거나, 저장 시점, 어플리케이션의 이름, 원격 서버의 이름 또는 원격 서버의 주소 등이 자동적으로 조합될 수도 있다.
이 때, 저장 명령 패킷(700a)에 포함된 사용자 인터페이스의 이름이 저장 서버(400)에 기 저장된 사용자 인터페이스의 이름과 동일한 경우, 사용자에 의하여 다른 이름이 지정되거나 저장 서버(400)에 의하여 임의의 이름이 지정될 수도 있다. 예를 들어, 저장 서버(400)는 전달받은 사용자 인터페이스의 이름에 소정 숫자를 부가함으로써 기 저장된 사용자 인터페이스의 이름과 구별되도록 할 수 있는 것이다.
한편, 원격 클라이언트(500)는 복수 개의 원격 서버(300)로부터 제공받은 각각의 어플리케이션에 대한 복수 개의 사용자 인터페이스의 상태를 저장하기 위한 저장 명령 패킷(700a)을 송신할 수도 있는데 이에 따라, 저장 명령 패킷(700a)에는 복수 개의 사용자 인터페이스의 상태가 포함될 수도 있다.
도 7b에 도시된 바와 같이, 추출 명령 패킷(700b)은 추출하고자 하는 사용자 인터페이스의 이름(/RESTORE ?_ name _) 및 원격 클라이언트의 이름(HOST)에 대한 HTML 코드가 포함된다.
추출 명령 패킷(700b)을 수신한 저장 서버(400)는 저장된 사용자 인터페이스의 상태 중 해당 사용자 인터페이스의 이름을 갖는 상태를 추출하여 원격 클라이언트(500)로 송신한다.
도 8은 본 발명의 실시예에 따른 저장 서버를 검색하는 과정을 나타낸 흐름도이다.
원격 서버(300) 또는 저장 서버(400)로부터 통지 패킷을 수신한 원격 클라이언트(500)는 통지 패킷에 포함된 주소를 참조하여 원격 서버(300) 또는 저장 서버(400)로 HTTP 요청(HTTP Request) 패킷을 송신한다.
우선, 저장 수단을 구비하지 않은 원격 서버(300)로 HTTP 요청 패킷이 송신된 경우(S810), 원격 서버(300)는 원격 클라이언트(500)로 HTTP 응답 패킷을 송신하는데(S820) 여기서, HTTP 응답 패킷의 헤더에는 원격 서버(300)에 저장 수단이 구비되어 있다는 플래그가 포함되어 있지 않다.
이에 따라, 원격 클라이언트(500)가 네트워크상에 존재하는 또 다른 서버인 저장 서버(400)로 HTTP 요청 패킷을 송신하면(S830), 저장 서버(400)는 원격 클라이언트(500)로 HTTP 응답 패킷을 송신하는데(S840) 여기서, HTTP 응답 패킷의 헤더에는 저장 서버에 저장 수단이 구비되어 있다는 플래그가 포함되어 있다. 일 예로, 다음과 같은 플래그가 헤더에 삽입될 수 있다.
RUIS
-
Capabilities
:
StateStorage
여기서, RUIS는 원격 사용자 인터페이스 서버(Remote User Interface Server)를 나타내는 것으로서, 웹 서버(330, 420)를 구비하는 원격 서버(300), 저장 서버(400) 및 통합 서버를 의미한다.
그리고, 사용자가 저장 명령을 입력하면(S850), 원격 클라이언트(500)는 현재 작업 중인 어플리케이션에 대한 사용자 인터페이스의 상태를 수집한다(S860). 즉, 어플리케이션을 제공하는 원격 서버(300)에 요청하여 어플리케이션의 URL을 수신하고, 웹 브라우저의 쿠키, 폼 입력 및 오디오/비디오 객체를 확인하는 것이다.
그리고, 원격 클라이언트(500)는 사용자 인터페이스의 이름, 원격 클라이언트의 이름, 패킷의 크기, HTML 문서의 형식 및 수집한 사용자 인터페이스의 상태에 대한 HTML 코드가 포함된 저장 명령 패킷(700a)을 저장 서버(400)로 송신하고(S870), 저장 서버는 수신된 저장 명령 패킷(700a)에 포함된 사용자 인터페이스의 상태에 대한 HTML 코드를 저장한다.
도 9는 본 발명의 실시예에 따른 UPnP 환경하에서 저장 서버를 검색하는 과정을 나타낸 흐름도이다.
원격 클라이언트(500)의 서버 검색부(550)가 UPnP의 제어 포인트(Control Point)의 역할을 수행하고, 원격 서버(300) 또는 저장 서버(400)의 제어부(340 또는 430) 및 패킷 생성부(320 또는 440)가 피제어 장치(Controlled Device)의 역할을 수행하여 원격 클라이언트(500) 및 서버(원격 서버 또는 저장 서버)(300 또는 400)간에 UPnP 통신이 수행될 수 있다.
원격 서버(300) 또는 저장 서버(400)와의 검색 단계(Discovery Step)를 통하여 통지 패킷을 수신한 원격 클라이언트(500)는 통지 패킷에 포함된 주소를 참조하 여 원격 서버(300) 또는 저장 서버(400)로 DDD(Device Description Document)요청 패킷을 HTTP GET 방식으로 송신한다.
우선, 저장 수단을 구비하지 않은 원격 서버(300)로 DDD 요청 패킷이 송신된 경우(S910), 원격 서버(300)는 원격 클라이언트(500)로 DDD 응답 패킷을 송신하는데(S920) 여기서, DDD 응답 패킷의 헤더에는 원격 서버(300)에 저장 수단이 구비되어 있다는 정보가 포함되어 있지 않다.
이에 따라, 원격 클라이언트(500)는 수신된 DDD 응답 패킷을 분석하여 네트워크를 구성하는 주변 장치에 대한 정보인 캐시 정보를 갱신한다(S930). 그리고, 갱신된 캐시 정보를 저장부(520)에 저장한 후, 네트워크상에 존재하는 또 다른 서버인 저장 서버(400)로 DDD 요청 패킷을 송신한다(S940).
DDD 요청 패킷을 수신한 저장 서버(400)는 원격 클라이언트(500)로 DDD 응답 패킷을 송신하는데(S950) 여기서, DDD 응답 패킷에는 저장 서버(400)에 저장 수단이 구비되어 있다는 정보가 포함되어 있다. 일 예로, 다음과 같은 정보가 DDD 응답 패킷에 삽입될 수 있다.
<RUIS - Capabilities > StateStorage </ RUIS - Capabilities>
이에 따라, 원격 클라이언트(500)는 수신된 DDD 응답 패킷을 분석하여 캐시 정보를 갱신하고(S960), 갱신된 캐시 정보를 저장부(520)에 저장한다. DDD 요청 패킷의 송신 및 DDD 응답 패킷의 분석은 네트워크에 존재하는 모든 장치에 대하여 수행되는데 이에 따라, 저장 수단을 구비한 복수 개의 저장 서버(400)에 대한 정보가 캐시 정보에 포함될 수 있다.
그리고, 사용자가 저장 명령을 입력하면(S970), 원격 클라이언트(500)는 현재 작업 중인 어플리케이션에 대한 사용자 인터페이스의 상태를 수집한다(S980).
그리고, 원격 클라이언트(500)는 캐시 정보에 포함된 저장 서버(400)의 리스트 중 하나를 선택한 후, 선택된 저장 서버(400)로 사용자 인터페이스의 상태가 포함된 저장 명령 패킷(700a)을 송신한다(S990). 여기서, 저장 서버(400)의 선택은 사용자에 의하여 수행될 수 있다.
도 10은 본 발명의 실시예에 따른UPnP 환경하에서 사용자 인터페이스의 상태를 검색하는 과정을 나타낸 흐름도이다.
원격 클라이언트(500)의 서버 검색부(550)가 UPnP의 제어 포인트의 역할을 수행하고, 저장 서버(400)의 제어부(430) 및 패킷 생성부(440)가 피제어 장치의 역할을 수행하는 경우 원격 클라이언트(500) 및 저장 서버(400)간에 UPnP 통신이 수행될 수 있다.
저장 서버(400)와의 검색 단계를 통하여 통지 패킷을 수신한 원격 클라이언트(500)는 통지 패킷에 포함된 주소를 참조하여 저장 서버(400)로 DDD 요청 패킷을 송신한다(S1010).
DDD 요청 패킷을 수신한 저장 서버(400)는 원격 클라이언트(500)로 DDD 응답 패킷을 송신하는데(S1020) 여기서, DDD 응답 패킷에는 어플리케이션의 리스트가 포함되어 있다. 또한, 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-0 CompatibleUIs.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)의 주소를 추출하고, 추출된 주소를 이용하여 저장 서버(400)와의 통신을 수행하기 위하여 HTTP 요청 패킷을 송신한다(S1030).
이에 따라, 저장 서버(400)는 HTTP 응답 패킷을 송신하는데(S1040), HTTP 응답 패킷에는 사용자 인터페이스의 상태에 대한 리스트가 HTML 또는 XML(Extensible Markup Language) 형식으로 삽입되어 있다. 즉, 각 사용자 인터페이스의 상태에 대한 하이퍼링크(hyperlink)가 HTTP 응답 패킷에 포함되어 있는 것으로서, 하이퍼링크는 일 예로 다음과 같을 수 있다.
<a href="http://RUIS-IP-ADDR:PORT/RESTORE?_name_='EPG Saved 21 th Oct 9:00 AM'" Saved 21th Oct 9:00AM</a>
HTML 형식의 리스트는 원격 클라이언트(500)의 웹 브라우저(530)를 통하여 출력되고, 사용자는 출력된 리스트 중 자신이 원하는 사용자 인터페이스의 상태를 선택한다.
선택 결과가 삽입된 패킷 즉, 추출 명령 패킷(700b)은 저장 서버(400)로 송신되고(S1050), 저장 서버(400)는 추출 명령 패킷(700b)에 포함된 사용자 인터페이스의 상태를 상태 저장부(410)에서 추출하여 원격 클라이언트(500)로 송신하고(S1060), 원격 클라이언트(500)는 수신된 사용자 인터페이스의 상태에 따라 해당 어플리케이션에 대한 사용자 인터페이스를 복원한다.
도 11은 본 발명의 실시예에 따른 사용자 인터페이스의 상태를 관리하는 과 정을 나타낸 흐름도이다.
사용자 인터페이스의 상태를 관리하기 위하여 저장 서버(400)의 패킷 생성부(440)는 저장 서버(400)가 네트워크상에 존재하고 있음을 나타내는 통지 패킷을 생성한다. 통지 패킷은 통신부(450)를 통하여 주기적으로 송신되는데(S1110), 통지 패킷이 송신됨에 따라, 웹 서버(420)는 통신부(450)를 통하여 원격 클라이언트(500)와 통신을 수행한다.
그리고, 웹 서버(420)는 원격 클라이언트(500)로부터 저장 명령 패킷(700a)을 수신하는데(S1120), 상태 저장부(410)는 수신된 저장 명령 패킷(700a)에 포함된 사용자 인터페이스의 상태를 저장한다. 여기서, 사용자 인터페이스의 상태는 원격 클라이언트(500)의 웹 브라우저의 쿠키, 폼 입력, 오디오/비디오 객체 및 어플리케이션의 URL을 포함한다.
그리고, 웹 서버(420)는 원격 클라이언트(500)로부터 추출 명령 패킷(700b)을 수신하고(S1130), 제어부(430)는 상태 저장부(410)를 검색하여 추출 명령 패킷(700b)에 포함된 사용자 인터페이스의 상태를 추출한다.
추출된 사용자 인터페이스의 상태는 통신부(450)를 통하여 원격 클라이언트(500)로 송신되고(S1140) 이에 따라, 원격 클라이언트(500)는 복원하고자 하는 어플리케이션에 대한 사용자 인터페이스를 디스플레이한다.
도 12는 본 발명의 실시예에 따른 어플리케이션을 제공받는 과정을 나타낸 흐름도이다.
원격 서버(300)로부터 제공된 어플리케이션을 복원하기 위하여 원격 클라이 언트(500)의 서버 검색부(550)는 제공된 어플리케이션에 대한 사용자 인터페이스의 상태를 저장할 수 있는 저장 서버(400)를 검색한다(S1210). 서버 검색부(550)는 통신부(560)를 통하여 수신된 통지 패킷을 분석하여 저장 서버(400)가 네트워크상에 존재하는지를 판단하는 것이다.
서버 검색부(550)의 검색 결과에 따라 네트워크상에 저장 서버(400)가 존재하면 사용자의 저장 명령 입력에 따라, 상태 관리 요청부(510)는 사용자 인터페이스의 상태에 대한 저장 명령 패킷(700a)을 생성한다(S1220).
저장 명령 패킷(700a)을 생성하기 위하여, 상태 관리 요청부(510)는 현재 작업 중인 어플리케이션에 대한 사용자 인터페이스의 상태를 수집하는데, 사용자 인터페이스의 상태에는 어플리케이션의 URL, 웹 브라우저의 쿠키, 폼 입력 및 오디오/비디오 객체 등이 포함된다. 저장 명령 패킷(700a)은 통신부(560)를 통하여 저장 서버(400)로 송신된다(S1230).
여기서, 어플리케이션의 URL은 어플리케이션을 제공하는 원격 서버(300)로부터 제공될 수 있는데, 일 예로 다음과 같은 HTTP 코드가 포함된 HTTP 요청 패킷이 원격 서버(300)로 송신될 수 있다.
http://192.168.1.1/EPG/record/GETSTATE
HTTP 요청 패킷에 대한 응답으로 원격 서버(300)는 HTTP 응답 패킷을 원격 클라이언트(500)로 송신하는데, HTTP 응답 패킷에는 어플리케이션에 대한 정보가 담긴 다음과 같은 HTTP 코드가 포함될 수 있다.
progid
:123/
recordStartTime
:09\:00
AM
/
recordEndTime
:10\:00
AM
/
step
:3
위와 같은 원격 서버(300)의 상태가 수신됨에 따라 상태 관리 요청부(510)는 다음과 같은 HTTP 코드가 포함된 저장 명령 패킷(700a)을 생성할 수 있다.
_
url1
_=http://192.168.1.1/EPG/record
url1
.
server
=
progid
:123/
recordStartTime
:09\:00
AM
/
recordEndTime
:10\:30
AM
/
step
:3
사용자로부터 사용자 인터페이스의 상태에 대한 복원 명령이 입력됨에 따라(S1240), 상태 관리 요청부(510)는 추출 명령 패킷(700b)을 생성하고(S1250), 생성된 추출 명령 패킷(700b)은 통신부(560)를 통하여 저장 서버(400)로 송신된다(S1260).
추출 명령 패킷(700b)이 송신됨에 따라 통신부(560)는 저장 서버(400)로부터 사용자 인터페이스의 상태를 수신하는데(S1270), 수신된 사용자 인터페이스의 상태는 웹 브라우저(530)로 전달되고, 웹 브라우저(530)는 수신된 사용자 인터페이스의 상태에 따라 특정 어플리케이션에 대한 사용자 인터페이스를 디스플레이한다(S1280).
이상과 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
도 1은 종래의 변경된 클라이언트를 통하여 원격 어플리케이션을 제공하는 시스템을 나타낸 도면이다.
도 2는 본 발명의 실시예에 따른 사용자 인터페이스를 관리하는 시스템을 나타낸 도면이다.
도 3은 본 발명의 실시예에 따른 어플리케이션을 제공하는 원격 서버를 나타낸 블록도이다.
도 4는 본 발명의 실시예에 따른 사용자 인터페이스의 상태를 관리하는 저장 서버를 나타낸 블록도이다.
도 5는 본 발명의 실시예에 따른 어플리케이션을 제공받는 원격 클라이언트를 나타낸 블록도이다.
도 6은 본 발명의 실시예에 따른 사용자 인터페이스의 상태에 대한 HTML 코드를 나타낸 도면이다.
도 7a 내지 도 7b는 본 발명의 실시예에 따른 저장 명령 패킷 및 추출 명령 패킷에 대한 HTML 코드를 나타낸 도면이다.
도 8은 본 발명의 실시예에 따른 저장 서버를 검색하는 과정을 나타낸 흐름도이다.
도 9는 본 발명의 실시예에 따른 UPnP 환경하에서 저장 서버를 검색하는 과정을 나타낸 흐름도이다.
도 10은 본 발명의 실시예에 따른 사용자 인터페이스의 상태를 검색하는 과 정을 나타낸 흐름도이다.
도 11은 본 발명의 실시예에 따른 사용자 인터페이스의 상태를 관리하는 과정을 나타낸 흐름도이다.
도 12는 본 발명의 실시예에 따른 어플리케이션을 제공받는 과정을 나타낸 흐름도이다.
<도면의 주요 부분에 관한 부호의 설명>
410 : 상태 저장부 420 : 웹 서버
430 : 제어부 440 : 패킷 생성부
450 : 통신부
Claims (18)
- 네트워크상에 존재함을 나타내는 통지 패킷을 생성하는 패킷 생성부;상기 네트워크를 통하여 적어도 하나 이상의 서버로부터 전송되는 적어도 하나 이상의 어플리케이션의 사용자 인터페이스의 상태에 대하여, 상기 통지 패킷의 배포 결과로 수신되는 상기 상태의 저장 명령 또는 추출 명령을 관리하는 웹 서버;상기 저장 명령에 따라 상기 사용자 인터페이스의 상태를 저장하는 상태 저장부; 및상기 저장된 사용자 인터페이스의 상태 중 상기 추출 명령에 따라 추출된 특정 사용자 인터페이스의 상태를 송신하는 통신부를 포함하는데,상기 사용자 인터페이스의 상태는 상기 어플리케이션에 의하여 실행되는 컨텐츠의 진행 상태를 포함하는 사용자 인터페이스를 관리하는 장치.
- 제 1항에 있어서,상기 네트워크는 HTTP(HyperText Transfer Protocol)을 이용하는 네트워크를 포함하는 사용자 인터페이스를 관리하는 장치.
- 제 1항에 있어서,상기 통신부는 HTML(HyperText Markup Language)로 구성된 상기 통지 패킷, 상기 저장 명령, 상기 추출 명령 또는 상기 사용자 인터페이스의 상태를 송수신하 는 사용자 인터페이스를 관리하는 장치.
- 제 1항에 있어서,상기 사용자 인터페이스의 상태는 상기 어플리케이션을 제공하는 서버의 상태 및 상기 어플리케이션을 제공받는 클라이언트의 상태 중 적어도 하나를 포함하는 사용자 인터페이스를 관리하는 장치.
- 제 1항에 있어서,상기 어플리케이션을 생성하는 어플리케이션 생성부를 더 포함하는 사용자 인터페이스를 관리하는 장치.
- 적어도 하나 이상의 서버로부터 제공된 적어도 하나 이상의 어플리케이션에 대한 사용자 인터페이스의 상태를 저장하는 서버를 검색하는 서버 검색부;상기 검색 결과에 따라 상기 사용자 인터페이스의 상태에 대한 저장 명령 또는 추출 명령을 위한 패킷을 생성하는 상태 관리 요청부;상기 사용자 인터페이스의 상태 또는 상기 패킷을 송신하는 통신부; 및상기 추출 명령을 위한 패킷의 송신에 대한 응답으로 수신된 특정 사용자 인터페이스를 디스플레이하는 웹 브라우저를 포함하는데,상기 사용자 인터페이스의 상태는 상기 어플리케이션에 의하여 실행되는 컨텐츠의 진행 상태를 포함하는 사용자 인터페이스를 디스플레이하는 장치.
- 제 6항에 있어서,상기 사용자 인터페이스의 상태는 상기 웹 브라우저의 쿠키(Cookie), 폼 입력(Form Input), 오디오/비디오 객체(Audio/Video Object) 및 상기 어플리케이션을 제공하는 서버의 상태 중 적어도 하나를 포함하는 사용자 인터페이스를 디스플레이하는 장치.
- 제 6항에 있어서,상기 통신부는 HTTP(HyperText Transfer Protocol)을 이용하여 상기 사용자 인터페이스의 상태 또는 상기 패킷을 송신하는 사용자 인터페이스를 디스플레이하는 장치.
- 제 6항에 있어서,상기 통신부는 HTML(HyperText Markup Language)로 구성된 상기 패킷 또는 상기 사용자 인터페이스의 상태를 송신하는 사용자 인터페이스를 디스플레이하는 장치.
- (a) 네트워크상에 존재함을 나타내는 통지 패킷을 생성하는 단계;(b) 상기 네트워크를 통하여 적어도 하나 이상의 서버로부터 전송되는 적어도 하나 이상의 어플리케이션의 사용자 인터페이스의 상태에 대하여, 상기 통지 패 킷의 배포 결과로 수신되는 상기 상태의 저장 명령 또는 추출 명령을 관리하는 단계;(c) 상기 저장 명령에 따라 상기 사용자 인터페이스의 상태를 저장하는 단계; 및(d) 상기 저장된 사용자 인터페이스의 상태 중 상기 추출 명령에 따라 추출된 특정 사용자 인터페이스의 상태를 송신하는 단계를 포함하는데,상기 사용자 인터페이스의 상태는 상기 어플리케이션에 의하여 실행되는 컨텐츠의 진행 상태를 포함하는 사용자 인터페이스를 관리하는 방법.
- 제 10항에 있어서,상기 네트워크는 HTTP(HyperText Transfer Protocol)을 이용하는 네트워크를 포함하는 사용자 인터페이스를 관리하는 방법.
- 제 10항에 있어서,상기 (d) 단계는 HTML(HyperText Markup Language)로 구성된 상기 통지 패킷, 상기 저장 명령, 상기 추출 명령 또는 상기 사용자 인터페이스의 상태를 송수신하는 단계를 포함하는 사용자 인터페이스를 관리하는 방법.
- 제 10항에 있어서,상기 사용자 인터페이스의 상태는 상기 어플리케이션을 제공하는 서버의 상 태 및 상기 어플리케이션을 제공받는 클라이언트의 상태 중 적어도 하나를 포함하는 사용자 인터페이스를 관리하는 방법.
- 제 10항에 있어서,상기 어플리케이션을 생성하는 단계를 더 포함하는 사용자 인터페이스를 관리하는 방법.
- (a) 적어도 하나 이상의 서버로부터 제공된 적어도 하나 이상의 어플리케이션에 대한 사용자 인터페이스의 상태를 저장하는 서버를 검색하는 단계;(b) 상기 검색 결과에 따라 상기 사용자 인터페이스의 상태에 대한 저장 명령 또는 추출 명령을 위한 패킷을 생성하는 단계;(c) 상기 사용자 인터페이스의 상태 또는 상기 패킷을 송신하는 단계; 및(d) 상기 추출 명령을 위한 패킷의 송신에 대한 응답으로 수신된 특정 사용자 인터페이스를 디스플레이하는 단계를 포함하는데,상기 사용자 인터페이스의 상태는 상기 어플리케이션에 의하여 실행되는 컨텐츠의 진행 상태를 포함하는 사용자 인터페이스를 디스플레이하는 방법.
- 제 15항에 있어서,상기 사용자 인터페이스의 상태는 상기 웹 브라우저의 쿠키(Cookie), 폼 입력(Form Input), 오디오/비디오 객체(Audio/Video Object) 및 상기 어플리케이션을 제공하는 서버의 상태 중 적어도 하나를 포함하는 사용자 인터페이스를 디스플레이하는 방법.
- 제 15항에 있어서,상기 (c) 단계는 HTTP(HyperText Transfer Protocol)을 이용하여 상기 사용자 인터페이스의 상태 또는 상기 패킷을 송신하는 단계를 포함하는 사용자 인터페이스를 디스플레이하는 방법.
- 제 15항에 있어서,상기 (c) 단계는 HTML(HyperText Markup Language)로 구성된 상기 패킷 또는 상기 사용자 인터페이스의 상태를 송신하는 단계를 포함하는 사용자 인터페이스를 디스플레이하는 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US73737505P | 2005-11-17 | 2005-11-17 | |
US60/737,375 | 2005-11-17 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060045849A Division KR20070052645A (ko) | 2005-11-17 | 2006-05-22 | 사용자 인터페이스를 관리하는 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080071533A true KR20080071533A (ko) | 2008-08-04 |
KR101259157B1 KR101259157B1 (ko) | 2013-04-30 |
Family
ID=38112881
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060045849A KR20070052645A (ko) | 2005-11-17 | 2006-05-22 | 사용자 인터페이스를 관리하는 장치 및 방법 |
KR1020080063549A KR101259157B1 (ko) | 2005-11-17 | 2008-07-01 | 사용자 인터페이스를 관리하는 장치 및 방법 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060045849A KR20070052645A (ko) | 2005-11-17 | 2006-05-22 | 사용자 인터페이스를 관리하는 장치 및 방법 |
Country Status (5)
Country | Link |
---|---|
US (2) | US8150978B2 (ko) |
EP (3) | EP2278456A1 (ko) |
JP (3) | JP2007141235A (ko) |
KR (2) | KR20070052645A (ko) |
CN (3) | CN102130961B (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110134427A (ko) * | 2009-02-27 | 2011-12-14 | 아마데우스 에스.에이.에스. | 검색 요청 관리를 위한 그래픽 사용자 인터페이스 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9432468B2 (en) | 2005-09-14 | 2016-08-30 | Liveperson, Inc. | System and method for design and dynamic generation of a web page |
US8738732B2 (en) | 2005-09-14 | 2014-05-27 | Liveperson, Inc. | System and method for performing follow up based on user interactions |
US8762313B2 (en) | 2008-07-25 | 2014-06-24 | Liveperson, Inc. | Method and system for creating a predictive model for targeting web-page to a surfer |
US8805844B2 (en) | 2008-08-04 | 2014-08-12 | Liveperson, Inc. | Expert search |
US9195525B2 (en) | 2008-10-21 | 2015-11-24 | Synactive, Inc. | Method and apparatus for generating a web-based user interface |
US9892417B2 (en) | 2008-10-29 | 2018-02-13 | Liveperson, Inc. | System and method for applying tracing tools for network locations |
US10523767B2 (en) | 2008-11-20 | 2019-12-31 | Synactive, Inc. | System and method for improved SAP communications |
US8700697B2 (en) * | 2009-11-30 | 2014-04-15 | Samsung Electronics Co., Ltd | Method and apparatus for acquiring RUI-based specialized control user interface |
KR101656882B1 (ko) * | 2009-12-04 | 2016-09-12 | 삼성전자주식회사 | 네트워크에서 원격 유저 인터페이스 목록을 제공하는 방법 및 장치 |
US8990427B2 (en) | 2010-04-13 | 2015-03-24 | Synactive, Inc. | Method and apparatus for accessing an enterprise resource planning system via a mobile device |
US9244700B2 (en) * | 2010-05-09 | 2016-01-26 | Citrix Systems, Inc. | Methods and systems for delivering applications from a desktop operating system |
US9350598B2 (en) | 2010-12-14 | 2016-05-24 | Liveperson, Inc. | Authentication of service requests using a communications initiation feature |
US8918465B2 (en) | 2010-12-14 | 2014-12-23 | Liveperson, Inc. | Authentication of service requests initiated from a social networking site |
US9158559B2 (en) * | 2012-01-27 | 2015-10-13 | Microsoft Technology Licensing, Llc | Roaming of note-taking application features |
US8805941B2 (en) * | 2012-03-06 | 2014-08-12 | Liveperson, Inc. | Occasionally-connected computing interface |
US9563336B2 (en) | 2012-04-26 | 2017-02-07 | Liveperson, Inc. | Dynamic user interface customization |
US9672196B2 (en) | 2012-05-15 | 2017-06-06 | Liveperson, Inc. | Methods and systems for presenting specialized content using campaign metrics |
US9069627B2 (en) | 2012-06-06 | 2015-06-30 | Synactive, Inc. | Method and apparatus for providing a dynamic execution environment in network communication between a client and a server |
US9300745B2 (en) | 2012-07-27 | 2016-03-29 | Synactive, Inc. | Dynamic execution environment in network communications |
US11386442B2 (en) | 2014-03-31 | 2022-07-12 | Liveperson, Inc. | Online behavioral predictor |
US20180054471A1 (en) * | 2015-05-15 | 2018-02-22 | Hewlett-Packard Development Company, L.P. | Hardware Bus Redirection |
US10142908B2 (en) | 2015-06-02 | 2018-11-27 | Liveperson, Inc. | Dynamic communication routing based on consistency weighting and routing rules |
CN105204844A (zh) * | 2015-08-20 | 2015-12-30 | 上海斐讯数据通信技术有限公司 | 一种应用界面保存恢复方法、系统、以及一种电子设备 |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6049831A (en) * | 1996-11-08 | 2000-04-11 | Gte Laboratories Incorporated | System for transmitting network-related information where requested network information is separately transmitted as definitions and display information |
US5899990A (en) * | 1997-03-31 | 1999-05-04 | Sun Microsystems, Inc. | Java-to-Database Connectivity Server |
US6216157B1 (en) * | 1997-11-14 | 2001-04-10 | Yahoo! Inc. | Method and apparatus for a client-server system with heterogeneous clients |
US6505341B1 (en) * | 1998-11-10 | 2003-01-07 | Scientronix, Inc. | System and method for programming a logic control unit |
US6161136A (en) * | 1998-10-16 | 2000-12-12 | Nortel Networks Limited | High performance user interface and method of structuring same |
JP2000259538A (ja) | 1999-03-12 | 2000-09-22 | Canon Inc | ネットワーク制御装置およびネットワーク設定方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体 |
US6766298B1 (en) * | 1999-09-03 | 2004-07-20 | Cisco Technology, Inc. | Application server configured for dynamically generating web pages for voice enabled web applications |
US6356933B2 (en) * | 1999-09-07 | 2002-03-12 | Citrix Systems, Inc. | Methods and apparatus for efficiently transmitting interactive application data between a client and a server using markup language |
FI109951B (fi) * | 1999-12-29 | 2002-10-31 | Valtion Teknillinen | Ohjain ja sen ohjausmenetelmä |
US6961750B1 (en) * | 2000-05-18 | 2005-11-01 | Microsoft Corp. | Server-side control objects for processing client-side user interface elements |
US6757900B1 (en) * | 2000-05-18 | 2004-06-29 | Microsoft Corporation | State management of server-side control objects |
JP2002007091A (ja) | 2000-06-22 | 2002-01-11 | Ricoh Co Ltd | プリントサーバシステム |
KR100625449B1 (ko) | 2000-06-30 | 2006-09-18 | 주식회사 케이티 | 맞춤형 작업환경 설정 시스템 및 그 방법 |
US7350151B1 (en) * | 2000-09-14 | 2008-03-25 | Ui Evolution, Inc. | Display state and/or cell based user interface provision method and apparatus |
JP4322430B2 (ja) * | 2001-01-29 | 2009-09-02 | エスアイアイ・ナノテクノロジー株式会社 | 示差走査熱量計 |
CA2440807A1 (en) * | 2001-03-30 | 2002-10-10 | British Telecommunications Public Limited Company | Multi-modal interface |
US7200642B2 (en) * | 2001-04-29 | 2007-04-03 | Geodigm Corporation | Method and apparatus for electronic delivery of electronic model images |
CN1407780A (zh) | 2001-08-13 | 2003-04-02 | 国际商业机器公司 | 在多种终端设备访问服务内容时保持过程持续性的方法和设备 |
US20030063608A1 (en) | 2001-10-03 | 2003-04-03 | Moonen Jan Renier | Multicast discovery protocol uses tunneling of unicast message |
US7620908B2 (en) * | 2001-12-28 | 2009-11-17 | Sap Ag | Managing a user interface |
JP2003244151A (ja) | 2002-02-15 | 2003-08-29 | Fujitsu Ltd | ネットワーク装置及びネットワーク管理装置 |
JP4391766B2 (ja) * | 2002-05-31 | 2009-12-24 | 株式会社エヌ・ティ・ティ・ドコモ | マルチプラットフォームアプリケーションのためのブラウザセッションモビリティシステム |
JP2004058341A (ja) | 2002-07-26 | 2004-02-26 | Canon Inc | 印刷装置 |
US20040024843A1 (en) * | 2002-07-31 | 2004-02-05 | Smith Christopher T. | Method for provisioning distributed web applications |
US20040054494A1 (en) * | 2002-09-12 | 2004-03-18 | El-Khashab Ayman M. | Flow control method for maximizing resource utilization of a remote system |
CN1485746A (zh) * | 2002-09-27 | 2004-03-31 | 鸿富锦精密工业(深圳)有限公司 | 用户权限安全管理系统及方法 |
EP1595354A1 (en) * | 2003-02-12 | 2005-11-16 | Koninklijke Philips Electronics N.V. | Method and system for reacting to a change of a upnp device |
JP4397675B2 (ja) * | 2003-11-12 | 2010-01-13 | 株式会社日立製作所 | 計算機システム |
US7500260B2 (en) * | 2004-01-07 | 2009-03-03 | D1Athletes.Com, Inc. | Motion video indexing mechanism for athlete recruiting architecture |
US20050193104A1 (en) * | 2004-02-27 | 2005-09-01 | Wyse Technology Inc. | User interface for remote computing devices |
JP2005293352A (ja) | 2004-04-01 | 2005-10-20 | Seiko Epson Corp | 制御装置、制御方法及び制御プログラム |
JP4850394B2 (ja) | 2004-04-12 | 2012-01-11 | キヤノン株式会社 | 情報処理装置及び情報処理方法及びプログラム |
US7260689B1 (en) * | 2004-09-30 | 2007-08-21 | Emc Corporation | Methods and apparatus for detecting use of common resources |
US20060190275A1 (en) * | 2005-02-18 | 2006-08-24 | Paul Frank Industries, Inc. | Intellectual property management system |
US10114620B2 (en) * | 2005-08-31 | 2018-10-30 | International Business Machines Corporation | Manager superclass method for displaying a component in different segments of a web page |
US20070097969A1 (en) * | 2005-11-02 | 2007-05-03 | Alain Regnier | Approach for discovering network resources |
-
2006
- 2006-05-22 KR KR1020060045849A patent/KR20070052645A/ko active Application Filing
- 2006-11-09 JP JP2006303991A patent/JP2007141235A/ja active Pending
- 2006-11-16 EP EP10185341A patent/EP2278456A1/en not_active Ceased
- 2006-11-16 EP EP10185301A patent/EP2278455A1/en not_active Ceased
- 2006-11-16 EP EP06124245A patent/EP1788477A3/en not_active Ceased
- 2006-11-17 CN CN201110079184.1A patent/CN102130961B/zh not_active Expired - Fee Related
- 2006-11-17 CN CN2006101485081A patent/CN1972300B/zh not_active Expired - Fee Related
- 2006-11-17 CN CN2011100791305A patent/CN102255943A/zh active Pending
- 2006-11-17 US US11/600,878 patent/US8150978B2/en not_active Expired - Fee Related
-
2008
- 2008-07-01 KR KR1020080063549A patent/KR101259157B1/ko active IP Right Grant
-
2009
- 2009-11-24 JP JP2009266858A patent/JP2010044796A/ja active Pending
-
2012
- 2012-02-24 US US13/405,099 patent/US8521814B2/en active Active
- 2012-10-26 JP JP2012236479A patent/JP2013041611A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110134427A (ko) * | 2009-02-27 | 2011-12-14 | 아마데우스 에스.에이.에스. | 검색 요청 관리를 위한 그래픽 사용자 인터페이스 |
Also Published As
Publication number | Publication date |
---|---|
KR101259157B1 (ko) | 2013-04-30 |
CN102130961A (zh) | 2011-07-20 |
EP1788477A3 (en) | 2007-12-26 |
JP2007141235A (ja) | 2007-06-07 |
KR20070052645A (ko) | 2007-05-22 |
US8521814B2 (en) | 2013-08-27 |
EP2278456A1 (en) | 2011-01-26 |
EP2278455A1 (en) | 2011-01-26 |
CN102255943A (zh) | 2011-11-23 |
US20120158832A1 (en) | 2012-06-21 |
US8150978B2 (en) | 2012-04-03 |
US20070112958A1 (en) | 2007-05-17 |
CN102130961B (zh) | 2014-07-16 |
EP1788477A2 (en) | 2007-05-23 |
CN1972300A (zh) | 2007-05-30 |
JP2010044796A (ja) | 2010-02-25 |
JP2013041611A (ja) | 2013-02-28 |
CN1972300B (zh) | 2011-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101259157B1 (ko) | 사용자 인터페이스를 관리하는 장치 및 방법 | |
CN1119752C (zh) | 控制互连在通信网络上的多个装置的控制系统和控制方法 | |
US8612486B2 (en) | Configuration management visualization | |
EP1811747B1 (en) | Method and apparatus for storing and restoring state information of remote user interface | |
US8654793B2 (en) | Network device for sharing multimedia data with other network devices existing on network and method therefor | |
US7904575B2 (en) | Apparatus and method for matching protocols of embedded audio/video contents | |
KR20090038673A (ko) | 컨텐츠 출력 장치 및 방법 | |
US11984120B2 (en) | Voice control method for applet and device, and storage medium | |
US10275398B2 (en) | Content display device, content display method, and content display program | |
JP2008520029A (ja) | コンテンツを追跡する方法、装置及びソフトウェア | |
KR100801004B1 (ko) | 임베디드 aⅴ 컨텐츠의 프로토콜 매칭 장치 및 방법 | |
CN113282268A (zh) | 音效配置方法和装置、存储介质及电子设备 | |
WO2023092580A1 (zh) | 页面显示方法、装置、存储介质及电子设备 | |
JP2011233096A (ja) | 情報処理装置、情報処理方法、プログラム、情報提供装置および情報処理システム | |
CN113398568B (zh) | 数据传输方法、装置、电子设备及可读存储介质 | |
JP2008204269A (ja) | サーバ装置、クライアント装置、通信方法およびプログラム | |
JP4186066B2 (ja) | クライアント装置 | |
KR101572904B1 (ko) | 텔레비젼 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20160330 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170330 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20180329 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190328 Year of fee payment: 7 |