KR20140045391A - 서로 다른 통신 인터페이스의 사용을 통한 디바이스의 제어 - Google Patents

서로 다른 통신 인터페이스의 사용을 통한 디바이스의 제어 Download PDF

Info

Publication number
KR20140045391A
KR20140045391A KR1020137032967A KR20137032967A KR20140045391A KR 20140045391 A KR20140045391 A KR 20140045391A KR 1020137032967 A KR1020137032967 A KR 1020137032967A KR 20137032967 A KR20137032967 A KR 20137032967A KR 20140045391 A KR20140045391 A KR 20140045391A
Authority
KR
South Korea
Prior art keywords
command
format
message
receiving device
interface
Prior art date
Application number
KR1020137032967A
Other languages
English (en)
Other versions
KR101964480B1 (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 KR20140045391A publication Critical patent/KR20140045391A/ko
Application granted granted Critical
Publication of KR101964480B1 publication Critical patent/KR101964480B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C23/00Non-electrical signal transmission systems, e.g. optical systems
    • G08C23/04Non-electrical signal transmission systems, e.g. optical systems using light waves, e.g. infrared
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C19/00Electric signal transmission systems
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C17/00Arrangements for transmitting signals characterised by the use of a wireless electrical link
    • G08C17/02Arrangements for transmitting signals characterised by the use of a wireless electrical link using a radio link
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C2201/00Transmission systems of control signals via wireless link
    • G08C2201/40Remote control systems using repeaters, converters, gateways
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C2201/00Transmission systems of control signals via wireless link
    • G08C2201/40Remote control systems using repeaters, converters, gateways
    • G08C2201/42Transmitting or receiving remote control signals via a network
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C2201/00Transmission systems of control signals via wireless link
    • G08C2201/60Security, fault tolerance
    • G08C2201/63Redundant transmissions
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C2201/00Transmission systems of control signals via wireless link
    • G08C2201/90Additional features
    • G08C2201/93Remote control using other portable devices, e.g. mobile phone, PDA, laptop

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer And Data Communications (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

사용자가 제어 디바이스(105)를 조작할 때 어떤 커맨드가 수신 디바이스(110)를 동작시키도록 사용될 수 있는지 결정하기 위한 방법 및 디바이스. 그러한 결정이 이루어진 후에, 제1 커맨드는 제1 통신 인터페이스를 통해 제어 디바이스(105)로부터 수신 디바이스로 송신되고 제2 커맨드는 제2 통신 인터페이스를 통해 수신 디바이스(110)에 송신된다. 선택되는 통신 인터페이스는 제어 디바이스가 그러한 커맨드로 직접 수신 디바이스(110)의 동작을 제어할 수 있는지 또는 개재 디바이스(130/140)가 커맨드를 제1 포맷으로부터 제2 포맷으로 번역하도록 요구되는지에 의존한다.

Description

서로 다른 통신 인터페이스의 사용을 통한 디바이스의 제어{CONTROL OF DEVICES THROUGH THE USE OF DIFFERENT COMMUNICATION INTERFACES}
관련 출원에 대한 상호-참조
본 특허 출원은 2011년 5월 12일자로 출원된 미국 가특허 출원 제61/485,608호에 대한 이익 및/또는 우선권을 주장하며, 구체적으로 그 내용 전체는 참조에 의해 본 명세서에 편입되는 것이다.
기술분야
본 발명은 2개의 디바이스 간 커맨드의 통신, 구체적으로는 커맨드의 제1 세트가 제1 통신 인터페이스를 통해 통신되고 커맨드의 제2 세트가 제2 통신 인터페이스를 통해 통신되는 2개의 디바이스 간 통신을 갖는 분야에 관한 것이다.
홈 설정에 있어서, 사용자는 디스플레이 디바이스 및 셋톱 박스를 사용하여 케이블, 전화, 위성 제공자와 같은 다중 서비스 제공자(multiple service provider: MSO)로부터 수신된 프로그래밍을 디스플레이할 수 있다. 서로 다른 프로그래밍 옵션을 선택하기 위해, 사용자는 또한 태블릿, 폰, 리모컨과 같은 제어 디바이스를 사용하여 셋톱 박스에 채널 변경, 프로그램 녹화, 전자적 프로그램 가이드 디스플레이 등을 포함하는 다양한 액션을 수행하라고 명령할 수 있다. 일부 경우에 있어서, 제어 디바이스로부터 셋톱 박스에 보내진 커맨드는 커맨드 자체가 셋톱 박스에 의해 인식되지 않을 수 있기 때문에 지원되지 않을 수 있다. 제어 디바이스로부터의 커맨드는 또한 셋톱 박스가 전유 커맨드를 발행하는 권한부여된 제어 디바이스에만 응답하는 경우 셋톱에 전유인 커맨드 세트가 있을 수 있기 때문에 셋톱 박스에 의해 무시될 수 있다.
구체적으로, 셋톱 박스는 권한부여된 클래스의 제어 디바이스와 상호동작가능하도록 되어 있는 전자적 프로그램 가이드 룩업, 비디오 녹화 등과 같은 특수 애플리케이션을 구현할 수 있다. 셋톱 박스와 작동할 수 있는 권한부여된 클래스의 제어 디바이스의 예는 셋톱 박스의 것과 동일한 제조자로부터의 제어 디바이스, 셋톱 박스 상에서 제어가능한 애플리케이션을 실행시키도록 라이선스를 구입한 제어 디바이스, 다양한 보안 프로토콜을 사용하여 인증되는 제어 디바이스 등을 포함할 수 있다. 그래서, 사용자가 셋톱 박스 디바이스와 권한부여되지 않은 제어 디바이스를 사용하여 MSO로부터 수신된 미디어의 기록 또는 재생을 제어하기를 원할 때 서로 다른 커맨드, 상태 및 이벤트 메시지가 그러한 디바이스 간 왔다갔다 전송될 수 있는 경우 문제가 있다.
2개의 디바이스 간 제어 디바이스로부터 수신 디바이스로 어떤 커맨드가 지원될 수 있는지의 결정이 이루어지는 방법 및 시스템이 제시된다. 그러한 결정이 이루어지고 나면, 제1 커맨드는 제어 디바이스로부터 수신 디바이스로 제1 통신 인터페이스를 통해 송신된다. 그 후 제어 디바이스는, 또한, 수신 디바이스로 제1 통신 인터페이스와는 다른 제2 통신 인터페이스를 통해 제2 커맨드를 송신한다. 제2 통신 인터페이스를 통해 제어 디바이스 및 수신 디바이스에 결합되는 서버는 제2 커맨드를 제1 포맷으로부터 제2 포맷으로 번역할 수 있다.
본 발명의 이들 및 다른 태양, 특징 및 이점이 수반 도면과 연관하여 읽혀지는 바람직한 실시예의 아래의 상세한 설명으로부터 명백하게 되거나 설명될 것이다.
도면에 있어서, 유사한 참조 숫자는 도면 내내 유사한 엘리먼트를 표시한다.
도 1은 본 발명에 따라 컨텐트를 배달하기 위한 예시적 시스템의 블록 선도;
도 2는 서로 다른 디바이스 간 커맨드를 배달하기 위한 방법의 플로차트;
도 3은 디바이스 간 커맨드를 송신할 때 사용하기 위해 서로 다른 통신 인터페이스를 결정하기 위한 방법의 플로차트.
설명되는 실시예는 사용자의 가정 내 MSO로부터의 소비자 댁내 장비의 전형적 배치에 적용될 수 있다. 아래에 설명되는 원리는 오디오, 비디오, 텍스트, 컴퓨터 게임, 비디오 게임 등과 같은 미디어가 기록 및/또는 재생을 위해 수신되는 어떠한 유형의 설정에라도 적용될 수 있다고 예상된다.
도 1을 이제 참조하면, 본 발명의 일 실시예에 따라 다중 서비스 오퍼레이터로부터 미디어를 수신하는데 사용되는 시스템(100)이 도시되어 있다. 도 1에서 디바이스 간 사용될 수 있는 통신 인터페이스는 RF, 동축 케이블, 광섬유 케이블, 전화 회선, 디지털 가입자 회선, 케이블, T3, 이더넷 등을 포함할 수 있다. 시스템(100)의 디바이스는 하나 이상의 프로세서의 사용을 통해 컴퓨터 활성화된 코드를 실행할 수 있다.
제어 디바이스(105)는 수신 디바이스(110)를 통해 미디어의 선택 및/또는 재생을 제어하는데 사용될 수 있는 태블릿, 폰, 컴퓨터, 리모컨, 입력 디바이스, 퍼스널 액세스 디바이스, 디스플레이 디바이스 등과 같은 디바이스이다. 구체적으로, 제어 디바이스(105)는 MSO로부터 수신된 프로그래밍의 기록 및/또는 재생을 제어하는데 사용되는 커맨드를 수신 디바이스(110)에 발행한다. 부가적으로, 제어 디바이스(105)로부터의 커맨드는 전자적 프로그램 가이드 기능, 비디오 온 디맨드 구입 및 재생 등과 같이 수신 디바이스(110) 상에 애플리케이션을 활성화시키는데 사용될 수 있다. 옵션 실시예에 있어서, 제어 디바이스(105)는 스트리밍과 같은 기술을 사용함으로써 수신 디바이스(110)를 통해 수신된 미디어를 재생할 수 있거나 또는 제어 디바이스(105)는 미디어가 수신 디바이스(110)를 통해 수신되는 경우 추후의 재생을 위해 그러한 미디어를 다운로드할 수 있다. 수신 디바이스(110)는 또한 애플리케이션 서버(130), 헤드 엔드 서버(140) 및 컨텐트 서버(150)와 통신하도록 구성될 수 있다.
수신 디바이스(110)는 MSO로부터 미디어를 수신할 수 있는 셋톱 박스, 컴퓨터, 디스플레이 디바이스, 수신기 등과 같은 디바이스일 수 있다. 수신 디바이스(110)는 애플리케이션 서버(130), MSO의 헤드 엔드 서버(140), 및 미디어가 저장되는 컨텐트 서버(150)와 동작하도록 구성될 수 있다. 일 실시예에 있어서, 제어 디바이스(105) 및 수신 디바이스(110)는 RF 커맨드를 사용하여서와 같이 제1 통신 스킴을 사용하여 서로 통신할 수 있는 한편, 그러한 디바이스는 애플리케이션 서버(130) 및 헤드 엔드 서버(140)가 아래에 설명되는 바와 같이 제2 통신 포맷을 위한 중개자로서 동작하는 경우 제2 통신 포맷을 사용하여 서로 통신할 수 있다. 컨텐트 서버(150)에는 기록 및/또는 재생을 위해 수신 디바이스(110)에 배달되는 오디오, 비디오, 텍스트, 컴퓨터 게임, 비디오 게임 등 미디어가 들어있을 수 있다.
제어 디바이스(105), 수신 디바이스(110), 애플리케이션 서버(130), 헤드 엔드 서버(140) 및 컨텐트 서버(150)는, 다른 메시징 스킴이 사용될 수 있기는 하지만, 강화된 TV 이진 교환 포맷(Enhanced TV Binary Interexchange Format: EBIF)과 같은 메시징 스킴을 사용하여 도 1에 도시된 어느 다른 디바이스와 통신할 수 있다. 전형적으로, EBIF 커맨드는 패킷 페이로드 내 발신 디바이스의 ID 번호 및 패킷의 헤더 내 수신 디바이스의 (디바이스에 특정한 ID, 맥(MAC) 어드레스, IP 어드레스 등일 수 있는) 디바이스 ID 번호를 사용하여 송신된다.
일 실시예에 있어서, 애플리케이션 서버(130)는 통신 인터페이스를 통해 수신되는 제어 디바이스(105)로부터의 커맨드를 해석하도록 구성된다. 구체적으로, 레스트(REST; representational state transfer) 서비스는 제어 디바이스(105)로부터 커맨드를 수신하는 애플리케이션 서버(130) 상에 호스팅된다. REST 명명법을 사용하여, 커맨드는 특정 서버, 인터넷 프로토콜 어드레스(IP) 등으로 향해질 수 있는 URI(Uniform Resource Identifier) "/c3_ebif/stb_addressed_messages"를 사용하여 제어 디바이스(105)로부터 애플리케이션 서버(130)로 송신된다. 설명되는 서비스의 비교상 URI는 본 발명의 명세서 내 제공된 예들에서 똑같은 한편, 서버 이름 및 IP 어드레스는 다를 것임을 주목하라. 또한 URI에는 단일 경로 파티클의 접두사가 붙을 수 있는데, 그러한 접두사는 필요에 기반해서 수정될 수 있다.
그 후 애플리케이션 서버(130)는 수신된 커맨드 또는 상태 요청을 URI "/c3_ebif/stb_addressed_messages"를 사용하여 헤드 엔드 서버(140)에 포워딩할 수 있다. 애플리케이션 서버(130)는 수신된 URI를 EBIF 커맨드로 번역할 수 있고 그 후 수신 디바이스(110)에 포워딩됨으로써 커맨드가 TVWork, EnableTV, 애플리케이션 프레임워크 등과 같은 EBIF 인터프리터 프레임워크에 의해 해석되어 수신 디바이스(110)가 EBIF 커맨드로 명시된 액션을 수행하게 야기한다.
역 커맨드 경로는 수신 디바이스(110)가 EBIF 포맷을 사용하여 헤드 엔드 서버(140)에 커맨드를 발행하는 본 발명의 실시예로 포함될 수 있다. 헤드 엔드 서버는 REST 스킴을 사용하여 EBIF 커맨드를 URI "/c3_ebif/stb_originated_messages"로 해석해서 REST PUT 요청 커맨드를 사용하여 애플리케이션 서버(130)에 송신된다. 애플리케이션 서버(130)는 이전에 서술된 URI에 명시된 디바이스, 본 예에서는 제어 디바이스(105)에 특정한 큐에 커맨드를 복사할 수 있다. 제어 디바이스(105)는 현재 줄지어 있는 커맨드 중 어느 것을 애플리케이션 서버(130)로부터 요청할 수 있고, 그로써 그러한 커맨드는 커맨드가 배달되고 나면 애플리케이션 서버(130) 내 큐로부터 삭제된다. 또한 애플리케이션 서버(130)는 그러한 커맨드가 헤드 엔드 서버(140)로부터 수신될 때마다 수신된 커맨드를 제어 디바이스(105)에 송신하도록 구성될 수 있다. 설명되는 원리의 서로 다른 실시예는 도 1의 디바이스 간 커맨드를 통신함에 있어서 "푸시(push)", "풀(pull)" 또는 그러한 기술의 조합을 사용할 수 있음이 주목된다. REST 프레임워크에 대해, "푸시" 커맨드는 PUT HTTP 커맨드를 사용하여 수행되는 한편 "풀" 커맨드는 GET HTTP를 사용하여 수행된다. 이러한 유형의 EBIF/REST 기술을 사용하여, 매핑은 제어 디바이스(105)를 수신 디바이스(110)에 매핑하는데 사용될 수 있고 이 경우 디바이스가 도 1에 도시된 바와 같은 시스템으로부터 제거 또는 부가됨에 따라 리매핑 동작이 수행될 수 있다.
본 발명의 일 실시예에 있어서, 애플리케이션 서버(130)는 제어 디바이스(105)로부터 수신된 커맨드 메시지를 동일 가정 내에 있는 수신 디바이스(110)에 보내는데 사용되는 서비스를 호스팅한다. "/c3_ebif/stb_addressed_messages"와 같은 URI 커맨드는 커맨드 및 상태 요청을 보내도록 양쪽에 사용된다. 이러한 서비스의 구현은 요청을 헤드 엔드 서버(140)에 의해 호스팅되는 /c3_ebif/stb_addressed_messages 서비스에 중계한다.
/c3_ebif/stb_addressed_messages 엔드포인트는 HTTP PUT 동사를 지원한다. 각각의 메시지의 컨텐트는 단일 커맨드 또는 상태 요청 메시지이다. 이러한 서비스에 의해 지원되는 MIME 컨텐트-유형은 "application/vnd.technicolor.c3_ebif.request.vl"로서, 커스텀 인코딩과 연관된 컨텐트-유형 식별자이다. 요청은 요청이 어드레싱되는 수신 디바이스의 식별자를 포함해야 한다. 이 식별자는 커스텀 HTTP 헤더 "x-c3-ebif-stb-identifier"에 저장된다. STB-식별자 값은 메시지가 보내지려는 수신 디바이스(110)의 MAC 어드레스이다. MAC 어드레스는 식별자에 리스팅된다. HTTP 요청의 바디를 구성하는 커맨드 메시지는 본 명세서에서 설명되는 파이프-디리미티드 포맷(pipe-delimited format)으로 배달될 수 있다.
서비스 엔드포인트는 모든 다른 REST 서비스에 의해 사용되는 보안을 위해 동일한 x-device-token/x-user-token HTTP 헤더를 사용한다. 따라서, 애플리케이션 서버(130)는 HTTP 헤더에 어드레싱된 발신 제어 디바이스(105) 및 수신 디바이스(110)를 추론할 수 있다. 이상적으로는, 제어 디바이스(105)의 식별자는 커맨드 메시지와 보내어진 x-device-token/x-user-token-header와 연관된 디바이스와 매칭해야 한다.
헤드 엔드 서버(140)는 애플리케이션 서버(130)로부터 수신 디바이스(110)로 커맨드 메시지를 중계하는데 사용되는 서비스를 호스팅한다. 서비스 엔드포인트 /c3_ebif/stb_addressed_messages는 디바이스 간 커맨드를 보내는데에도 상태 메시지를 보내는데에도 사용된다. 본 발명의 일 실시예에 있어서, 그 서비스는 EBIF 프로토콜을 사용하여 stb_addressed_messages에 리스팅된 어드레싱된 제어 디바이스에 메시지를 라우팅한다.
서비스 엔드포인트가 URI "/c3_ebif/stb_addressed_messages"에서 사용될 때, HTTP PUT 커맨드는 메시지의 컨텐트가 단일 커맨드 또는 상태 요청 메시지인 경우에 사용된다. 메시지의 포맷은 그러한 요청이 어드레싱되는 수신 디바이스(110)를 식별해야 한다. 식별자는 HTTP 헤더 "x-c3-ebif-stb-identifier"에 저장된다. stb-identifier 값은 그러한 커맨드를 수신해야 하는 제어 디바이스(110)의 MAC 어드레스이어야 한다. HTTP 요청의 바디를 구성하는 커맨드 메시지는 본 명세서에서 설명되는 파이프-디리미티드 포맷으로 배달될 수 있다.
또한 애플리케이션 서버(130)는 수신 디바이스(110)에 의해 발행된 어떠한 커맨드라도 애플리케이션 서버(130)에 통지하는데 사용될 수 있는 URI "/c3_ebif/stb_originated_messages"에서의 서비스를 호스팅하도록 구성될 수 있다. 또한, 애플리케이션 서버(130)는 수신 디바이스(110)로부터 제어 디바이스(105)로 커맨드 및 상태 요청 커맨드 응답을 중계할 수 있다. 이전에 설명된 큐에 중점을 두면, 커맨드 또는 상태 메시지는 애플리케이션 서버(130)에 의해 축적될 수 있고 그 다음에는 소정 시간 후에 제어 디바이스(105)에 "푸시"되거나 또는 제어 디바이스(105)로부터 애플리케이션 서버(130)로의 정보 요청에 의해 "풀"된다.
/c3_ebif/stb_originated_messages 엔드포인트는 HTTP PUT 동사를 지원한다. 각각의 메시지의 컨텐트는 단일 커맨드 또는 상태 요청 메시지이다. 이러한 서비스에 의해 지원되는 MIME 컨텐트-유형은 "text/www-url-formencoded"이고, 데이터 컨텐트는 이상적으로는 수신 디바이스(110)로부터 애플리케이션 서버(130)로 보내어진 데이터와 동일하다. 애플리케이션 서버 상의 /c3_ebif/stb_originaled_messages 서비스는, 바람직하게는 거의 수정 없이, 메시지로 존재한다.
HTTP 요청은 메시지를 발행한 수신 디바이스(110)를 식별할 수 있다. 이러한 식별자는 HTTP 헤더 "x-c3-ebif-stb-identifier"에 저장되어 있고 이 경우 stb-identifer 값은 수신 디바이스(110)의 MAC 어드레스이다. 또한 헤더에는 (대역 외 대 대역 내 메시지를 비교하여) EBIF 포맷으로 커맨드를 발행한 제2 수신 디바이스의 로케이션이 들어있을 수 있다. 메시지 바디의 바디에는 커맨드를 수신하기로 되어 있는 수신지 제어 디바이스(105)를 식별하는 정보가 들어있어야 한다. 메시지가 커맨드 또는 상태 응답 메시지이면, 메시지에서의 식별자는 원래 요청에서의 원래 수신지 식별자에 리스팅된 제어 디바이스(105)의 식별자와 매칭해야 한다. 메시지가 이벤트 메시지이면, 그때 메시지에서의 식별자는 수신 디바이스(110)로부터의 이벤트 메시지를 통지받기 위해 이전에 가입한 제어 디바이스(105)와 매칭해야 한다.
애플리케이션 서버(130)는 본 발명의 일 실시예에 있어서 서비스를 운용하도록 구성된다. 그 서비스는 수신 디바이스(110)로부터 발신되어 어느 제어 디바이스(105)로 어드레싱되는 커맨드 메시지를 큐잉 및 결국에는 배달하는데 사용된다. 서비스 엔드포인트 /c3_ebif/device_queue는 커맨드, 상태 응답 및 이벤트 메시지를 수신하도록 양쪽에 사용된다. 이러한 서비스의 구현은 제어 디바이스(105)에 어드레싱되는 메시지를 큐잉한다. GET 서비스 요청에 대한 응답은 특정 제어 디바이스(105)에 어드레싱되는 모든 큐잉된 메시지를 반환하고, 그 후 애플리케이션 서버(130)의 큐로부터 이들 메시지를 비운다.
/c3_ebif/device_queue 엔드포인트는 HTTP GET 커맨드를 지원한다. 각각의 메시지의 컨텐트는 단일 커맨드 또는 상태 요청 메시지이다. 메시지의 포맷은 수신 디바이스(110) 응답 메시지의 XML 패키징이다. 개개의 응답 메시지는 수신 디바이스에서의 커맨드 앱에 의해 방출된 커맨드 메시지와 동일하게 포맷팅된다. 메시지의 수집은 본 발명의 일 실시예에 있어서는, 단일 루트 엘리먼트로, 커맨드 응답 메시지의 수집을 단일 XML 문서로 패키징하는 XML 포맷으로 "래핑된다(wrapped)". 개개의 응답 메시지는 또한 소스 수신 디바이스 식별자(MAC 어드레스)를 각각의 커맨드 응답 메시지와 연관시킬 수 있다. 이러한 서비스에 의해 지원되는 MIME 컨텐트 유형은, 메시지 내에 들어있는 개개의 커맨드 응답 메시지가 컨텐트-유형 식별자 "text/www-url-formencoded"에 따라 포맷팅되기는 하지만, "text/xml"이다.
서비스에 대한 요청을 프로세싱하기 위해, 그 큐가 액세스되려는 것인 제어 디바이스(105) 식별자를 요청이 포함해야 한다. 식별자는 정규 REST 서비스 디바이스 토큰 또는 사용자 디바이스 토큰에 의해 제공되어, 요청과 보내어지도록 요구된다. 토큰으로부터, 애플리케이션 서버(130)는 디바이스 ID를 추론할 수 있다. 응답에서 반환된 메시지는 애플리케이션 서버 130/c3_ebif/stb_originated_messages 서비스를 통해 디바이스에 어드레싱되는 모든 배달되지 않은 커맨드 응답 메시지를 포함할 것이다.
애플리케이션 서버(130)는 커맨드 요청을 C3EBIFChannelFacade 인터페이스의 구현으로 번역 및 중계하는 "/c3_ebif/stb_addressed_messages"에서의 서비스를 실행할 수 있다. 그 인터페이스는 애플리케이션 서버(130)와 헤드 엔드 서버(140) 간 통신 채널을 지원하기 위한 균일 파사드(uniform facade)이도록 설계된다. 일 구현은 양방향으로 애플리케이션 서버(130)와 헤드 엔드 서버(140) 간 메시지 교환의 "푸시" 통지 스타일을 지원할 수 있다. /c3_ebif/device_queue 서비스는 또한 동일한 C3EBIFChannelFacade 인터페이스로부터의 커맨드 응답을 번역 및 큐잉한다.
설명된 인터페이스는 "푸시" 스타일 메시지 발신 동작을 사용하여 제어 디바이스(105)로부터 수신 디바이스(110)로 발신하는 메시지의 중계를 포함하는 수개의 동작을 지원하도록 설계된다. 또 다른 동작은 "풀" 스타일 메시지 검색 동작을 사용하여 발신하는 이벤트를 수신하기 위해 C3EBIFChannelFacade를 사용하여 제어 디바이스(105)에 배달될 수 있는 수신 디바이스(110)로부터의 발신하는 큐잉된 메시지를 제공한다. 다른 지원되는 동작은 수신 디바이스(110)로부터 발신되는 이벤트에 대한 특정 관심을 등록하기도 등록해제하기도 하도록 제어 디바이스(105)를 제공한다.
위에서 설명된 파사드의 JAVA 구현을 아래에 나타낸다:
Figure pct00001
메시지-기반 시스템에서 푸시/풀 극성 반전이 있을 때마다, 메시지 큐는 결국에는 "풀" 메커니즘을 통한 배달을 위해 메시지를 버퍼링하도록 요구된다. 위에서 설명된 시스템은 수신 디바이스(110) 대 제어 디바이스(105)에 대한 시퀀스에서 푸시/풀 극성 반전을 갖는다. 구체적으로, 헤드 엔드 서버(140)는 /c3_ebif/stb_originated_messages REST 서비스를 통해 애플리케이션 서버(130)에 제어 메시지를 푸시하고, 제어 디바이스(105)는 /c3_ebif/device_queue REST 서비스를 통해 애플리케이션 서버(130)로부터 이들 메시지를 한다.
이러한 푸시/풀 극성 반전은 C3EBIFChannelFacade 인터페이스에 노출된다. 그 인터페이스는 수신 디바이스(110)에 커맨드 메시지를 보내기(send) 위해 푸시 방법을 그리고 특정 제어 디바이스(105)에 어드레싱되는 메시지를 검색하기(recieveDeviceMessages) 위해 풀 방법을 제시한다. 따라서, 큐잉 구현은 C3EBIFChannelFacade 구현에는 내부적이고, REST 서비스-기반 인터페이스 구현에는 특정적이다.
커스텀 파이프-디리미티드 포맷은 본 명세서에서 설명되는 서비스의 일부 실시예에 대해 커맨드, 상태 요청 메시지 및 이벤트를 표현하는데 사용된다. 구체적으로, 일부 실시예는 설명된 서비스가 중계 포인트에서의 메시지 파싱을 요구함이 없이 메시지 중계 및 배달을 용이하게 하도록 정확히 동일한 파이프-디리미티드 커맨드 메시지 포맷을 사용하는 것을 지원한다. 이들 서비스는 애플리케이션 서버(130)에서는 수신 디바이스(110)에 메시지를 송신하도록 제어 디바이스(105)에 의해 사용되는 /c3_ebif/stb_addressed_messages REST 서비스 요청 바디를 포함하고, 헤드 엔드 서버(140)는 애플리케이션 서버(130)와 헤드 엔드 서버(140) 간 메시지를 수신 디바이스(110)에 송신하도록 사용되는 /c3_ebif/stb_addressed_messages REST 서비스 요청 바디이다. 이러한 포맷은 또한 위에서 설명된 파사드 인터페이스에 사용된다.
파이프-디리미티드 포맷은 커맨드를 송신하는데 사용되고 이 경우 설명된 실시예 중 일부는 서로 다른 중계 포인트에서 메시지 파싱을 요구함이 없이 메시지 중계 및 배달을 최소화하기 위해 동일 유형의 XML 포맷을 사용한다. 즉, 그러한 커맨드는 수신 디바이스(110)로부터 애플리케이션 서버(130)로 메시지를 중계하도록 사용되는 /c3_ebif/stb_originated_messages 서비스의 REST 서비스 요청 바디에서 발견될 것이다. C3EBIFChannelFacade 커맨드 receiveDeviceMessages는, 그러한 정보를, 반환되는 커맨드 메시지 컨텐트에 사용되는 반환된 Tuple2 오브젝트의 제2 멤버에 넣는다. 부가적으로, 애플리케이션 서버(130)의 /c3_ebif/device_queue 서비스에서의 반환 값은 송신된 XML 문서에 그렇게 래핑되었을 것이다.
커맨드 메시지가 XML 메시지 바디로서 인코딩될 때, 제1 메시지 유형은 특정 수신 디바이스(110)를 표적으로 하는 제어 디바이스(105)로부터 발신하는 메시지인 상태 요청 메시지 및 커맨드이다. 커맨드 응답, 상태 응답 및 자발적 이벤트 메시지를 포함하는 다른 메시지 유형은 등록되어 있는 제어 디바이스(105)로 수신 디바이스로부터 발신하는 커맨드이다.
커맨드 및 상태 메시지는 일부 실시예에 있어서는 커스텀 이진, 파이프-디리미티드 포맷으로 인코딩될 수 있다. 설명된 포맷은 이미 EBIF 통신을 위해 EnableTV에 의해 사용되고 있다. 메시지는 2-바이트 "트리거 값" 0x0001로 시작한다. 메시지의 그 다음 2개의 바이트는, 바이트로, 메시지의 2-바이트 빅-엔디안 정수 길이이다. 더 구체적으로, 이러한 정수의 이러한 값은, 2 "트리거 값" 바이트 및 2 메시지-길이 바이트를 포함하지 않는, 메시지의 나머지의 길이이다. 메시지의 나머지는 ASCII-인코딩된, 파이프-디리미티드 페이로드이다. 메시지는 스트링 필드의 어레이로 생각될 수 있고, 이 경우 필드는 파이프-캐릭터 구분문자에 의해 분리된다. 제1 필드는 항상 ASCII 십진 인코딩된 메시지 유형 코드이다. 나머지 필드는, 수에서도 컨텐트에서도, 메시지-특정적이다. 메시지 전체는 항상 마지막 파이프-캐릭터에 의해 종단된다.
도 2를 참조하면, 플로차트(200)가 도시되어 있다. 플로차트(200)는 채널 변경 커맨드를 수신 디바이스(110)에 발행하는 제어 디바이스(105)를 설명하고 있다. 이러한 실시예에 있어서, 제어 디바이스(105)는 ID "tabXYZ"를 갖고 수신 디바이스(110)는 "00-B0-D0-86-BB-F8"의 MAC 어드레스를 갖는다. 채널 변경 커맨드 요청은 가상 채널 "5"에 대해서이다. 이전에, 제어 디바이스(105)는 "CAFEBABE"에 컴포트하는 애플리케이션 서버(130)로부터의 디바이스 토큰을 획득하였다.
단계(205)에서, 제어 디바이스(105)는 애플리케이션 서버(130)에 파이프-디리미티드 포맷으로 커맨드를 보낸다. 커맨드의 포맷은 이렇다:
Figure pct00002
단계(210)에서, 애플리케이션 서버(130)는 이하의 포맷을 사용하여 헤드 엔드 서버(140)에 파이프-디리미티드 포맷으로 커맨드 메시지를 포워딩한다:
Figure pct00003
단계(215)에서, 헤드 엔드 서버(140)는 수신 디바이스(110)에 파이프-디리미티드 포맷으로 커맨드 메시지를 포워딩한다. 헤드 엔드 서버(140)는 메시지에 리스팅되어 표적으로 된 수신 디바이스 MAC 어드레스를 아래의 포맷으로 분해한다:
Figure pct00004
단계(220)에서, 수신 디바이스(110)는 수신된 커맨드를 프로세싱한다. 소정 포인트 후에, 단계(225)에서, 수신 디바이스(110)는 이름/값 페어로서 일부분으로서 메시지 컨텐트가 인코딩되는 HTTP 요청을 통해 헤드 엔드 서버(140)에 커맨드를 보낸다. 옵션으로서, 헤드 엔드 서버(140)는 XML 백채널을 통해 메시지의 수신을 확인해준다. 수신 디바이스(110)로부터 헤드 엔드 서버(140)로의 메시지 포맷은 이렇다:
Figure pct00005
단계(230)에서, 헤드 엔드 서버(140)는 수신된 메시지를 후에 애플리케이션 서버(130)에 포워딩되는 이진 파이프-디리미티드 포맷으로 번역한다. 번역된 메시지의 포맷은 이렇다:
Figure pct00006
단계(235)에서, 애플리케이션 서버(130)는 커맨드 응답 메시지에 매립된 ID를 사용하여 표적 제어 디바이스(105)를 분해한다. 메시지의 복사본은, 수신 디바이스(110)의 MAC 어드레스와 함께, 제어 디바이스(105)와 연관되는 애플리케이션 서버(130) 내 큐에 놓인다. 단계(240)에서, 결국에는 제어 디바이스(105)는 다른 메시지 또한 저장될 수 있는 애플리케이션 서버(130) 내 큐에 있는 메시지를 요청한다. 그러한 메시지는 아래에 나타낸 바와 같은 XML 문서의 형태로 배달된다:
Figure pct00007
단계(245)에서, 제어 디바이스(105)는 수신된 XML 문서를 파싱하고 동봉된 메시지를 프로세싱한다.
단계(250)에서, 수신 디바이스(110)는 채널 변경 커맨드가 성공적이었음을 헤드 엔드 서버(140)에 알린다. 메시지의 컨텐트는 이름/값 페어의 세트로서 인코딩된다. 옵션으로서, 헤드 엔드 서버(140)는 XML 백채널을 통해 메시지의 수신을 확인해준다. 단계(255)에서는 헤드 엔드 서버(140)가 메시지를 이진 파이프-디리미티드 포맷으로 번역하여 그러한 메시지가 애플리케이션 서버(130)에 포워딩된다.
단계(260)에서는 애플리케이션 서버(130)가 메시지의 표적으로 의도된 제어 디바이스(105)를 분해하는데 이 경우 수신 디바이스(110)의 ID 및 응답 메시지 "채널 변경됨"의 복사본이 함께 보내진다. 단계(265)에서, 제어 디바이스(105)는 결국에는 애플리케이션 서버(130) 내 메시지 큐의 컨텐트를 요청한다.
도 3을 이제 참조하면, 플로차트(300)가 도시되어 있다. 플로차트(300)는 2개의 디바이스 간 사용될 메시지 스킴을 결정하는 것으로 향해져 있다. 단계(305)에서, 수신 디바이스(110)는 범용 플러그 앤 플레이(UPnP)와 같은 디스커버리 메커니즘, 고화질 멀티미디어 인터페이스(HDMI)를 통한 디바이스 룩업, 제어 디바이스(105) 상에서 지원되는 애플리케이션을 결정하는 수신 디바이스(110) 상의 애플리케이션 실행, 원격 서버로부터 수신된 정보, IP 어드레스 룩업 및 다른 기술을 사용하여 제어 디바이스(105)의 신원을 결정하도록 프로그램을 실행시킬 수 있다. 그러한 정보로부터, 수신 디바이스는 제어 디바이스(105)가 특정 커맨드를 발행하도록 권한부여된 반면 다른 커맨드는 제한되어 있음을 결정할 수 있다. 예컨대, 권한부여된 커맨드는 수신 디바이스(110)에 의해 출력되는 볼륨을 증가 또는 감소시키는 커맨드일 수 있다. 제어 디바이스(115)로부터 수신되면 지원되지 않는 커맨드는 채널 녹화 또는 EPG 정보 커맨드일 수 있다.
단계(305)의 옵션 파트로서, 수신 디바이스(110)가 지원될 커맨드를 인식하고 나면, 수신 디바이스(110)는 제어 디바이스(105)에 그러한 디바이스가 서로 인터페이싱할 수 있으면 지원되는 커맨드의 세트를 알린다. 예컨대, 적외선을 사용하는 RF 인터페이스는, 지원된다면, 도 2의 통신 스킴이 또한 사용될 수 있는 동안 사용될 수 있다.
단계(310)에서, 제어 디바이스(105)는 커맨드 세트의 일부분으로서 지원되는 커맨드를 제1 통신 인터페이스를 통해 수신 디바이스(110)에 통신한다. 단계(315)에서, 제어 디바이스(105)는 제2 통신 인터페이스를 사용하여 커맨드의 제2 세트의 일부분으로서 제2 커맨드를 통신한다. 본 발명에 따른 이러한 제2 통신 인터페이스의 일 실시예는, 본 발명의 범위 내에서 다른 실시예가 사용되고 고려될 수 있기는 하지만, 도 2와 관련하여 설명되는 바와 같다.
제1 실시예에 있어서, 통신 인터페이스는 어떠한 개재 서버 또는 다른 디바이스도 없이 제어 디바이스(105)와 수신 디바이스(110)를 물리적으로 결합하는 커넥션이다. 제2 실시예에 있어서, 통신 인터페이스는 또한 제어 디바이스(105)와 수신 디바이스(110) 간 결합일 수 있는데 이 경우 양 디바이스 간 통신은 도 2와 관련하여 설명된 바와 같은 본 발명에 따라 다른 디바이스 및/또는 서버를 통해 일어난다.
커맨드가 제어 디바이스(105)로부터 발행될 때, 제어 디바이스(110)의 동작에 영향을 미칠 수 있는 그러한 서로 다른 커맨드의 예가 표 1에 도시되어 있다. 개방된 커맨드는 제1 통신 인터페이스를 통해 송신될 수 있고 제한된 커맨드는 제2 통신 인터페이스를 통해 송신될 수 있음을 주목하라. 그러한 결정은 본 발명의 일 실시예에 따라 위에서 리스팅된 디스커버리 기술에 응답하여 수신 디바이스(110)로부터 수신된 정보에 응답해서 이루어질 수 있다. 본 발명의 또 다른 실시예에 있어서, 제어 디바이스(105)는, 커맨드를 송신할 때 어느 통신 인터페이스가 사용되어야 하는지 결정할 때 그러한 커맨드 어떤 것이 제한되어 있는지 또는 개방되어 있는지 결정하도록 수신 디바이스(110)를 폴링할 수 있다. 또한 송신되는 커맨드의 포맷은 그러한 커맨드가 제한되어 있는지 개방되어 있는지에 의해 영향을 받을 수 있다. 예컨대, 개방된 커맨드는 RF 신호, XML, 텍스트 등일 수 있다. 제한된 커맨드는, 필요하면, 제2 포맷으로 번역될 수 있는 EBIF, UPnP, HDMI 등과 같은 포맷일 수 있다.
Figure pct00008
제한된 커맨드 및 개방된 커맨드의 분류는 디바이스의 배치, 소프트웨어 업그레이드, 하드웨어 업그레이드 등에 의존하여 바뀔 수 있다. 즉, 본 원리를 갖는 일 실시예에 따라, 서로 다른 디바이스에 대해 동일한 커맨드는 서로 다르게 분류될 수 있다. 예컨대, 제1 제어 디바이스(105)가 수신 디바이스(110)와 통신할 때, 커맨드는 개방된 것으로 분류될 수 있다. 제2 제어 디바이스(105)가 동일한 수신 디바이스(110)와 통신할 때, 동일한 커맨드는 제한된 것으로 분류될 수 있다.
본 원리에 따른 일 실시예에 있어서, 커맨드가 제어 디바이스(105)로부터 수신 디바이스(110)로 발행될 때 "제한된" 커맨드라고 결정되면, 제어 디바이스(105)는 발행된 커맨드가 수신 디바이스(110)에 성공적으로 송신되었는지 알고 있지 않을 수 있다. 그 이유로, 애플리케이션 서버(130)와 같은 개재 디바이스는 커맨드가 수신 디바이스(110)로 하여금 소망의 동작을 수행하게 한 때를 나타내도록 사용될 수 있다. 즉, 수신 디바이스(110)는 소망의 동작이 성공적이었음을 나타내는 메시지를 헤드 엔드 서버(140)를 통해 애플리케이션 서버(130)에 발행할 수 있다. 본 원리에 따른 일 실시예는 수신 디바이스(110)가 응답한 커맨드를 어떤 디바이스가 최초에 발행하였는지에 대해 디바이스가 지식이 부족할 때 수신 디바이스(110)가 그러한 메시지를 발행하는 것을 제공한다. 본 원리에 따른 또 다른 실시예에 있어서, 수신 디바이스(110)는 제어 디바이스(105)가 커맨드를 발행하였지만 그러한 커맨드가 제한된 커맨드이고 개방된 커맨드가 아닌 것을 수신 디바이스가 인식할 때 수신된 커맨드가 성공적이었음을 발행한다.
본 발명의 일 실시예에 있어서, 제1 및 제2 실시예의 혼합이 채용될 수 있다. 도면에 도시된 엘리먼트는 다양한 형태의 하드웨어, 소프트웨어 또는 그 조합으로 구현될 수 있음을 이해해야 한다. 바람직하게는, 이들 엘리먼트는 프로세서, 메모리 및 입력/출력 인터페이스를 포함할 수 있는 하나 이상의 적절히 프로그래밍된 범용 디바이스 상에서 소프트웨어 및 하드웨어의 조합으로 구현된다.
본 설명은 본 발명의 원리를 예시하고 있다. 그러므로, 본 명세서에서 명시적으로 설명되거나 도시되지 않았더라도, 당업자라면 본 발명의 원리를 구체화하고 그 범위 내에 포함되는 다양한 배열을 고안할 수 있을 것임을 인식할 것이다.
본 명세서에서 열거된 모든 예 및 조건부 언어는 발명자에 의해 기술을 발전시키는데 기여된 개념 및 발명의 원리를 이해함에 있어서 독자를 돕기 위한 정보 목적으로 의도되는 것이고, 그러한 구체적으로 열거된 예 및 조건으로의 한정은 없는 것으로 해석되어야 한다.
더욱, 본 발명의 특정 예뿐만 아니라 원리, 태양 및 실시예를 열거하는 본 명세서의 모든 서술은 구조적 및 기능적 모두의 그 균등물을 아우르는 것으로 의도된다. 부가적으로, 그러한 균등물은 현재 알려져 있는 균등물뿐만 아니라 장래에 개발되는 균등물, 즉, 구조에 상관없이 동일한 기능을 수행하는 개발되는 어떠한 엘리먼트라도 포함하는 것으로 의도된다.
그러므로, 예컨대, 본 명세서에서 제시된 블록 선도는 본 발명의 원리를 구체화하는 예시적 회로의 개념도를 표현하는 것임을 당업자라면 인식할 것이다. 마찬가지로, 어떠한 플로차트, 흐름도, 상태 전이도, 의사코드 등이라도 컴퓨터 또는 프로세서가 명시적으로 도시되었든 아니든 컴퓨터가 읽을 수 있는 매체에서 실질적으로 표현되고 그러한 컴퓨터 또는 프로세서에 의해 그렇게 실행될 수 있는 다양한 프로세스를 표현하는 것임을 인식할 것이다. 컴퓨터가 읽을 수 있는 매체 및 쓰여져 있는 코드는 (예컨대, CD-ROM, DVD, 블루-레이, 하드 드라이브, 플래시 카드 또는 다른 형태의 유형적 저장 매체와 같은 유형적 매체 상에) 일시적 상태(신호) 및 비-일시적 상태로 구현될 수 있다.
도면에 도시된 다양한 엘리먼트의 기능은 전용 하드웨어뿐만 아니라 적절한 소프트웨어와 연관되어 소프트웨어를 실행할 수 있는 하드웨어의 사용을 통해서도 제공될 수 있다. 프로세서에 의해 제공될 때, 기능은 단일의 전용 프로세서에 의해, 단일의 공유 프로세서에 의해 또는 일부가 공유될 수도 있는 복수의 개별 프로세서에 의해 제공될 수 있다. 더욱, 용어 "프로세서" 또는 "컨트롤러"의 명시적 사용은 소프트웨어를 실행할 수 있는 하드웨어만을 배타적으로 지칭하는 것으로 해석되어서는 안 되고, 제한 없이, 내포적으로, 디지털 신호 프로세서("DSP") 하드웨어, 소프트웨어를 저장하기 위한 롬("ROM"), 램("RAM") 및 비휘발성 저장소를 포함할 수 있다.
관용적 및/또는 주문형의 다른 하드웨어도 포함될 수 있다. 마찬가지로, 도면에 도시된 어떠한 스위치라도 개념적인 것일 뿐이다. 그들 기능은 프로그램 로직의 동작을 통해, 전용 로직을 통해, 프로그램 제어 및 전용 로직의 상호작용을 통해 또는 수동으로도 수행될 수 있고, 특정 기술은 맥락으로부터 더 구체적으로 이해되는 바와 같이 구현자에 의해 선택가능하다.
본 발명의 교시를 편입하고 있는 실시예들이 본 명세서에서 상세히 설명되고 도시되었지만, 당업자라면 이들 교시를 여전히 편입하고 있는 많은 다른 다양한 실시예들을 쉽게 고안할 수 있다. 주목할 것은, 위의 교시에 비추어 당업자에 의해 수정 및 변형이 이루어질 수 있다는 것이다.

Claims (11)

  1. 디바이스로부터 수신된 정보에 응답하여 적어도 하나의 커맨드를 상기 디바이스에 제1 인터페이스를 통해 송신할지 및 제2 인터페이스를 통해 송신할지를 결정하는 단계를 포함하는, 디바이스 간 커맨드를 통신하기 위한 방법.
  2. 제1항에 있어서, 상기 결정하는 단계는 송신될 상기 적어도 하나의 커맨드가 개방된 커맨드 또는 제한된 커맨드인 것에 응답하여 결정되는 것인, 디바이스 간 커맨드를 통신하기 위한 방법.
  3. 제2항에 있어서, 상기 적어도 하나의 커맨드가 개방된 커맨드인 것으로 결정되는 경우 상기 적어도 하나의 커맨드를 상기 디바이스에 상기 제1 인터페이스를 통해 송신하는 단계를 더 포함하는, 디바이스 간 커맨드를 통신하기 위한 방법.
  4. 제2항에 있어서, 상기 적어도 하나의 커맨드가 제한된 커맨드인 것으로 결정되는 경우 상기 적어도 하나의 커맨드를 상기 디바이스에 상기 제2 인터페이스를 통해 송신하는 단계를 더 포함하는, 디바이스 간 커맨드를 통신하기 위한 방법.
  5. 제4항에 있어서, 상기 송신하는 단계는 상기 적어도 하나의 커맨드를 제1 포맷으로 서버에 송신하되, 상기 커맨드는 상기 디바이스로의 송신을 위해 상기 서버에 의해 제2 포맷으로 번역되는 것인, 디바이스 간 커맨드를 통신하기 위한 방법.
  6. 제5항에 있어서, 상기 제1 포맷은 레스트 스테이트 트랜스퍼(Rest State Transfer: REST) 포맷이고 상기 제2 포맷은 강화된 TV 이진 교환 포맷(Enhanced TV Binary Interexchange Format: EBIF)인 것인, 디바이스 간 커맨드를 통신하기 위한 방법.
  7. 제5항에 있어서, 상기 서버는, 상기 디바이스로부터 수신된 제2 적어도 하나의 커맨드를, 상기 제2 적어도 하나의 커맨드가 상기 적어도 하나의 커맨드를 송신한 디바이스에 송신되고 있을 때, 상기 제2 포맷으로부터 제1 포맷으로 번역하는 것인, 디바이스 간 커맨드를 통신하기 위한 방법.
  8. 제1항에 있어서, 상기 제1 인터페이스는 제어 디바이스와 상기 디바이스 간 직접 접속된 물리적 링크이고, 상기 제2 인터페이스는 제1 포맷으로부터 제2 포맷으로 상기 적어도 하나의 커맨드의 번역을 수행하는 개재 서버를 갖는 네트워크를 통하는 것인, 디바이스 간 커맨드를 통신하기 위한 방법.
  9. 제1 커맨드를 제1 통신 매체를 통해 제2 디바이스에 송신하고 제2 커맨드를 제2 통신 매체를 통해 상기 제2 디바이스에 송신하는 제1 디바이스로서, 선택되는 통신 매체는 상기 제1 및 제2 커맨드가 개방된 것인지 또는 제한된 것인지에 의존하는 것인 상기 제1 디바이스; 및
    상기 제2 통신 매체를 통해 상기 제1 디바이스와 상기 제2 디바이스 간에 개재하는 서버를 포함하되, 상기 서버는 상기 제1 디바이스로부터 수신된 상기 제2 커맨드를, 상기 제2 디바이스에 번역된 커맨드를 포워딩하기 전에, 제1 포맷으로부터 제2 포맷으로 번역하는 것인, 디바이스 간 커맨드를 통신하기 위한 시스템.
  10. 커맨드의 속성에 의존하여 상기 커맨드를 디바이스에 제1 인터페이스를 통해 송신할지 또는 제2 인터페이스를 통해 송신할지를 결정하기 위한 수단;
    상기 제1 인터페이스를 통해 상기 커맨드를 송신하기 위한 수단; 및
    상기 제2 인터페이스를 통해 상기 커맨드를 송신하기 위한 수단을 포함하는, 커맨드를 송신하는 디바이스.
  11. 제10항에 있어서, 상기 커맨드의 상기 속성은 개방된 커맨드 또는 제한적인 커맨드 중 어느 하나인 것인, 커맨드를 송신하는 디바이스.
KR1020137032967A 2011-05-12 2012-05-10 서로 다른 통신 인터페이스의 사용을 통한 디바이스의 제어 KR101964480B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201161485608P 2011-05-12 2011-05-12
US61/485,608 2011-05-12
PCT/US2012/037366 WO2012154982A1 (en) 2011-05-12 2012-05-10 Control of devices through the use of different communication interfaces

Publications (2)

Publication Number Publication Date
KR20140045391A true KR20140045391A (ko) 2014-04-16
KR101964480B1 KR101964480B1 (ko) 2019-04-01

Family

ID=46149729

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137032967A KR101964480B1 (ko) 2011-05-12 2012-05-10 서로 다른 통신 인터페이스의 사용을 통한 디바이스의 제어

Country Status (6)

Country Link
US (1) US9401085B2 (ko)
EP (1) EP2707860B1 (ko)
JP (1) JP6159717B2 (ko)
KR (1) KR101964480B1 (ko)
CN (1) CN103650012B (ko)
WO (1) WO2012154982A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150136600A (ko) * 2013-03-29 2015-12-07 톰슨 라이센싱 원격 스마트 폰을 이용한 아이들에 의한 컨텐츠 시청의 부모 제어
US9762637B2 (en) * 2014-03-21 2017-09-12 Ptc Inc. System and method of using binary dynamic rest messages
US10313410B2 (en) 2014-03-21 2019-06-04 Ptc Inc. Systems and methods using binary dynamic rest messages
US10264312B2 (en) * 2014-12-04 2019-04-16 Lg Electronics Inc. Method for controlling IP-based HDMI device
CN105607958B (zh) * 2015-12-24 2021-06-08 小米科技有限责任公司 信息输入方法及装置
US10135950B2 (en) * 2016-10-10 2018-11-20 Google Llc Creating a cinematic storytelling experience using network-addressable devices

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001251532A (ja) * 2000-03-08 2001-09-14 Matsushita Electric Ind Co Ltd テレビシステム
US6812881B1 (en) * 1999-06-30 2004-11-02 International Business Machines Corp. System for remote communication with an addressable target using a generalized pointing device

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5822544A (en) * 1990-07-27 1998-10-13 Executone Information Systems, Inc. Patient care and communication system
DE19925721B4 (de) 1999-06-07 2015-11-05 Caterpillar Global Mining Europe Gmbh Verfahren und Einrichtung zur ferngesteuerten Betätigung eines Steuergeräts
JP2001169368A (ja) * 1999-12-07 2001-06-22 Kenwood Corp リモートコントローラ及び送信制御方法
DE50107064D1 (de) 2001-11-20 2005-09-15 Trumpf Medizin Systeme Gmbh & Co Kg Verfahren und Vorrichtung zur Fernbedienung eines Operationstisches
US8014768B2 (en) * 2003-04-30 2011-09-06 Disney Enterprises, Inc. Mobile phone multimedia controller
CN1938974A (zh) * 2003-04-30 2007-03-28 迪斯尼实业公司 蜂窝电话多媒体控制器
CN1333539C (zh) 2003-12-29 2007-08-22 明基电通股份有限公司 远程遥控电子装置的方法
CN1725902A (zh) * 2004-07-20 2006-01-25 李廷玉 手机遥控器
US8054854B2 (en) * 2004-08-26 2011-11-08 Sony Corporation Network remote control
JP4293108B2 (ja) 2004-10-14 2009-07-08 ソニー株式会社 リモート・コントロール・システム及びリモート・コントロール方法、リモート・コントローラ、並びに電子機器
US7450852B2 (en) * 2005-07-21 2008-11-11 Microsoft Corporation IR control signal distribution via a communications network
JP2007258984A (ja) * 2006-03-22 2007-10-04 Toshiba Corp 無線通信装置及び無線通信方法
JP2008263308A (ja) 2007-04-10 2008-10-30 Sony Corp リモートコントローラ、電子機器および遠隔操作システム
US8134454B2 (en) * 2008-03-26 2012-03-13 Computime, Ltd Receiver module with dual mode capability
CN201194132Y (zh) * 2008-05-04 2009-02-11 江卫平 一种多路智能数码遥控装置
US10264029B2 (en) * 2009-10-30 2019-04-16 Time Warner Cable Enterprises Llc Methods and apparatus for packetized content delivery over a content delivery network
CN101719855A (zh) * 2009-11-10 2010-06-02 佘培嘉 通过互联网或短消息进行远程控制的智能系统
CN201750483U (zh) * 2009-12-15 2011-02-16 上海天智电业发展有限公司 家用电器控制系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6812881B1 (en) * 1999-06-30 2004-11-02 International Business Machines Corp. System for remote communication with an addressable target using a generalized pointing device
JP2001251532A (ja) * 2000-03-08 2001-09-14 Matsushita Electric Ind Co Ltd テレビシステム

Also Published As

Publication number Publication date
WO2012154982A1 (en) 2012-11-15
EP2707860A1 (en) 2014-03-19
KR101964480B1 (ko) 2019-04-01
EP2707860B1 (en) 2017-10-25
JP2014519740A (ja) 2014-08-14
CN103650012A (zh) 2014-03-19
US9401085B2 (en) 2016-07-26
JP6159717B2 (ja) 2017-07-05
CN103650012B (zh) 2018-04-20
US20140062679A1 (en) 2014-03-06

Similar Documents

Publication Publication Date Title
KR101964480B1 (ko) 서로 다른 통신 인터페이스의 사용을 통한 디바이스의 제어
US8149711B2 (en) Data stream control for network devices
US9473744B2 (en) Method and apparatus for providing user input back channel in audio/video system
KR102040623B1 (ko) 양방향 서비스를 처리하는 장치 및 방법
US7907213B1 (en) Wireless multimedia content at television host device
WO2016165584A1 (zh) 一种终端之间的通信方法和装置
KR20070117505A (ko) 네트워크 상에서 원격으로 장치에 엑세싱하는 방법 및시스템
US20110296460A1 (en) Method and apparatus for providing remote user interface (ui) service
US20140365856A1 (en) Improved rendering system
JP6007697B2 (ja) キャッシュ装置、キャッシュプログラム及びコンテンツ配信システム
US9277027B2 (en) Method for providing message and device therefor
CN102577245A (zh) 使用外部网络连接的ue控制本地网络ue上的外部网络媒体
KR20110025012A (ko) 근거리 네트워크에서 사용자 인터페이스 매칭장치 및 방법
US8583726B2 (en) Event-processing method and system for a home network supporting a remote user interface
US20150256584A1 (en) Synchronous transmission server
KR100754221B1 (ko) 네트워크 디바이스간의 서비스 요청 방법 및 그 방법을수행할 수 있는 네트워크 디바이스와 저장 매체
US9774904B2 (en) Method and apparatus for searching for IPTV service relay devices and method and apparatus for interacting with devices
KR102079339B1 (ko) 클라우드 시스템상의 컨텐츠를 디엘엔에이로 연결된 디바이스로 전달하는 전자 장치 및 방법
KR101548226B1 (ko) 홈 게이트웨이를 이용한 미디어 컨텐츠 푸쉬 방법
US11595734B2 (en) Technologies for providing stream metadata to clients
KR101696795B1 (ko) 범용 플러그 앤 플레이 네트워크 상의 서비스를 포트 포워딩을 이용하여 원격 디바이스에게 제공하기 위한 방법 및 시스템
JP6947174B2 (ja) プロキシデバイス、プロキシデバイスの処理方法およびネットワーク装置
KR101512323B1 (ko) 주거 네트워크의 iptv 서비스 중계 디바이스를 검색하고, 상호작용하는 방법 및 장치
KR20100058348A (ko) 복수의 캐시서버를 이용한 컨텐츠 전송 시스템 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant