KR20100116626A - 기능 레벨들을 어드레싱하는 컨텐츠 관리 - Google Patents

기능 레벨들을 어드레싱하는 컨텐츠 관리 Download PDF

Info

Publication number
KR20100116626A
KR20100116626A KR1020107018439A KR20107018439A KR20100116626A KR 20100116626 A KR20100116626 A KR 20100116626A KR 1020107018439 A KR1020107018439 A KR 1020107018439A KR 20107018439 A KR20107018439 A KR 20107018439A KR 20100116626 A KR20100116626 A KR 20100116626A
Authority
KR
South Korea
Prior art keywords
client
level
content
functional
clients
Prior art date
Application number
KR1020107018439A
Other languages
English (en)
Other versions
KR101597843B1 (ko
Inventor
제임스 이. 알라드
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20100116626A publication Critical patent/KR20100116626A/ko
Application granted granted Critical
Publication of KR101597843B1 publication Critical patent/KR101597843B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/42Arrangements for resource management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25833Management of client data involving client hardware characteristics, e.g. manufacturer, processing or storage capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop

Abstract

장치들의 기능 레벨들에 기초하여 장치들을 통해 데이터가 제공될 수 있다. 한 일례에서, 브로커는 데이터 소스로부터 컨텐츠를 수신하고, 사용자에게 제시하기 위해 컨텐츠를 네트워크 내의 장치들로 전송한다. 장치들은 서로 다른 기능들을 가질 수 있고, 브로커는 각각의 장치의 기능 레벨에 따라 데이터 컨텐츠를 수정할 수 있다. 데이터 컨텐츠의 수정은, 예를 들어, 네트워크 내의 각자의 장치들에서 디스플레이되거나 제공될 컨텐츠의 양을 재포맷하거나 변경하는 것을 포함할 수 있다.

Description

기능 레벨들을 어드레싱하는 컨텐츠 관리{CONTENT MANAGEMENT THAT ADDRESSES LEVELS OF FUNCTIONALITY}
사용자들은 통상적으로 많은 서로 다른 유형의 장치들을 소유하고 있으며, 그 장치들 중 임의의 장치들이 서로 다른 능력들을 가질 수 있다. 서로 다른 장치들의 이러한 조합에 의해, 서로 다른 장치들 상에서 컨텐츠를 원하는 포맷들로 제시하는 것이 어렵게 되었다. 사용자들은 통상적으로 서로 다른 장치들 상에서 이해하거나 판독하기 쉬운 포맷들로 컨텐츠를 수신할 수 없다. 또한, 컨텐츠가 서로 다른 장치들 상에서 수신될 때, 서로 다른 능력들을 갖는 장치들 중 적어도 일부 장치들이 깨끗하고 전통적인 방식으로 컨텐츠를 제시할 수 없을지도 모른다.
<발명의 요약>
이하는 읽는 사람에게 기본적인 이해를 제공하기 위해 본 발명의 간략화된 요약을 제공한다. 이 요약은 본 발명의 전반적인 개요가 아니며, 본 발명의 주요한/중요한 구성요소들을 확인하거나 본 발명의 범위를 정하지 않는다. 이 요약의 유일한 목적은 나중에 제공되는 보다 상세한 설명에 대한 서문으로서 본 명세서에 개시된 몇몇 개념들을 간략화된 형태로 제공하는 데 있다.
한 일례에서, 장치가 장치들의 네트워크에 바인딩되어 있을 수 있으며, 이 때 네트워크 내의 장치들은 서로 다른 기능 레벨들을 가질 수 있다. 네트워크에 바인딩되어 있는 장치에 기능 레벨이 할당될 수 있고, 할당된 기능 레벨에 기초하여 컨텐츠가 장치에 제공될 수 있다. 예를 들어, 데이터가 장치의 기능 레벨에 기초하여 수정될 수 있고, 수정된 데이터가 장치에 제공될 수 있다. 그에 부가하여, 네트워크에 바인딩되어 있는 장치를 포함할 수 있는 네트워크 내의 장치들을 나타내는 메뉴가 제공될 수 있다.
다른 일례에서, 장치들의 각자의 기능 레벨들에 기초하여 컨텐츠가 네트워크 내의 장치들로 전송된다. 컨텐츠가 장치들 각각에 적절한 방식으로 제공될 수 있도록 서로 다른 기능 레벨들을 갖는 네트워크 내의 장치들 각각에 대해 컨텐츠가 수정될 수 있다.
부수적인 특징들 중 다수의 특징들이 첨부 도면들과 관련하여 고려된 이하의 상세한 설명을 참조하면 더 잘 이해될 것이다.
첨부 도면들을 고려하여 이하의 상세한 설명을 읽어보면 본 설명이 더 잘 이해될 것이다.
도 1은 컨텐츠를 출력해야 하는 클라이언트의 기능을 어드레싱하는 컨텐츠의 출력을 관리하는 기법들을 이용하는 동작을 하는 예시적인 구현에서의 환경을 나타낸 도면.
도 2는 클라이언트들의 기능 레벨들의 일례를 나타낸 도면.
도 3은 클라이언트들의 기능 레벨에 따라 네트워크 내의 클라이언트들을 관리하는 것의 한 일례를 나타낸 플로우차트.
도 4는 네트워크에서 컨텐츠를 제공하는 시스템의 일례를 나타낸 도면.
도 5는 브로커(broker)의 일례를 나타낸 도면.
도 6은 클라이언트를 네트워크에 추가하거나 바인딩하는 한 일례를 나타낸 플로우차트.
도 7은 서로 다른 기능 레벨들을 갖는 서로 다른 클라이언트들을 포함하는 네트워크의 일례를 나타낸 도면.
첨부 도면들에서 유사한 참조 번호들이 유사한 부분들을 나타내는 데 사용된다.
개요
사용자들은 아주 다양한 기능들을 지원할 수 있는 광범위한 클라이언트들에 액세스할 수 있다. 예를 들어, 커피 메이커는 한줄의 텍스트 출력을 지원할 수 있고, 무선 전화는 인터넷 브라우징을 지원할 수 있으며, 휴대용 음악 플레이어는 음악 및 영화의 출력을 지원할 수 있고, 랩톱 컴퓨터는 키보드 및 마우스 등의 "풍부한" 입력 기법들을 지원할 수 있으며, 기타 등등이 있을 수 있다. 그렇지만, 이들 클라이언트에 의해 액세스가능할 수 있는 컨텐츠는 통상적으로 그 클라이언트들에 걸쳐 보편화되어 있지 않을 수 있는 하나의 기능 모음을 대상으로 한 것이었다. 예를 들어, 랩톱에 의해 의도된 대로 웹 페이지에 액세스하여 그 웹 페이지를 볼 수 있다. 반면에, 동일한 웹 페이지가 무선 전화(wireless phone)에 의해 출력될 때, 무선 전화의 제한된 디스플레이 영역에 대한 최적화가 없는 것으로 인해 웹 페이지와의 상호작용이 방해받을 수 있다. 각종의 다른 일례들도 생각된다.
컨텐츠를 출력해야 하는 클라이언트의 기능을 어드레싱하는 컨텐츠의 출력을 구성, 전달 및/또는 관리하는 기법들이 기술되어 있다. 예를 들어, 장치들이 일련의 표준 기능 분류들(예를 들어, 고급, 최소, 기본, UI, 단방향, 양방향, 기타)로 나누어질 수 있다. 그 분류들은 균일 능력 플랫폼(uniform capability platform)을 구축하기 위해 생성되는 데, 응용 프로그램 개발자들은 응용 프로그램 기능의 대상을 이 균일 능력 플랫폼으로 할 수 있다. 그에 부가하여, 컨텐츠가 클라이언트들의 서로 다른 기능들을 어드레싱하는 부분들(예를 들어, 원자 단위들)로 구성될 수 있다. 따라서, 각자의 클라이언트 분류 레벨에 의해 지원되는 기능들에 대응하는 부분들이 각자의 클라이언트들에 의해 출력될 수 있다. 이 부분들은 각종의 이점들을 제공할 수 있다.
예를 들어, 기능 레벨이 특정의 클라이언트에 할당될 수 있다. 결정된 레벨에 대응하는 컨텐츠의 부분들이 이어서 결정된 레벨을 갖는 클라이언트로 전달될 수 있고, 이는, 설계된 응용 프로그램의 기능이 장치의 능력에 더 가깝게 최적화될 것이기 때문에, 장치에 대한 소비자의 경험에서의 소비자 만족도를 향상시킨다. 각종의 다른 경우들도 생각되고 있으며, 이들에 대한 추가적인 설명은 이하의 도면들과 관련하여 찾아볼 수 있다.
첨부 도면들과 관련하여 이하에 제공되는 상세한 설명은 이 일례들의 설명을 위한 것이며, 이 일례들이 구성되거나 이용될 수 있는 유일한 형태들을 나타내기 위한 것이 아니다. 이 설명은 이 일례의 기능들 및 이 일례를 구성하고 동작시키는 단계들의 시퀀스를 기술하고 있다. 그렇지만, 동일한 또는 등가의 기능들 및 시퀀스들이 서로 다른 일례들에 의해 달성될 수 있다. 본 명세서에 기술된 시스템들은 제한이 아니라 일례이다. 당업자라면 이 일례들이 각종의 서로 다른 유형의 시스템들에서 적용하기에 적합하다는 것을 잘 알 것이다.
예시적인 환경
도 1은 컨텐츠를 출력해야 하는 클라이언트의 기능을 어드레싱하는 컨텐츠의 출력을 관리하는 기법들을 이용하는 동작을 하는 예시적인 구현에서의 환경(100)을 나타낸 것이다. 예시된 환경(100)은 네트워크 연결들(108, 110, 112)을 통해 서로 통신 연결되어 있는, 하나 이상의 컨텐츠 제공업자들[102(m)](단, "m"은 1부터 "M"까지의 임의의 정수일 수 있음), 복수의 클라이언트들[104(1)-104(N)], 및 브로커(106)를 포함한다. 이하의 설명에서, 컨텐츠 제공업자[102(m)] 및 브로커(106)는 하나 이상의 엔터티들을 나타낼 수 있다. 따라서, 하나의 엔터티[예를 들어, 컨텐츠 제공업자(102(m))] 또는 다수의 엔터티들[예를 들어, 컨텐츠 제공업자들(102(m)), 복수의 컨텐츠 제공업자들(102(m)), 기타]이 언급될 수 있다. 그에 부가하여, 복수의 네트워크 연결들(108, 110, 112)이 개별적으로 도시되어 있지만, 네트워크 연결들(108, 110, 112)이 하나의 네트워크 또는 다수의 네트워크들을 사용하여 달성되는 네트워크 연결들을 나타낼 수 있다. 예를 들어, 네트워크 연결(112)은 백채널 통신(back channel communication)을 갖는 브로드캐스트 네트워크, IP(Internet Protocol) 네트워크, 기타를 나타낼 수 있다.
클라이언트들[104(1)-104(N)]이 다양한 방식으로 구성될 수 있다. 예를 들어, 데스크톱 컴퓨터, 이동국, 엔터테인먼트 기기, 예시된 바와 같이 디스플레이 장치에 통신 연결된 셋톱 박스, 무선 전화, 기타 등등의 클라이언트들[104(1)-104(N)]이 네트워크 연결(108)을 통해 통신을 할 수 있는 컴퓨터로서 구성될 수 있다. 따라서, 클라이언트들[104(1)-104(N)]의 기능이 서로 크게 다를 수 있으며, 이에 대해서는 이하에서 더 기술한다.
컨텐츠 제공업자[102(m)]는 하나 이상의 컨텐츠[114(k)] 항목들(단, "k"는 1부터 "K"까지의 임의의 정수일 수 있음)을 포함한다. 컨텐츠[114(k)]는 텔레비전 프로그램, VOD(video-on-demand) 파일, 원격 응용 프로그램 처리(remote application processing)의 결과, 기타 등등의 각종의 데이터를 포함할 수 있다. 컨텐츠[114(k)]는 네트워크 연결(108)을 통해 브로커(106)로 전달된다.
네트워크 연결(108)을 통해 전달된 컨텐츠[114(k)]는 브로커(106)에 의해 수신되며, 이는 컨텐츠[116(o)](단, "o"는 1부터 "O"까지의 임의의 정수일 수 있음)로서 예시되어 있다. 브로커(106)는 또한 컨텐츠[116(o)]를 출력해야 하는 클라이언트들[104(1)-104(N)]의 기능을 어드레싱하는 컨텐츠[116(o)]의 출력을 관리하는 기법들을 나타내는 브로커 모듈(broker module)(118)을 포함하는 것으로 예시되어 있다. 브로커 모듈(118)은, 예를 들어, 컨텐츠[116(o)]를 부분들로 형성할 수 있고, 이 부분들 중 하나 이상의 부분들이 클라이언트[104(1)-104(N)] 유형들의 서로 다른 기능을 어드레싱한다.
예를 들어, 클라이언트[104(1)](휴대용 음악 플레이어로서 예시되어 있음)는 클라이언트[104(N)](셋톱 박스로서 예시되어 있음)에 의해 지원되는 기능과 다른 기능을 포함할 수 있다. 따라서, 클라이언트[104(1)]는 클라이언트[104(N)]에 의해 지원되는 "유형"의 기능과 다른 유형의 기능을 가질 수 있다. 예를 들어, 음악의 출력과 관련하여 중요한 기능을 가질 수 있는 클라이언트[104(1)]는, 상당한 양의 디스플레이 영역을 가질 수 있는 클라이언트[104(N)]와 달리, 제한된 디스플레이 영역으로 인해 시각적 컨텐츠(예를 들어, 웹 페이지 등의 웹 컨텐츠)를 어드레싱할 때 제한을 받을 수 있다. 따라서, 클라이언트[104(1)]의 기능 레벨[120(1)]이 클라이언트[104(N)]의 기능 레벨[120(N)]보다 작다. 그렇지만, 브로커 모듈(118)은 각자의 기능 레벨들을 어드레싱할 컨텐츠[116(o)]를 형성할 수 있으며, 이에 대한 추가적인 설명은 도 2와 관련하여 찾아볼 수 있다.
예를 들어, 브로커 모듈(118)은, 예를 들어, 폴링(polling), 클라이언트들[104(1)-104(N)]로부터의 주기적인 업로드, 일회 로그온(one-time log on), 기타를 통해, 클라이언트들[104(1)-104(N)]로부터 레벨 데이터(level data)[122(1)]를 수집할 수 있다. 예를 들어, 사용자가 클라이언트[104(N)]에 의해 출력되는 웹 사이트를 통해 브로커 모듈(118)에 의해 제공되는 사용자 인터페이스와 상호작용할 수 있다. 클라이언트[104(1)]를 식별해주고 또 클라이언트[104(1)]를 클라이언트[104(N)]를 포함하는 특정의 가정(가정의 하나의 IP 주소 또는 일정 범위의 IP 주소들을 통해 식별될 수 있음)과 연관시키는 클라이언트[104(1)]의 고유 식별자(예를 들어, 일련 번호)가 사용자 인터페이스를 통해 입력될 수 있다. 다른 일례에서, 가정은, 하나 이상의 웹 사이트들에 액세스하기 위해 사용자[그 결과, 클라이언트들(104(1)-104(N))]를 한 번 인증하는 데 사용되는 사용자 이름 및 암호 등의, 사용자에 대응하는 인증 데이터를 사용하여 식별될 수 있으며, 이것의 일례가 WINDOWS LIVE 인증 시스템 및 PASSPORT (WINDOWS, WINDOWS LIVE, 및 PASSPORT는 미국 워싱턴주 레드몬드 소재의 Microsoft Corporation의 상표임)이다.
이 정보는 이어서 레벨 데이터[122(l)](단, "l"은 1부터 "L"까지의 임의의 정수일 수 있음) 및 연관관계[124(a)] 데이터(단, "a"는 1부터 "A"까지의 임의의 정수일 수 있음)로서 브로커(106)의 메모리(126) 또는 기타 컴퓨터-판독가능 매체에 저장될 수 있다. 레벨 데이터[122(l)] 및 연관관계[124(a)] 데이터는 이어서 각종의 특징들을 제공하기 위해 브로커 모듈(118)에 의해 사용될 수 있다.
예를 들어, 브로커 모듈(118)은 컨텐츠[116(o)]를, 출력(예를 들어, 텍스트 대 HTML, 사운드, 기타), 입력(예를 들어, 입력 장치가 이용가능한지 여부), 화면 크기, 기타 등등의 서로 다른 기능들에 의해 지원되는 부분들로 형성할 수 있으며, 이에 대한 추가적인 설명은 도 2와 관련하여 찾아볼 수 있다. 그 부분들은 이어서 각자의 기능 레벨[120(1)-120(N)]에 기초하여 각자의 클라이언트들[104(1)-104(N)]에 제공될 수 있다. 한 구현에서, 컨텐츠의 차후의 제공은 브로커(106)를 통한 통신 없이 수행되며, 예를 들어, 컨텐츠 제공업자[102(m)]는 컨텐츠[114(k)]를 부분들로 구성할 수 있고, 그 부분들 각각은 클라이언트들[104(1)-104(N)]로 배달된다. 컨텐츠[116(o)]를 클라이언트[104(1)-104(N)]로 배포하는 것이 케이블, RF(radio frequency), 마이크로파, DSL(digital subscriber line), 위성, IP 연결을 통하는 것, 기타 등등을 비롯한 다수의 방식으로 수행될 수 있다.
일반적으로, 본 명세서에 기술되는 기능들 중 어느 것이라도 소프트웨어, 펌웨어, 하드웨어(예를 들어, 고정 논리 회로(fixed-logic circuitry)), 수동 처리, 또는 이 구현들의 조합을 사용하여 구현될 수 있다. "모듈", "기능", "엔진" 및 "논리"라는 용어는, 본 명세서에서 사용되는 바와 같이, 일반적으로 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 조합을 나타낸다. 예를 들어, 소프트웨어 구현의 경우에, 모듈, 기능 또는 논리는 프로세서(예를 들어, CPU 또는 CPU들) 상에서 실행될 때 지정된 태스크들을 수행하는 프로그램 코드를 나타낸다. 프로그램 코드는 메모리(126) 등의 하나 이상의 컴퓨터-판독가능 메모리 장치에 저장될 수 있다. 본 명세서에 기술된 기법들의 특징들이 플랫폼-독립적(platform-independent)이며, 이는 그 기법들이 각종의 프로세서들을 갖는 각종의 상용 컴퓨팅 플랫폼들에서 구현될 수 있다는 것을 의미한다.
도 1과 관련하여 앞서 기술한 바와 같이, 클라이언트들[예를 들어, 클라이언트들(104(1)-104(N))]의 네트워크는 서로 다른 수 및/또는 유형의 장치들 및/또는 소프트웨어를 포함할 수 있다. 클라이언트들은 무선 또는 유선 클라이언트들 및/또는 앞서 기술한 여러 가지 기능들 또는 능력들을 갖는 클라이언트들을 포함할 수 있다. 클라이언트의 기능 레벨은 그 클라이언트의 기능에 대응한다. 서로 다른 유형의 기능과 관련하여, 하위 기능 레벨은 갖는 클라이언트는 상위 기능 레벨을 갖는 클라이언트보다 더 적은 수의 능력들을 가질 수 있다. 예를 들어, 하위 디스플레이 기능 레벨을 갖는 클라이언트[예를 들어, 휴대용 음악 플레이어로서 구성된 클라이언트(104(1))]는 소정 양의 텍스트를 소정 포맷으로 디스플레이할 수 있는 반면, 동일한 클라이언트가 소정의 보다 복잡한 특징들(예를 들어, 그래픽 이미지들을 제시하는 것, 비디오를 다른 포맷들로 제시하는 것, 또는 소정의 웹 페이지 포맷들을 제시하는 것 등)을 할 수 없을 수도 있다. 이와 반대로, 상위 디스플레이 기능 레벨을 갖는 클라이언트[예를 들어, 셋톱 박스로서 구성된 클라이언트(104(N))]는 부가적인 능력들을 가질 수 있다. 이러한 클라이언트는 부가적인 유형의 데이터를 제시할 수 있거나, 보다 복잡한 포맷들로 또는 보다 다양한 조건들 하에서 데이터를 제시할 수 있다.
또한, 서로 다른 클라이언트들에 대해 서로 다른 수의 기능 레벨들이 있을 수 있다. 다수의 클라이언트들이 적어도 하나의 다른 클라이언트와 통신을 하고 있을 수 있는 클라이언트들의 네트워크에서, 그 네트워크 내의 클라이언트들은 다른 클라이언트들과 다른 기능 레벨을 가질 수 있다[예를 들어, 클라이언트(104(1)) 대 클라이언트(104(N))]. 따라서, 클라이언트들의 네트워크 내의 어떤 클라이언트들은 서로 다른 기능 레벨들을 가질 수 있는 반면, 또 다른 클라이언트들은 동일하거나 거의 동일한 기능 레벨들을 가질 수 있다.
도 2는 클라이언트들의 기능 레벨들의 일례를 나타낸 것이다. 도 2는 7개의 기능 레벨들의 일례를 나타내고 있지만, 임의의 수의 기능 레벨들이 있을 수 있다. 예를 들어, 2개, 3개, 4개, 5개, 6개, 8개, 9개, 10개 또는 11개 이상의 기능 레벨들이 있을 수 있다. 도 2의 일례에서, 레벨 1 기능은 다른 레벨들과 비교할 때 비교적 "하위" 기능 레벨일 수 있으며, 따라서 레벨 1 기능을 갖는 클라이언트들은 하나의 방향으로 텍스트를 제시하는 능력을 가질 수 있지만, 그 이상의 능력을 가지고 있지는 않다. 예를 들어, 레벨 1 기능 클라이언트(예를 들어, 커피 메이커)는 사용자에게 텍스트를 제시할 수 있지만, 사용자가 텍스트를 입력할 수 있게 해주는 것 또는 사용자에게 그래픽 이미지들을 제시하는 능력 등의 특정 능력들을 가지고 있지 않을 수 있다.
또한, 도 2의 일례에 나타낸 바와 같이, 클라이언트는 "레벨 2" 기능을 가질 수 있다. 이 일례에서, 레벨 2 기능은 레벨 1 기능 클라이언트에 의해 제시되는 데이터를 제시할 수 있고 또한 컬러 데이터 및 아이콘을 제시할 수 있는 클라이언트(예를 들어, 다가올 날씨의 컬러 아이콘을 보여주는 "스마트" 온도계)에 대응할 수 있다. 이 경우에, 레벨 2 기능 클라이언트는 (레벨 1 기능 클라이언트와 같이) 사용자로부터 입력을 수신할 수 없다, 즉 레벨 2 기능 클라이언트는 이 일례에서 단방향 클라이언트이다.
또한, 이 일례에서, 레벨 2 기능 클라이언트가 제시할 수 있는 데이터를 제시할 수 있는 레벨 3 기능 클라이언트가 존재할 수 있다. 그에 부가하여, 레벨 3 기능 클라이언트는 또한 사용자로부터 입력을 수신할 수 있다. 환언하면, 레벨 3 기능 클라이언트는 이 일례에서 양방향 클라이언트일 수 있다. 이 경우에, 사용자는 텍스트 또는 아이콘 등의 컨텐츠를 수신할 수 있고, 또한 레벨 3 클라이언트를 통해 시스템에 선택 또는 기타 형태의 입력을 입력할 수 있다. 한 일례에서, 사용자 입력은 메뉴 항목들을 클릭 또는 선택하는 것, 가입 목록들을 관리하는 것, 또는 데이터를 로컬적으로 추가/제거하는 것을 포함할 수 있다.
레벨 4 기능 클라이언트는 기타 능력들에 부가하여 레벨 3 기능 클라이언트의 능력들을 가질 수 있다. 한 일례로서, 레벨 4 기능 클라이언트는 또한, 예를 들어, 가젯(gadgets)을 렌더링하기 위한 QVGA 합성(QVGA compositing)의 능력을 가질 수 있다. 레벨 5 기능 클라이언트는 또한 렌더링된 가젯이 텍스트 입력을 비롯한 사용자 입력을 수신할 수 있도록 텍스트 입력도 포함할 수 있다. 레벨 6 기능 클라이언트는, 예를 들어, 전용의 데이터 바인딩된 응용 프로그램들(dedicated databound applications)(예를 들어, smartplow, IM, 기타)을 전환시키는 클라이언트 응용 프로그램과 같은 클라이언트 응용 프로그램 모델 등의 추가적인 특징들 또는 능력들을 추가할 수 있다. 또한, 레벨 7 기능 클라이언트는 이 일례에서, 예를 들어, VGA 또는 브라우저 능력들에서와 같이, 부가적인 능력들 또는 전체적인 능력들을 포함할 수 있다. 이들 7개 레벨에 의해 응용 프로그램들이 생성되어 다양한 소비자 가전 장치들로 보내져 그 장치들의 능력을 이용할 수 있음으로써 긍정적인 소비자 경험을 보장할 수 있다. 장치 능력들[예를 들어, 클라이언트들(104(1)-104(N))]의 사소한 변동들이 무시됨으로써, 응용 프로그램 제공업자는 장치들의 레벨을 폭넓게 어드레싱할 응용 프로그램을 한번에 작성할 수 있게 된다. 일부 실시예들에서, 장치는, 그 장치가 핵심 능력(core capability)을 가지고 있지 않기 때문에, 그 능력들 중 일부가 사용되지 않는 레벨에 그 장치를 둘 수 있다. 예를 들어, 장치[예를 들어, 클라이언트(104(N))]가 가젯을 렌더링할 수는 있지만 양방향 기능을 가지고 있지는 않다. 그러한 경우, 상기한 바와 같이, 장치는 여전히 레벨 2 장치로 분류된다. 이것은, 장치가 가젯을 갖는 응용 프로그램을 렌더링할 수 있더라도, 그 응용 프로그램이 장치로 전송되지 않을 수 있다는 것을 의미한다. 그렇지만, 이 실시예에서, 능력들의 계층구조가 기본 레벨 소비자 경험을 보장하도록 시행되며, 이에 대한 추가적인 설명은 이하의 도면과 관련하여 찾아볼 수 있다.
도 2는 클라이언트 기능 레벨들의 분할의 한 일례에 불과하며, 각종의 다른 분할들도 생각되고 있다. 예를 들어, 3개의 기능 레벨들(예를 들어, 하위 기능, 중간 기능, 상위 기능)이 사용될 수 있으며, 이 경우 각각의 상위 레벨은 하위 레벨 클라이언트들이 가지고 있지 않을 수 있는 부가적인 능력 또는 기능을 포함할 수 있고 능력들이 필요에 따라 또는 원하는 바에 따라 서로 다른 레벨들에 할당될 수 있다.
한 구현에서, 계층구조 내의 각각의 연속적인 레벨이 "아래에 있는" 기능을 지원하는 것은 물론 부가적인 기능 항목도 지원하도록 도 2의 레벨들이 계층구조 내에 유지된다. 예를 들어, 레벨 3 클라이언트는 입력을 수신하는 부가적인 항목은 물론 레벨 2 및 레벨 1의 디스플레이 기능도 지원할 수 있다. 각종의 다른 일례들도 생각되고 있다.
도 3은 클라이언트들의 기능 레벨에 따라 네트워크 내의 클라이언트들을 관리하는 것의 한 일례(300)를 나타낸 플로우차트이다. 이 일례에서, 네트워크 내의 서로 다른 클라이언트들은 도 1 및 도 2와 관련하여 앞서 기술한 바와 같이 서로 다른 기능 레벨들을 할당받는다. 앞서 기술한 바와 같이, 예를 들어, 클라이언트들[104(1)-104(N)]은 서로 다른 기능을 갖도록 구성될 수 있고 각자의 클라이언트로부터 이용가능한 기능에 가장 가깝게 대응하는 기능 레벨에 할당될 수 있다. 예를 들어, 서로 다른 클라이언트들[예를 들어, 클라이언트들(104(1)-104(N))]의 기능 레벨이 동일하지 않을 수 있더라도, 컨텐츠[116(o)]가 또한 네트워크 내의 서로 다른 클라이언트들 각각에서 제시될 수 있다.
클라이언트들의 네트워크에서, 클라이언트들 각각에 대한 기능 레벨이 결정될 수 있다. 각각의 클라이언트에 대한 기능 레벨이 다수의 방식으로 결정될 수 있다. 도 3의 일례에 예시된 바와 같이, 네트워크 내의 클라이언트들이 폴링될 수 있다(블록 301). 이 일례에서, 브로커[예를 들어, 브로커(106)] 등의 클라이언트는 클라이언트의 대응하는 기능 레벨들을 식별하기 위해 네트워크 내의 각각의 클라이언트[예를 들어, 클라이언트들(104(1)-104(N))]를 폴링할 수 있다. 폴링 신호 또는 메시지에 응답하여, 네트워크 내의 클라이언트들[예를 들어, 클라이언트들(104(1)-104(N))] 중 하나 이상의 클라이언트들이 브로커[예를 들어, 브로커(106)]에게 메시지 또는 표시자(indicator)를 반환할 수 있다(블록 302). 각자의 클라이언트들[예를 들어, 클라이언트들(104(1)-104(N))]로부터 수신된 메시지 또는 표시자에 기초하여, 브로커는 대응하는 장치의 기능 레벨을 결정할 수 있다(블록 303). 이와 같이 결정된 기능 레벨들이 저장될 수 있다(블록 304).
서비스[예를 들어, 브로커(106)]에 대한 지식과 무관하게, 장치의 기능이 업그레이드될 수 있다. 따라서, 일 실시예에서, 장치[예를 들어, 클라이언트(104(1))]가 다른 레벨로 분류되어야 하는지 여부를 확인하기 위해 그 장치가 주기적으로 폴링된다. 예를 들어, 장치는 새로운 능력들을 획득하기 위해 그의 메모리를 리플래싱(reflashing)하는 것, 주변 장치의 추가, 네트워크 능력들의 업그레이드, 기타 등등을 통해 현장 업그레이드가능(field upgradable)할 수 있다. 브로커(106)는 클라이언트들[104(1)-104(N)]을 주기적으로 폴링할 수 있거나, 대안의 실시예에서, 클라이언트들[104(1)-104(N)]은 그의 업데이트를 수신할 시에 그의 레벨이 변경되었다는 것을 브로커(106)에 통지한다.
브로커(106)는 또한 클라이언트들[104(1)-104(N)]에 대해 테스트를 실행함으로써 클라이언트들[104(1)-104(N)]의 기능 레벨을 결정할 수 있다. 예를 들어, 양방향 기능이 있는 클라이언트[104(N)]는 네트워크에 연결될 수 있고, 브로커(106)는 [예를 들어, 브로커 모듈(118)의 실행을 통해] 클라이언트[104(N)]를 적절히[예를 들어, 클라이언트(104(N))를 통해 이용가능한 기능에 가장 가깝게 대응하는 레벨로] 분류하기 위해 클라이언트[104(N)]에 대해 기본적인 테스트를 수행할 수 있다.
네트워크 지원 기능이 없는 클라이언트들이 또한, 클라이언트의 사용자가 독립적으로 브로커(106)에 액세스하여 클라이언트 정보를 입력함으로써, 컴퓨터-판독가능 매체를 통해 클라이언트 상에서 로컬적으로 하나 이상의 모듈들을 실행함으로써, 기타 등등에 의해 분류될 수 있다. 일 실시예에서, 브로커(106)가 클라이언트 유형들의 데이터베이스를 가지며, 등록 정보를 데이터베이스 내의 엔트리들과 매칭시키고 이어서 클라이언트들[104(1)-104(N)]에 레벨을 할당할 수 있다. 클라이언트들[104(1)-104(N)]이 데이터베이스에 있지 않은 경우, 브로커(106)는 사용자가 클라이언트들[104(1)-104(N)]의 능력들을 정의할 수 있게 해주기 위해 사용자에게 질문서를 제공할 수 있다. 그 정보를 사용하여, 브로커(106)는 클라이언트들[104(1)-104(N)]을 클라이언트에 대응하는 가장 가까운(즉, "가장 근접한") 기능 레벨에 할당할 수 있다. 각종의 다른 일례들도 생각되고 있다.
도 4는 네트워크에서 컨텐츠를 제공하는 시스템(400)의 일례를 나타낸 것이다. 이 일례에서, 이 시스템은 네트워크 내의 적어도 하나의 정보 제공업자(401), 브로커(402) 및 다수의 장치들[예를 들어, 장치(403), 장치(404), 장치(405)]을 포함한다. 브로커(402) 및 장치들(403, 404, 405)은 각각 도 1의 브로커(106) 및 클라이언트들[104(1)-104(N)]에 대응할 수 있거나 그렇지 않을 수 있다.
정보 제공업자(401)는 각종의 유형 또는 형태의 컨텐츠를 브로커(402)에 제공할 수 있고 또한 각종의 정보 또는 컨텐츠 소스들도 포함할 수 있다. 정보 제공업자(401)의 비제한적 일례들은 뉴스 소스, 주식 시세 표시기 데이터 소스, 웹 사이트, 기타를 포함한다. 브로커(402)는 정보 제공업자(401)로부터 정보 또는 컨텐츠를 수신할 수 있고 네트워크 내의 장치들(예를 들어, 403, 404 및/또는 405) 중 하나 이상의 장치들로 전송하기 위해 데이터를 추가적으로 처리 또는 저장할 수 있다.
예를 들어, 브로커(402)는 장치들(403, 404, 405) 각각에 대한 기능 레벨을 결정하기 위해 그 장치들을 폴링할 수 있다(도 3의 블록 301). 장치들(403, 404, 405)은 장치들에 대한 기능 레벨을 나타내는 메시지 또는 표시자를 브로커(402)에게 반환할 수 있다(도 3의 블록 302). 브로커(402)는 네트워크 내의 장치들(403, 404, 405)로부터 메시지들/표시자들 각각을 수신하고, 대응하는 메시지들/표시자들에 기초하여, 브로커(402)는 장치들 각각에 대한 기능 레벨을 결정할 수 있다(도 3의 블록 303).
네트워크 내의 장치들(403-405) 중 하나 이상의 장치들이 네트워크 내의 하나 이상의 다른 장치들(403-405)과 다른 기능 레벨을 가질 수 있다. 이와 반대로, 네트워크 내의 장치들(403-405) 중 하나 이상의 장치들이 네트워크 내의 하나 이상의 다른 장치들(403-405)과 동일하거나 유사한 기능 레벨을 가질 수 있다. 그에 부가하여, 브로커(402)는 장치들 각각에 대한 기능 레벨들을 저장하는 컴퓨터-판독가능 매체(예를 들어, 메모리 또는 저장 장치)를 가질 수 있다(도 3의 블록 304). 이 경우에, 정보 제공업자(401)로부터 수신된 컨텐츠가 네트워크 내의 장치의 대응하는 기능 레벨에 기초하여 수정될 수 있고, 수정된 컨텐츠가 브로커(402)로부터 대응하는 장치로 전송될 수 있다. 다른 대안으로서 또는 그에 부가하여, 컨텐츠가 정보 제공업자(401)로부터 네트워크 내의 장치로 전송될 수 있다.
도 5는 도 1의 브로커(106) 및/또는 도 4의 브로커(402)에 대응할 수 있거나 그렇지 않을 수 있는 브로커의 일례를 나타낸 것이다. 각종의 서로 다른 구성요소들이 서로 다른 구성으로 배열되거나 결합될 수 있고, 부가의 구성요소들도 존재할 수 있으며, 일부 구성요소들은 생략될 수 있기 때문에, 도 5는 예시를 위한 한 일례에 불과하다.
도 5에 예시된 일례에서, 브로커(500)는 입력(501)을 포함한다. 입력(501)은 원격 장치 또는 원격 데이터 소스로부터 메시지 또는 표시자를 수신할 수 있다. 예를 들어, 데이터 소스는 컨텐츠의 데이터 스트림(화살표로 나타냄)을 입력(501)을 통해 브로커(500)로 전송할 수 있다. 브로커(500)는 이 일례에서 데이터 소스로부터 컨텐츠를 수신하고 장치의 기능 레벨에 기초하여 컨텐츠를 추가적으로 처리할 수 있다. 예를 들어, 브로커(500)는 또한 장치들의 기능 레벨들에 관한 데이터를 포함할 수 있는 저장 장치(504)(예를 들어, 메모리 또는 기타 컴퓨터-판독가능 매체를 통해 구현됨)를 포함할 수 있다.
특정의 기능 레벨을 갖는 장치는 또한 브로커(500)에 컨텐츠를 요청할 수 있다. 이 컨텐츠는 컨텐츠를 요청하는 장치의 기능 레벨에 기초하여 브로커(500)의 조정자(coordinator)(502)에서 처리될 수 있다. 장치가 대응하는 하위 기능 레벨을 갖는 경우, 조정자(502)는 특정의 양의 데이터를 포함하도록 또는 장치의 기능 레벨에 대응하는 특정의 포맷으로 컨텐츠를 포함하도록 컨텐츠를 수정할 수 있다. 수정된 컨텐츠는 출력(503)을 통해 컨텐츠를 요청하는 장치로 출력될 수 있다. 따라서, 이 일례에서, 수정된 컨텐츠가 장치의 기능 레벨에 기초하여 장치에 적절한 포맷 및/또는 구성으로 장치에서 사용자에게 제공될 수 있다.
새로운 장치가 네트워크에 가입하거나 바인딩하도록, 장치가 또한 기존의 네트워크에 추가될 수 있다. 새로운 장치가 네트워크에 가입될 때, 새로운 장치가 네트워크에 포함되어 있다는 것을 나타내기 위해 새로운 장치가 메뉴 상에 열거될 수 있다.
도 6은 한 일례를 나타내는 플로우차트(600)이다. 이 일례에서, 새로운 장치[예를 들어, 클라이언트(104(1))]가 네트워크에 추가되거나 바인딩 동작을 통해 네트워크에 바인딩되며, 이 경우 새로운 장치[예를 들어, 클라이언트(104(1))]는 브로커[예를 들어, 브로커(106)] 등의 바인딩 메카니즘 또는 시스템에 의해 수신되는 메시지를 전송한다(블록 601).
메시지가, 예를 들어, 새로운 장치가 네트워크에 추가되어야 한다는 것을 나타내는 신호를 포함할 수 있다. 그에 부가하여, 메시지는 새로운 장치[예를 들어, 클라이언트(104(1))] 상에서 요망되는 컨텐츠의 형태 및/또는 유형에 관한 추가적인 명령어들을 포함할 수 있다. 또한, 메시지는 새로운 장치[예를 들어, 클라이언트(104(1))]의 대응하는 기능 레벨을 포함할 수 있다. 브로커[예를 들어, 브로커(106)]는 또한, 예를 들어, 새로운 장치[예를 들어, 클라이언트(104(1))]의 주소 또는 식별자를 포함할 수 있는 메시지를 새로운 장치[예를 들어, 클라이언트(104(1))]로 전송하여 그 새로운 장치를 네트워크 내의 새로운 장치로서 식별할 수 있다. 따라서, 브로커[예를 들어, 브로커(106)]는 그 장치를 네트워크에 바인딩할 수 있다(블록 602).
도 6의 일례가 예시하는 바와 같이, 새로운 장치[예를 들어, 클라이언트(104(1))]가 도 2와 관련하여 설명한 바와 같이 기능 레벨과 연관될 수 있다. 기능 레벨이 새로운 장치의 능력 및/또는 새로운 장치[예를 들어, 클라이언트(104(1))]에 대한 컨텐츠의 유형, 양 및/또는 형태를 기술할 수 있다. 브로커[예를 들어, 브로커(106)]는 데이터 소스로부터 컨텐츠[예를 들어, 컨텐츠(116(o))]를 수신할 수 있고(블록 603) 또한 그 컨텐츠를 네트워크 내의 임의의 장치[예를 들어, 클라이언트들(104(1)-104(N))]로 전송할 수 있다.
또한, 브로커는 임의의 수의 인자들에 기초하여 그 컨텐츠를 수정할 수 있다(블록 604). 예를 들어, 브로커[예를 들어, 브로커(106)]는 컨텐츠[116(o)]를 수신해야 할 장치의 기능 레벨에 기초하여 컨텐츠[116(o)]를 수정할 수 있다. 이 일례에서, 브로커(106)는 새로운 장치[예를 들어, 클라이언트(104(1))]로 컨텐츠[116(o)]를 출력하고(블록 605), 그 새로운 장치는 브로커(106)로부터 사용자에게 제시하기 위한 컨텐츠를 수신할 수 있다. 다른 대안으로서 또는 그에 부가하여, 컨텐츠[116(o)]가 데이터 소스[예를 들어, 컨텐츠 제공업자(102(m))]로부터 직접 또는 간접적으로 새로운 장치[예를 들어, 클라이언트(104(1))]에 수신될 수 있다.
새로운 장치[예를 들어, 클라이언트(104(1))]에서 수신 및/또는 제시되는 컨텐츠[116(o)]가 또한 네트워크 내의 새로운 장치의 기능 레벨에 대응하도록 수정 또는 포맷될 수 있다(블록 604). 예를 들어, 새로운 장치가 하위 기능 레벨(예를 들어, 제한된 디스플레이 능력)을 갖는 경우, 데이터가 원하는 포맷으로 새로운 장치[예를 들어, 클라이언트(104(1))]에서 제시되거나 원하는 정보를 포함할 수 있도록 컨텐츠[116(o)]가 수정될 수 있다(블록 604). 이와 반대로, 새로운 장치[예를 들어, 클라이언트(104(N))와 관련하여 기술됨]가 상위 기능 레벨을 갖는 경우, 컨텐츠[116(o)]가 보다 복잡한 포맷으로 제시될 수 있거나, 부가적인 데이터가 새로운 장치에서 제시될 컨텐츠에 포함될 수 있다.
따라서, 한 일례에서, 브로커[예를 들어, 브로커(402)]는 데이터 소스[예를 들어, 정보 제공업자(401)]로부터 컨텐츠를 수신할 수 있고, 또한 장치의 기능 레벨에 기초하여 네트워크 내의 장치[예를 들어, 장치들(403-405)]로 컨텐츠를 전송할 수 있다. 네트워크 내의 장치들[예를 들어, 장치들(403-405)]이 장치마다 서로 다른 기능 레벨들을 가질 수 있다. 다른 대안으로서, 네트워크 내의 장치들[예를 들어, 장치들(403-405)]이 장치마다 동일하거나 유사한 기능 레벨들을 가질 수 있다.
네트워크 내의 서로 다른 장치들[예를 들어, 장치들(403-405)]이 서로 다른 기능 레벨들을 갖는 경우, 컨텐츠가 장치들[예를 들어, 장치들(403-405)]의 각자의 기능 레벨에 따라 장치들[예를 들어, 장치들(403-405)]에서 제시되거나 디스플레이될 수 있도록, 정보 제공업자(401)로부터의 컨텐츠가 서로 다른 장치들[예를 들어, 장치들(403-405)]로 전송될 수 있다. 따라서, 컨텐츠가 장치들[예를 들어, 장치들(403-405)]의 서로 다른 기능 레벨들에 기초하여 서로 다른 방식들로 포맷될 수 있다. 한 일례로서, 상위 기능 레벨을 갖는 장치는 하위 기능 레벨을 갖는 장치보다 더 복잡한 포맷으로 데이터를 수신하고 제시할 수 있다.
수정된 데이터가 장치들[예를 들어, 클라이언트들(104(1)-104(N))]의 기능 레벨과 일치하도록, 컨텐츠[116(o)]가 임의의 수의 방식들로 수정될 수 있다. 그에 부가하여, 예를 들어, 서로 다른 장치들이 서로 다른 기능 레벨들을 가질 때, 컨텐츠가 서로 다른 장치들에 대해 서로 다른 방식들로 수정될 수 있다. 한 일례에서, 브로커[예를 들어, 브로커(106)]는 데이터 소스[예를 들어, 컨텐츠 제공업자(102(m))]로부터 컨텐츠[116(o)]를 수신할 수 있고, 또한 수신측 장치[예를 들어, 클라이언트(104(1))]의 기능 레벨에 기초하여 데이터를 수정할 수 있으며, 또한 수정된 데이터를 수신측 장치에서 제시하기 위해 수신측 장치로 전송할 수 있다. 다른 일례에서, 데이터 소스[예를 들어, 컨텐츠 제공업자(102(m))]는 수신측 장치의 기능 레벨에 기초하여 컨텐츠[116(o)]를 수정할 수 있고, 대응하는 기능 레벨들을 갖는 컨텐츠[116(o)]를 전송할 수 있다. 다른 대안으로서 또는 그에 부가하여, 데이터 소스[예를 들어, 컨텐츠 제공업자(102(m))]는 기술된 바와 같이 컨텐츠[116(o)]를 수정할 수 있고, 데이터를 대응하는 기능 레벨을 갖는 클라이언트들[104(1)-104(N)]로 전송할 수 있는 브로커(106)로 데이터를 전송할 수 있다. 다른 일례로서, 클라이언트들[104(1)-104(N)]은 데이터 소스[예를 들어, 컨텐츠 제공업자(102(m))]로부터 또는 브로커[예를 들어, 브로커(106)]로부터 수신되는 컨텐츠[116(o)]를 수정할 수 있고, 수정된 데이터를 사용자에게 제시할 수 있다. 장치는 이 일례에서 그 자신의 기능 레벨에 기초하여 컨텐츠를 수정할 수 있다.
다른 일례에서, 장치에서 제시되는 데이터의 양이 장치의 기능 레벨에 기초하여 결정될 수 있다. 예를 들어, 브로커(106) 또는 컨텐츠 제공업자[102(m)]는, 클라이언트[104(1)]로부터 기능 레벨의 표시자를 수신함으로써, 클라이언트[104(1)]의 기능 레벨을 결정할 수 있다. 다른 대안으로서, 브로커(106) 또는 컨텐츠 제공업자[102(m)]가 클라이언트들[104(1)-104(N)] 각각에 대한 대응하는 기능 레벨들을 결정하기 위해 클라이언트들[104(1)-104(N)]을 폴링할 수 있고, 그 클라이언트에 대한 결정된 대응하는 기능 레벨에 기초하여 네트워크 내의 클라이언트들[104(1)-104(N)] 중 특정의 클라이언트로 전송될 컨텐츠[116(o)]를 수정할 수 있다.
이 일례에서, 브로커(106)는 클라이언트[104(1)]의 표시된 기능 레벨에 기초하여 클라이언트[104(1)]로 전송될 컨텐츠[116(o)]의 양을 결정할 수 있다. 예를 들어, 클라이언트[104(1)]의 기능 레벨이 낮은 경우, 보다 적은 양의 컨텐츠[116(o)]가 클라이언트[104(1)]로 전송될 수 있도록 브로커(106)가 컨텐츠[116(o)]를 수정할 수 있다. 이 일례에서, 브로커(106)는 클라이언트[104(1)]로 전송될 컨텐츠[116(o)]의 부분을 결정하고 클라이언트[104(1)]로부터 보류될 컨텐츠[116(o)]의 다른 부분을 결정할 수 있다. 클라이언트[104(1)]로 전송될 컨텐츠로서 식별된 컨텐츠[116(o)]의 부분이 이 일례에서 클라이언트[104(1)]로 전송되는 반면, 클라이언트[104(1)]로부터 보류될 것으로 결정된 컨텐츠[116(o)]의 다른 부분은 전송되지 않는다. 따라서, 클라이언트[104(1)]는 클라이언트[104(1)]의 기능 레벨에 적절한 컨텐츠를 수신한다. 또한, 이 일례에서, 클라이언트[104(1)]는 클라이언트[104(1)]의 기능 레벨에 부합하는 포맷으로 컨텐츠[116(o)]를 사용자에게 제시하거나 디스플레이할 수 있다.
또한, 데이터 소스는 클라이언트 상에서 컨텐츠를 제시하는 방식을 나타내는 표시자와 함께 컨텐츠를 제공할 수 있다. 이 일례에서, 데이터 소스[예를 들어, 정보 제공업자(401)]는 컨텐츠를 브로커(402)로 전송할 수 있거나, 컨텐츠를 사용자에게 제시하기 위해 하나 이상의 장치들(403-405)로 전송할 수 있다. 정보 제공업자(401)는 또한 사용자에게 컨텐츠를 제시할 장치[예를 들어, 장치들(403-405) 중 하나 이상의 장치]에 대한 기능 레벨을 나타내는 대응하는 표시자를 제공할 수 있다. 한 구현에서, 컨텐츠 및 표시자가 그 표시자에 기초하여 컨텐츠를 수정할 수 있는 브로커(402)로 전송될 수 있다. 다른 대안으로서 또는 그에 부가하여, 장치들(403-405)은 장치의 기능 레벨을 나타내는 표시자를 브로커(402)로 전송할 수 있다. 그 표시자에 기초하여, 브로커(402)는 컨텐츠를 수정하고 수정된 컨텐츠를 사용자에게 제시하기 위해 장치로 전송할 수 있다.
한 일례에서, 브로커(402)는 장치(403)로부터의 표시자를 정보 제공업자(401)로부터의 표시자와 비교할 수 있다. 일치가 검출되면, 브로커(402)는 컨텐츠를 수정하지 않고 컨텐츠를 장치(403)로 전송할 수 있다. 장치(403)로부터의 표시자가 장치(403)의 기능 레벨이 정보 제공업자(401)로부터의 컨텐츠의 현재 상태의 기능 레벨보다 낮다는 것을 나타내는 경우, 브로커(402)는 장치(403)의 기능 레벨에 대응하도록 컨텐츠를 수정할 수 있다. 다른 대안으로서, 브로커(402)는 장치(403)의 기능 레벨에 기초하여 장치(403)에서 컨텐츠를 수정(예를 들어, 제시)하기 위한 파라미터들과 함께 컨텐츠를 장치(403)로 전송할 수 있다. 이와 같이, 그렇지 않았으면 장치에서 출력하기에 적합하지 않을 컨텐츠가 출력을 위해 장치에 의해 수정될 수 있다.
상기한 바와 같이 컨텐츠에 대한 각종의 서로 다른 수정들이 행해질 수 있다. 예를 들어, 전송되거나 제시될 데이터의 부분들을 선택함으로써 데이터의 양이 수정될 수 있다. 또한, 데이터의 포맷이 수정될 수 있다. 이 일례에서, 컨텐츠의 포맷이 장치의 기능 레벨에 대응하도록 컨텐츠가 수정될 수 있다. 따라서, 사용자 경험을 향상시키기 위해, 컨텐츠가 장치에 적절한 포맷으로 장치에서 제시될 수 있다.
도 7은 서로 다른 장치들을 포함하는 네트워크의 일례(700)를 나타낸 것이다. 예시된 일례(700)에서, 네트워크는 서로 다른 기능 레벨들을 갖는 임의의 유형의 장치들을 포함할 수 있다. 데이터 소스는 컨텐츠를 장치들에 제공할 수 있다. 이 일례에서, 2개의 데이터 소스(701, 702)가 예시되어 있지만, 하나 이상의 수 또는 유형의 데이터 소스들이 컨텐츠를 제공할 수 있다. 또한, 데이터 소스들(701, 702)이 컨텐츠를 브로커(705)에 제공하고, 브로커(705)는 그 데이터를 장치들 중 하나 이상의 장치들에 제공한다. 이 일례에서, 브로커(705)는 서로 다른 장치들의 기능 레벨들에 기초하여 컨텐츠를 장치들에 제공한다.
이 일례에서, 네트워크(701) 내의 장치들은 텔레비전(710), 셀 전화(711), MP3 플레이어(712), 디지털 사진 액자(704), 게임 장치(705), 랩톱 컴퓨터(716) 및 커피 메이커(717)를 포함한다. 장치들 중 하나 이상의 장치가 이 일례에서 네트워크 내의 하나 이상의 다른 장치들과 다른 기능 레벨을 가질 수 있다. 예를 들어, 커피 메이커(717)는 TV(710)와 다른 기능 레벨을 가질 수 있다. 한 일례에서, 커피 메이커는 텍스트 데이터를 사용자에게 제시하는 디스플레이를 포함할 수 있다. 이러한 텍스트 데이터는, 예를 들어, 주식 시세 표시기 상의 주식 시세 정보를 포함할 수 있다.
그렇지만, 커피 메이커(717)는 TV(710)와 비교하여 더 낮은 기능 레벨을 가질 수 있다. 예를 들어, TV(710)는 컬러 그래픽 또는 아이콘을 디스플레이할 수 있는 반면, 커피 메이커(717)는 이 기능을 가지고 있지 않을 수 있다. 이와 마찬가지로, 디지털 사진 액자(714)도 역시 컬러 그래픽 또는 아이콘을 디스플레이할 수 있다. 따라서, TV(710) 및 디지털 사진 액자(714)는 커피 메이커(717)와 비교하여 더 높은 기능 레벨을 가질 수 있다.
그에 부가하여, 셀 전화(711)는 부가적인 기능들을 수행할 수 있다. 셀 전화(711)는, 예를 들어, 사용자 입력을 수신할 수 있고, 셀 전화(711)의 사용자와 브로커(705) 또는 데이터 소스(701, 702) 사이의 양방향 통신을 유지할 수 있다. 따라서, 이 경우에, 셀 전화(711)는 커피 메이커(717), TV(710) 및 디지털 사진 액자(714)와 비교하여 더 높은 기능 레벨을 가질 수 있다. 이와 마찬가지로, 네트워크는 디스플레이를 포함하는 MP3 플레이어(712)를 포함할 수 있다. MP3 플레이어(712)는, 예를 들어, 텍스트 입력을 가능하게 해주는 것 등의 부가의 기능을 제공할 수 있다. 따라서, MP3 플레이어(712)는, 예를 들어, 커피 메이커(717)와 비교하여 더 높은 기능 레벨을 가질 수 있다. 게임 장치(715) 및/또는 랩톱 컴퓨터(716)도 역시 네트워크 내에 포함될 수 있다. 이들 장치 각각이 네트워크 내의 다른 장치들과 비교하여 서로 다른 기능 레벨을 가질 수 있다. 예를 들어, 랩톱 컴퓨터(716)는 장치 응용 프로그램 모델 및/또는 브라우저 기능을 포함할 수 있다.
따라서, 이 일례에서, 서로 다른 장치들이 서로 다른 기능 레벨들과 연관될 수 있다. 예를 들어, 도 2의 일례에 예시된 바와 같은 7개의 기능 레벨들이 있는 경우, 브로커(705)는 장치들의 각자의 기능 레벨들에 기초하여 적절한 컨텐츠를 장치들로 전송할 수 있다. 한 일례에서, 장치들[TV(710), 셀 전화(711), 음악 플레이어(712), 사진 액자(714), 게임 장치(715), 랩톱(716) 및 커피 메이커(717)] 각각은 메시지, 신호 또는 비이컨(beacon)을 브로커(705)로 전송함으로써 브로커(705)에 등록을 한다. 또한, 장치들은 브로커(705) 또는 데이터 소스들(701, 702)에 어떤 정보 또는 데이터를 요청할 수 있다. 한 일례에서, 컴퓨팅 장치가 또한 네트워크에 참여하는 장치들의 메뉴 및/또는 장치들 각각에 대한 원하는 정보를 제공하는 데 사용될 수 있다. 컴퓨팅 장치는 브로커(705)로부터 장치 정보를 수신하고 그 정보를 사용자에게 디스플레이할 수 있다.
데이터가 데이터 소스들(701, 702) 중 하나 이상의 데이터 소스로부터 브로커(705)에 수신될 수 있다. 데이터가 또한 네트워크에의 장치들의 등록 및 장치들의 기능 레벨에 기초하여 브로커(705)에 의해 장치들에 제공될 수 있다. 한 일례에서, 주식 정보가 데이터 소스(701)로부터 브로커(705)에 수신된다. 커피 메이커(717)가 텍스트 데이터를 제시할 수 있을 뿐인 레벨 1 장치(즉, 이 일례에서 하위 기능 레벨)로서 네트워크에 등록된다. 따라서, 사용자는 커피 메이커(717)를 사용하는 동안 주식 시세를 검사할 수 있지만, 주식 시세와 관련하여 커피 메이커(717) 상에서 보다 복잡한 기능들을 수행하지 못할 수도 있다. 브로커(705)는 커피 메이커(717) 상의 시세 표시기에 디스플레이될 레벨 1 기능의 주식 시세 데이터를 전송한다. 그에 부가하여, 상위 기능 레벨을 갖는 다른 장치도 역시 주식 시세 정보를 수신하는 것으로 네트워크에 등록될 수 있다.
예를 들어, 랩톱(716)은 상위 기능 레벨(예를 들어, 이 일례에서, 레벨 7)을 가질 수 있으며 또한 주식 시세 정보도 요청할 수 있다. 랩톱(716)이 이 일례에서 상위 기능 레벨을 갖기 때문에, 주식 시세 정보가 [브로커(705)로부터] 커피 메이커(717) 상에 주식 시세 정보를 디스플레이하는 것과 비교하여 부가적인 특징들을 갖는 랩톱 상에 제시될 수 있다. 예를 들어, 주식 시세 정보가 컬러로, 다수의 그래픽 요소들 또는 아이콘들과 함께, 및/또는 브라우저에 제시될 수 있다. 또한, 사용자들은 주식 시세와 관련하여 명령들 또는 데이터를 랩톱(716)에 입력할 수 있다(예를 들어, 사용자들은 주식 거래를 할 수 있거나 주식 시세 표시기와 연관된 회사들에 관한 부가적인 정보를 검사할 수 있다). 따라서, 이 일례에서, 서로 다른 기능 레벨들을 갖는 네트워크 내의 서로 다른 장치들이 기능 레벨에 기초하여 데이터를 수신할 수 있다. 상위 기능 레벨들을 갖는 장치들이, 예를 들어, 하위 기능 레벨들을 갖는 장치들과 비교하여 더 많은 양의 데이터 또는 더 복잡한 포맷의 데이터를 수신할 수 있다.
본 발명의 측면들이 많은 형태들 및 실시예들을 가질 수 있다는 것을 잘 알 것이다. 본 명세서에 나타낸 실시예들은 본 발명을 제한하는 것이 아니라 설명하기 위한 것이며, 본 발명의 사상 또는 범위를 벗어나지 않고 변형들이 행해질 수 있다는 것을 잘 알 것이다. 예시적인 실시예들이 도시되고 기술되어 있지만, 이상의 개시 내용에 광범위한 수정, 변경 및 치환이 의도되어 있으며, 어떤 경우들에, 어떤 특징들이 그에 대응하여 다른 특징들을 사용하는 일 없이 이용될 수 있다. 따라서, 첨부된 청구항들이 광의로 또한 본 설명의 범위에 부합되는 방식으로 해석되어야 한다는 것을 잘 알 것이다.

Claims (20)

  1. 클라이언트(104(1)) 및 이 클라이언트(104(1))의 기능 레벨(120(1))을 식별해주는 입력을 수신하는 단계, 및
    네트워크를 통해 전달될, 상기 클라이언트(104(1))와 특정의 가정 간의 연관관계 및 상기 클라이언트(104(1))의 기능 레벨을 나타내는 통신을 형성하는 단계를 포함하는 방법.
  2. 제1항에 있어서, 상기 입력이 상기 수신하는 단계 및 상기 형성하는 단계를 수행하는 다른 클라이언트 장치에 의해 출력되는 사용자 인터페이스를 통해 수신되는 것인 방법.
  3. 제1항에 있어서, 상기 특정의 가정이 하나 이상의 IP(Internet Protocol) 주소들을 사용함으로써 식별되는 것인 방법.
  4. 제1항에 있어서, 상기 입력이 상기 수신하는 단계 및 상기 형성하는 단계를 수행하는 클라이언트에 의해 전송되는 폴링(poll)에 응답하여 수신되는 것인 방법.
  5. 제1항에 있어서, 상기 통신이 사용자에 대응하는 인증 데이터를 더 포함하는 것인 방법.
  6. 제5항에 있어서, 상기 인증 데이터가 인증 서비스에 의해 처리되도록 구성되어 있고,
    상기 인증 서비스에 의한 상기 인증 데이터의 인증이 상기 인증 데이터를 재전송하지 않고 복수의 웹 사이트들에 대한 액세스를 가능하게 해주는 것인 방법.
  7. 제1항에 있어서, 상기 특정의 가정이 복수의 상기 클라이언트들과 연관되어 있고,
    적어도 하나의 상기 클라이언트가 다른 상기 클라이언트의 기능 레벨과 다른 기능 레벨을 갖는 것인 방법.
  8. 제1항에 있어서, 상기 클라이언트에 대한 상기 통신에 나타내어진 상기 기능 레벨에 대응하는 컨텐츠를 상기 클라이언트에 의해 획득하는 단계를 더 포함하는 방법.
  9. 제8항에 있어서, 상기 획득하는 단계가 상기 수신하는 단계 및 상기 형성하는 단계를 수행하는 장치를 통한 상기 컨텐츠의 배달 없이 수행되는 것인 방법.
  10. 제8항에 있어서, 상기 획득된 컨텐츠가 상기 클라이언트의 기능에 의해 지원되는 상기 컨텐츠의 하나 이상의 부분들을 포함하도록 구성되어 있고 또 상기 클라이언트의 기능에 의해 지원되지 않는 적어도 하나의 부분을 포함하지 않는 것인 방법.
  11. 제1항에 있어서, 상기 기능 레벨이 복수의 상기 레벨들을 갖는 계층구조 내에 포함되어 있는 것인 방법.
  12. 제11항에 있어서, 각각의 상기 연속적인 레벨이 이전의 상기 레벨의 기능 및 이 이전의 상기 레벨에 의해 지원되지 않는 적어도 하나의 기능 항목을 지원하도록 상기 계층구조가 배열되어 있는 것인 방법.
  13. 제11항에 있어서, 적어도 하나의 상기 레벨이 입력 장치를 갖지 않는 것에 대응하고, 다른 상기 레벨이 입력 장치를 포함하고 있는 것에 대응하는 것인 방법.
  14. 제1항에 있어서, 상기 통신이 인터넷으로서 구성된 상기 네트워크를 통해 전달되도록 형성되어 있는 것인 방법.
  15. 하나 이상의 클라이언트들(104(1))에 의해 지원되는 기능 레벨(120(1))을 결정하는 단계, 및
    상기 하나 이상의 클라이언트들(104(1))이 상기 기능 레벨에 대응하는 상기 컨텐츠의 수정을 위한 파라미터들을 사용하여 그렇지 않았으면 상기 클라이언트에 의해 출력하기에 적합하지 않을 상기 컨텐츠를 출력할 수 있도록, 컨텐츠 및 상기 파라미터들을 포함하는 통신을 형성하는 단계를 포함하는 방법.
  16. 제15항에 있어서, 상기 기능 레벨이 복수의 상기 레벨들을 갖는 계층구조 내에 포함되어 있고,
    각각의 연속적인 상기 레벨이 이전의 상기 레벨의 기능 및 이 이전의 상기 레벨에 의해 지원되지 않는 적어도 하나의 기능 항목을 지원하도록 상기 계층구조가 배열되어 있는 것인 방법.
  17. 제15항에 있어서, 상기 컨텐츠가 복수의 부분들로 형성되고, 각각의 상기 부분이 하나 이상의 서로 다른 기능들에 대응하며,
    상기 파라미터들이 상기 부분들 중 어느 부분이 상기 기능들 중 어느 기능에 대응하는지를 나타내는 것인 방법.
  18. 명령어들을 포함하는 하나 이상의 컴퓨터-판독가능 매체(126)로서,
    상기 명령어들이,
    클라이언트의 식별자를 복수의 다른 클라이언트들의 복수의 다른 식별자들을 갖는 특정의 가정과 연관시키고 - 각각의 상기 클라이언트는 또한 계층구조의 대응하는 레벨의 표시와 연관되어 있고,
    상기 계층구조는, 각각의 상기 레벨이
    이전의 상기 레벨의 기능을 지원하고,
    이 이전의 상기 레벨에 의해 지원되지 않는 기능을 포함하도록 차례대로 연속하여 정렬되게 배열되어 있음 -,
    상기 계층구조의 상기 대응하는 레벨에 따라 복수의 상기 클라이언트들로 배달하기 위한 컨텐츠를 형성하도록 실행가능한 것인 하나 이상의 컴퓨터-판독가능 매체.
  19. 제18항에 있어서, 상기 명령어들이 또한 상기 컨텐츠를 부분들로 형성하도록 실행가능하며, 각각의 상기 부분이 상기 계층구조의 대응하는 상기 레벨을 갖는 것인 하나 이상의 컴퓨터-판독가능 매체.
  20. 제18항에 있어서, 상기 기능이 하드웨어 자원들에 적어도 부분적으로 기초하는 것인 하나 이상의 컴퓨터-판독가능 매체.
KR1020107018439A 2008-02-26 2009-01-23 기능 레벨들을 어드레싱하는 컨텐츠 관리 KR101597843B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/037,920 2008-02-26
US12/037,920 US9264669B2 (en) 2008-02-26 2008-02-26 Content management that addresses levels of functionality

Publications (2)

Publication Number Publication Date
KR20100116626A true KR20100116626A (ko) 2010-11-01
KR101597843B1 KR101597843B1 (ko) 2016-03-07

Family

ID=41016668

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107018439A KR101597843B1 (ko) 2008-02-26 2009-01-23 기능 레벨들을 어드레싱하는 컨텐츠 관리

Country Status (8)

Country Link
US (1) US9264669B2 (ko)
EP (1) EP2255469B1 (ko)
JP (1) JP5722633B2 (ko)
KR (1) KR101597843B1 (ko)
CN (1) CN101953101B (ko)
RU (1) RU2010135577A (ko)
TW (1) TWI457787B (ko)
WO (1) WO2009108425A2 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8358909B2 (en) * 2008-02-26 2013-01-22 Microsoft Corporation Coordinated output of messages and content
US8301618B2 (en) 2008-02-26 2012-10-30 Microsoft Corporation Techniques to consume content and metadata
US8938674B2 (en) * 2009-04-20 2015-01-20 Adobe Systems Incorporated Managing media player sound output
CN102739927A (zh) * 2011-09-23 2012-10-17 新奥特(北京)视频技术有限公司 一种媒体资源制作的方法及系统
CN103631829A (zh) * 2012-08-28 2014-03-12 阿里巴巴集团控股有限公司 一种网页访问请求的响应方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040148292A1 (en) * 2003-01-27 2004-07-29 Clemens Ian Kyle Method of adaptive data transmission
US20050232284A1 (en) * 2004-04-16 2005-10-20 Jeyhan Karaoguz Providing automatic format conversion via an access gateway in a home
WO2007121117A2 (en) * 2006-04-11 2007-10-25 Honeywell International Inc. Apparatus and mehtod for procedural operations development and distribution

Family Cites Families (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5220420A (en) 1990-09-28 1993-06-15 Inteletext Systems, Inc. Interactive home information system for distributing compressed television programming
JPH0991232A (ja) 1995-09-27 1997-04-04 Nippon Telegr & Teleph Corp <Ntt> リソース変更通知方法
US20030093790A1 (en) * 2000-03-28 2003-05-15 Logan James D. Audio and video program recording, editing and playback systems using metadata
US5867153A (en) * 1996-10-30 1999-02-02 Transaction Technology, Inc. Method and system for automatically harmonizing access to a software application program via different access devices
US9113122B2 (en) 1997-04-21 2015-08-18 Rovi Guides, Inc. Method and apparatus for time-shifting video and text in a text-enhanced television program
US6490000B1 (en) 1997-12-24 2002-12-03 Echostar Communications Corporation Method and apparatus for time shifting and controlling broadcast audio and video signals
US6237049B1 (en) * 1998-01-06 2001-05-22 Sony Corporation Of Japan Method and system for defining and discovering proxy functionality on a distributed audio video network
JP3805985B2 (ja) 1999-02-18 2006-08-09 株式会社東芝 ストリームデータの情報記憶媒体、その記録方法、再生方法、記録装置および再生装置
US6553345B1 (en) 1999-08-26 2003-04-22 Matsushita Electric Industrial Co., Ltd. Universal remote control allowing natural language modality for television and multimedia searches and requests
US6510210B1 (en) 1999-12-14 2003-01-21 Nortel Networks Limited Communication enabled consumer products and controller
US6650248B1 (en) 1999-12-22 2003-11-18 Thomson Licensing, S.A. Programming a universal remote control device
US6862741B1 (en) 1999-12-22 2005-03-01 Gateway, Inc. System and method for displaying event related electronic program guide data on intelligent remote devices
US20020059637A1 (en) * 2000-01-14 2002-05-16 Rakib Selim Shlomo Home gateway for video and data distribution from various types of headend facilities and including digital video recording functions
JP2001211443A (ja) 2000-01-27 2001-08-03 Mega Chips Corp 情報配信システム
US20030163832A1 (en) 2000-06-26 2003-08-28 Yossi Tsuria Time shifted interactive television
JP2002108870A (ja) 2000-09-27 2002-04-12 Oki Electric Ind Co Ltd 情報処理システムおよび情報処理方法
JP2002118566A (ja) 2000-10-06 2002-04-19 Warp Scoop:Kk サーバ化された機器の同期化によるネットワーク構成方法、遠隔操作方法及びソリューション
US20020095687A1 (en) 2001-01-16 2002-07-18 Shintani Peter Rae Embedded content caching for interactive television
US7668928B2 (en) * 2001-03-13 2010-02-23 Goldpocket Interactive Inc. System and method for recording and playing back interactive content during a broadcast event
US20030039465A1 (en) * 2001-04-20 2003-02-27 France Telecom Research And Development L.L.C. Systems for selectively associating cues with stored video frames and methods of operating the same
JP2002328831A (ja) 2001-04-27 2002-11-15 Sharp Corp コンテンツサーバ装置、コンテンツ登録装置、コンテンツ変換システムおよびプログラム
US7146632B2 (en) * 2001-06-08 2006-12-05 Digeo, Inc. Interactive information aggregator for an interactive television system
US6741684B2 (en) 2001-06-26 2004-05-25 Koninklijke Philips Electronics N.V. Interactive TV using remote control with built-in phone
US20030014496A1 (en) * 2001-06-27 2003-01-16 Spencer Donald J. Closed-loop delivery system
EP1276318A1 (en) 2001-07-13 2003-01-15 Tv-Lab S.p.a. Method and apparatus for transmitting, receiving and displaying information in an interactive television system
US6986148B2 (en) * 2001-07-17 2006-01-10 Appforge, Inc. Methods and systems for providing platform-independent shared software components for mobile devices
ES2358889T3 (es) * 2001-08-02 2011-05-16 Intellocity Usa, Inc. Alteraciones visuales posproducción.
US20030034957A1 (en) 2001-08-17 2003-02-20 Dubil Thomas James Method and system for displaying information related to a television program on a remote control device
US7167639B2 (en) 2001-08-31 2007-01-23 Stmicroelectronics, Inc. Digital video recorder using circular file management and method of operation
US20030097664A1 (en) 2001-11-21 2003-05-22 James Meyers Method and system for interactive movie scene television
ATE446649T1 (de) 2002-03-07 2009-11-15 Nokia Corp Digitale aufzeichnungsverfahren
TW591918B (en) 2002-04-15 2004-06-11 Auto Tools Group Co Ltd Interpreter apparatus over an IP network
JP2004080382A (ja) 2002-08-19 2004-03-11 Sony Corp 電子機器制御装置および電子機器制御方法
US7113776B2 (en) * 2002-08-30 2006-09-26 Qualcomm Inc. System and method for application and application metadata filtering based on wireless device capabilities
TW200408227A (en) 2002-10-15 2004-05-16 Matsushita Electric Ind Co Ltd Digital item adaptation system via URL
JP2004235739A (ja) 2003-01-28 2004-08-19 Sony Corp 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
KR100390172B1 (en) * 2003-03-22 2003-07-04 Knowledge Info Net Service Inc Method and system for controlling internet contents providing service using redirection method
KR100501125B1 (ko) 2003-03-28 2005-07-18 에스케이 텔레콤주식회사 인터넷 컨텐츠의 권한 검증 시스템 및 그 방법
JP4271483B2 (ja) 2003-04-24 2009-06-03 ソニー株式会社 コンテンツ処理装置およびコンテンツ処理方法
JP4392190B2 (ja) 2003-05-01 2009-12-24 日本放送協会 データコンテンツ送信装置およびデータコンテンツ送信プログラム
US7240327B2 (en) * 2003-06-04 2007-07-03 Sap Ag Cross-platform development for devices with heterogeneous capabilities
US7349689B2 (en) 2003-07-01 2008-03-25 Microsoft Corporation Communications device processor peripheral
US8291465B2 (en) * 2003-10-06 2012-10-16 Lester Sussman Television system to extract TV advertisement contact data and to store contact data in a TV remote control
US9131272B2 (en) * 2003-11-04 2015-09-08 Universal Electronics Inc. System and method for saving and recalling state data for media and home appliances
US20050149987A1 (en) 2003-12-24 2005-07-07 Gilles Boccon-Gibod Television viewing communities
KR20060123559A (ko) * 2004-02-17 2006-12-01 코닌클리케 필립스 일렉트로닉스 엔.브이. 콘텐트 분배를 위한 시스템, 수신기, 방법 및 프로그램
US7594245B2 (en) 2004-03-04 2009-09-22 Sharp Laboratories Of America, Inc. Networked video devices
US20050220439A1 (en) * 2004-03-19 2005-10-06 Carton Owen A Interactive multimedia system and method
EP1738542B1 (en) 2004-03-26 2013-03-13 Paganini Foundation, L.L.C System and method for scalable multifunctional network communication
US7317928B2 (en) * 2004-03-26 2008-01-08 Microsoft Corporation System and method for exposing instant messenger presence information on a mobile device
US7346370B2 (en) * 2004-04-29 2008-03-18 Cellport Systems, Inc. Enabling interoperability between distributed devices using different communication link technologies
JP2006031428A (ja) 2004-07-16 2006-02-02 Fujitsu Ten Ltd 情報処理システム、情報端末装置、及び情報処理装置
JP4438946B2 (ja) 2004-09-08 2010-03-24 日本電気株式会社 付加機能制御システムおよび通信端末
US7266370B2 (en) * 2004-09-20 2007-09-04 Trilibis Inc. System and method for developing and deploying device independent applications
US20060080710A1 (en) 2004-09-20 2006-04-13 Carthern Taylor C (Internet multimedia) Taylor made TV channel navigation system
CA2588630C (en) * 2004-11-19 2013-08-20 Tivo Inc. Method and apparatus for secure transfer of previously broadcasted content
US20060259930A1 (en) * 2005-05-10 2006-11-16 Rothschild Leigh M System and method for obtaining information on digital media content
JP4577085B2 (ja) * 2005-05-17 2010-11-10 ソニー株式会社 映像処理装置、映像処理方法
GB2430101A (en) 2005-09-09 2007-03-14 Mitsubishi Electric Inf Tech Applying metadata for video navigation
JP2007086883A (ja) 2005-09-20 2007-04-05 Konica Minolta Business Technologies Inc サーバ装置及びデータ処理システム
US7627893B2 (en) 2005-10-20 2009-12-01 International Business Machines Corporation Method and system for dynamic adjustment of computer security based on network activity of users
KR100813047B1 (ko) 2005-12-12 2008-03-14 엘지전자 주식회사 저장된 방송 프로그램 정보 표시방법 및 장치
US8458753B2 (en) * 2006-02-27 2013-06-04 Time Warner Cable Enterprises Llc Methods and apparatus for device capabilities discovery and utilization within a content-based network
US8195650B2 (en) * 2007-02-28 2012-06-05 Samsung Electronics Co., Ltd. Method and system for providing information using a supplementary device
US20070294337A1 (en) * 2006-03-31 2007-12-20 Maria Gaos Client-side information processing system, apparatus and methods
JP2007286908A (ja) * 2006-04-17 2007-11-01 Canon Inc 管理システム及びその制御方法、コンピュータプログラム、記憶媒体
KR100703567B1 (ko) 2006-06-05 2007-04-09 주식회사인티마햅 온라인 컨텐츠 접근 제어 시스템 및 방법
TW200824451A (en) * 2006-11-27 2008-06-01 Cyberlink Corp Method and related system capable of notifying and buffering predetermined events in a program
WO2008082441A1 (en) * 2006-12-29 2008-07-10 Prodea Systems, Inc. Display inserts, overlays, and graphical user interfaces for multimedia systems
US20080279453A1 (en) 2007-05-08 2008-11-13 Candelore Brant L OCR enabled hand-held device
GB2442818B (en) * 2007-06-11 2008-11-05 Cvon Innovations Ltd Methodologies and systems for determining mobile device capabilities
US8407744B2 (en) * 2007-06-19 2013-03-26 Verizon Patent And Licensing Inc. Snapshot recognition for TV
US9535988B2 (en) * 2007-12-21 2017-01-03 Yahoo! Inc. Blog-based video summarization
US8358909B2 (en) * 2008-02-26 2013-01-22 Microsoft Corporation Coordinated output of messages and content
US8301618B2 (en) * 2008-02-26 2012-10-30 Microsoft Corporation Techniques to consume content and metadata

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040148292A1 (en) * 2003-01-27 2004-07-29 Clemens Ian Kyle Method of adaptive data transmission
US20050232284A1 (en) * 2004-04-16 2005-10-20 Jeyhan Karaoguz Providing automatic format conversion via an access gateway in a home
WO2007121117A2 (en) * 2006-04-11 2007-10-25 Honeywell International Inc. Apparatus and mehtod for procedural operations development and distribution

Also Published As

Publication number Publication date
RU2010135577A (ru) 2012-02-27
EP2255469A2 (en) 2010-12-01
WO2009108425A3 (en) 2009-10-29
US20100011050A1 (en) 2010-01-14
WO2009108425A2 (en) 2009-09-03
TW200941282A (en) 2009-10-01
CN101953101A (zh) 2011-01-19
TWI457787B (zh) 2014-10-21
EP2255469A4 (en) 2013-09-04
JP2011513814A (ja) 2011-04-28
KR101597843B1 (ko) 2016-03-07
CN101953101B (zh) 2013-09-11
EP2255469B1 (en) 2017-05-10
JP5722633B2 (ja) 2015-05-27
US9264669B2 (en) 2016-02-16

Similar Documents

Publication Publication Date Title
US9405845B2 (en) Adaptable layouts for social feeds
US9424018B2 (en) Filtering and promoting application store applications
EP3107267B1 (en) Techniques to push content to a connected device
JP5265365B2 (ja) カスタマイズされたチャネル情報を提供し、提示するための装置および方法
US20130124672A1 (en) System and Method for Delivering Media Assets in a Cloud Environment
US20110307631A1 (en) System and method for providing asynchronous data communication in a networked environment
CN103379370A (zh) 智能型电视系统、智能型电视、移动装置及输入操作方法
WO2011146507A2 (en) Digital media renderer for a content system
US20080141298A1 (en) Remote media detection and presentation
JPWO2005096165A1 (ja) ポータルシステム
KR101597843B1 (ko) 기능 레벨들을 어드레싱하는 컨텐츠 관리
CN105704562A (zh) 一种网络电视云服务平台的多版本兼容方法及装置
US8966007B2 (en) Method and apparatus for providing web contents
US10395266B2 (en) System and method for providing benefits based on MO service
US8977246B2 (en) Method and system for providing seamless service
KR20130065759A (ko) 스케일러블 어플리케이션 서비스 시스템에서의 사용자 맞춤형 광고/뉴스의 제공 방법
KR101418038B1 (ko) 웹 콘텐츠를 제공하는 방법 및 장치
KR20210009990A (ko) 이동통신 단말기의 어플리케이션 데이터 연동을 이용한 개인비서 시스템
KR101841164B1 (ko) 스케일러블 어플리케이션 서비스를 위한 저작 장치 및 방법
CN113569089A (zh) 信息处理方法、装置、服务器、设备、系统及存储介质
CN117348725A (zh) 基于虚拟现实设备处理多媒体数据的方法及装置
KR20110087542A (ko) 개인화된 컨텐츠 메타 데이터를 이용한 컨텐츠 서비스 시스템 및 방법
KR20090054712A (ko) 컨텐츠 정보 검증 시스템 및 방법
KR20120105591A (ko) 웹 콘텐츠를 제공하는 방법 및 장치
KR20120082098A (ko) 모바일 기기를 이용한 생방송 광고의 서비스 방법 및 그 시스템

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
N231 Notification of change of applicant
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190116

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200115

Year of fee payment: 5