KR20080107397A - 배포된 컨텐츠에 대한 보조 디스플레이 가젯에 관한 방법, 시스템 및 컴퓨터 판독가능 매체 - Google Patents

배포된 컨텐츠에 대한 보조 디스플레이 가젯에 관한 방법, 시스템 및 컴퓨터 판독가능 매체 Download PDF

Info

Publication number
KR20080107397A
KR20080107397A KR1020087021158A KR20087021158A KR20080107397A KR 20080107397 A KR20080107397 A KR 20080107397A KR 1020087021158 A KR1020087021158 A KR 1020087021158A KR 20087021158 A KR20087021158 A KR 20087021158A KR 20080107397 A KR20080107397 A KR 20080107397A
Authority
KR
South Korea
Prior art keywords
gadget
data
content
rss
metadata
Prior art date
Application number
KR1020087021158A
Other languages
English (en)
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 KR20080107397A publication Critical patent/KR20080107397A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

배포 소스(distribution source)로부터 데이터(예를 들어, RSS 피드)를 수신하는 주 호스트 컴퓨터 시스템(main host computer system) 상에 특정의 가젯 프로그램(gadget program)을 설치(예를 들어, 생성)하는 기술 - 피드 데이터가 가젯을 설치하는 데 필요한 정보를 포함하고 있음 - 이 기재되어 있다. 가젯은, 일단 설치되면, 그의 대응하는 데이터 소스로부터 컨텐츠를 수신하고 보조 디스플레이 장치 상에 디스플레이하기 위해 컨텐츠를 제공하는 데 사용된다. 피드 데이터는 가젯-관련 인클로저(gadget-related enclosure) 등의 메타데이터를 포함할 수 있으며, 그로부터 설치 파일(installer)은 메타데이터에 대응하는 정보를 레지스트리 등에 등록(register)하고 가젯을 하나 이상의 특정의 보조 디스플레이와 연관시킬 수 있다. 메타데이터를 처리함으로써, 다른 가젯이 설치되고 이어서 대응하는 데이터 소스로부터의 컨텐츠 데이터를 핸들링하여 컨텐츠를 보조 디스플레이 상에 렌더링하기 위해 필요에 따라 실행된다.
가젯, 컨텐츠 배포, 메타데이터, 인클로저, RSS

Description

