상술한 기술적 과제들을 달성하기 위하여 본 발명은, 서버와 적어도 하나의 클라이언트 디바이스가 연결된 네트워크상의 컨텐츠 관리 방법에 있어서, 상기 서버에 의해 상기 적어도 하나의 클라이언트 디바이스중 하나의 클라이언트 디바이스로부터 컨텐츠 목록 요구를 수신하는 단계; 상기 적어도 하나의 클라이언트 디바이스로부터 제공 가능한 컨텐츠에 대한 정보를 갖는 물리적인 뷰 정보와 적어도 하나의 논리적인 뷰 정보중 하나를 상기 서버에 의해 상기 컨텐츠 목록 요구를 송출한 클라이언트 디바이스로 제공하는 단계를 포함하는 네트워크상의 컨텐츠 관리 방법을 제공한다.
상기 적어도 하나의 논리적인 뷰 정보는 클라이언트 우선순위를 기반으로 한 논리적인 뷰 정보, 컨텐츠 타입을 기반으로 한 논리적인 뷰 정보, 및 컨텐츠의 부가 정보를 기반으로 한 논리적인 뷰 정보를 포함하고, 상기 클라이언트 우선순위를 기반으로 하는 논리적인 뷰 정보는 대응되는 클라이언트 디바이스와 상기 서버가 접속할 때마다 업데이트 되는 것이 바람직하다.
상기 물리적인 뷰 정보와 상기 논리적인 뷰 정보는 상기 적어도 하나의 클라이언트 디바이스의 파워 온/오프 상태를 기반으로 한 정보를 포함하는 것이 바람직하다.
상기 컨텐츠 관리 방법은, 상기 물리적인 뷰 정보를 토대로 선택된 클라이언 트 디바이스의 파워가 오프상태이면, 상기 서버에 의해 상기 네트워크를 통해 상기 선택된 클라이언트 디바이스의 파워를 온 시키는 단계; 상기 선택된 클라이언트 디바이스의 파워가 온 되면, 상기 서버에 의해 상기 물리적인 뷰 정보에서 상기 선택된 클라이언트 디바이스의 상태를 변경하는 단계; 상기 서버에 의해 상기 선택된 클라이언트 디바이스에 저장된 컨텐츠에 대한 정보를 상기 물리적인 뷰 정보에 포함시키는 단계; 상기 물리적인 뷰 정보를 토대로 하나의 컨텐츠가 선택되면, 상기 서버에 의해 상기 선택된 클라이언트 디바이스로 상기 선택된 컨텐츠의 재생을 요구하는 단계를 더 포함하는 것이 바람직하다.
상기 컨텐츠 관리 방법은, 상기 논리적인 뷰 정보를 토대로 선택된 컨텐츠에 대응되는 클라이언트 디바이스의 파워가 오프상태이면, 상기 서버에 의해 상기 네트워크를 통해 상기 대응되는 클라이언트 디바이스의 파워를 온 시키는 단계; 상기 대응되는 클라이언트 디바이스의 파워가 온 되면, 상기 서버에 의해 상기 논리적인 뷰 정보에서 상기 선택된 컨텐츠의 상태를 변경하는 단계; 상기 서버에 의해 상기 대응되는 클라이언트 디바이스로 상기 선택된 컨텐츠에 대한 재생을 요구하는 단계를 더 포함하는 것이 바람직하다.
상술한 기술적 과제들을 달성하기 위하여 본 발명은, 서버와 적어도 하나의 클라이언트 디바이스가 연결된 네트워크상의 컨텐츠 관리 장치에 있어서, 상기 서버는 상기 적어도 하나의 클라이언트 디바이스중 하나의 클라이언트 디바이스로부터 컨텐츠 목록 요구를 수신하고, 상기 컨텐츠 목록 요구를 송출한 클라이언트 디바이스로 상기 적어도 하나의 클라이언트 디바이스에 의해 제공 가능한 컨텐츠에 대한 정보를 갖는 뷰 정보를 송출하는 송수신부; 상기 적어도 하나의 클라이언트 디바이스에 의해 제공되는 모든 컨텐츠에 대한 정보를 저장하는 저장부; 및 상기 송수신부로부터 상기 컨텐츠 목록 요구가 수신되면, 상기 저장부에 저장되어 있는 정보를 토대로 물리적인 뷰 정보와 적어도 하나의 논리적인 뷰 정보중 하나를 생성하고, 생성된 뷰 정보를 상기 송수신부로 전송하는 프로세서를 포함하는 네트워크상의 컨텐츠 관리 장치를 제공한다.
상술한 기술적 과제들을 달성하기 위하여 본 발명은, 상기 네트워크상에서 컨텐츠 관리 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체를 제공한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 상세히 설명하기로 한다.
도 2는 본 발명의 바람직한 실시 예에 따른 컨텐츠 관리 장치를 갖는 네트워크의 예로서, 서버(201)와 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)가 연결된 경우이다.
서버(201)는 도 2의 네트워크가 홈 네트워크(Home network)이면, 홈 서버로 정의될 수 있다. 서버(201)는 송수신부(2011), 프로세서(2012), 및 저장부(2013)를 포함한다.
송수신부(2011)는 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)와 프로세서(2012)간에 정보를 송수신하고, 네트워크를 통해 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)에 대한 파워 온/오프를 제어하기 위한 신호를 송수신한다.
즉, 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)중 하나의 클라이언트 디바이스로부터 컨텐츠 목록 요구를 수신하면 송수신부(2011)는 수신된 컨텐츠 목록 요구를 프로세서(2012)로 전송한다. 컨텐츠 목록 요구 수신시, 컨텐츠 목록 요구를 송출한 클라이언트 디바이스의 사용자의 입력에 따라 결정된 상세한 질의(query)도 함께 수신된다. 상세한 질의는 상기 사용자가 요구한 컨텐츠 목록이 논리적인 뷰 형태인지 물리적인 뷰 형태인지를 셋팅한 정보를 포함한다. 따라서 송수신부(2011)는 수신된 상세한 질의를 프로세서(2012)로 전송한다.
송수신부(2011)는 프로세서(2012)로부터 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)에 의해 제공 가능한 모든 컨텐츠에 대한 정보를 갖는 뷰 정보가 수신되면, 수신된 뷰 정보를 컨텐츠 목록 요구를 송출한 클라이언트 디바이스로 전송한다. 송수신부(2011)는 선택된 컨텐츠를 갖고 있는 클라이언트 디바이스로 선택된 컨텐츠에 대한 재생 요구 신호를 송출할 수 있다.
프로세서(2012)는 네트워크에 연결된 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)에 의해 제공 가능한 모든 컨텐츠에 대한 정보를 통합하여 관리한다.
즉, 프로세서(2012)는 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)에 의해 제공 가능한 모든 컨텐츠에 대한 정보를 송수신부(2011)를 통해 수집한다. 프로세서(2012)는 송수신부(2011)를 통해 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)로부터 수신한 메타데이터를 파싱(parsing)하여 컨텐츠에 대한 정보를 수집할 수 있다. 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)는 저장되어 있 는 컨텐츠가 수정되거나 삭제되거나 새로운 컨텐츠가 생성될 때마다 컨텐츠에 대한 메타 데이터를 서버(201)로 송출할 수 있다.
프로세서(2012)는 수집된 컨텐츠에 대한 정보를 저장부(2013)에 저장시킨다. 이에 따라 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)에 의해 제공 가능한 컨텐츠에 대한 정보는 프로세서(2012)에 의해 저장부(2013)에서 통합 관리된다. 프로세서(2012)는 저장부(2013)에 저장된 컨텐츠에 대한 정보를 토대로 물리적인 뷰 정보 또는 다양한 형태의 논리적인 뷰 정보를 생성할 수 있다.
프로세서(2012)는 송수신부(2011)를 통해 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)중 제 1 클라이언트 디바이스(202)로부터 컨텐츠 목록이 요구되면, 저장부(2013)에 저장된 컨텐츠 정보를 토대로 물리적인 뷰(Physical view) 정보와 적어도 하나의 논리적인 뷰(logical view) 정보중 하나를 생성하여 제 1 클라이언트 디바이스(202)로 제공할 수 있다.
상기 물리적인 뷰 정보와 상기 적어도 하나의 논리적인 뷰 정보는 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)에 저장된 모든 컨텐츠에 대한 정보를 가질 수 있다. 프로세서(2012)가 물리적인 뷰 정보를 생성할지 논리적인 뷰 정보를 생성할지는 제 1 클라이언트 디바이스(202) 사용자의 요구에 따라 결정될 수 있다. 즉, 프로세서(2012)는 컨텐츠 목록 요구 수신시 함께 수신된 상세한 질의를 파싱하고, 파싱된 결과에 따라 물리적인 뷰 정보를 생성할지 논리적인 뷰 정보를 생성할지 결정한다.
물리적인 뷰 정보는 도 3에 도시된 바와 같이 클라이언트 디바이스를 기반으 로 한 컨텐츠 목록 정보를 갖는다. 도 3은 서버(201)로부터 제공되는 물리적인 뷰 정보를 토대로 제 1 클라이언트 디바이스(202)상에 디스플레이 되는 물리적인 뷰의 예이다.
도 3을 참조하면, 클라이언트 디바이스가 PC, DVD-R, STB, 및 DTV 이고, PC가 선택됨에 따라 선택된 PC에 저장된 컨텐츠 목록이 표시된 예이다. 도 3에서 "●"와 같이 표시된 클라이언트 디바이스(PC. DVD-R)는 현재 파워가 온된 상태이고, "○"와 같이 표시된 클라이언트 디바이스(STB, DTV)는 파워가 오프된 상태를 나타낸다. 이와 같이 서버(201)로부터 제공되는 물리적인 뷰 정보는 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)의 파워 온/오프를 기반으로 한 정보(●, ○)를 포함한다.
도 3에 도시된 물리적인 뷰를 토대로 제 1 클라이언트 디바이스(202)가 파워가 오프된 클라이언트 디바이스(예를 들어 STB)를 선택하면, 서버(201)내의 프로세서(2012)는 네트워크를 통해 파워가 오프된 클라이언트 디바이스의 파워가 온 되도록 제어한다. 이를 위하여 프로세서(2012)는 송수신부(2011)로 파워가 오프된 클라이언트 디바이스의 파워 온을 요구할 수 있다. 네트워크를 통한 클라이언트 디바이스의 파워 온 제어는 기존에 알려진 웨이크 온 랜(Wake On Lan) 기술을 사용할 수 있다. 따라서 송수신부(2011)는 네트워크를 통해 웨이크 온 랜(Wake On Lan) 기술을 사용하여 클라이언트 디바이스들의 파워를 온/오프 제어할 수 있도록 구성된다.
파워가 오프된 클라이언트 디바이스의 파워가 온되면, 프로세서(2012)는 파워가 온된 클라이언트 디바이스에 의해 제공 가능한 컨텐츠를 즉시 재생이 가능한 컨텐츠로 처리한다. 이러한 상태 변경이 반영되도록 프로세서(2012)는 제 1 클라이언트 디바이스(202)로 제공되는 물리적인 뷰 정보를 업데이트 할 수 있다.
논리적인 뷰 정보는 도 4(a) 내지 도 4(c)에 도시된 바와 같이 컨텐츠를 기반으로 한 컨텐츠 목록 정보를 갖는다. 도 4(a) 내지 도 4(c)는 프로세서(2012)로부터 생성되는 논리적인 뷰 정보를 토대로 제 1 클라이언트 디바이스(202)상에 디스플레이 되는 논리적인 뷰의 예이다.
도 4(a)를 참조하면, 논리적인 뷰는 제공 가능한 컨텐츠에 대해 기능적으로 정의된 정보 영역(functionality information area)과 데이터 정보 영역(data information area)으로 정의될 수 있다. 도 4(a)의 경우에, 기능적으로 정의된 정보 영역에서 "icon Movie"가 선택되고, 그에 포함되는 컨텐츠에 대한 정보가 데이터 정보 영역(data information area)에 디스플레이 된 예이다.
즉, 도 4(a)내지 도 4(c)는 컨텐츠 타입을 기반으로 한 논리적인 뷰의 예이다. 따라서 도 4(a) 내지 도 4(c)의 기능적으로 정의된 정보 영역에는 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)에 의해 제공 가능한 컨텐츠의 타입 정보가 표시되고, 데이터 정보 영역에는 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)에 의해 제공 가능한 컨텐츠를 컨텐츠 타입별로 분류한 정보가 표시된다.
도 4(a)의 데이터 정보 영역에 "●"이 표시된 컨텐츠는 해당되는 컨텐츠를 저장하고 있는 클라이언트 디바이스의 파워가 온 된 것을 나타낸다. 따라서 해당되는 컨텐츠들은 즉시 재생이 가능한 컨텐츠들이다. 데이터 정보 영역에 "○"이 표시된 컨텐츠는 해당되는 컨텐츠를 저장하고 있는 클라이언트 디바이스의 파워가 오프 된 것을 나타낸다. 따라서 해당되는 컨텐츠들은 즉시 재생이 가능하지 않은 컨텐츠들이다.
도 4(a)에 도시된 논리적인 뷰 정보가 제 1 클라이언트 디바이스(202)로 제공된 뒤, 도 4(b)에 도시된 바와 같이 즉시 재생이 가능하지 않은 "PersonalVideo1.mpg" 컨텐츠가 선택되면, "PersonalVideo1.mpg" 컨텐츠에 대응되는 클라이언트 디바이스의 파워가 오프 된 상태이므로, 프로세서(2012)는 네트워크를 통해 상기 대응되는 클라이언트 디바이스의 파워를 온 시킨다.
예를 들어, 상기 대응되는 클라이언트 디바이스가 제 2 클라이언트 디바이스(203)이면, 네트워크를 통해 제 2 클라이언트 디바이스(203)의 파워를 온 시키기 위하여, 프로세서(2012)는 송수신부(2011)로 파워 온을 요구한다. 송수신부(2011)는 도 3에서 설명한 바와 같이 네트워크를 통해 클라이언트 디바이스의 파워를 온시킬 수 있다.
프로세서(2012)는 제 2 클라이언트 디바이스(203)의 파워를 온 시킬 때, 송수신부(2011)를 통해 제 1 클라이언트 디바이스(202)의 사용자에게 제 2 클라이언트 디바이스(203)를 구동시킬 것인지 확인할 수 있다.
제 2 클라이언트 디바이스(203)의 파워가 온 되면, 도 4(c)에 도시된 바와 같이 "PersonalVideo1.mpg" 컨텐츠의 상태를 즉시 재생이 가능한 상태로 변경한 논리적인 뷰가 제 1 클라이언트 디바이스(201)에 디스플레이 되도록, 프로세서(2012)는 변경된 논리적인 뷰 정보를 생성한다. 생성된 논리적인 뷰 정보는 송수신부(2011)로 전송된다. 이에 따라 송수신부(2011)는 변경된 논리적인 뷰 정보를 네트 워크를 통해 제 1 클라이언트 디바이스(201)로 제공한다. 그리고 프로세서(2012)는 송수신부(2011)를 통해 제 2 클라이언트 디바이스(203)로 선택된 "PersonalVideo1.mpg" 컨텐츠에 대한 재생을 요구할 수 있다. 이에 따라 제 2 클라이언트 디바이스(203)로부터 재생되는 컨텐츠는 서버(201)를 경유하지 않고 제 1 클라이언트 디바이스(201)로 직접 전송된다.
도 4(a) 내지 도 4(c)를 통해 알 수 있는 바와 같이 프로세서(2012)로부터 생성되는 논리적인 뷰 정보는 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)의 파워 온/오프를 기반으로 한 정보(●, ○)를 포함한다.
프로세서(2012)에 의해 생성되는 논리적인 뷰 정보는 클라이언트 우선순위를 기반으로 한 논리적인 뷰 정보, 컨텐츠 타입을 기반으로 한 논리적인 뷰 정보, 및 컨텐츠의 부가 정보를 기반으로 한 논리적인 뷰 정보를 포함할 수 있다.
클라이언트 우선순위(client priority)를 기반으로 한 논리적인 뷰 정보는 해당되는 클라이언트 디바이스와 서버(201)간의 최근 접속 시간을 기준으로 관리된다. 클라이언트 우선순위를 기반으로 한 논리적인 뷰 정보는 해당되는 클라이언트 디바이스와 서버가 접속할 때마다 프로세서(2012)에 의해 업데이트 된다.
컨텐츠 타입은 해당되는 컨텐츠가 오디오인지, 비디오인지 오디오+비디오인지, 문서인지를 나타내는 것이다. 비디오는 정지 영상 또는 동영상일 수 있다. 컨텐츠의 부가 정보는 상기 컨텐츠 타입을 제외한 정보로서, 컨텐츠가 등록된 날짜, 컨텐츠 등록인, 장르, 컨텐츠 제목, 제작자, 가수 명, 주인공 명 등을 포함할 수 있다.
또한, 프로세서(2012)는 서버(201)와 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)간의 연결 상태를 모니터링한다. 모니터링 결과, 서버(201)와 연결 해제 상태인 클라이언트 디바이스가 존재하면 연결 해제 상태가 소정 시간동안 지속되는지 체크한다. 연결 해제 상태가 소정 시간동안 지속되면, 프로세서(2012)는 저장부(2013)에서 관리하고 있는 컨텐츠에 대한 정보에서 연결 해제 상태인 클라이언트 디바이스에 대한 정보를 삭제한다. 이에 따라 프로세서(2012)에 의해 생성되는 물리적인 뷰 정보와 논리적인 뷰 정보는 상기 연결 해제 상태인 클라이언트 디바이스에 대한 정보를 포함하지 않는다.
저장부(2013)는 서버(201)에 의해 수집된 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)에 의해 제공 가능한 모든 컨텐츠에 대한 정보를 저장한다.
제 1 내지 제 4 클라이언트 디바이스(202 내지 205)는 상기 네트워크가 홈 네트워크인 경우에 도 1에 도시된 바와 같이 가정내에 구비되어 이는 가정용 전자제품일 수 있다. 상기 네트워크가 사무실 공간에 설정된 네트워크이면, 상기 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)는 전자 사무용 기기일 수 있다.
제 1 내지 제 4 클라이언트 디바이스(202 내지 205)는 서버(201)로 컨텐츠 목록을 요구와 함께 상세한 질의를 송출한다. 만약 사용자가 물리적인 뷰를 원하면, 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)는 서버(201)로부터 물리적인 뷰 정보를 수신하고, 사용자가 특정한 논리적인 뷰를 원하면, 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)는 서버(201)로부터 특정한 물리적인 뷰 정보를 수신한다.
서버(201)로부터 물리적인 뷰 정보 또는 특정한 논리적인 뷰 정보가 수신되면, 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)는 수신된 정보를 파싱하여 디스플레이 한다. 이에 따라 도 3 또는 도 4(a) 내지 도 4(c)에 도시된 바와 같은 화면이 디스플레이 될 수 있다.
디스플레이 되는 물리적인 뷰 또는 논리적인 뷰를 토대로 제 1 내지 제 4 클라이언트 디바이스(202 내지 205) 사용자가 하나의 클라이언트 디바이스 또는 하나의 컨텐츠를 선택하면, 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)는 선택된 정보를 서버(201)로 전송한다.
만약 선택된 정보가 파워가 오프된 클라이언트 디바이스이거나 파워가 오프된 클라이언트 디바이스에 의해 제공되는 컨텐츠인 경우에, 서버(201)에 의해 해당되는 클라이언트 디바이스의 파워가 온 되고, 동작 준비(ready) 상태가 될 때까지 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)는 대기상태를 유지할 수 있다.
이 때, 서버(201)로부터 해당되는 클라이언트 디바이스의 파워를 온 시킬지 여부를 묻는 메시지가 수신될 수 있다. 만약 상기 메시지가 수신되면, 제 1 내지 제 4 클라이언트 디바이스(202 내지 205) 사용자가 해당되는 클라이언트 디바이스의 파워를 온 시키기 원할 때, 서버(201)는 해당되는 클라이언트 디바이스의 파워를 온 시킨다.
해당되는 클라이언트 디바이스의 파워가 온 되고, 선택된 컨텐츠가 즉시 재생이 가능한 상태가 되며, 서버(201)에 의해 상기 해당되는 클라이언트 디바이스로 선택된 컨텐츠의 재생이 요구되면, 제 1 내지 제 4 클라이언트 디바이스(202 내지 204)는 해당되는 클라이언트 디바이스로부터 선택한 컨텐츠의 데이터를 직접 수신할 수 있다.
도 5는 본 발명의 일 실시 예에 따른 컨텐츠 관리 방법의 동작 흐름 도이다. 도 2와 도 5를 참조하여 도 5의 동작 흐름 도를 설명하면 다음과 같다.
서버(201)는 네트워크에 연결된 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)중 하나의 클라이언트 디바이스로부터 컨텐츠 목록 요구를 수신하면(501), 서버(201)는 네트워크에 연결된 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)에 의해 제공되는 컨텐츠에 대한 물리적인 뷰 정보와 적어도 하나의 논리적인 뷰 정보중 하나를 컨텐츠 목록 요구를 송출한 클라이언트 디바이스로 제공한다(502).
상기 컨텐츠 목록 요구를 송출한 클라이언트 디바이스가 도 2에 도시된 제 1 클라이언트 디바이스(202)이면, 제 1 클라이언트 디바이스(202)를 사용하는 사용자는 제 1 클라이언트 디바이스(202)를 통해 제공되는 물리적인 뷰 또는 논리적인 뷰를 토대로 네트워크에 연결된 제 1 내지 제 4 클라이언트 디바이스(201 내지 205)에 저장된 컨텐츠를 파악할 수 있다.
물리적인 뷰 정보와 논리적인 뷰 정보는 도 2 내지 도 4에서 설명한 바와 같다. 따라서 상기 논리적인 뷰 정보는 클라이언트 우선순위를 기반으로 한 논리적인 뷰 정보, 컨텐츠 타입을 기반으로 한 논리적인 뷰 정보, 및 컨텐츠의 부가정보를 기반으로 한 논리적인 뷰 정보를 포함할 수 있다.
상기 클라이언트 우선순위를 기반으로 한 논리적인 뷰 정보는 해당되는 클라 이언트 디바이스(예를 들어 제 1 클라이언트 디바이스(202))와 서버(201)가 접속할 때마다 서버(201)에 의해 업데이트 되고, 해당되는 클라이언트 디바이스와 서버(201)간의 접속시간을 기준으로 설정될 수 있다. 상기 접속시간은 상기 해당되는 클라이언트 디바이스와 서버(201)간의 최근 접속시간이 될 수 있다.
또한, 상기 물리적인 뷰 정보와 논리적인 뷰 정보는 도 2 내지 도 4에서 설명한 바와 같이 네트워크에 연결된 클라이언트 디바이스중 파워가 오프된 클라이언트 디바이스에 대한 정보도 포함할 수 있다.
도 6은 본 발명의 다른 실시 예에 따른 컨텐츠 관리 방법의 동작 흐름도이다. 도 2와 도 6을 참조하여 도 6의 동작 흐름도를 설명하면 다음과 같다.
네트워크에 연결된 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)중 하나의 클라이언트 디바이스로부터 컨텐츠 목록 요구를 수신하면(601), 상기 서버(201)는 상기 컨텐츠 목록 요구를 송출한 클라이언트 디바이스가 물리적인 뷰를 요구하는지 체크한다(602). 서버(201)는 컨텐츠 목록 요구와 함께 수신된 상세한 질의를 파싱한 결과를 토대로 상기 컨텐츠 목록 요구를 송출한 클라이언트 디바이스가 물리적인 뷰를 요구하는지 여부를 체크할 수 있다. 상기 상세한 질의는 도 2에서 설명한 바와 같이 사용자의 입력에 따라 결정된다.
상기 컨텐츠 목록 요구를 송출한 클라이언트 디바이스가 물리적인 뷰를 요구하면, 서버(201)는 상기 클라이언트 디바이스로 물리적인 뷰 정보를 제공한다(603). 이 때 제공되는 물리적인 뷰 정보는 도 5에서의 물리적인 뷰 정보와 같다.
그러나, 상기 컨텐츠 목록 요구를 송출한 클라이언트 디바이스가 물리적인 뷰를 원하지 않으면, 서버(201)는 상기 컨텐츠 목록 요구를 송출한 클라이언트 디바이스가 원하는 논리적인 뷰 정보를 제공한다(604). 논리적인 뷰 정보는 상술한 바와 같이 클라이언트 우선순위를 기반으로 한 논리적인 뷰 정보, 컨텐츠 타입을 기반으로 한 논리적인 뷰 정보, 컨텐츠의 부가정보들을 기반으로 한 논리적인 뷰 정보 등을 포함할 수 있다. 따라서 제공 가능한 다양한 논리적인 뷰 정보에서 사용자가 클라이언트 우선순위를 기반으로 한 논리적인 뷰 정보를 원하면, 제 604 단계에서 서버(201)는 상기 컨텐츠 목록 요구를 송출한 클라이언트 디바이스로 클라이언트 우선순위를 기반으로 한 논리적인 뷰 정보를 제공한다.
도 7은 본 발명의 또 다른 실시 예에 따른 컨텐츠 관리 방법의 동작 흐름 도이다. 도 2와 도 7을 참조하여 도 7의 동작 흐름도를 설명하면 다음과 같다.
네트워크에 연결된 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)중 하나의 클라이언트 디바이스로부터 컨텐츠 목록 요구를 수신하면(701), 서버(201)는 상기 컨텐츠 목록 요구를 송출한 클라이언트 디바이스(이하 설명의 편의를 위하여 상기 컨텐츠 목록 요구를 송출한 클라이언트 디바이스를 제 1 클라이언트 디바이스(202)라 한다.)가 물리적인 뷰를 요구하는지 특정한 논리적인 뷰를 요구하는지 체크한다. 상기 체크는 도 6의 제 602 단계에서 설명한 바와 같이 수행된다. 제 1 클라이언트 디바이스(202)가 물리적인 뷰를 원하면, 서버(201)는 제 702 단계 내지 제 712 단계를 수행한다. 반면에 제 1 클라이언트 디바이스(202)가 특정한 논리적인 뷰를 요구하면, 서버(201)는 제 713 단계 내지 제 720 단계를 수행한다.
즉, 서버(201)는 제 1 클라이언트 디바이스(202)가 물리적인 뷰를 요구함에 따라 제 1 클라이언트 디바이스(202)로 물리적인 뷰 정보를 제공한다(702). 제공되는 물리적인 뷰 정보는 도 3에 도시된 바와 같은 물리적인 뷰를 디스플레이 할 수 있는 정보다. 상기 물리적인 뷰 정보는 네트워크에 연결된 모든 클라이언트 디바이스에 의해 제공 가능한 컨텐츠에 대한 정보를 포함할 수 있다.
제공된 물리적인 뷰 정보를 토대로 제 1 클라이언트 디바이스(202)로부터 하나의 클라이언트 디바이스가 선택되면, 서버(201)는 선택된 클라이언트 디바이스의 상태가 오프상태인지 체크한다(703, 704). 체크결과, 클라이언트 디바이스의 상태가 오프상태이면, 서버(201)는 제 1 클라이언트 디바이스(202)의 사용자가 선택한 클라이언트 디바이스의 구동을 원하는지 체크한다(705).
제 1 클라이언트 디바이스(202)의 사용자가 선택한 클라이언트 디바이스의 구동을 원하면, 서버(201)는 네트워크를 통해 사용자가 선택한 클라이언트 디바이스의 구동을 제어한다(706). 상기 선택한 클라이언트 디바이스의 구동 제어는 파워 온에 해당된다. 이에 따라 상기 선택한 클라이언트 디바이스의 파워는 온 된다. 상기 클라이언트 디바이스 구동 제어는 도 2에서 설명한 바와 같다.
클라이언트 디바이스 구동을 제어한 후, 클라이언트 디바이스가 동작 준비(ready)상태가 되면, 서버(201)는 물리적인 뷰 정보에 포함된 상기 선택한 클라이언트 디바이스의 상태를 파워 온 상태로 변경하면서 선택된 클라이언트 디바이스에 저장된 컨텐츠 정보를 제 1 클라이언트 디바이스(202)로 제공한다(707, 708, 709).
제공된 컨텐츠에 대한 정보(또는 컨텐츠 목록 정보)를 토대로 제 1 클라이언트 디바이스(202) 사용자가 하나의 컨텐츠에 대한 재생을 요구하면(710), 서버 (201)는 선택된 클라이언트 디바이스로 선택된 컨텐츠에 대한 재생을 요구하고(711), 제 1 클라이언트 디바이스(202)와 서버(201)간의 클라이언트 우선순위 정보를 업데이트 한다. 이에 따라 제 1 클라이언트 디바이스(202)의 클라이언트 우선순위정보에서 최우선순위는 제 710 단계에서 재생이 요구된 컨텐츠와 상기 재생이 요구된 컨텐츠를 제공하는 클라이언트 디바이스가 된다.
제 704 단계에서 클라이언트 디바이스가 오프상태가 아니면, 서버(201)는 제 709 단계로 진행되어 상술한 과정을 수행한다.
한편, 제 1 클라이언트 디바이스(202)의 사용자가 특정한 논리적인 뷰 제공을 요구하면, 서버(201)는 제 1 클라이언트 디바이스(202)로 사용자가 원하는 논리적인 뷰 정보를 제공한다. 제공된 논리적인 뷰 정보는 도 4(a)에 도시된 바와 같은 논리적인 뷰를 디스플레이 할 수 있는 정보를 갖는다.
제공된 논리적인 뷰 정보를 토대로 제 1 클라이언트 디바이스(202)의 사용자가 하나의 컨텐츠를 선택하면, 서버(201)는 선택된 컨텐츠를 저장하고 있는 클라이언트 디바이스의 파워가 오프상태인지 체크한다(714, 715). 제공된 논리적인 뷰 정보를 토대로 즉시 재생이 가능하지 않은 컨텐츠중 하나가 선택되면, 선택된 컨텐츠에 해당되는 클라이언트 디바이스의 파워는 오프상태에 해당된다.
서버(201)는 제 1 클라이언트 디바이스(202)의 사용자가 해당되는 클라이언트 디바이스를 구동시키기 원하는지 체크한다(716). 제 1 클라이언트 디바이스(202)의 사용자가 해당되는 클라이언트 디바이스를 구동시키기 원하면, 서버(201)는 네트워크를 통해 해당되는 클라이언트 디바이스의 구동을 제어한다(717). 이에 따라 해당되는 클라이언트 디바이스의 파워가 온 되고, 클라이언트 디바이스가 동작 준비상태가 되면(718), 서버(201)는 제 1 클라이언트 디바이스(202)에 제공되는 논리적인 뷰상에서 해당되는 컨텐츠의 상태를 온 상태로 변경한다(719). 즉, 즉시 재생이 가능한 컨텐츠의 상태로 변경한다.
그 다음, 서버(201)는 해당되는 클라이언트 디바이스로 컨텐츠 재생을 요구하면서 제 1 클라이언트 디바이스(202)의 클라이언트 우선순위 정보를 업데이트 한다. 이에 따라 제 1 클라이언트 디바이스(202)의 클라이언트 우선순위정보에서 최우선순위는 제 714 단계에서 선택된 컨텐츠가 된다.
도 8은 본 발명에 따른 컨텐츠 관리 방법에 있어서, 클라이언트 디바이스의 정보 삭제과정에 대한 동작 흐름도이다. 도 2와 도 8을 참조하여 도 8의 동작 흐름도의 동작을 설명하면 다음과 같다.
서버(201)는 서버(201)와 네트워크에 연결된 제 1 내지 제 4 클라이언트 디바이스(202 내지 205)간의 연결상태를 모니터링 한다(801). 모니터링 결과, 연결이 해제된 클라이언트 디바이스가 존재하면(802), 서버(201)는 상기 연결 해제 상태가 소정시간 지속되는지 체크한다(803).
상기 연결 해제상태가 소정 시간 지속되면, 서버(201)는 저장부(2013)에 저장된 정보에서 상기 연결 해제된 클라이언트 디바이스에 대한 정보를 삭제한다. 이에 따라 서버(201)에 의해 생성되는 물리적인 뷰 정보와 논리적인 뷰 정보에서 상기 연결 해제된 클라이언트 디바이스에 대한 정보가 삭제될 수 있다(804). 예를 들어, 제 4 클라이언트 디바이스(205)가 소정시간동안 연결 해제상태를 지속하면, 서 버(201)에 의해 생성되는 물리적인 뷰 정보와 논리적인 뷰 정보에서 제 4 클라이언트 디바이스(205)에 대한 정보는 삭제된다.
본원 발명에 따른 네트워크상의 컨텐츠 관리 방법을 수행하기 위한 프로그램은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 저장 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.