배포된 컨텐츠에 대한 보조 디스플레이 가젯에 관한 방법, 시스템 및 컴퓨터 판독가능 매체 {AUXILIARY DISPLAY GADGET FOR DISTRIBUTED CONTENT}
현재의 (예를 들어, Windows
Figure 112008061494589-PCT00001
Vista™-기반) 컴퓨터 시스템에서, 사용자는 주 호스트 컴퓨터 시스템(main host computer system)에 연결되어 있거나 그에 통합되어 있는 작은 보조 디스플레이 장치(auxiliary display device) 상에서 선택된 컨텐츠를 볼 수 있고 일반적으로 그 컨텐츠와 상호작용할 수 있다. 이를 위해, 보조 디스플레이 화면은, 운영 체제-제공 플랫폼(보조 디스플레이 플랫폼 또는 Windows
Figure 112008061494589-PCT00002
SideShow™ 플랫폼이라고 함)과 함께, 개발자 및 저작자가 사용자에게 컨텐츠를 제공할 수 있게 해준다. 이것에 의해 사용자는 주 호스트 컴퓨터 시스템이 감소된 전력 상태(예를 들어, ACPI S3 슬립 상태)에 있거나 심지어 꺼져 있을 때에도 컨텐츠를 볼 수 있게 된다.
디스플레이하기 위한 데이터를 제공하기 위해, 보조 디스플레이 플랫폼은 가젯을 사용하며, 이 가젯은 주 호스트 프로그램 상에서 실행되고 다른 애플리케이션 프로그램 또는 데이터 소스로부터 컨텐츠를 획득 및 처리하는 작은 플러그-인 유형 컴퓨터 프로그램을 포함한다. 대부분의 시나리오에서, 가젯은 사전-설치된 독점적 프로그램(pre-installed, proprietary program)으로서, 가젯-제공 컨텐츠를 사용자의 퍼스널 컴퓨터 상에서 로컬적으로 이용가능한 것으로 제한한다.
이 요약은 이하에서 상세한 설명에 더 기술되는 대표적인 개념들 중 선택된 것을 간략화된 형태로 소개하기 위해 제공된 것이다. 이 요약은 청구된 발명 대상의 주요 특징 또는 필수적인 특징들을 확인하기 위한 것이 아니며, 청구된 발명 대상의 범위를 제한하는 방식으로 사용되기 위한 것도 아니다.
간략히 말하면, 본 명세서에 기술된 발명 대상의 다양한 측면은 하나 이상의 보조 디스플레이 장치에 연결되어 있고 또 RSS 피드(RSS feed) 등의 소스로부터 수신되는 데이터를 처리하는 컴포넌트를 포함하는 주 호스트 컴퓨터 시스템에 관한 것이다. 이 데이터는 소스 데이터와 연관된 컨텐츠를 핸들링하기 위한 정보에 대응하는 메타데이터를 포함한다. 이 메타데이터는 가젯이 컨텐츠를 핸들링할 수 있게 해주는 데 사용되며, 컨텐츠를 핸들링하는 것은 컨텐츠의 적어도 일부를 (예를 들어, 보조 장치에서 소비하기에 적합한 형식으로) 보조 디스플레이 플랫폼에 제공하는 것을 포함한다. 가젯이 컨텐츠를 핸들링할 수 있게 해주는 것은 필요한 경우, 예를 들어, 메타데이터에 대응하는 정보를 시스템 레지스트리에 기록함으로써 가젯을 설치하는 것, 및 가젯을 로딩 및 실행하는 것을 포함한다.
가젯이 수신된 데이터를 획득하고 그의 메타데이터를 처리하게 함으로써, 수신된 데이터와 연관된 컨텐츠를 핸들링할 수 있는 다른 가젯이 (필요에 따라) 설치될 수 있고, 이어서 그 다른 가젯에 대응하는 데이터 소스로부터 컨텐츠를 수신하기 위해 실행될 수 있다. 이 다른 가젯은 이어서 보조 디스플레이 장치에서 소비하기 위한 컨텐츠의 적어도 일부를 표현하는 데이터를 출력하며, 이는 소비하기 위해 컨텐츠를 한 형식에서 다른 형식으로 변환하는 것을 포함할 수 있다. 또한, 제2 가젯이 그 자신의 데이터 구독(data subscription)을 핸들링하게 하기 보다는, RSS 가젯이 가상 가젯들을 생성하여 그 RSS 가젯들이 소스로부터 컨텐츠를 수신하고 이 컨텐츠를 별도의 "가상" 가젯의 형태로 디스플레이하도록 하는 것도 가능하다.
발명 대상의 측면들은 데이터 배포 소스로부터 배포된 데이터를 수신하는 플랫폼(예를 들어, RSS 플랫폼)을 갖는 시스템 등의 시스템에서 구현될 수 있다. 플랫폼에 연결되어 있는 배포(예를 들어, RSS) 가젯은 배포된 데이터를 처리하고, 필요한 경우, 배포 가젯과 연관되어 있는 설치 파일 메카니즘(installer mechanism)은 가젯-관련 정보를 제공한 특정의 데이터 소스에 대해 필요한 특정의 가젯을 설치할 수 있다. 새로 설치된 특정의 가젯은 특정의 데이터 소스로부터 수신된 컨텐츠를 보조 디스플레이 플랫폼에 제공한다.
도면과 관련하여 살펴볼 때 이하의 상세한 설명으로부터 다른 이점들이 명백하게 될 수 있다.
도 1은 본 발명의 다양한 측면들이 구현될 수 있는 범용 컴퓨팅 환경의 예시적인 일례를 나타낸 도면.
도 2는 피드 메타데이터(feed metadata)로부터 생성된 가젯을 통해 RSS 가젯을 핸들링하는 예시적인 컴포넌트를 전반적으로 나타낸 블록도.
도 3은 RSS 데이터가 보조 디스플레이 장치에 피드되는 예시적인 구현을 전 반적으로 나타낸 블록도.
도 4는 RSS 피드로부터의 컨텐츠를 핸들링하기 위해 생성 또는 로딩되어 실행되는 가젯을 나타낸 도면.
도 5는 가젯이 RSS 소스로부터의 RSS 컨텐츠를 핸들링할 수 있게 해주기 위해 RSS 데이터를 처리하는 예시적인 단계들을 전반적으로 나타낸 흐름도.
도 6은 RSS 소스로부터의 RSS 컨텐츠를 핸들링할 수 있게 된 경우 가젯에 의해 수행되는 예시적인 단계들을 전반적으로 나타낸 흐름도.
유사한 참조 번호가 유사한 구성요소를 나타내는 첨부 도면에, 본 발명이 제한이 아닌 예로서 도시되어 있다.
도 1은 본 발명이 구현될 수 있는 적당한 컴퓨팅 시스템 환경(100)의 일례를 나타낸 것이다. 컴퓨팅 시스템 환경(100)은 적당한 컴퓨팅 환경의 일례에 불과하며, 본 발명의 사용 또는 기능성의 범위에 관한 어떤 제한을 암시하기 위한 것이 아니다. 또한, 컴퓨팅 환경(100)은 예시적인 운영 환경(100)에 도시된 컴포넌트들 중 임의의 하나 또는 그 컴포넌트들의 임의의 조합과 관련하여 어떤 의존성 또는 요구사항을 갖는 것으로 해석되어서도 안된다.
본 발명은 많은 기타 범용 또는 특수 목적의 컴퓨팅 시스템 환경 또는 구성에서 동작할 수 있다. 본 발명에서 사용하는 데 적합할 수 있는 잘 알려진 컴퓨팅 시스템, 환경 및/또는 구성의 예로는 퍼스널 컴퓨터, 서버 컴퓨터, 핸드-헬드 또는 랩톱 장치, 태블릿 장치, 멀티프로세서 시스템, 마이크로프로세서 기반 시스템, 셋 톱 박스, 프로그램가능한 가전제품, 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 상기 시스템들이나 장치들 중 임의의 것을 포함하는 분산 컴퓨팅 환경, 기타 등등이 있지만 이에 제한되는 것은 아니다.
본 발명은 일반적으로 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터 실행가능 명령어와 관련하여 기술될 수 있다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 등을 포함한다. 본 발명은 또한 통신 네트워크를 통해 연결되어 있는 원격 처리 장치들에 의해 태스크가 수행되는 분산 컴퓨팅 환경에서 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 메모리 저장 장치를 비롯한 로컬 및/또는 원격 컴퓨터 저장 매체에 위치할 수 있다.
도 1을 참조하면, 본 발명을 구현하는 예시적인 시스템은 컴퓨터(110) 형태의 범용 컴퓨팅 장치를 포함한다. 컴퓨터(110)의 컴포넌트들은 처리 장치(120), 시스템 메모리(130), 및 시스템 메모리를 비롯한 각종 시스템 컴포넌트들을 처리 장치(120)에 연결시키는 시스템 버스(121)를 포함할 수 있지만 이에 제한되는 것은 아니다. 시스템 버스(121)는 메모리 버스 또는 메모리 컨트롤러, 주변 장치 버스, 및 각종 버스 아키텍처 중 임의의 것을 이용하는 로컬 버스를 비롯한 몇몇 유형의 버스 구조 중 어느 것이라도 될 수 있다. 예로서, 이러한 아키텍처는 ISA(industry standard architecture) 버스, MCA(micro channel architecture) 버스, EISA(Enhanced ISA) 버스, VESA(video electronics standard association) 로컬 버스, 그리고 메자닌 버스(mezzanine bus)로도 알려진 PCI(peripheral component interconnect) 버스 등을 포함하지만 이에 제한되는 것은 아니다.
컴퓨터(110)는 통상적으로 각종 컴퓨터 판독가능 매체를 포함한다. 컴퓨터(110)에 의해 액세스 가능한 매체는 그 어떤 것이든지 컴퓨터 판독가능 매체가 될 수 있고, 이러한 컴퓨터 판독가능 매체는 휘발성 및 비휘발성 매체, 이동식 및 비이동식 매체 둘다를 포함한다. 예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함하지만 이에 제한되는 것은 아니다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보를 저장하는 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 기타 광 디스크 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 컴퓨터(110)에 의해 액세스될 수 있고 원하는 정보를 저장하는 데 사용될 수 있는 임의의 기타 매체를 포함하지만 이에 제한되는 것은 아니다. 통신 매체는 통상적으로 반송파(carrier wave) 또는 기타 전송 메커니즘(transport mechanism)과 같은 피변조 데이터 신호(modulated data signal)에 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터를 구현하고 모든 정보 전달 매체를 포함한다. "피변조 데이터 신호"라는 용어는, 신호 내에 정보를 인코딩하도록 그 신호의 특성들 중 하나 이상을 설정 또는 변경시킨 신호를 의미한다. 예로서, 통신 매체는 유선 네트워크 또는 직접 배선 접속(direct-wired connection)과 같은 유선 매체, 그리고 음향, RF, 적외선 및 기타 무선 매체와 같은 무선 매체 를 포함하지만 이에 한정되지 않는다. 상술된 매체들의 모든 조합이 또한 컴퓨터 판독가능 매체의 영역 안에 포함되는 것으로 한다.
시스템 메모리(130)는 판독 전용 메모리(ROM)(131) 및 랜덤 액세스 메모리(RAM)(132)와 같은 휘발성 및/또는 비휘발성 메모리 형태의 컴퓨터 저장 매체를 포함한다. 시동 중과 같은 때에, 컴퓨터(110) 내의 구성요소들 사이의 정보 전송을 돕는 기본 루틴을 포함하는 기본 입/출력 시스템(BIOS)(133)은 통상적으로 ROM(131)에 저장되어 있다. RAM(132)은 통상적으로 처리 장치(120)가 즉시 액세스 할 수 있고 및/또는 현재 동작시키고 있는 데이터 및/또는 프로그램 모듈을 포함한다. 예로서, 도 1은 운영 체제(134), 애플리케이션 프로그램(135), 기타 프로그램 모듈(136) 및 프로그램 데이터(137)를 도시하고 있지만 이에 제한되는 것은 아니다.
컴퓨터(110)는 또한 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 저장매체를 포함할 수 있다. 단지 예로서, 도 1은 비이동식·비휘발성 자기 매체에 기록을 하거나 그로부터 판독을 하는 하드 디스크 드라이브(141), 이동식·비휘발성 자기 디스크(152)에 기록을 하거나 그로부터 판독을 하는 자기 디스크 드라이브(151), 및 CD-ROM 또는 기타 광 매체 등의 이동식·비휘발성 광 디스크(156)에 기록을 하거나 그로부터 판독을 하는 광 디스크 드라이브(155)를 도시하고 있다. 예시적인 운영 환경에서 사용될 수 있는 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 저장 매체로는 자기 테이프 카세트, 플래시 메모리 카드, DVD, 디지털 비디오 테이프, 고상(solid state) RAM, 고상 ROM 등이 있지만 이에 제한되는 것은 아 니다. 하드 디스크 드라이브(141)는 통상적으로 인터페이스(140)와 같은 비이동식 메모리 인터페이스를 통해 시스템 버스(121)에 접속되고, 자기 디스크 드라이브(151) 및 광 디스크 드라이브(155)는 통상적으로 인터페이스(150)와 같은 이동식 메모리 인터페이스에 의해 시스템 버스(121)에 접속된다.
위에서 설명되고 도 1에 도시된 드라이브들 및 이들과 관련된 컴퓨터 저장 매체는, 컴퓨터(110)에 대한 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 및 기타 데이터를 저장한다. 도 1에서, 예를 들어, 하드 디스크 드라이브(141)는 운영 체제(144), 애플리케이션 프로그램(145), 기타 프로그램 모듈(146), 및 프로그램 데이터(147)를 저장하는 것으로 도시되어 있다. 여기서 주의할 점은 이들 컴포넌트가 운영 체제(134), 애플리케이션 프로그램(135), 기타 프로그램 모듈(136), 및 프로그램 데이터(137)와 동일하거나 그와 다를 수 있다는 것이다. 이에 관해, 운영 체제(144), 애플리케이션 프로그램(145), 기타 프로그램 모듈(146) 및 프로그램 데이터(147)에 다른 번호가 부여되어 있다는 것은 적어도 이들이 다른 사본(copy)이라는 것을 나타내기 위한 것이다. 사용자는 태블릿 또는 전자 디지타이저(164), 마이크(163), 키보드(162), 및 마우스, 트랙볼(trackball) 또는 터치 패드라고 통상 지칭되는 포인팅 장치(161) 등의 입력 장치를 통해 명령 및 정보를 컴퓨터(110)에 입력할 수 있다. 도 1에 도시되지 않은 다른 입력 장치로는 조이스틱, 게임 패드, 위성 안테나, 스캐너 등을 포함할 수 있다. 이들 및 기타 입력 장치는 종종 시스템 버스에 결합된 사용자 입력 인터페이스(160)를 통해 처리 장치(120)에 접속되지만, 병렬 포트, 게임 포트 또는 USB(universal serial bus) 등 의 다른 인터페이스 및 버스 구조에 의해 접속될 수도 있다. 모니터(191) 또는 다른 유형의 디스플레이 장치도 비디오 인터페이스(190) 등의 인터페이스를 통해 시스템 버스(121)에 접속될 수 있다. 모니터(191)는 또한 터치-스크린 패널, 기타 등등과 통합될 수 있다. 유의할 점은, 태블릿-유형 퍼스널 컴퓨터에서와 같이, 컴퓨팅 장치(110)가 포함되어 있는 하우징에 모니터 및/또는 터치 스크린 패널이 물리적으로 연결될 수 있다는 것이다. 그에 부가하여, 컴퓨팅 장치(110) 등의 컴퓨터는 스피커(195) 및 프린터(196) 등의 기타 주변 출력 장치를 포함할 수 있고, 이들은 출력 주변장치 인터페이스(195) 등을 통해 접속될 수 있다.
컴퓨터(110)는 원격 컴퓨터(180)와 같은 하나 이상의 원격 컴퓨터로의 논리적 접속을 사용하여 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터(180)는 퍼스널 컴퓨터, 서버, 라우터, 네트워크 PC, 피어 장치 또는 기타 통상의 네트워크 노드일 수 있고, 통상적으로 컴퓨터(110)와 관련하여 상술된 구성요소들의 대부분 또는 그 전부를 포함하지만, 도 1에는 메모리 저장 장치(181)만이 도시되어 있다. 도 1에 도시된 논리적 접속으로는 근거리 통신망(LAN)(171) 및 원거리 통신망(WAN)(173)이 있지만, 기타 네트워크를 포함할 수도 있다. 이러한 네트워킹 환경은 사무실, 전사적 컴퓨터 네트워크(enterprise-wide computer network), 인트라넷, 및 인터넷에서 일반적인 것이다.
LAN 네트워킹 환경에서 사용될 때, 컴퓨터(110)는 네트워크 인터페이스 또는 어댑터(170)를 통해 LAN(171)에 접속된다. WAN 네트워킹 환경에서 사용될 때, 컴퓨터(110)는 통상적으로 인터넷과 같은 WAN(173)을 통해 통신을 설정하기 위한 모 뎀(172) 또는 기타 수단을 포함한다. 내장형 또는 외장형일 수 있는 모뎀(172)은 사용자 입력 인터페이스(160) 또는 기타 적절한 메커니즘을 통해 시스템 버스(121)에 접속될 수 있다. 네트워크화된 환경에서, 컴퓨터(110) 또는 그의 일부와 관련하여 기술된 프로그램 모듈은 원격 메모리 저장 장치에 저장될 수 있다. 예로서, 도 1은 원격 애플리케이션 프로그램(185)이 메모리 장치(181)에 있는 것으로 도시하고 있지만 이에 제한되는 것은 아니다. 도시된 네트워크 접속이 예시적인 것이며 이 컴퓨터들 사이에 통신 링크를 설정하는 기타 수단이 사용될 수 있다는 것을 이해할 것이다.
보조 디스플레이 서브시스템(auxiliary display subsystem)(199)은, 컴퓨터 시스템의 주요 부분들이 저전력 상태에 있는 경우에도, 프로그램 컨텐츠, 시스템 상태 및 이벤트 통지 등의 데이터가 사용자에게 제공될 수 있게 해주기 위해, 사용자 인터페이스(160)를 통해 접속될 수 있다. 보조 디스플레이 서브시스템(199)은 주 처리 장치(120)가 저전력 상태에 있는 동안에 이들 시스템 간의 통신을 가능하게 해주기 위해 모뎀(172) 및/또는 네트워크 인터페이스(170)에 접속될 수 있다.
배포된 컨텐츠에 대한 보조 디스플레이 가젯
본 명세서에 기술된 기술의 다양한 측면은 주 호스트 컴퓨터 시스템에 연결된 보조 디스플레이 장치 상에 디스플레이될 컨텐츠를 획득 및 처리하는 것에 관한 것이다. 일반적으로, 본 명세서에서의 설명의 대부분은 컨텐츠가 RSS(Really Simple Syndication) 기술을 사용하여 원격 데이터 소스로부터 획득되는 특정의 일례에 관한 것이며, 여기서 RSS 기술은 일반적으로 하나 이상의 XML-기반 파일 형식 을 사용하는 웹 신디케이션/컨텐츠 배포(Web syndication/content distribution)를 말한다. RSS는 통상적으로 뉴스 웹 사이트 및 웹 로그(블로그)에서 그의 컨텐츠를 배포하기 위해 사용되지만, 마케팅, 버그 보고, 또는 주기적인 업데이트 또는 게시(publication)를 수반하는 임의의 다른 활동을 비롯한 다른 목적을 위해 사용될 수도 있다.
RSS 기술에 의해 인터넷 사용자는 웹 사이트, 통상적으로 컨텐츠를 빈번히 변경하는 웹 사이트로부터 RSS 피드를 (종종 무료로) 구독할 수 있게 된다. 일반적으로, 각각의 이러한 사이트는 요구 시에 배포할 데이터를 제공하며, 여기서 데이터는 어떤 메타데이터(종종 다른 컨텐츠에의 링크를 포함함)와 함께 컨텐츠를 포함한다. 이 데이터는 본 명세서에서 RSS 데이터 또는 RSS 피드(feed)라고 하지만 다른 상황에서는 그 대안으로서 웹 피드(web feed), RSS 스트림 또는 RSS 채널이라고도 할 수 있는는 XML 파일로서 가입자에게 전달된다. RSS 데이터는 첨부된 멀티미디어 파일을 포함할 수 있다.
그렇지만, 잘 알 것인 바와 같이, 본 명세서에 설명된 기술은 임의의 특정의 데이터 소스 및/또는 데이터 형식, 또는 심지어 RSS 기술에 제한되지 않으며, 로컬 데이터는 물론 원격 데이터에서도 사용될 수 있다.
게다가, 본 명세서에 설명된 기술은 임의의 특정 유형의 보조 장치에 한정되지 않으며, 오히려 종래에 "컴퓨터-시스템" 접속 장치(텔레비전 세트, 오디오 수신기, 오디오/비디오 레코더, 전화, 별도의 컴퓨터, 이동 통신 장치, 액츄에이터를 갖는 2차 디스플레이 화면, 손목 시계, 벽(예를 들어, 키친) 디스플레이, 디스플레이 화 면, 디지털 화상 프레임, 시계, 라디오, 미디어 플레이어, 가전 제품 장치의 주 디스플레이 내에 내장되거나 이를 사용하는 장치, 자동차, 운송 또는 기타 차량 유닛, 메인 컴퓨터 시스템의 키보드 또는 기타 입력 장치, 페이저, PDA, 기타 등등)인 장치라고 생각되지 않은 장치를 포함한다. 그 자체로서, 본 발명은 본 명세서에 기술된 일례, 구조 또는 기능으로 제한되지 않으며, 오히려 본 명세서에 기술된 일례, 구조 또는 기능 중 어느 것도 제한하는 것이 아니고, 본 발명은 일반적인 컴퓨팅 및 컨텐츠 핸들링에서 이득 및 이점을 제공하는 다양한 방식으로 사용될 수 있다.
도면 중 도 2를 참조하면, 주 컴퓨터 시스템(210)[도 1의 컴퓨터(110)에 기초한 것 등]이 인터넷(214)을 통하는 등에 의해 RSS 소스(212)로부터 데이터를 수신하는 데 사용하는 다양한 컴포넌트를 포함하는 예시적인 블록도가 도시되어 있다. 유의할 점은 데이터가 다른 대안으로서, LAN 또는 기타 WAN 접속을 통하는 등, 어떤 다른 수단을 통해 획득될 수 있거나, 파일/캐쉬/버퍼로 다운로드되는 경우와 같이 심지어 로컬 데이터 소스를 통해 획득될 수 있다는 것이다.
이하에 기술되는 바와 같이, RSS 소스(212)로부터의 데이터는 RSS 가젯(216)에서 수신된다. 일반적으로, 가젯(216)은 하나 이상의 보조 디스플레이 장치로 데이터를 전송하기 위해 보조 디스플레이 플랫폼에 등록되어 있는 주 호스트 컴퓨터 시스템 상에서 실행되는 프로그램 코드를 포함하며, 이 가젯은 제어판(control panel)으로부터 인에이블 또는 디스에이블될 수 있다.
가젯(216)은 보조 장치(220)[통상적으로 보조 장치(220) 상의 디스플레이]에 의한 컨텐츠 소비를 위해 수신된 데이터를 처리한다. 또한, 이하에 기술되는 바와 같이, 이 처리는 RSS 피드에 수반하는 메타데이터(222)를 핸들링하는 것을 포함한다. 이를 위해, RSS 가젯(216)은 메타데이터 핸들러 메카니즘(230)을 포함하거나 그와 다른 방식으로 연관되어 있다. 처리는 또한, RSS/Aux 변환기(232)로 나타낸 바와 같이, RSS 컨텐츠(224)를 보조 디스플레이 장치(220)[예를 들어, 도 1의 보조 디스플레이 서브시스템(199)의 일부]가 핸들링할 수 있는 형식으로 변환하는 것을 포함할 수 있다. 한가지 이러한 형식은 SCF(simple content format)라고 하며, 보조 디스플레이 장치가 디스플레이할 수 있어야만 하는 기본 데이터 형식을 포함하고, 메뉴, 화상 및 통지 데이터를 전달하기 위해 형식화하는 것을 포함한다.
컨텐츠 수신을 용이하게 해주기 위해, RSS 데이터의 소스(212)는 컨텐츠(224)에 관한 정보를 메타데이터(222)로 제공한다. 보다 상세하게는, 그의 컨텐츠를 핸들링하기 위해 호스트 컴퓨터 시스템 상에 전용 가젯(216)을 필요로 하지 않고, RSS 가젯(216) 상의 메타데이터 핸들러(230)가 다양한 소스로부터의 데이터를 핸들링하고 메타데이터에 기초하여 데이터를 구분한다. 그 결과, 이 기술에 의해 컨텐츠 제공업자는 보조 디스플레이로 보내지는 컨텐츠(auxiliary display-destined content)를, 각각의 수신자의 장치 상에 독점적 소프트웨어를 필요로 하지 않고 웹을 통해 광범위한, 아마도 무한의 시청자에게 효율적으로 신디케이트(syndicate)할 수 있게 된다.
보다 상세하게는, 특수한 경우의 데이터 배포/관리로서, 컨텐츠를 단지 전달하는 대신에, 컨텐츠 제공업자는 RSS를 사용하여 보조 디스플레이-관련 데이터를 배포하고 새로운 가젯을 생성할 수 있다. 예를 들어, 사용자가 이 특별한 보조 디스플레이 데이터 페이로드를 갖는 RSS 피드를 구독할 때, RSS 가젯(216)은 이 데이터를 이용하여 새로운 별도의 보조 디스플레이 가젯[도 2의 "가젯 A"(240) 등]을 생성할 수 있다. 새로운 가젯(240)이 생성되면, RSS 가젯은 새로 생성된 "가상" 가젯을 관리함은 물론 구독한 RSS 피드로부터 오는 장치에 대한 데이터를 관리하기 위한 "마스터" 가젯으로서 기능한다(본질적으로, RSS 가젯은 다른 가젯의 모습을 보이면서 데이터 관리를 수행한다). 유의할 점은, 비록 도 2에 명시적으로 도시되어 있지는 않지만, 가젯 A가 다른 대안으로서 RSS 컨텐츠를 수신하고 및/또는 수신된 RSS 컨텐츠를 SCF(simple content format) 등의 보조 장치-호환 형식으로 변환할 수 있다. 따라서, 가젯(216)은 소스로부터의 RSS-전달된 컨텐츠를 관리하고, 커스터마이즈하며, 이를 사용자의 호스트 컴퓨터 시스템으로(또는 이를 통해) 또한 사용자의 보조 디스플레이 장치 또는 장치들로 배포한다.
한 예시적인 구현에서, 소스(212) 등의 사이트로부터의 RSS 데이터가 처음으로 다운로드될 때, 메타데이터(222)에 대응하는 정보가 호스트 시스템의 레지스트리(234)에 기록된다(예를 들어, 사용자 및/또는 정책이 이러한 동작을 허용하는 것으로 가정함). 유의할 점은 그의 대응하는 정보를 레지스트리(234)에 이미 가지고 있는 메타데이터라면 어느 것이라도 차후의 피드 시에 재기록될 필요가 없고, 그 대신에 레지스트리(234) 내의 기존의 정보가 연관된 RSS 컨텐츠(224)를, 그 컨텐츠의 보조 장치의 디스플레이와 관련하여, 어떻게 핸들링할지를 결정하는 데 사용될 수 있다는 것이다. 그 후에, 어떤 형태의 컨텐츠(224)가 [예를 들어, 생성된 가 젯(240)을 통해] 보조 디스플레이 장치(220)에 제공될 수 있다. 그 결과, 사용자의 관점에서 볼 때, 새로운 가젯을 발견하고 설치하는 것은 RSS 피드를 구독하는 것만큼 간단하다.
완전함을 위해, 도 2는 "가젯 B"(241)를 비롯한, 보조 디스플레이 플랫폼에서 사용될 수 있는 다른 가젯을 나타낸 것이며, 유의할 점은 가젯 B(241)가 각각 사이드바 프로그램(side bar program)(242) 및/또는 관련 API(243)와 함께 동작한다는 것이다. 가젯 B(241)는 API(246)를 통해 보조 장치(220)의 드라이버(248)와 통신을 하기 위해 사이드바 API(243)를 사용한다.
또한 완전함을 위해, 도 2는 하나 이상의 다른 드라이버(249) 및 보조 장치(250)가 주어진 시스템(210)에 존재할 수 있다는 것을 나타내고 있다. 다른 드라이버(들)(249) 및 보조 장치(들)(250)가 선택적인 것임을 나타내기 위해 점선 블록으로 도시되어 있지만, 유의할 점은, 사용자가 예를 들어 써드파티 드라이버(249)를 갖는 하나의 다른 보조 장치(250)만을 가질 수 있기 때문에, 보조 장치(220)도 선택적이라는 것이다. 보조 장치(220) 및/또는 점선 블록(250)으로 나타낸 한가지 이러한 장치의 예로는 고급 디스플레이(enhanced display)[일반적으로 SPOT(Smart Personal Object Technology) 펌웨어 및 고급 렌더링 코드(enhanced rendering code)를 실행하는 보조 디스플레이 장치를 포함함], 기본 디스플레이(basic display)[본질적으로 임의의 다른 커스텀 펌웨어(custom firmware)를 실행하지만 보조 디스플레이(예를 들어, 셀 전화)로서 동작할 수 있는 보조 디스플레이 장치임], 및 단일(또는 2개, 3개, 기타) 라인 디스플레이(line display)[아주 제한된 수(예를 들어, 하나 또는 2 라인의 텍스트)를 디스플레이할 수 있고 본질적으로 이미지 지원을 포함하지 않는 보조 디스플레이를 포함함]가 있다. 기타 유형의 디스플레이로는 부착된 디스플레이/엣지 디스플레이(edge display)/리드-톱 디스플레이(lid-top display)[일반적으로 노트북 퍼스널 컴퓨터 등의 본체에, 예를 들어, 덮개의 상단에 물리적으로 위치하는 유형의 보조 디스플레이 장치를 말함], 원격 디스플레이(remote display)[호스트 컴퓨터 상에 물리적으로 위치하지 않고 유선 또는 무선 네트워크 프로토콜을 통해 호스트 컴퓨터와 통신을 하는 보조 디스플레이를 포함함], 및 "가상" 보조 디스플레이(virtual auxiliary display)[일반적으로 컴퓨터 시스템의 주 디스플레이의 어떤 영역 내에 보조 컨텐츠를 제공하는 디스플레이를 포함함]가 있다. 따라서, 비록 도 2에 나타내어져 있는 보조 디스플레이(220, 259)가 외부에 있고 주 호스트 컴퓨터 시스템(210)에 연결(아마도 선택적으로 연결)되어 있는 것으로 도시되어 있지만, 이러한 장치가 주 호스트 컴퓨터 시스템(210)에 물리적으로 부착 또는 다른 방식으로 분리되거나 그렇지 않을 수 있다는 것을 잘 알 것이다.
유의할 점은 대부분의 RSS 컨텐츠가 HTML-형식화된 텍스트이지만, RSS 2.0이 <enclosure> 태그를 통해 멀티미디어 컨텐츠 등의 기타 데이터의 임베딩(embedding)을 제공하며, 여기서 <enclosure>는 <item>의 선택적인 서브-엘리먼트(sub-element)를 포함한다는 것이다. RSS 인클로저 유형(enclosure type)은 표준의 MIME 유형에 의해 정의된다. 예를 들어, 보조 디스플레이 플랫폼의 한 구현례는 고급 디스플레이(enhanced display) 상에서 SCF(simple content format)를 사 용하여 이미지(예를 들어, jpg, gif 및 bmp 형식 등)를 지원한다. 더 풍부한 미디어 시나리오의 경우에, 기타 미디어(예를 들어, 오디오의 경우 mpeg/wma, 비디오의 경우 wmv/avi/mpeg)가 지원될 수 있다.
RSS-관련 마크업에서, <enclosure>는 다수의 애트리뷰트(attribute)[인클로저가 위치하는 곳을 지정하는 URL, 그의 크기를 (예를 들어, 바이트 단위로) 지정하는 length 및 그의 유형이 무엇인지(예를 들어, 표준의 MIME 유형)를 지정하는 type]를 갖는다. URL은 http URL일 수 있다. 예를 들어,
<enclosure
url="http://www.scripting.com/mp3s/weatherReportSuite.mp3"
length="12216320" type="audio/mpeg" />
RSS 가젯은, 인클로저가 인식된 유형에 속할 때, 그 인클로저를 다운로드하도록 RSS 플랫폼에 요청할 수 있다. 인클로저가 다운로드되면, 가젯은 첨부 파일(enclosed file)을 RSS 플랫폼으로부터 직접 획득한다. 다른 대안으로서, RSS 가젯은 인클로저 마크업 내의 URL 애트리뷰트를 사용하여 인클로저 자체를 다운로드할 수 있다.
RSS 페이로드의 유형에 대한 제한이 없기 때문에, 컨텐츠 제공업자 및 소프트웨어 판매업자는 웹을 통해 사용자의 보조 디스플레이 장치로 거의 모든 유형의 데이터(주식 시세 및 음악 등의 다양한 컨텐츠를 포함함)를 배포할 수 있다. 풍부한 미디어도 역시 전달될 수 있어, 사용자가 가입한 블로그로부터 사진을 자동적으로 디스플레이하는 무선 디지털 포토 프레임(wireless digital photo frame) 또는 사용자가 좋아하는 팟캐스트 및 뉴스 기사를 자동적으로 다운로드하는 미디어 플레이어(media player) 등의 시나리오, 또는 기타 시나리오를 가능하게 만들어준다.
다른 예시적인 시나리오는 블로그/RSS 소비(읽기), 블로그/RSS 생성(블로깅), 디지털 포토 프레임, 팟캐스트, RSS를 사용하여 새로운 가젯을 설치하는 것, 및 사이드바 통합에 관한 것이지만, 이에 한정되지 않는다. 예를 들어, 통근하는 동안에 오디오 플레이어를 듣는 한 사용자를 생각해보자. 음악을 듣는 것에 부가하여, 그 사용자는 그의 오디오 플레이어 또는 기타 미디어 장치를 사용하여 도킹되어 있는 동안 팟캐스트, 사진 및 RSS 피드를 다운로드할 수 있다. 그 사용자는 통근하는 동안에 그것을 소비할 수 있다. 장치는 RSS 플랫폼 피드 리스트를 통해 그 사용자가 구독하는 정확한 피드를 자동적으로 선택한다. 예를 들어, 그 사용자는 친구들 중 일부로부터의 사진, 및/또는 아마도 이동 전화로부터 찍은 짧은 비디오 클립을 구독할 수 있으며, RSS 가젯은 장치가 도킹될 때 컨텐츠를 자동적으로 동기화시킨다.
블로깅과 관련하여, 모바일 장치(예를 들어, 스마트폰)는 읽기(reading)는 물론 썸패드 입력(thumbpad input)을 위한 작은 패널을 가질 수 있다. 상기 소비예가 적용되지만, 그에 부가하여, 사용자는 예를 들어 사진을 찍는 것, 블로그에 기록하는 것, 및/또는 사용자의 블로그 메카니즘을 통해 컨텐츠를 블로깅하는 것에 의해 컨텐츠를 생성할 수 있다. RSS 인클로저를 사용하여, 사용자는, 부수적/설명적 텍스트와 함께, 어떤 그룹에게 직접 배포되는 포토 피드(photo feed)를 생성할 수 있다. 무선 기능이 없는 장치의 경우, 도킹될 때 RSS 엔진과 동기화하기 위해 블로그 컨텐츠가 캐싱될 수 있다.
디지털 포토 프레임은 또한 구독한 컨텐츠를 수신할 수 있다. 예를 들어, 보조 디스플레이 디지털 포토 프레임은 퍼스널 컴퓨터에 무선 연결될 수 있고, RSS 피드를 통해 사진을 선택하는 자동-설치된 RSS 가젯이 로드되어 있는 경우, 컴퓨터는 포토 프레임으로 사진을 푸시할 수 있다. 포토 프레임은 가장 새로운 사진을 자동적으로 디스플레이할 수 있고 그 사진들을 최신의 것으로 유지하기 위해 주기적으로 순환할 수 있다.
팟캐스트는 RSS 팟캐스트 피드를 통해 용이하게 될 수 있는 다른 시나리오이다. 이를 위해, 사용자는, 예를 들어, 보조 디스플레이의 제어판 애플릿(control panel applet)으로부터의 보조 가젯 속성 페이지(auxiliary gadget property page)를 사용하여 팟캐스트를 장치에 동기화되도록 구성할 수 있다. 사용자가 피드를 구독할 때, 보조 가젯은 첨부된 팟캐스트를 RSS 피드로부터 분리시킨다. 장치가 도킹될 때마다, 가젯은 나중에 듣기 위해 팟캐스트를 그에 동기화시킨다.
본 명세서에 기술된 바와 같이, 새로운 가젯이 RSS를 사용하여 설치될 수 있다. 예를 들어, 도 4를 참조하여 이하에 기술되는 바와 같이, zzzmovies.com과 같은 사이트는 RSS 영화 정보 피드를 제공할 수 있다. 사용자가 피드를 구독할 때, 보조 RSS 가젯(216)은 zzzmovies.com이 보조 디스플레이가 피드로부터의 영화 정보(스케쥴, 티켓 이용가능성 및 평론을 포함함)를 보여줄 수 있게 해주는 특수한 영화 정보 가젯을 배포한다는 것을 검출한다. 사용자가 이러한 가젯을 따로 다운로드하여 설치할 필요없이, RSS 가젯(216)(또는 제어판 애플릿 등의 다른 개체)은, 통상적으로 프롬프트 및/또는 다른 정책 검사에 따라, 새로운 영화 정보 가젯을 자동적으로 설치한다. RSS 가젯(216)은 영화 가젯을 지원되는 장치 상에서만 동작하도록 구성한다. 예를 들어, 영화 가젯은 단일-라인 키보드 보조 디스플레이 상에는 나타나지 않고 셀 전화 화면 상에는 나타난다.
이와 같이, RSS 가젯(216)에 의해 사용자는 보조 디스플레이 플랫폼을 사용하여 오디오(예를 들어, 팟캐스트), 사진, 텍스트(예를 들어, 블로그), 기타 등등을 비롯한 다양한 미디어 형식으로 휴대용 장치 상에서 컨텐츠를 소비할 수 있다. 그 결과, 사용자는, 그의 보조 디스플레이 장치를 통해, 구독한 피드를 브라우징할 수 있고 팟캐스트를 들을 수 있으며 사진/비디오를 볼 수 있고 유사한 작업을 수행할 수 있다. 유의할 점은 이것이 컨텐츠를 소비/생성하는 독립형 RSS 장치로, 또는 오디오 플레이어 등의 기존의 휴대용 장치를 사용하여 멀티미디어 컨텐츠를 소비함으로써 달성될 수 있다는 것이다.
도 3에 전반적으로 나타내어져 있는 보다 구체적인 구현례를 참조하면, RSS 플랫폼(350)은 RSS 데이터를 (보조 디스플레이에 대한) RSS 가젯(216)에 제공한다. 한 구체적인 구현예에서, 배포 수단(예를 들어, 인터넷-익스플로러 기반 브라우저 등의 브라우저)이 RSS 피드 플랫폼을 등록하는 설정 동작(setup operation)을 수행하며 그에 따라 애플리케이션 또는 사용자가 그렇게 할 필요가 없다. RSS 피드 플랫폼은 동적 연결 라이브러리(dynamic link library)(예를 들어, msfeeds.dll)에 위치한 하나 이상의 Win32 COM API로서 구현될 수 있다.
RSS 피드는, 브라우저 컴포넌트의 즐겨찾기의 구성이 저장되는 방식과 같이, 일련의 폴더들 및 폴더 내의 피드들로 구성되어 있을 수 있다. 유의할 점은 폴더 및 피드 순서가 통상적으로 시스템 피드 리스트에 유지되지 않으며, 오히려 한 예시적인 구현에서, (브라우저 즐겨찾기 폴더 및 사이트에서와 같이) 운영 체제/브라우저 컴포넌트 및 RSS 탐색기 프로그램은 폴더 및 폴더 내의 피드의 순서를 저장하기 위해 일련의 레지스트리 키를 공유한다. RSS 가젯(216)은 폴더 및 피드 순서를 얻기 위해 이들 레지스트리 키를 판독하며, 시스템 피드 리스트에 구독의 순서를 저장하는 예시적인 레지스트리 키는 다음과 같다.
Figure 112008061494589-PCT00003
Figure 112008061494589-PCT00004
유의할 점은 사용자가 다수의 보조 장치를 가질 수 있고 따라서 특정의 피드가 특정의 장치에 매핑되기를 원할 수 있다는 것이다. 예를 들어, 주어진 장치의 한계로 인해, 그 장치에 의해 지원될 수 있는 피드가 사용자의 총 구독 피드의 일부만 될 수 있다. 예를 들어, 어떤 SCF(simple content format)-지원 장치가 RSS 피드를 렌더링하려고 할 때 좋지 않은 사용자 경험을 야기하는 폼 팩터(form factor)를 가질 수 있고, 사용자는 이러한 장치에 대해 피드를 오프시킬 수 있어야만 한다. 게다가, 사용성으로 인해, 사용자는 하나의 장치 상에서 모든 피드를 소비하고자 하지 않을 수 있는데, 그 이유는 사용자가 수백개에 이르는 피드를 가질 수 있기 때문이다. 사진 등의 특정의 미디어 유형에 대해, 사용자는 특정의 소스로부터의 피드만을 소비하고자 할 수 있다.
도 3에 나타낸 바와 같이, 사용자가 특정의 피드를 특정의 보조 장치와 연관 시킬 수 있게 해주기 위해, 피드 대 장치(Feeds:Devices) 테이블(352) 또는 유사한 데이터 구조가 생성될 수 있다. 보조 디스플레이의 제어판 애플릿(354)의 속성 페이지를 통하는 등에 의해 피드 대 장치 구조(352)를 생성하기 위해, 한 구현에서, 플랫폼은 각각의 장치의 기능 정의(capability definition)에 대해 새로운 속성, 예를 들어, AUX_CAPABILITY_DEVICE_NAME을 포함한다. DEVICE_NAME에 부가하여 이하의 장치 기능이 지정될 수 있다.
기능 GUID 값 PID 데이터 유형 PROPVARIANT 유형
DEVICE_ID
Figure 112008061494589-PCT00005
1 GUID VT_CLSID
SCREEN_TYPE
Figure 112008061494589-PCT00006
2 SCREEN_TYPE VT_I4
SCREEN_WIDTH
Figure 112008061494589-PCT00007
3 UINT16 VT_UI2
SCREEN_HEIGHT
Figure 112008061494589-PCT00008
4 UINT16 VT_UI2
COLOR_DEPTH
Figure 112008061494589-PCT00009
5 UINT16 VT_UI2
COLOR_TYPE
Figure 112008061494589-PCT00010
6 COLOR_TYPE VT_I4
DATA_CACHE
Figure 112008061494589-PCT00011
7 BOOL VT_BOOL
DEVICE_NAME
Figure 112008061494589-PCT00012
8 임의의 적당한 것, 예를 들어, CHAR* 임의의 적당한 것, 예를 들어, VT_CHAR*
RSS 가젯(216)은 사용자의 시스템 상의 현재 연결된 보조 장치의 서브셋을 열거하기 위해 ISideShowCapabilitiesCollection 인터페이스를 사용할 수 있다. 가젯이 각각의 장치의 속성에 대해 질의할 때, 가젯은 (상기 DEVICE_NAME으로부터) 장치에 대한 친숙한 이름을 획득할 수 있고, 사용자는, 예를 들어, 제어판 애플릿(354)의 사용자 인터페이스에서, 특정의 피드를 특정의 장치(또는 장치들)와 연 관시킬 수 있게 해주는 테이블 등을 렌더링할 수 있다.
예를 들어,
Figure 112008061494589-PCT00013
일반적으로, 가젯은 이하의 것들을 하게 된다.
1. BOOL *out_pfDifferentiateContent를 IAuxiliaryDisplayContent::DifferentiateContent로부터 TRUE로 설정함
2. 가젯이 새로운 컨텐츠를 추가하기 위해 ISideShowContentManager::Add()를 호출할 때, 플랫폼은 각각의 장치에 대해 ISideShowContent 인터페이스로부터의 서로 다른 GetContent()로 콜백(call back)한다.
3. 이어서 각각의 GetContent() 호출로, 가젯은 각각의 장치의 친숙한 이름에 대해 질의하기 위해 IAuxiliaryDisplayCapabilities 포인터를 사용할 수 있다. 장치 이름을 내부에 저장된 피드-장치 매핑과 결합시키면 특정의 장치-기반 피드만을 반환한다.
RSS 가젯(216)은 장치에 기초하여 특정의 피드만을 반환하기 위해 ISideShowContent::GetContent() 콜백을 하지 못하더라고 괜찮다(gracefully fail). 유의할 점은 이것이 콜백인 이유는 가젯이 ISideShowContentManager::Add를 호출하고 컨텐츠 관리자가 그의 ISideShowContent 인터페이스를 통해 가젯을 다시 호출하기 때문이다.
어떤 방식으로, 예를 들어, 기본적으로 제어판 애플릿의 사용자 인터페이스를 통해 수정되는 것과 같이, 일단 연관되면, RSS 가젯(216)은 이 피드-장치 구조(예를 들어, 그래프)(352)를 저장하고, 그에 따라 가젯이 어느 피드를 어느 장치로 푸시할지를 결정하기 위해 나중에 저장소(352)에 액세스할 수 있다. 예를 들어, 한 사용자는 음악 플레이어 장치 상에서는 모든 음악-관련 피드를 보고/듣고자 할 수 있지만, 셀 전화로는 긴급한 작업 피드를 보고자 할 수 있다. 유의할 점은 RSS 가젯(216)(또는 그에 의해 생성된 가상 가젯)이 다른 피드를 참작하기 위해 SCF(simple content format) 컨텐츠를 커스터마이즈할 수 있다는 것이다. 사용자가 보조 디스플레이의 제어판 애플릿(354)로부터의 각각의 연관을 언제라도 갱신할 수 있기 때문에, RSS 가젯(216)은 그에 따라 그의 저장된 구조(352)를 갱신한다.
RSS 가젯(216)은 기본적으로 보조 디스플레이 매니페스트(auxiliary display manifest)의 일부로서 설치될 수 있다. 부착된 보조 디스플레이 장치가 없는 경우, 가젯은 디스에이블될 수 있고, 보조 디스플레이의 제어판 애플릿(354)에 나타날 필요가 없다. 이 예시적인 구현에서, RSS 가젯(216)은 UI를 RSS 플랫폼에 추가할 필요가 없는데, 그 이유는 구성이 보조 디스플레이 제어판 애플릿(354)의 사용 자 인터페이스를 통해 핸들링될 수 있기 때문이다.
한 예시적인 구현에서, 보조 디스플레이 가젯에 대한 요구된 레지스트리 정보를 기록하기 위해, 이하의 개략적인 구조가 이용될 수 있다.
a. RSS
i. FriendlyName = "Windows
Figure 112008061494589-PCT00014
Web Feeds"
(Windows
Figure 112008061494589-PCT00015
-기반 시스템에서 "RSS"에 대응함)
ii. OnlineOnly = DWORD:0x0
iii. CacheAlgorithm = DWORD:OxO
iv. Icon = RSS 가젯을 나타내는 아이콘
v. Endpoints : 예를 들어 SCF(simple content format) 종단점 또는 선택적인 RSS 종단점
상기한 바와 같이, RSS 가젯(216)은 또한 [예를 들어, API/컴포넌트(246, 356, 358)와 통신하기 위해] 보조 플랫폼에도 등록되지만, 유의할 점은 가젯(216)이 보조 디스플레이를 갖지 않는 호스트 컴퓨터 시스템 상에 또는 보조 디스플레이를 지원하지 않는 운영 체제를 갖는 호스트 컴퓨터 시스템 상에 설치될 필요가 없다는 것이다. RSS 가젯(216)은 기본적으로 설치될 수 있고, 장치 제조업자 또는 기타 개체에 의해 커스터마이즈가능할 수 있다.
유의할 점은 RSS-지원 장치가 처음으로 발견될 때, 보조 장치 상에서 RSS를 사용하는 것은 물론, 예를 들어, 보조 디스플레이의 제어판 애플릿(354)을 통해 RSS 가젯(216)과 어떻게 상호작용하는지에 관해 사용자를 교육시키기 위해 RSS 가 젯(216)이 대화 상자 등을 디스플레이할 수 있다는 것이다. 또한, 유의할 점은 가젯 거동과 관련하여, 조건이 충족되는 경우, 예를 들어, RSS 플랫폼이 잘 실행되고 적절한 SKU(stock-keeping unit of the operating system)에서만 실행되며 RSS를 지원할 수 있는 하나 이상의 보조 디스플레이 장치가 현재 호스트 컴퓨터 상에 설치되어 있는 경우, 가젯이 사용자 로그인 시에 기동하도록 구성될 수 있다. 한 예시적인 구현에서, RSS 가젯(216)은 이들 조건 각각이 충족되지 않으면 인에이블되지 않는다.
일단 인에이블되면, RSS 가젯(216)은 통상 기본적으로 백그라운드에서 실행되는데, 그 이유는 보통 RSS 플랫폼이 연속적으로 실행되고 있기 때문이며, RSS/보조 플랫폼이 어떤 이유로 존재하지 않는 경우, RSS 가젯(216)은 자체-디스에이블(self-disable)된다. RSS 가젯(216)은 네트워크 접속을 인식하게 될 수 있으며, 그에 따라, 예를 들어, 보조 장치가 연결되어 있지 않은 경우 가젯은 데이터 전송을 중지할 수 있다.
기본적인 플랫폼, 가젯 및 장치 상호작용과 관련하여, 이하의 개략적인 구조가 이용될 수 있다(그렇지만, 잘 알 것인 바와 같이, 반드시 제공된 순서대로 이용될 필요는 없음).
1. 운영 체제의 RSS 플랫폼을 이용한다.
a. RSS 플랫폼(예를 들어, DLL)을 로딩한다.
2. 사용자가 구독한 RSS 피드를 지원되는 보조 장치로 배포한다.
a. RSS 피드 API로부터 시스템 피드 리스트(구독한 피드)를 획득한다.
b. 이하의 통지를 위해 등록을 한다(RSS 통지는 재귀적이고, 따라서 루트 폴더를 구독하는 것이 변화가 있게 된다).
i. IFeedFolder.SubscriptionNotifications (새로운 피드 추가됨/삭제됨/변경됨, 기타)
ii. IFeedFolder.FeedNotifications (새로운 항목 추가됨)
c . 변화가 있는지 피드 리스트를 모니터링한다.
i. 장치와 마지막으로 동기화된 피드의 상태를 캐싱하며, 그에 따라 다시 온라인으로 될 때 장치에 대한 피드 상태를 어떻게 갱신할지를 알게 된다.
ii. 피드 상태 변화를 사용하여 보조 디스플레이의 제어판 애플릿 속성 페이지를 갱신한다.
d. 기본적으로, 가젯은 모든 피드를 모든 RSS-지원 장치로 배포할 수 있다.
i. 그렇지만, 사용자는 특정의 RSS 피드가 특정의 보조 장치로 배포되도록 구성하는, 즉 주어진 피드가 어느 장치 또는 장치들로 가는지를 결정하는 옵션을 갖는다.
ii. 보조 디스플레이의 제어판 애플릿 속성으로부터의 사용자의 변경에 기초하여 피드-장치 매핑을 저장 및 갱신한다.
iii. 이 매핑은 사용자별로 유지되며, 따라서 사용자는 일련의 장치와 연관된다.
e. RSS 동기화 엔진을 인클로저를 자동적으로 다운로드하도록 설정한다
(IFeed.DownloadEnclosuresAutomatically)
3. 보조 장치가 RSS 플랫폼을 통해 사용자가 구독한 RSS 피드를 렌더링할 수 있게 해준다.
a. RSS 컨텐츠를 SCF(simple content format)로 트랜스코딩한다.
i. 입력 : RSS 데이터
ii. 출력: SCF(simple content format) 데이터
b. 예를 들어, 장치 한계로 인해 특정의 보조 장치에 의해 렌더링될 수 없는 형식 및 컨텐츠를 무시한다. 예를 들어, RSS 피드가 렌더링될 수 없는 특수한 형식 HTML(테이블, 기타)를 포함할 때 일어날 수 있다.
c. 미디어 인클로저
i. RSS 플랫폼으로부터 특정의 RSS 인클로저(예를 들어, 사진)를 획득하고 보조 장치가 핸들링할 수 있는 형식으로 이진 데이터를 재캡슐화한다.
ii. 특정의 미디어 인클로저(사진, 비디오, 기타)를 그에 따라 장치 상에서의 특별한 핸들링을 필요로 하는 SCF(simple content format)로 태깅한다.
iii. 데이터(예를 들어, 이진 데이터)를 장치로 전송한다.
d. 보조 장치 기능에 기초하여, 가젯은 특정의 피드가 장치로 전달되어야만 하는지 여부를 판정한다. 예를 들어, 장치가 디지털 포토 프레임이고 특정의 블로그를 구독하는 경우, 가젯은 연관된 텍스트 또는 기타 미디어가 아니라 임베딩된 사진만을 렌더링한다.
4. 다중 사용자
a. 현재 활성인 사용자에 대한 피드가 이 사용자와 연관된 장치에만 동기화된다. 이것은, 제1 사용자가 로그인하였기 때문에, 제1 사용자가 제2 사용자의 (예를 들어, 오디오 플레이어) 장치로 피드를 전송함으로써 제2 사용자의 저장된 피드를 없애버리는 등의 시나리오를 방지한다.
b. 빠른 사용자 전환
i. 장치가 모든 로그인된 사용자, 예를 들어, 랩톱과 연관되어 있는 경우에만 적용된다.
ii. 이전의 사용자로부터의 데이터가 장치로부터 제거되고, 활성 사용자의 데이터가 장치와 동기화된다.
iii. 상기 오디오 플레이어 시나리오에서, 오디오 플레이어는 제2 사용자와만 연관되어야 하며, 그에 의해 제1 사용자가 로그인할 때, 가젯은 그 장치가 제1 사용자의 장치가 아님을 인식하고 오디오 플레이어의 데이터를 없애버린다.
iv. 보조 장치 상호작용
c. 내비게이션 - 사용자가 피드를 내비게이션하여 브라우징할 수 있게 해준다.
i. 일관된 사용자 경험을 유지하기 위해 브라우저 컴포넌트에 도시된 것과 동일한 폴더 및 피드 순서를 보존한다.
ii. 피드 폴더를 디스플레이한다.
1. 사용자는 폴더 안으로 또한 폴더 밖으로 내비게이션할 수 있다.
iii. 폴더 내에 피드 타이틀(feed title)을 디스플레이한다.
l. 가능한 경우 피드로부터의 아이콘을 사용한다.
2. 새로운 업데이트로 피드에 플래깅한다.
3. 피드의 읽지않은 항목의 수를 끝에 있는 괄호 안에 디스플레이한다.
iv. 피드에 항목을 디스플레이한다.
d. 피드를 선택할 시에
i. 텍스트
1. 뷰를 브라우징한다.
a. 연관된 <title>을 갖는 항목 및 <description>의 첫번째 라인을 보여준다.
b. 모든 항목 또는 읽지 않은 항목만을 보여주기 위한 컨텍스트 메뉴 옵션을 제공한다.
c . 기본값 : 읽지않은 항목만을 디스플레이한다.
d. 특정의 피드 항목을 선택할 때, 항목을 연다.
2. 상세 보기
a. 항목 내용을 전부 디스플레이한다.
b. 텍스트를 내비게이션하기 위한 컨트롤을 제공한다.
ii. 항목이 인클로저를 갖는 경우:
1. MIME 태그를 사용하여 미디어 유형을 판정한다.
2. 뷰를 브라우징한다.
a. 미디어 인클로저를 갖는 항목을 적당한 아이콘으로 지정한다.
3. 상세 보기 - 인클로저를 렌더링할 적당한 형식을 결정한다.
a. 이미지
i. 적당한 메타데이터를 디스플레이한다.
- 캡션, 기타
ii. 차원, 해상도, 및 색상 심도에서 장치 규격에 맞도록 이미지를 스케일링한다.
iii. 다음/이전 이미지에 대한 내비게이션 컨트롤을 제공한다.
b. 오디오
i. 오디오 아이콘을 갖는 항목을 디스플레이한다.
ii. 적당한 메타데이터를 디스플레이한다.
- 음악가, 길이, 기타
iii. 오디오를 재생하는 컨트롤을 제공한다(펌웨어와 통합될 필요가 있음).
- FF/RW/정지/재생
iv. 내비게이션 컨트롤을 제공한다.
- 다음/이전 항목
c. 비디오
i. 비디오 아이콘을 갖는 항목을 디스플레이한다.
ii. 적당한 메타데이터를 디스플레이한다.
- 제작자, 기타
iii. 비디오를 재생하는 컨트롤을 제공한다(펌웨어와 통합될 필요가 있음).
- FF/RW/정지/재생
iv. 내비게이션 컨트롤을 제공한다.
- 다음/이전 항목
e. 피드가 열리면 UI에서 읽음/읽지않음 상태를 갱신한다.
5. 장치로부터 이벤트를 핸들링한다.
a. ContentMissing
i. 가젯이 장치로부터 누락된 컨텐츠가 있는지 플랫폼에 질의를 한다.
ii. 피드 또는 항목이 플랫폼으로부터 삭제된 경우, 가젯은 그에 따라 장치 상의 삭제된 컨텐츠를 제거한다.
b. DeviceAdded
i. 이 장치가 현재 사용자와 연관되어 있는지 여부를 판정한다.
1. 연관되어 있지 않은 경우, RSS가 이 장치에서 지원되는 것을 원하는지 여부에 대해 사용자에게 질의를 한다.
ii. 있는 경우, 변경된 데이터를 사용하여 장치를 갱신한다.
c. DeviceRemoved
i. 아무것도 하지 않는다.
팟캐스트, 음악 및 비디오를 재생하는 것과 같은 시나리오를 인에이블시키기 위해, 보조 장치 드라이버 프레임워크(358)는 그의 하드웨어 및 펌웨어를 이용하기 위해 임베딩된 장치와 직접 인터페이스할 수 있다. 네이티브 장치(native device)와의 보조 장치 통합을 위해(예를 들어, 팟캐스트 시나리오), 보조 장치 드라이버는 장치 메모리에 직접 컨텐츠를 기록하고 재생 컨트롤을 제공하는 펌웨어 기능에 액세스할 수 있다.
소스 제공자의 관점에서 볼 때, 보조 디스플레이 플랫폼 및 RSS 가젯에 의해 소프트웨어 판매업자 또는 컨텐츠 게시자는 RSS를 이용하여 사용자를 위한 새로운 가젯을 배포 및 설치할 수 있게 된다. 게다가, 이는 SideShow 가젯의 사용 시나리오를 증가시키는 데, 그 이유는 컨텐츠 제공업자 및 소프트웨어 판매업자가 이제, 로컬적으로 있는 퍼스널 컴퓨터에 부가하여, 웹으로부터 SideShow 장치에 컨텐츠를 제공할 수 있기 때문이다. 이것은, SCF(simple content format)에 대한 MIME 유형(예를 들어, Content-type:text/x-simple_content_format) 및 보조 설치 데이터에 대한 MIME 유형(예를 들어, Content-type:application/gadget)을 비롯한, 새로운 MIME 유형을 지정 및 등록하는 것을 포함할 수 있다.
RSS 개체가 새로운 가젯을 배포할 수 있는 방식, 즉 RSS 피드를 통하는 방식을 용이하게 해주기 위해, 이 개체는 가젯 설치 메타데이터가 첨부된 RSS 피드를 게시하기만 하면 된다. 예를 들어, 가젯 인클로저는 새로운 가젯에 대한 타이틀, 아이콘, 지원되는 종단점, 기타 등등을 포함할 수 있다. 그 후에, RSS 동기화 엔진[예를 들어, RSS 플랫폼(350)의 일부]은 SCF(simple content format) 및/또는 가젯 인클로저를 자동적으로 다운로드한다.
RSS를 사용하여 새로운 보조 가젯을 빌드(build) 및 배포하는 측면에서 볼 때, 소프트웨어 개발자가 사이트 zzzmovies.com를 소유하는 회사 등의 회사를 위해 일하는 것을 생각해보자. 각각의 사용자의 위치에 기초하여 사용자가 실시간 영화 정보를 볼 수 있게 해주는 "영화" 가젯을 릴리스(release)하기 위해, 개발자는 인클로저를 사용하여 zzzmovies.com의 RSS 피드에 특수 데이터(예를 들어, 영화 가젯에 관한 메타데이터 및 SCF로 된 실시간 정보)를 임베딩할 수 있다. 수신될 때, RSS 가젯은 이 SCF 데이터를 파싱하고, 사용자가 처음으로 피드를 구독하는 경우, 영화 가젯을 설치한다.
도 4는, 예를 들어, 셀 전화-기반 보조 디스플레이 장치(460) 등의 보조 장치가 사이트 zzzmovies.com로부터의, 즉 그의 웹 서버(462)를 통해 획득되는 영화 리스트를 제공하는 한가지 이러한 예시적인 예를 나타낸 것이다. 이 예에서, 사용자가 이미 셀 전화(460) 상의 RSS 가젯(216)을 통해 다양한 웹 사이트(서버)(464)로부터 여러가지 RSS 피드(X, Y, Z)를 읽은 것으로 생각하자. 피드(X, Y, Z)를 이미 구독한 이 상태는 일반적으로 도 4에서 원숫자 (1)로 표시된 화살표로 나타내어져 있다.
이 예에서, zzzmovies.com의 웹 사이트를 브라우징할 때와 같이 그로부터 얼마 후에, 사용자는 zzzmovies.com 서버(462)로부터의 zzz 영화 가젯 인클로저(470)를 포함하는 새로운 피드(W)를 구독한다. 이러한 구독 요청 시에, RSS 가젯(216)은 [예를 들어, RSS 플랫폼(350)을 통해] 통지를 받고 <gadget> 인클로저를 본다. 일반적으로, 이것은 도 4에서 원숫자 (2)로 표시된 화살표로 나타내어져 있다. 그 에 응답하여, RSS 가젯(216)은 zzz 영화 가젯(470)을 설치한다[원숫자 (3)으로 표시된 화살표]. 유의할 점은 어떤 정책 및/또는 사용자 승인이 설치를 가능하게 해주기 위해 필요할 수 있다는 것이다.
설치 후에, zzz 영화 가젯(470)이 로딩되고 실행될 수 있으며, RSS 플랫폼(350)을 사용하여 그 자신의 피드(W)를 구독하고, 이 시점 이후에, 일반적으로 도 4에서 원숫자 (4)로 표시한 화살표로 나타낸 바와 같이, RSS 가젯(216)에 독립하여 동작할 수 있다. 피드(W)를 통해, zzz 영화 가젯(470)은 인클로저를 통해 SCF(simple content format)으로 원시 컨텐츠(raw content)를 수신할 수 있지만, 상기한 바와 같이, 다른 대안으로서, RSS 피드 컨텐츠를 장치가 이해할 수 있는 형식(피드 컨텐츠를 장치 기능에 가장 잘 부합시키는 컨텐츠 등)으로 변환하기 위해 변환 코드를 포함할 수 있다.
대안의 구현은 RSS 가젯(216)이 W 피드를 구독하게 하고 zzz 영화 가젯에 대한 데이터를 관리하게 할 수 있다. 이 구현에서, RSS 가젯(216)은 사실상 zzz 영화 가젯을 실행하고 있다.
유의할 점은, 일단 설치되면, zzz 영화 가젯(470)이 매번마다 설치될 필요가 없고, 오히려 동일한 메타데이터가 RSS 피드에서 검출될 때마다, 대응하는 정보를 이미 레지스트리에 가지고 있는 메타데이터 내의 그의 설치 데이터가 가젯의 인스턴스를 로딩 및 실행(즉, 인스턴스화)하는 데 사용될 수 있다. 예를 들어, 가젯(216)이 메타데이터가 이전에 처리되어 레지스트리 내의 설치 데이터에 들어가 있음을 인식하는 경우, 대응하는 가젯의 인스턴스를 인에이블(예를 들어, 로딩 및 실행)하여 컨텐츠를 핸들링하기 위해 그 설치 데이터가 레지스트리로부터 다시 판독될 수 있다.
잘 알 수 있는 바와 같이, RSS 가젯이 그렇게 하기 위해 다른 가젯을 인에이블시키지 않고 RSS 컨텐츠를 핸들링하는 것이 가능하지만, 도 4에 예시된 모델은, 새로운 가젯(470)의 관리가 RSS 가젯(216)으로부터 분리되지만 둘다 데이터 전달 메카니즘으로서 RSS 사용하는 것을 비롯하여, 여러가지 이유로 유익하다. 이점들 중에서도 특히, 이 모델은 피드(W)를 2 곳에 중복하여 보여주는 것[예를 들어, 셀 전화의 RSS 메뉴에서 한번, 그 자신의 영화 메뉴에서 한번]을 방지한다. 새로운 가젯(470)은 또한 호스트 서버와의 그 자신의 데이터 상호작용을 핸들링할 수 있으며, 그에 의해 RSS 가젯(216)은 W 피드로부터 수신된 부가의 (가젯에 관련되지 않은) 인클로저를 처리하는 논리, 변환 코드, 기타 등등을 가질 필요가 없다. 유의할 점은 RSS 가젯(216)이 어떤 이유로 실행을 중단하는 경우, 영화 가젯(470)도 역시 중단한다는 것이다.
도 5는 RSS 가젯(216)이 따라갈 수 있는 예시저긴 논리를 나타낸 것이며, 여기서 사용자가 처음으로 피드를 구독하고 적절한 메타데이터, 예를 들어, 단계(504, 506)을 통해 평가되는 <gadget> 인클로저를 포함하는 피드를 수신(단계 502)할 때, 사용자는 그 피드의 컨텐츠에 대한 가젯을 설치할 기회를 부여받는다. 예를 들어, 단계(508)는 정책 및/또는 사용자 동의가 평가되는 것을 나타낸다. 예를 들어, RSS 가젯(216)의 사용자 인터페이스는 피드가 장치에서 동작할 수 있는 어떤 [X] 가젯을 갖는다는 것을 나타내도록 요청하고 사용자가 그를 인에이블하고 자 하는지를 문의할 수 있다. 그렇지 않은 경우, 프로세스가 종료된다. 유의할 점은, 단계(506)에서, 가젯이 이미 설치되어 있는 경우, 예를 들어, 이번이 사용자가 RSS 피드를 처음으로 구독한 것이 아니거나 사용자가 그것을 어떤 다른 방식으로 설치한 경우, 프로세스는 단계(512)로 진행하여 이미 설치된 가젯을 사용한다.
사용자/정책이 가젯의 인에이블을 가능하게 해주는 경우, 예를 들어, 사용자가 단계(508)에서 동의하는 경우, RSS 가젯은 계속하여 단계(510)에서 새로운 가젯을 설치한다. 한 구현에서, 이것은 메타데이터에 기초한 필요한 레지스트리 정보를 <gadget> 인클로저에 기록하는 것, 보조 디스플레이의 제어판 애플릿을 열고 가젯을 적당한 장치에 할당하도록 사용자에게 요청하는 것, 및 이 구체적인 피드를 새로 설치된 가젯과 연관시키는 것을 포함할 수 있다. 이것은 적당한 형식의 후속 인클로저[예를 들어, SCF(simple content format) 인클로저]만이 이 가젯으로 전달되도록 해준다. 이 새로운 가젯이 보조 플랫폼에 등록될 수 있다. 설치가 완료된 후에, 프로세스는 단계(512)로 계속된다.
단계(512)에서, RSS 가젯(216)은 설치된 가젯을 로딩 및 실행한다. 유의할 점은, 가젯(216) 자체가 피드 컨텐츠를 핸들링할 수 있지만, 한 구현에서, RSS 가젯(216)이 피드를 구독하지 않고 이 피드를 관리하지 않으며, 그 대신에 새로 로딩되고 실행된 가젯으로 하여금 피드 컨텐츠를 수신하게 한다. 여러 이유들 중에서도 특히, 이것은, 예를 들어, 피드가 사용자의 장치 RSS 메뉴에 나타남은 물론 장치 상에 별개의 가젯을 보여주는 경우, 사용자 혼란을 방지하는 데 도움이 된다. 게다가, 로딩된 가젯이 그의 호스트 웹 서버와의 그 자신의 상호작용, 데이터 요 청, 기타 등등을 핸들링하며, 이는 로딩된 가젯이 아마도 많은 데이터 소스로부터의 RSS 피드를 핸들링하는 RSS 가젯(216)과 독립되어 있을 때 유익하다.
도 6의 흐름도에 전반적으로 나타내어져 있는 바와 같이, 도 5를 통해 로딩 및 실행된 (이전에 설치된 또는 새로 설치된) 가젯은 RSS 플랫폼으로부터 그의 구체적인 피드를 획득하는 일(단계 618) 및 호스트 웹 서버와의 데이터 상호작용을 핸들링하는 일(단계 624, 628)을 맡고 있다. 보조 플랫폼과의 통신은 일반적으로, 보조 장치가 그 형식을 이해하기 위해 필요한 단계(620)에서의 컨텐츠 형식 변환을 수행한 후에, (예를 들어, SCF 인클로저 내의) RSS 데이터로부터 추출된 컨텐츠를 RSS 플랫폼으로 전송하는 것이다(단계 622).
이하의 정보는 어떤 예시적인 사용자 인터페이스 개념에 관한 것으로서, 사용자에게 정보를 제공하기 위해 페이지를 사용하고, 이 경우 예시적인 RSS 필드는 이들을 <각괄호>로 둘러쌈으로써 나타내어져 있다.
타이틀 바: RSS 폴더
이 UI 페이지는 보조 장치 상에 캐싱되어 있는 이용가능한 RSS 폴더를 디스플레이한다.
Figure 112008061494589-PCT00016
읽지 않은 항목을 갖는 피드를 갖는 폴더는 굵은체로 되어 있을 수 있다.
Figure 112008061494589-PCT00017
폴더는 읽지 않은 피드의 수를 끝부분의 괄호 안에 보여줄 수 있다.
Figure 112008061494589-PCT00018
읽지 않은 피드를 갖지 않는 폴더는 보통 텍스트로 되어 있을 수 있다.
Figure 112008061494589-PCT00019
선택된 폴더가 하이라이트될 수 있다.
타이틀 바: RSS 피드 - [폴더 이름]
이 페이지는 이 보조 장치에 대한 사용자가 구독한 피드를 디스플레이한다.
Figure 112008061494589-PCT00020
읽지 않은 항목을 갖는 피드는 굵은체로 되어 있을 수 있고 그 뒤에 읽지 않은 항목의 수가 괄호 안에 있다.
Figure 112008061494589-PCT00021
읽지 않은 항목을 갖지 않는 피드는 보통 텍스트로 되어 있을 수 있다.
Figure 112008061494589-PCT00022
인식된 미디어 인클로저를 갖는 피드는, 각각의 유형에 대해 하나씩, 끝에 특수한 아이콘을 갖는다.
o 인식된 미디어: 예를 들어, 사진, 음악, 오디오, 비디오
타이틀 바: [피드 이름 = <채널 타이틀>]
이 페이지는 이 피드에 대한 캐싱된 항목의 상단-라인 뷰를 디스플레이한다.
Figure 112008061494589-PCT00023
항목 <title>을 굵은체로 보여준다
Figure 112008061494589-PCT00024
너무 긴 타이틀은 생략 부호로 되어 있을 수 있다.
Figure 112008061494589-PCT00025
존재하지 않는 타이틀은 항목 <description>의 첫번째 라인으로 대체될 수 있다.
Figure 112008061494589-PCT00026
항목 <description>의 첫번째 라인을 보여준다.
Figure 112008061494589-PCT00027
라인이 생략 부호로 되어 있거나 전달되어 있을 수 있다.
Figure 112008061494589-PCT00028
존재하지 않는 설명 필드는 비어있는 채로 있을 수 있다.
Figure 112008061494589-PCT00029
항목들은 가장 최근에 갱신된 순서로 위에서 아래로 디스플레이될 수 있다.
타이틀 바: [피드 이름]
이 페이지는 장치 상의 캐싱된 항목들을 디스플레이한다.
미디어 유형: 텍스트
Figure 112008061494589-PCT00030
항목 타이틀을 굵은체로 보여준다.
Figure 112008061494589-PCT00031
너무 긴 타이틀은 생략 부호로 되어 있을 수 있다.
Figure 112008061494589-PCT00032
마지막 갱신 타임스탬프를 보여준다.
Figure 112008061494589-PCT00033
타임 스탬프가 생략 부호로 되어 있을 수 있다.
Figure 112008061494589-PCT00034
장치가 렌더링할 수 있는 피드 컨텐츠를 보여준다.
Figure 112008061494589-PCT00035
컨텐츠가 화면에 들어가지 않는 경우 스크롤 업/다운할 수 있다.
Figure 112008061494589-PCT00036
텍스트
타이틀 바: [피드 이름]
미디어 페이지는 특정의 사용자-정의된 미디어 유형의 인클로저만을 디스플레이한다. 이는 텍스트 또는 피드와 연관된 임의의 다른 미디어를 렌더링하지 않는다.
미디어 유형: 이미지
Figure 112008061494589-PCT00037
항목 타이틀을 굵은체로 보여준다.
Figure 112008061494589-PCT00038
너무 긴 타이틀은 생략 부호로 되어 있을 수 있다.
Figure 112008061494589-PCT00039
마지막 갱신 타임스탬프를 보여준다.
Figure 112008061494589-PCT00040
타임스탬프가 생략 부호로 되어 있을 수 있다.
Figure 112008061494589-PCT00041
(이용가능한 경우) 인클로저 타이틀을 보여준다.
Figure 112008061494589-PCT00042
인클로저 타이틀이 생략 부호로 되어 있을 수 있다.
Figure 112008061494589-PCT00043
장치가 렌더링할 수 있는 이미지 컨텐츠를 보여준다.
Figure 112008061494589-PCT00044
장치에 의해 지원되는 설정(해상도, 색상 심도, 기타)으로 이미지를 렌더링한다.
Figure 112008061494589-PCT00045
필요한 경우 디스플레이 차원에 들어가도록 이미지를 스케일링한다.
타이틀 바: [피드 이름]
미디어 유형: 오디오 및 텍스트 혼합
Figure 112008061494589-PCT00046
항목 <title>을 굵은체로 보여준다.
Figure 112008061494589-PCT00047
타이틀 앞에 이 항목이 오디오 컨텐츠, 예를 들어, 음악 또는 팟캐스트를 포함하고 있음을 나타내는 오디오 아이콘이 올 수 있다.
Figure 112008061494589-PCT00048
너무 긴 타이틀은 생략 부호로 되어 있을 수 있다.
Figure 112008061494589-PCT00049
존재하지 않는 타이틀은 항목 <description>의 첫번째 라인으로 대체될 수 있다.
Figure 112008061494589-PCT00050
항목 <description>의 첫번째 라인을 보여준다.
Figure 112008061494589-PCT00051
라인이 생략 부호로 되어(또는 절단되어) 있을 수 있다(이들 중 비용이 덜 드는 것으로 되어 있다).
Figure 112008061494589-PCT00052
존재하지 않는 설명 필드는 비어 있는 채로 둘 수 있다.
Figure 112008061494589-PCT00053
항목들은 가장 최근에 갱신된 순서로 위에서 아래로 디스플레이될 수 있다.
기본적인 2개의 라인 디스플레이가 RSS를 잘 지원하지 않으며, RSS 정보는 논란의 여지는 있지만 2개의 라인으로 되어 있는 이메일 또는 캘린더 정보보다 덜 중요하고 읽기 쉬울 수 있다. 2-라인 디스플레이를 위해,
Figure 112008061494589-PCT00054
첫번째 라인
Figure 112008061494589-PCT00055
피드 이름 - 항목 타임 스탬프를 보여준다
Figure 112008061494589-PCT00056
라인이 들어가지 않는 경우 생략 부호로 되어 있을 수 있다. 좌/우로 스크롤가능하다.
Figure 112008061494589-PCT00057
두번째 라인
Figure 112008061494589-PCT00058
항목 이름 - 항목 설명을 보여준다.
Figure 112008061494589-PCT00059
라인이 들어가지 않는 경우 생략 부호로 되어 있을 수 있다. 좌/우로 스크롤가능하다.
Figure 112008061494589-PCT00060
형식화 및 텍스트를 제외한 미디어를 거부한다.
Figure 112008061494589-PCT00061
피드를 내비게이션한다.
Figure 112008061494589-PCT00062
폴더 정보가 보이지 않는 이유는 중요하지 않기 때문이다.
Figure 112008061494589-PCT00063
가젯이 폴더/피드 트리를 축소시키고 항목들을 기본적인 디스플레이 상에 순차적으로 디스플레이한다.
Figure 112008061494589-PCT00064
피드에서 다음 항목으로 상/하 이동한다. 피드가 항목이 없게 될 때, 그 다음 피드가 디스플레이될 수 있다. 폴더가 없게 될 때, 그 다음 폴더의 첫번째 피드의 첫번째 항목이 디스플레이될 수 있으며, 이하 마찬가지이다.
본 발명에 다양한 수정 및 대안의 구성이 행해질 수 있지만, 본 발명의 어떤 예시된 실시예가 도면에 도시되고 이상에 상세히 기술되어 있다. 그렇지만, 본 발명을 개시된 특정의 형태로 제한하려는 것이 아니라 의도하는 바가 본 발명의 정신 및 범위 내에 속하는 모든 수정, 대안의 구조 및 등가물을 포함하는 것임을 잘 알 것이다.

Claims (20)

  1. 실행될 때,
    소스로부터 수신된 데이터를 처리하는 단계 - 상기 데이터와 연관된 메타데이터를 처리하는 단계를 포함하고, 상기 메타데이터는 상기 데이터와 연관된 컨텐츠를 핸들링하는 정보에 대응함 -, 및
    상기 컨텐츠를 핸들링하도록 가젯(gadget)을 인에이블시키기 위해 상기 메타데이터 정보를 사용하는 단계 - 상기 컨텐츠의 적어도 일부를 보조 디스플레이 플랫폼(auxiliary display platform)에 제공하는 단계를 포함함 - 를 수행하는 컴퓨터 실행가능 명령어를 갖는, 컴퓨터 판독가능 매체.
  2. 제1항에 있어서, 상기 메타데이터를 처리하는 단계는 상기 메타데이터에 대응하는 정보가 레지스트리에 있는지를 판정하는 단계를 포함하는 것인, 컴퓨터 판독가능 매체.
  3. 제2항에 있어서, 상기 메타데이터를 처리하는 단계는 상기 메타데이터에 대응하는 상기 정보가 상기 레지스트리에 있음을 나타내고,
    상기 가젯을 인에이블시키기 위해 상기 메타데이터 정보를 사용하는 단계는 상기 레지스트리 내의 상기 정보에 기초하여 가젯을 로딩 및 실행하는 단계를 포함하는 것인, 컴퓨터 판독가능 매체.
  4. 제2항에 있어서, 상기 메타데이터를 처리하는 단계는 상기 메타데이터에 대응하는 상기 정보가 상기 레지스트리에 없음을 나타내고,
    상기 가젯을 인에이블시키기 위해 상기 메타데이터 정보를 사용하는 단계는,
    상기 가젯을 설치하기 위해 상기 메타데이터에 대응하는 정보를 상기 레지스트리에 기록하는 단계, 및
    상기 가젯을 로딩 및 실행하는 단계를 포함하는 것인, 컴퓨터 판독가능 매체.
  5. 제1항에 있어서, 상기 컨텐츠의 상기 적어도 일부를 상기 보조 디스플레이 플랫폼에 제공하기 위해 상기 컨텐츠를 한 형식에서 다른 형식으로 변환하는 단계를 수행하는 컴퓨터 실행가능 명령어를 더 갖는, 컴퓨터 판독가능 매체.
  6. 제1항에 있어서, 상기 데이터 소스는 RSS 피드(feed)에 대응하고,
    상기 컴퓨터 판독가능 매체가 상기 RSS 피드로부터 오디오, 비디오, 이미지, 텍스트, 하나 이상의 MIME 유형, 또는 기타 컨텐츠 중 하나 이상을 포함하는 부가의 컨텐츠를 수신하는 단계를 수행하는 컴퓨터 실행가능 명령어를 더 갖는 것인, 컴퓨터 판독가능 매체.
  7. 제1항에 있어서, 상기 가젯을 인에이블시키기 위해 상기 메타데이터 정보를 사용하는 단계는, 레지스트리에 기록함으로써 적어도 하나의 가상 가젯(virtual gadget)을 생성하기 위해 하나의 가젯을 실행하는 단계를 포함하는 것인, 컴퓨터 판독가능 매체.
  8. 제1항에 있어서, 상기 가젯을 인에이블시키기 위해 상기 메타데이터 정보를 사용하는 단계는, 하나의 가젯이 다른 가젯에 대한 실행가능 소프트웨어를 배포 및 설치하게 하는 단계를 포함하는 것인, 컴퓨터 판독가능 매체.
  9. 컨텐츠를 보조 장치 상에 디스플레이하기 위해 상기 보조 장치와 통신을 하는 컴퓨터 시스템 및 데이터 소스를 갖는 컴퓨팅 환경에서의 방법으로서,
    가젯에서 수신된 데이터를 획득하는 단계,
    상기 수신된 데이터 중에 포함된 메타데이터를 처리하는 단계 - 상기 메타데이터는 상기 수신된 데이터와 연관된 컨텐츠를 핸들링할 수 있는 다른 가젯에 대응함 -,
    상기 메타데이터로부터 다른 가젯이 설치될 필요가 있는지를 판정하고, 설치될 필요가 있는 경우, 상기 다른 가젯을 설치하는 단계,
    상기 다른 가젯을 실행하는 단계, 및
    상기 다른 가젯을 통해 컨텐츠를 수신하는 단계 - 상기 보조 디스플레이 장치에서 소비하기 위한 상기 컨텐츠의 적어도 일부를 출력하는 단계를 포함함 - 를 포함하는 방법.
  10. 제9항에 있어서, 상기 메타데이터로부터 상기 다른 가젯이 설치될 필요가 있는지를 판정하는 단계는 레지스트리 내의 데이터에 액세스하는 단계를 포함하는 것인 방법.
  11. 제9항에 있어서, 상기 다른 가젯이 설치될 필요가 있고,
    상기 다른 가젯을 설치하는 단계는 상기 메타데이터에 대응하는 정보를 레지스트리에 기록하는 단계를 포함하는 것인 방법.
  12. 제9항에 있어서, 상기 보조 디스플레이 장치에서 소비하기 위한 상기 컨텐츠의 적어도 일부를 출력하는 단계는 상기 컨텐츠를 한 형식에서 다른 형식으로 변환하는 단계를 포함하는 것인 방법.
  13. 제9항에 있어서, 상기 데이터를 획득하는 단계는 RSS 피드를 구독하기 위해 통신을 하는 단계를 포함하는 것인 방법.
  14. 호스트 컴퓨터 및 상기 호스트 컴퓨터에 연결되어 있는 보조 장치를 갖는 컴퓨팅 환경에서의 시스템으로서,
    데이터 배포 소스(data distribution source)로부터 배포된 데이터를 수신하는 플랫폼,
    상기 플랫폼에 연결되어 있는 배포 가젯(distribution gadget) - 상기 배포 가젯은 상기 구독 플랫폼에서 수신되는 상기 배포된 데이터를 처리함 -,
    상기 배포 가젯과 연관된 설치 파일 메카니즘(installer mechanism) - 상기 설치 파일 메카니즘은 특정의 데이터 소스로부터 수신되는 일련의 상기 배포된 데이터 내의 정보에 기초하여 상기 특정의 데이터 소스에 필요한 특정의 가젯을 설치하도록 구성됨 -, 및
    상기 특정의 가젯으로부터 컨텐츠를 수신하는 보조 디스플레이 플랫폼 - 상기 컨텐츠는 상기 특정의 데이터 소스로부터 수신되는 상기 배포된 데이터에 대응함 - 을 포함하는 시스템.
  15. 제14항에 있어서, 상기 컴퓨팅 환경은 복수의 보조 디스플레이 장치들을 포함하며,
    상기 시스템은 상기 특정의 피드를 상기 보조 디스플레이 장치들의 서브셋에 관련시키는 매핑 메카니즘을 더 포함하는 것인 시스템.
  16. 제14항에 있어서, 상기 데이터 배포 소스는 블로그/RSS 소비(blog/RSS consumption), 블로그/RSS 생성(blog/RSS creation), 디지털 포토 프레임(digital photo frame), 팟캐스트(podcast), 및 사이드바 가젯(Sidebar gadget) 중 적어도 하나에 대응하는 RSS 데이터 소스인 것인 시스템.
  17. 제14항에 있어서, 상기 보조 장치는 제1 데이터 형식을 이해하고,
    상기 시스템은 데이터를 다른 데이터 형식에서 상기 제1 데이터 형식으로 변환하는 수단을 더 포함하는 것인 시스템.
  18. 제17항에 있어서, 상기 특정의 가젯은 데이터를 다른 데이터 형식에서 상기 제1 데이터 형식으로 변환하는 상기 수단과 연관되어 있는 것인 시스템.
  19. 제14항에 있어서, 상기 설치 파일 메카니즘은 상기 특정의 데이터 소스로부터 수신되는 정보에 대응하는 정보를 레지스트리에 기록함으로써 상기 특정의 가젯을 설치하는 것인 시스템.
  20. 제19항에 있어서, 상기 특정의 데이터 소스로부터 수신되는 상기 정보는 상기 가젯에 관계된 인클로저(enclosure) 내에 포함되어 있는 것인 시스템.
KR1020087021158A 2006-03-03 2007-01-23 배포된 컨텐츠에 대한 보조 디스플레이 가젯에 관한 방법, 시스템 및 컴퓨터 판독가능 매체 KR20080107397A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/367,997 2006-03-03
US11/367,997 US20070226734A1 (en) 2006-03-03 2006-03-03 Auxiliary display gadget for distributed content

Publications (1)

Publication Number Publication Date
KR20080107397A true KR20080107397A (ko) 2008-12-10

Family

ID=38459368

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087021158A KR20080107397A (ko) 2006-03-03 2007-01-23 배포된 컨텐츠에 대한 보조 디스플레이 가젯에 관한 방법, 시스템 및 컴퓨터 판독가능 매체

Country Status (17)

Country Link
US (1) US20070226734A1 (ko)
EP (1) EP1997002A4 (ko)
JP (1) JP2009528647A (ko)
KR (1) KR20080107397A (ko)
CN (1) CN101395572B (ko)
AU (1) AU2007221434B2 (ko)
BR (1) BRPI0708398A2 (ko)
CA (1) CA2642938A1 (ko)
IL (1) IL193301A0 (ko)
MX (1) MX2008011060A (ko)
MY (1) MY150206A (ko)
NO (1) NO20083693L (ko)
RU (1) RU2433452C2 (ko)
SG (1) SG170056A1 (ko)
TW (1) TW200802089A (ko)
WO (1) WO2007100429A1 (ko)
ZA (1) ZA200806928B (ko)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8424041B2 (en) 2005-09-07 2013-04-16 Sony Corporation Method and system for downloading content to a content downloader
WO2007119275A1 (ja) * 2006-03-20 2007-10-25 Brother Kogyo Kabushiki Kaisha 表示装置及び表示プログラムを記憶した記憶媒体
US7783990B2 (en) * 2006-05-05 2010-08-24 Microsoft Corporation Association of display elements
US20070288985A1 (en) * 2006-06-13 2007-12-13 Candelore Brant L Method and system for uploading content to a target device
US20070299850A1 (en) * 2006-06-23 2007-12-27 Ziqiang Qian Voice/Text Memo Synchronized Digital Photo Readers/Frames and Data Accessing Methods
JP5141118B2 (ja) * 2006-08-21 2013-02-13 株式会社リコー メタデータカスタマイズ方法
US7904418B2 (en) * 2006-11-14 2011-03-08 Microsoft Corporation On-demand incremental update of data structures using edit list
US9417758B2 (en) * 2006-11-21 2016-08-16 Daniel E. Tsai AD-HOC web content player
US20080256514A1 (en) * 2007-04-10 2008-10-16 Microsoft Corporation Side-by-side application manifests for single-purpose applications
US9336325B2 (en) 2007-05-02 2016-05-10 Htc Corporation Automatic download of contact-related web data feeds
US8316308B2 (en) * 2007-06-08 2012-11-20 Google Inc. Adaptive user interface for multi-source systems
US20090172140A1 (en) * 2007-12-27 2009-07-02 Richard John Pilkington Network device
TW200928772A (en) * 2007-12-27 2009-07-01 Wistron Neweb Corp Method and apparatus of multimedia data sharing for a multimedia processing device
US8365202B2 (en) * 2008-02-04 2013-01-29 Microsoft Corporation Framework for computing device with auxiliary display
US9448814B2 (en) * 2008-02-19 2016-09-20 Google Inc. Bridge system for auxiliary display devices
US8032918B2 (en) 2008-04-01 2011-10-04 Microsoft Corporation Application gadgets
US8504611B2 (en) * 2008-05-30 2013-08-06 Centurylink Intellectual Property Llc System and method for digital picture frame syndication
US20100058333A1 (en) * 2008-06-11 2010-03-04 Harold Lee Peterson Method, system and computer-readable medium for personalized gadget configuration
US20100011314A1 (en) * 2008-07-09 2010-01-14 Harold Lee Peterson System, method and computer-readable medium for providing a sidebar functionality as an aspect of a gadget
CN103235779B (zh) * 2008-08-07 2016-08-10 兄弟工业株式会社 通信装置
JP4702439B2 (ja) * 2008-11-27 2011-06-15 ブラザー工業株式会社 コンテンツ表示システム
US8316091B2 (en) * 2008-12-01 2012-11-20 At&T Mobility Ii Llc Content management for wireless digital media frames
US8386415B2 (en) * 2008-12-01 2013-02-26 At&T Mobility Ii Llc Portable wireless enabled digital media frame
US8510333B2 (en) * 2008-12-31 2013-08-13 Verizon Patent And Licensing Inc. Methods, systems, and apparatus for developing widgets
US8384564B2 (en) 2009-03-06 2013-02-26 Navteq B.V. Method and system for adding gadgets to a traffic report
US9026641B2 (en) * 2009-05-20 2015-05-05 Genieo Innovation Ltd. System and method for management of information streams delivered for use by a user
US8589793B2 (en) * 2009-06-04 2013-11-19 Hti Ip, L.L.C. Removable modular universal telematics services engine for an audio-visual control unit in a vehicle
KR101498078B1 (ko) * 2009-09-02 2015-03-03 엘지전자 주식회사 이동 단말기 및 디지털 액자 및 그 제어 방법
US8726147B1 (en) * 2010-03-12 2014-05-13 Symantec Corporation Systems and methods for restoring web parts in content management systems
US8457118B2 (en) 2010-05-17 2013-06-04 Google Inc. Decentralized system and method for voice and video sessions
JP2011248768A (ja) * 2010-05-28 2011-12-08 Sony Corp 情報処理装置、情報処理システム及びプログラム
US20120089687A1 (en) * 2010-10-11 2012-04-12 Eyal Katz Online messaging system and methods of using thereof
US9268367B2 (en) 2010-10-13 2016-02-23 Microsoft Technology Licensing, Llc Use of low-power display on device
US9760894B2 (en) * 2011-04-29 2017-09-12 Blackberry Limited Providing syndicated content associated with a link in received data
JP5183770B2 (ja) * 2011-05-20 2013-04-17 キヤノン株式会社 文書管理プログラム、情報処理装置
US9424439B2 (en) 2011-09-12 2016-08-23 Microsoft Technology Licensing, Llc Secure data synchronization
US10194239B2 (en) * 2012-11-06 2019-01-29 Nokia Technologies Oy Multi-resolution audio signals
US10033087B2 (en) * 2013-01-23 2018-07-24 Dell Products L.P. Articulating information handling system housing wireless network antennae supporting beamforming
US10380216B2 (en) * 2013-07-08 2019-08-13 Rakuten, Inc. Server, client terminal, service method, and program
CN109769127A (zh) * 2019-01-25 2019-05-17 北京字节跳动网络技术有限公司 视频同步发布方法、装置、电子设备及可读存储介质
CN111770182B (zh) * 2020-06-30 2022-05-31 北京百度网讯科技有限公司 数据推送方法和装置

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5862325A (en) * 1996-02-29 1999-01-19 Intermind Corporation Computer-based communication system and method using metadata defining a control structure
JPH09325883A (ja) * 1996-06-06 1997-12-16 Canon Inc 情報処理装置及びその方法及び情報処理システム及びその制御方法
FI103546B (fi) * 1996-09-16 1999-07-15 Nokia Telecommunications Oy Datapalvelu matkaviestinverkossa
US6216152B1 (en) * 1997-10-27 2001-04-10 Sun Microsystems, Inc. Method and apparatus for providing plug in media decoders
US6128621A (en) * 1997-10-31 2000-10-03 Oracle Corporation Apparatus and method for pickling data
US6151624A (en) * 1998-02-03 2000-11-21 Realnames Corporation Navigating network resources based on metadata
US6715126B1 (en) * 1998-09-16 2004-03-30 International Business Machines Corporation Efficient streaming of synchronized web content from multiple sources
US6857124B1 (en) * 1999-01-11 2005-02-15 Eolas Technologies, Inc. Method and system for hypermedia browser API simulation to enable use of browser plug-ins and applets as embedded widgets in script-language-based interactive programs
US6643652B2 (en) * 2000-01-14 2003-11-04 Saba Software, Inc. Method and apparatus for managing data exchange among systems in a network
JP2005044351A (ja) * 2000-03-23 2005-02-17 Fujitsu Ltd 状態表示制御装置及び電子装置並びに記憶媒体
TWI266106B (en) * 2002-08-09 2006-11-11 Sanyo Electric Co Display device with a plurality of display panels
CN1705967A (zh) * 2002-10-24 2005-12-07 伊米迪亚德公司 表示和控制显示设备上信息的系统
JP2005064770A (ja) * 2003-08-11 2005-03-10 Ricoh Co Ltd 情報処理装置、認証装置、外部装置、証明情報取得方法、認証方法、機能提供方法、証明情報取得プログラム、認証プログラム、機能提供プログラム及び記録媒体
US7239877B2 (en) * 2003-10-07 2007-07-03 Accenture Global Services Gmbh Mobile provisioning tool system
US7911409B1 (en) * 2003-10-07 2011-03-22 Adobe Systems Incorporated Independent views generated for multiple display devices by a software application
US7669177B2 (en) * 2003-10-24 2010-02-23 Microsoft Corporation System and method for preference application installation and execution
US7668939B2 (en) * 2003-12-19 2010-02-23 Microsoft Corporation Routing of resource information in a network
US8020106B2 (en) * 2004-03-15 2011-09-13 Yahoo! Inc. Integration of personalized portals with web content syndication
US20050210514A1 (en) * 2004-03-18 2005-09-22 Kittlaus Dag A System and method for passive viewing of media content and supplemental interaction capabilities
US7577771B2 (en) * 2004-05-03 2009-08-18 Microsoft Corporation Caching data for offline display and navigation of auxiliary information
JP2006040259A (ja) * 2004-06-25 2006-02-09 Fuji Photo Film Co Ltd 通信端末、サーバ、再生制御方法及びプログラム
JP2006059032A (ja) * 2004-08-18 2006-03-02 Business Online:Kk 商品情報の提供装置、提供方法、提供プログラム及びそのプログラムを記録した記録媒体
JP4978193B2 (ja) * 2004-11-30 2012-07-18 日本電気株式会社 情報処理装置、デバイスアクセス制御方法、及びデバイスアクセス制御プログラム
US7894535B2 (en) * 2005-08-23 2011-02-22 Sony Ericsson Mobile Communications Ab Systems and methods for distributing and/or playing multicasted video signals in multiple display formats
WO2007028128A2 (en) * 2005-09-01 2007-03-08 Vishal Dhawan Voice application network platform
US7512569B2 (en) * 2005-09-28 2009-03-31 Microsoft Corporation User defined components for content syndication
US7617190B2 (en) * 2005-11-29 2009-11-10 Microsoft Corporation Data feeds for management systems
US7779427B2 (en) * 2006-01-18 2010-08-17 Microsoft Corporation Automated application configuration using device-provided data
US8832574B2 (en) * 2009-06-30 2014-09-09 Nokia Corporation Apparatus and associated methods

Also Published As

Publication number Publication date
MX2008011060A (es) 2008-09-05
EP1997002A1 (en) 2008-12-03
MY150206A (en) 2013-12-13
IL193301A0 (en) 2009-05-04
ZA200806928B (en) 2009-10-28
AU2007221434A1 (en) 2007-09-07
US20070226734A1 (en) 2007-09-27
AU2007221434B2 (en) 2011-07-21
NO20083693L (no) 2008-10-03
CA2642938A1 (en) 2007-09-07
EP1997002A4 (en) 2009-10-21
BRPI0708398A2 (pt) 2011-05-31
CN101395572A (zh) 2009-03-25
JP2009528647A (ja) 2009-08-06
RU2008135708A (ru) 2010-03-10
CN101395572B (zh) 2013-05-01
TW200802089A (en) 2008-01-01
WO2007100429A1 (en) 2007-09-07
RU2433452C2 (ru) 2011-11-10
SG170056A1 (en) 2011-04-29

Similar Documents

Publication Publication Date Title
AU2007221434B2 (en) Auxiliary display gadget for distributed content
US11601385B2 (en) Conversion of text relating to media content and media extension apps
US11252252B2 (en) Installable web applications
US20140282371A1 (en) Systems and methods for creating or updating an application using a pre-existing application
US8572033B2 (en) Computing environment configuration
US9298747B2 (en) Deployable, consistent, and extensible computing environment platform
KR101224721B1 (ko) 컨텍스트-인식 플랫폼을 위한 시스템 및 방법
JP5075920B2 (ja) ウェブデータ使用のプラットフォーム
US7631267B2 (en) Auxiliary display sidebar integration
KR100747663B1 (ko) 위젯 실행이 가능한 휴대 단말기 및 대기화면 제어 방법
US8484574B2 (en) Rule-based multi-pane toolbar display
US20130080507A1 (en) External Service Application Discovery Method
WO2020052337A1 (zh) 信息处理方法、装置、存储介质及电子设备
JP2009533780A (ja) マルチメディアモバイル装置によるノートテイキングのユーザ体験
CN103577522A (zh) 用于管理数据的方法及其电子装置
US9251267B2 (en) Generating behavior information for a link
US8381172B2 (en) Method, apparatus, mobile terminal and computer program product for employing a form engine as a script engine
JP5081674B2 (ja) 通信端末
US20090172124A1 (en) Method and Apparatus of Multimedia Data Sharing for a Multimedia Processing Device
CN113822031A (zh) 用于处理代码模板的方法和装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application