KR102001221B1 - 디바이스간 통신 방법 및 시스템 - Google Patents

디바이스간 통신 방법 및 시스템 Download PDF

Info

Publication number
KR102001221B1
KR102001221B1 KR1020130039511A KR20130039511A KR102001221B1 KR 102001221 B1 KR102001221 B1 KR 102001221B1 KR 1020130039511 A KR1020130039511 A KR 1020130039511A KR 20130039511 A KR20130039511 A KR 20130039511A KR 102001221 B1 KR102001221 B1 KR 102001221B1
Authority
KR
South Korea
Prior art keywords
external device
service
external
information
protocol
Prior art date
Application number
KR1020130039511A
Other languages
English (en)
Other versions
KR20140082541A (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 삼성전자주식회사
Priority to EP13868614.2A priority Critical patent/EP2936923B1/en
Priority to CN201380060935.2A priority patent/CN104823515B/zh
Priority to PCT/KR2013/011932 priority patent/WO2014104656A1/en
Priority to US14/140,227 priority patent/US9952985B2/en
Publication of KR20140082541A publication Critical patent/KR20140082541A/ko
Application granted granted Critical
Publication of KR102001221B1 publication Critical patent/KR102001221B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2816Controlling appliance services of a home automation network by calling their functionalities
    • H04L12/282Controlling appliance services of a home automation network by calling their functionalities based on user interaction within the home
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/283Processing of data at an internetworking point of a home automation network
    • H04L12/2832Interconnection of the control functionalities between home networks
    • 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/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L2012/284Home automation networks characterised by the type of medium used
    • H04L2012/2841Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L2012/2847Home automation networks characterised by the type of home appliance used
    • H04L2012/2849Audio/video appliances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

디바이스간 통신 방법 및 시스템이 제공된다. 제 1 디바이스를 통하여 제 2 디바이스가 외부 기기와 서비스를 제공하는 방법은, 적어도 하나의 외부 기기와의 서비스 연결이 실패됨에 따라, 상기 외부 기기에 대한 서비스 데이터를 중계할 제 1 디바이스를 검색하는 단계; 상기 제 1 디바이스에게 중계 요청 신호를 전송하는 단계; 및 상기 제 1 디바이스에게 상기 외부 기기에 대한 서비스 데이터를 전송하는 단계;를 포함하며, 상기 전송된 서비스 데이터는 상기 제 1 디바이스에 의해 변환되고, 상기 변환된 서비스 데이터가 상기 외부 기기에게 제공된다.

Description

디바이스간 통신 방법 및 시스템{Method and system for communication between device}
본 발명은 중계기를 통하여 디바이스간에 서비스 데이터를 송수신하는 디바이스간 통신 방법 및 시스템에 관한 것이다.
스마트 폰, 태블릿 PC와 같은 디바이스들이 유비쿼터스화(ubiquitous)되면서 상술한 디바이스와 함께 사용될 수 있는 주변 기기(외부 기기)들이 다양하게 개발되고 있다. 주변 기기는 상술한 디바이스에서 실행되고 있는 특정 애플리케이션과 함께 동작할 수 있는 기기이다. 따라서 상술한 디바이스를 액세서리의 호스트 디바이스라고 언급하기도 한다.
상술한 바와 같이 다양한 주변 기기들이 개발되고 통신 기술이 다양해짐에 따라 서비스 프로토콜이 상이한 경우가 자주 발생한다. 따라서 상이한 서비스 프로토콜을 갖는 주변 기기간, 또는 주변 기기와 호스트 디바이스간에 서비스 커넥션을 위한 기술이 필요하다.
본 발명이 해결하고자 하는 과제는 서로 다른 서비스 프로토콜을 갖는 디바이스 간에 서비스 커넥션을 위한 방법 및 시스템과 그 기록 매체를 제공하는데 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면은, 적어도 하나의 외부 기기와의 서비스 연결이 실패됨에 따라, 상기 외부 기기에 대한 서비스 데이터를 중계할 제 1 디바이스를 검색하는 단계; 상기 제 1 디바이스에게 중계 요청 신호를 전송하는 단계; 및 상기 제 1 디바이스에게 상기 외부 기기에 대한 서비스 데이터를 전송하는 단계;를 포함하며, 상기 전송된 서비스 데이터는 상기 제 1 디바이스에 의해 변환되고, 상기 변환된 서비스 데이터가 상기 외부 기기에게 제공되는 것인, 상기 제 1 디바이스를 통하여 상기 제 2 디바이스가 상기 외부 기기와 서비스를 제공하는 방법을 제공할 수 있다.
또한, 상기 제 2 디바이스의 서비스 프로토콜이 상기 외부 기기의 서비스 프로토콜과 상이함에 따라, 상기 서비스 연결이 실패될 수 있다.
또한, 상기 제 1 디바이스에 의해 변환된 서비스 데이터는 상기 외부 기기의 서비스 프로토콜에 기초하여 변환될 수 있다.
또한, 상기 서비스 프로토콜은 상기 제 2 디바이스 및 상기 외부 기기에 설치된 OS(Operating System)의 종류, 상기 제 2 디바이스 및 상기 외부 기기가 제공하는 서비스의 종류, 및 상기 제 2 디바이스 및 상기 외부 기기에서 이용되는 데이터의 포맷 중 적어도 하나에 따라 구별될 수 있다.
또한, 상기 방법은, 상기 적어도 하나의 외부 기기와 물리적으로 연결되는 단계; 및 상기 물리적으로 연결된 상기 외부기기에게 서비스 연결을 요청하는 단계;를 더 포함할 수 있다.
또한, 상기 서비스 연결을 요청하는 단계는, 상기 제 2 디바이스에 상기 외부 기기의 제어와 관련된 애플리케이션을 설치하고, 상기 설치된 애플리케이션을 통하여 상기 서비스 연결을 요청할 수 있다.
또한, 상기 제 1 디바이스를 검색하는 단계는, 상기 제 2 디바이스의 기기 정보 및 상기 제 2 디바이스에서 제공될 서비스에 관한 정보를 브로드캐스팅함으로써 상기 제 1 디바이스를 검색할 수 있다.
또한, 상기 제 1 디바이스를 검색하는 단계는, 상기 제 2 디바이스의 기기 정보 및 상기 외부 기기의 기기 정보를 브로드캐스팅함으로써 상기 제 1 디바이스를 검색할 수 있다.
또한, 상기 서비스 데이터는, 상기 외부 기기의 제어와 관련된 애플리케이션에 의해 생성된 데이터일 수 있다.
또한, 본 발명의 제 2 측면은, 적어도 하나의 외부 기기에 대한 서비스 데이터의 중계를 요청하는 중계 요청 신호를 상기 제 2 디바이스로부터 수신하는 단계; 상기 외부 기기의 서비스 프로토콜과 상기 제 2 디바이스의 서비스 프로토콜을 비교하는 단계; 상기 외부 기기의 서비스 프로토콜과 상기 제 2 디바이스의 서비스 프로토콜이 상이함에 따라, 상기 제 2 디바이스로부터 수신되는 서비스 데이터를 상기 외부 기기의 서비스 프로토콜에 적합하게 변환하는 단계; 및 상기 변환된 서비스 데이터를 상기 외부 기기에게 전송하는 단계;를 포함하는, 제 1 디바이스가 제 2 디바이스와 외부 기기 간의 서비스 데이터를 중계하는 방법을 제공할 수 있다.
또한, 상기 중계 요청 신호를 수신하는 단계는, 상기 제 2 디바이스가 상기 외부 기기에 대한 서비스 연결을 실패함에 따라 상기 제 2 디바이스로부터 상기 중계 요청 신호를 수신할 수 있다.
또한, 상기 제 2 디바이스의 서비스 프로토콜이 상기 외부 기기의 서비스 프로토콜과 상이함에 따라, 상기 서비스 연결이 실패될 수 있다.
또한, 상기 서비스 프로토콜은 상기 제 2 디바이스 및 상기 외부 기기에 설치된 OS(Operating System)의 종류, 상기 제 2 디바이스 및 상기 외부 기기가 제공하는 서비스의 종류, 및 상기 제 2 디바이스 및 상기 외부 기기에서 이용되는 데이터의 포맷 중 적어도 하나에 따라 구별될 수 있다.
또한, 상기 방법은, 상기 제 2 디바이스로부터 브로드캐스팅된 상기 제 2 디바이스의 기기 정보 및 상기 제 2 디바이스에서 제공될 서비스에 관한 정보를 수신하는 단계; 및 상기 수신된 상기 제 2 디바이스의 기기 정보 및 상기 제 2 디바이스에서 제공될 서비스에 관한 정보에 기초하여, 상기 제 2 디바이스에게 ACK 신호를 전송하는 단계;를 더 포함하며, 상기 중계 요청 신호는, 상기 ACK 신호에 기초하여, 상기 제 2 디바이스로부터 수신될 수 있다.
또한, 상기 방법은, 상기 제 2 디바이스로부터 브로드캐스팅된 상기 제 2 디바이스의 기기 정보 및 상기 외부 기기의 기기 정보를 수신하는 단계; 및 상기 수신된 상기 제 2 디바이스의 기기 정보 및 상기 외부 기기의 기기 정보에 기초하여, 상기 제 2 디바이스에게 ACK 신호를 전송하는 단계;를 더 포함하며, 상기 중계 요청 신호는, 상기 ACK 신호에 기초하여, 상기 제 2 디바이스로부터 수신될 수 있다.
또한, 상기 서비스 데이터는, 상기 외부 기기의 제어와 관련된 애플리케이션에 의해 상기 제 2 디바이스에서 생성된 데이터일 수 있다.
또한, 상기 적어도 하나의 외부 기기는 상기 제 1 디바이스에 연결될 수 있다.
또한, 상기 방법은, 상기 적어도 하나의 외부 기기의 목록을 상기 제 2 디바이스에게 제공하는 단계;를 더 포함하며, 상기 중계 요청 신호를 수신하는 단계는, 상기 외부 기기의 목록 중에서 상기 제 2 디바이스에 의해 선택된 외부 기기에 대한 중계 요청 신호를 수신할 수 있다.
또한, 본 발명의 제 3 측면은, 적어도 하나의 프로그램이 저장되는 메모리; 및 상기 적어도 하나의 프로그램을 실행함으로써 상기 제 1 디바이스를 통하여 상기 외부 기기와 서비스를 제공하도록 하는 프로세서를 포함하고, 상기 적어도 하나의 프로그램은, 적어도 하나의 외부 기기와의 서비스 연결이 실패됨에 따라, 상기 외부 기기에 대한 서비스 데이터를 중계할 제 1 디바이스를 검색하는 단계; 상기 제 1 디바이스에게 중계 요청 신호를 전송하는 단계; 및 상기 제 1 디바이스에게 상기 외부 기기에 대한 서비스 데이터를 전송하는 단계;를 실행하는 명령어들을 포함하며, 상기 전송된 서비스 데이터는 상기 제 1 디바이스에 의해 변환되고, 상기 변환된 서비스 데이터가 상기 외부 기기에게 제공되는 것인, 제 1 디바이스를 통하여 외부 기기와 서비스를 제공하는 제 2 디바이스를 제공할 수 있다.
또한, 상기 제 2 디바이스의 서비스 프로토콜이 상기 외부 기기의 서비스 프로토콜과 상이함에 따라, 상기 서비스 연결이 실패된 것인, 제 2 디바이스.
또한, 상기 제 1 디바이스에 의해 변환된 서비스 데이터는 상기 외부 기기의 서비스 프로토콜에 기초하여 변환된 것인, 제 2 디바이스.
또한, 상기 서비스 프로토콜은 상기 제 2 디바이스 및 상기 외부 기기에 설치된 OS(Operating System)의 종류, 상기 제 2 디바이스 및 상기 외부 기기가 제공하는 서비스의 종류, 및 상기 제 2 디바이스 및 상기 외부 기기에서 이용되는 데이터의 포맷 중 적어도 하나에 따라 구별될 수 있다.
또한, 상기 적어도 하나의 프로그램은, 상기 적어도 하나의 외부 기기와 물리적으로 연결되는 단계; 및 상기 물리적으로 연결된 상기 외부기기에게 서비스 연결을 요청하는 단계;를 실행하는 명령어들을 더 포함할 수 있다.
또한, 상기 서비스 연결을 요청하는 단계는, 상기 제 2 디바이스에 상기 외부 기기의 제어와 관련된 애플리케이션을 설치하고, 상기 설치된 애플리케이션을 통하여 상기 서비스 연결을 요청할 수 있다.
또한, 상기 제 1 디바이스를 검색하는 단계는, 상기 제 2 디바이스의 기기 정보 및 상기 제 2 디바이스에서 제공될 서비스에 관한 정보를 브로드캐스팅함으로써 상기 제 1 디바이스를 검색할 수 있다.
또한, 상기 제 1 디바이스를 검색하는 단계는, 상기 제 2 디바이스의 기기 정보 및 상기 외부 기기의 기기 정보를 브로드캐스팅함으로써 상기 제 1 디바이스를 검색할 수 있다.
또한, 상기 서비스 데이터는, 상기 외부 기기의 제어와 관련된 애플리케이션에 의해 생성된 데이터일 수 있다.
또한, 본 발명의 제 4 측면은, 적어도 하나의 프로그램이 저장되는 메모리; 및 상기 적어도 하나의 프로그램을 실행함으로써 상기 제 2 디바이스와 상기 외부 기기 간의 상기 서비스 데이터를 중계하도록 하는 프로세서를 포함하고, 상기 적어도 하나의 프로그램은, 적어도 하나의 외부 기기에 대한 서비스 데이터의 중계를 요청하는 중계 요청 신호를 상기 제 2 디바이스로부터 수신하는 단계; 상기 외부 기기의 서비스 프로토콜과 상기 제 2 디바이스의 서비스 프로토콜을 비교하는 단계; 상기 외부 기기의 서비스 프로토콜과 상기 제 2 디바이스의 서비스 프로토콜이 상이함에 따라, 상기 제 2 디바이스로부터 수신되는 서비스 데이터를 상기 외부 기기의 서비스 프로토콜에 적합하게 변환하는 단계; 및 상기 변환된 서비스 데이터를 상기 외부 기기에게 전송하는 단계;를 실행하는 명령어들을 포함하는 것인, 제 2 디바이스와 외부 기기 간의 서비스 데이터를 중계하는 제 1 디바이스를 제공할 수 있다.
또한, 상기 중계 요청 신호를 수신하는 단계는, 상기 제 2 디바이스가 상기 외부 기기에 대한 서비스 연결을 실패함에 따라 상기 제 2 디바이스로부터 상기 중계 요청 신호를 수신할 수 있다.
또한, 상기 제 2 디바이스의 서비스 프로토콜이 상기 외부 기기의 서비스 프로토콜과 상이함에 따라, 상기 서비스 연결이 실패될 수 있다.
또한, 상기 서비스 프로토콜은 상기 제 2 디바이스 및 상기 외부 기기에 설치된 OS(Operating System)의 종류, 상기 제 2 디바이스 및 상기 외부 기기가 제공하는 서비스의 종류, 및 상기 제 2 디바이스 및 상기 외부 기기에서 이용되는 데이터의 포맷 중 적어도 하나에 따라 구별될 수 있다.
또한, 상기 적어도 하나의 프로그램은, 상기 제 2 디바이스로부터 브로드캐스팅된 상기 제 2 디바이스의 기기 정보 및 상기 제 2 디바이스에서 제공될 서비스에 관한 정보를 수신하는 단계; 및 상기 수신된 상기 제 2 디바이스의 기기 정보 및 상기 제 2 디바이스에서 제공될 서비스에 관한 정보에 기초하여, 상기 제 2 디바이스에게 ACK 신호를 전송하는 단계;를 실행하는 명령어들을 더 포함하며, 상기 중계 요청 신호는, 상기 ACK 신호에 기초하여, 상기 제 2 디바이스로부터 수신될 수 있다.
또한, 상기 적어도 하나의 프로그램은, 상기 제 2 디바이스로부터 브로드캐스팅된 상기 제 2 디바이스의 기기 정보 및 상기 외부 기기의 기기 정보를 수신하는 단계; 및 상기 수신된 상기 제 2 디바이스의 기기 정보 및 상기 외부 기기의 기기 정보에 기초하여, 상기 제 2 디바이스에게 ACK 신호를 전송하는 단계;를 실행하는 명령어들을 더 포함하며, 상기 중계 요청 신호는, 상기 ACK 신호에 기초하여, 상기 제 2 디바이스로부터 수신될 수 있다.
또한, 상기 서비스 데이터는, 상기 외부 기기의 제어와 관련된 애플리케이션에 의해 상기 제 2 디바이스에서 생성된 데이터일 수 있다.
또한, 상기 적어도 하나의 외부 기기는 상기 제 1 디바이스에 연결될 수 있다.
또한, 상기 적어도 하나의 프로그램은, 상기 적어도 하나의 외부 기기의 목록을 상기 제 2 디바이스에게 제공하는 단계;를 실행하는 명령어들을 더 포함하며, 상기 중계 요청 신호를 수신하는 단계는, 상기 외부 기기의 목록 중에서 상기 제 2 디바이스에 의해 선택된 외부 기기에 대한 중계 요청 신호를 수신할 수 있다.
또한, 본 발명의 제 5 측면은, 상기 제 1 측면의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공할 수 있다.
또한, 본 발명의 제 6 측면은, 상기 제 2 측면의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 외부 기기 제어 시스템의 개요도이다.
도 2는 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서 제 2 디바이스(3000)가 제 1 디바이스(1000)에 연결된 외부 기기(2000)를 제어하는 방법을 도시한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서 제 2 디바이스(3000)가 제 1 디바이스(1000)에 연결된 외부 기기(2000)를 제어하는 일례를 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 블루투스 통신을 통한 디바이스 간의 물리적 연결 및 서비스 연결의 일례를 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 두 기기가 NFC 통신 및 다른 통신 방법을 통하여 서로 연결되는 일례를 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 두 기기가 BLE 통신 및 다른 통신 방법을 통하여 서로 연결되는 일례를 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 제 2 디바이스(3000)가 제 1 디바이스(1000) 및 제 3 디바이스(4000) 중 하나를 중계기로 선택하도록 하는 외부 기기 제어 시스템의 개요도이다.
도 8은 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서 제 2 디바이스(3000)가 제 1 디바이스(1000) 및 제 3 디바이스 중에서, 제 1 디바이스(1000)를 중계기로서 선택하고, 외부 기기(2000)를 제어하는 방법을 도시한 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서 제 2 디바이스(3000)가 제 1 디바이스(1000)를 중계기로 선택하고, 제 1 디바이스(1000)에 연결된 외부 기기(2000)를 제어하는 일례를 도시한 도면이다.
도 10은 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서, 제 2 디바이스(3000)가 제 1 디바이스(1000)에 연결된 외부 기기(2000) 중 하나를 선택하고, 제 1 디바이스(1000)가 제 2 디바이스(3000)와 선택된 외부 기기(2000) 간의 서비스 데이터를 중계하는 방법의 흐름도이다.
도 11은 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서, 제 2 디바이스(3000)가 서비스 데이터의 변환이 필요한지를 판단하고, 제 2 디바이스(3000)와 외부 기기(2000) 간의 서비스 데이터를 중계하는 일례를 도시한 도면이다.
도 12는 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서 제 1 디바이스(1000)가 외부 기기(2000)와 제 2 디바이스(3000) 간에 송수신되는 서비스 데이터를 변환하지 않고, 서비스 데이터를 전달하는 방법을 도시한 흐름도이다.
도 13은 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서 제 1 디바이스(1000)가 제 2 디바이스(3000)를 검색하고, 외부 기기(2000)와 제 2 디바이스(3000) 간에 송수신되는 서비스 데이터를 전달하는 일례를 도시한 도면이다.
도 14는 본 발명의 일 실시예에 따른 외부 기기 제어 시스템의 일례를 도시한 도면이다.
도 15는 본 발명의 일 실시예에 따른, 제 2 디바이스(3000)가 외부 기기(2000)와의 연결을 시도하고 중계기를 검색하도록 하기 위한 사용자 인터페이스의 일례를 도시한 도면이다.
도 16은 본 발명의 일 실시예에 따른, 제 1 디바이스(1000)가 외부 기기(2000) 및 제 2 디바이스(3000)의 서비스 프로토콜을 비교한 후, 제 2 디바이스(3000)와 외부 기기(2000)간의 서비스 데이터를 중계하도록 하는 사용자 입력을 수신하기 위한 사용자 인터페이스의 일례를 도시한 도면이다.
도 17은 본 발명의 일 실시예에 따른 제 1 디바이스(1000)가 외부 기기(2000)와 동일한 프로토콜의 제 2 디바이스(3000)를 검색하고 선택하도록 하는 사용자 인터페이스의 일례를 도시한 도면이다.
도 18은 본 발명의 일 실시예에 따른 제 2 디바이스(3000)가 외부 기기(2000)와 소정의 서비스를 제공하는 일례를 도시한 도면이다.
도 19는 본 발명의 일 실시예에 따른 디바이스의 블록도이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 본 출원에서 사용한 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나 이는 당 분야에 종사하는 기술자의 의도, 판례, 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 본 명세서에서, 두 개의 기기 간의 물리적 연결은, 두 기기가 서로 데이터를 송수신할 수 있도록 연결된 상태를 의미하며, 두 기기는, 예를 들어, 블루투스 통신, WIFI 통신 및 NFC 통신을 통하여 서로 연결될 수 있다.
또한, 두 기기 간의 서비스 연결은, 두 기기간에 송수신되는 데이터를 이용하여 두 기기가 소정의 서비스를 실행할 수 있도록 연결된 상태를 의미한다. 두 기기가 서로 서비스 연결되면, 물리적 연결을 수행하는 레이어(layer)의 상위 레이어(layer)에서 제공하는 각 기기의 기능을 각 기기가 서로 이용할 수 있게 된다.
또한, 본 명세서에서, 호스트 디바이스는 소정의 서비스를 제공하기 위하여 다른 디바이스와 연결되지 않아도 되는 디바이스를 말한다. 호스트 디바이스는 다른 디바이스와 연결되지 않더라도 소정의 애플리케이션을 독립적으로 실행할 수 있으며, 실행된 애플리케이션을 통하여 소정의 서비스를 제공할 수 있다.
또한, 주변 기기는, 소정의 서비스를 제공하기 위하여 다른 디바이스와 연결되어야 하는 디바이스를 말한다. 주변 기기는, 소정의 서비스를 제공하기 위하여 소정의 애플리케이션을 독립적으로 실행할 수 없을 수 있다. 또한, 주변 기기는 호스트 디바이스와 연결되어 호스트 디바이스로부터 제어 명령을 수신할 수 있으며, 수신된 제어 명령에 기초하여 소정의 서비스를 제공할 수 있다. 또한, 주변 기기는 호스트 디바이스 또는 다른 주변 기기에 종속적일 수 있다.
다만, 호스트 디바이스 및 주변 기기는 상술한 내용에 한정되지 않으며, 서비스의 종류 및 애플리케이션에 따라 달라질 수 있다. 예를 들어, 소정의 디바이스는, 서비스의 종류 및 애플리케이션에 따라 호스트 디바이스 또는 주변 기기로 동작할 수 있다.
또한, 호스트 디바이스 및 주변 기기는 소정의 토폴로지를 형성할 수 있다. 토폴로지란 디바이스들(노드들) 간의 연결 형태를 의미한다. 토폴로지는 물리적 토폴로지 및 논리적 토폴로지를 포함할 수 있으며, 토폴로지는 토폴로지 구조(topology structure)에 속한 디바이스들 사이의 물리적 또는 논리적 연결 구성에 의해 결정될 수 있다. 예를 들어, 토폴로지는, 디바이스들의 연결 관계, 디바이스 간의 연결 방법, 디바이스 간의 데이터 전송 속도, 디바이스 간에 전송되는 데이터의 흐름(data flow), 디바이스 간에 전송되는 신호의 종류 및 디바이스에 설치된 애플리케이션의 종류 중 적어도 하나에 의해, 다른 토폴로지와 구별될 수 있으나, 이에 제한되지 않는다.
또한, 본 명세서에서, 서비스는, 디바이스 간의 데이터 송수신을 통하여 제공되는 기능으로서, 예를 들어, 동영상 재생 서비스, 음악 재생 서비스, 디바이스 모니터링 서비스, 게임 서비스, 프린팅 서비스, 채팅 서비스, 사진 촬영 서비스, 문서 작성 서비스, 교육 서비스, 화상 회의 서비스, 기기 제어 서비스 및 콘텐트 공유 서비스를 포함하나, 이에 제한되지 않는다.
또한, 본 명세서에서, 서비스 데이터는, 소정의 서비스를 제공하기 위하여 디바이스들 간에 송수신되는 데이터로서, 외부 기기 및 제 2 디바이스 중 적어도 하나의 제어와 관련된 데이터일 수 있으나, 이에 제한되지 않는다.
이하, 본 발명의 실시 예들을 첨부 도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 본 발명의 일 실시예에 따른 외부 기기 제어 시스템의 개요도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 외부 기기 제어 시스템은, 제 1 디바이스(1000), 적어도 하나의 외부 기기(2000) 및 제 2 디바이스(3000)를 포함한다. 또한, 제 1 디바이스(1000)는 호스트 디바이스일 수 있으며, 적어도 하나의 외부 기기(2000)는 호스트 디바이스에 연결되며 호스트 디바이스에 의해 관리되는 주변 기기일 수 있다.
제 1 디바이스(1000)는 외부 기기(2000)와 연결되며 외부 기기(2000)를 제어할 수 있으며, 외부 기기(2000)와 제 2 디바이스(3000) 간의 데이터 전송을 중계할 수 있다.
또한, 제 2 디바이스(3000)는 소정의 외부 기기(2000)에 물리적으로 연결되고, 연결된 외부 기기(2000)와의 서비스 연결을 시도한다. 만약, 제 2 디바이스(3000)가 외부 기기(2000)와의 서비스 연결에 실패하면, 제 2 디바이스(3000)는 외부 기기(2000)에 연결된 제 1 디바이스(1000)를 검색하고, 제 1 디바이스(1000)에 연결될 수 있다. 또한, 제 2 디바이스(3000)는 소정의 데이터를 외부 기기(2000)에게 중계해 줄 것을 제 1 디바이스(1000)에게 요청할 수 있다.
또한, 제 2 디바이스(3000)는 호스트 디바이스 또는 주변 기기로서 외부 기기(2000)와 데이터를 송수신할 수 있다.
제 1 디바이스(1000), 외부 기기(2000) 및 제 2 디바이스(3000) 중 적어도 하나는, 예를 들어, 스마트폰, 휴대폰, PDA(personal digital assistant), 랩톱, 미디어 플레이어, PC, GPS(global positioning system) 장치, 및 기타 모바일 또는 비모바일 컴퓨팅 장치일 수 있으나, 이에 제한되지 않는다.
또한, 제 1 디바이스(1000), 외부 기기(2000) 및 제 2 디바이스(3000) 중 적어도 하나는, 가전 기기 및 댁 내에 설치된 각종 기기를 포함할 수 있으며, 예를 들어, TV, 조명, 냉장고, 오디오 장치, 세탁기, 냉장고, 오븐, 가스렌지, 홈 게이트웨이, 게임 기기, 전자 칠판 및 터치 테이블을 포함할 수 있으나, 이에 제한되지 않는다.
도 2는 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서 제 2 디바이스(3000)가 제 1 디바이스(1000)에 연결된 외부 기기(2000)를 제어하는 방법을 도시한 흐름도이다.
단계 S200에서 제 1 디바이스(1000) 및 외부 기기(2000)가 연결된다. 제 1 디바이스(1000) 및 외부 기기(2000)는 서로 물리적으로 연결될 수 있다. 제 1 디바이스(1000)와 외부 기기(2000)가 접근함에 따라, 제 1 디바이스(1000) 및 외부 기기(2000)는 제 1 근거리 통신 발생을 감지할 수 있다. 또한, 외부 기기(2000)는 제 1 근거리 통신을 통하여 제 1 디바이스(1000)에게 외부 기기(2000)의 식별 값을 전송할 수 있다. 외부 기기(2000)의 식별 값은, 예를 들어, SSID, 모델명, 제품 번호, 및 주변 기기(2000 또는 3000)의 사용자 ID를 포함할 수 있으나, 이에 제한되지 않는다.
또한, 외부 기기(2000)는 제 1 근거리 통신을 통하여, 제 1 디바이스(1000)에게 제 2 근거리 통신 연결을 위한 정보 및 외부 기기(2000)에 관련된 애플리케이션 정보를 전송할 수 있다. 제 1 근거리 통신 및 제 2 근거리 통신은, 예를 들어, NFC 통신, 블루투스(bluetooth) 통신, WIFI 통신을 포함할 수 있으나, 이에 제한되지 않는다. 또한, 제 1 근거리 통신 및 제 2 근거리 통신은 동일할 수 있으나, 이에 제한되지 않는다.
또한, 외부 기기(2000))에 관련된 애플리케이션 정보는, 외부 기기(2000)와 소정의 서비스를 제공하기 위한 애플리케이션일 수 있다. 애플리케이션 정보는, 예를 들어, 외부 기기(2000)에 설치된 애플리케이션에 관한 정보 및 외부 기기(2000)를 제어하기 위한 애플리케이션에 관한 정보를 포함할 수 있으나, 이에 제한되지 않는다.
단계 S205에서 제 1 디바이스(1000)는 외부 기기(2000)를 제어하기 위한 애플리케이션을 실행한다. 제 1 디바이스(1000)는 외부 기기(2000)로부터 수신된 애플리케이션 정보에 기초하여, 외부 기기(2000)를 제어하기 위한 애플리케이션을 설치하고 실행할 수 있다. 제 1 디바이스(1000)가 외부 기기(2000)로부터 애플리케이션 정보로서 애플리케이션 파일을 수신한 경우에는, 제 1 디바이스(1000)는 수신된 애플리케이션 파일을 실행할 수 있다. 또한, 제 1 디바이스(1000)가 소정의 애플리케이션을 다운로드하기 위한 링크 주소를 수신한 경우에는, 제 1 디바이스(1000)는 수신된 링크 정보를 이용하여 애플리케이션 파일을 다운로드하고 다운로드된 애플리케이션 파일을 실행할 수 있다.
또한, 제 1 디바이스(1000)가 실행된 애플리케이션을 이용하여, 외부 기기(2000)와 소정의 서비스를 위한 데이터를, 외부 기기(2000)와 온전하게 송수신할 수 있는 상태가 됨으로써, 제 1 디바이스(1000)와 외부 기기(2000)와의 서비스 연결이 완료되게 된다.
단계 S210에서 제 2 디바이스(3000) 및 외부 기기(2000)가 연결된다. 제 2 디바이스(3000) 및 외부 기기(2000)는 서로 물리적으로 연결될 수 있다.
제 2 디바이스(3000)와 외부 기기(2000)가 접근함에 따라, 제 2 디바이스(3000) 및 외부 기기(2000)는 제 1 근거리 통신 발생을 감지할 수 있다. 또한, 외부 기기(2000)는 제 1 근거리 통신을 통하여 제 1 디바이스(1000)에게 외부 기기(2000)의 식별 값을 전송할 수 있다.
또한, 외부 기기(2000)는 제 1 근거리 통신을 통하여, 제 2 디바이스(3000)에게 제 2 근거리 통신 연결을 위한 정보 및 외부 기기(2000)에 관련된 애플리케이션 정보를 전송할 수 있다. 제 1 근거리 통신 및 제 2 근거리 통신은, 예를 들어, NFC 통신, 블루투스(bluetooth) 통신, WIFI 통신을 포함할 수 있으나, 이에 제한되지 않는다. 또한, 제 1 근거리 통신 및 제 2 근거리 통신은 동일할 수 있으나, 이에 제한되지 않는다.
또한, 외부 기기(2000))에 관련된 애플리케이션 정보는, 외부 기기(2000)와 소정의 서비스를 제공하기 위한 애플리케이션일 수 있다. 애플리케이션 정보는, 예를 들어, 외부 기기(2000)에 설치된 애플리케이션에 관한 정보 및 외부 기기(2000)를 제어하기 위한 애플리케이션에 관한 정보를 포함할 수 있으나, 이에 제한되지 않는다.
단계 S215에서 제 2 디바이스(3000)는 연결된 외부 기기(2000)의 식별 정보를 디스플레이한다. 제 2 디바이스(3000)는 외부 기기(2000)로부터 수신된 식별 값을 제 2 디바이스(3000)의 화면에 디스플레이할 수 있다.
단계 S220에서 제 2 디바이스(3000)는 외부 기기(2000)를 제어하기 위한 애플리케이션을 실행한다. 제 2 디바이스(3000)는 외부 기기(2000)와의 연결을 위한 사용자 입력에 기초하여 외부 기기(2000)를 제어하기 위한 애플리케이션을 실행할 수 있다.
또한, 제 2 디바이스(3000)는 외부 기기(2000)로부터 수신된 애플리케이션 정보에 기초하여, 외부 기기(2000)를 제어하기 위한 애플리케이션을 설치하고 실행할 수 있다. 제 2 디바이스(3000)가 외부 기기(2000)로부터 애플리케이션 정보로서 애플리케이션 파일을 수신한 경우에는, 제2 디바이스(3000)는 수신된 애플리케이션 파일을 실행할 수 있다. 또한, 제 2 디바이스(3000)가 소정의 애플리케이션을 다운로드하기 위한 링크 주소를 수신한 경우에는, 제 2 디바이스(3000)는 수신된 링크 정보를 이용하여 애플리케이션 파일을 다운로드하고 다운로드된 애플리케이션 파일을 실행할 수 있다.
단계 S225에서 제 2 디바이스(3000)는 외부 기기(2000)에게 서비스 연결을 요청한다. 제 2 디바이스(3000)는 단계 S220에서 실행된 애플리케이션을 이용하여 외부 기기(2000)에게 서비스 연결을 요청할 수 있다.
단계 S230에서 제 2 디바이스(3000)와 외부 기기(2000) 간의 서비스 연결이 실패된다. 제 2 디바이스(3000)의 서비스 프로토콜이 외부 기기(2000)의 서비스 프로토콜과 서로 상이한 경우에, 제 2 디바이스(3000) 및 외부 기기(2000) 간의 서비스 연결이 실패될 수 있다. 서비스 프로토콜은 제 2 디바이스(3000) 및 외부 기기(2000)에 설치된 OS(Operating System)의 종류, 제 2 디바이스(3000) 및 외부 기기(2000)가 제공하는 서비스의 종류, 및 제 2 디바이스(3000) 및 외부 기기(2000)에서 이용되는 데이터의 포맷에 따라 구별될 수 있다.
예를 들어, 제 2 디바이스(3000)에 설치된 OS(Operating System)가 외부 기기(2000)에 설치된 OS와 서로 상이하여, 제 2 디바이스(3000)의 서비스 프로토콜 및 데이터 포맷이 외부 기기(2000)의 서비스 프로토콜 및 데이터 포맷과 상이한 경우에, 제 2 디바이스(3000) 및 외부 기기(2000) 간의 서비스 연결이 실패될 수 있다. 또한, 예를 들어, 제 2 디바이스(3000)의 통신 방법 및 외부 기기(2000)의 통신 방법이 상이한 경우, 제 2 디바이스(3000)에서 제공되는 서비스의 종류 및 외부 기기(2000)에서 제공되는 서비스의 종류가 상이한 경우, 제 2 디바이스(3000)에서 이용되는 플랫폼의 종류 및 외부 기기(2000)에서 이용되는 플랫폼의 종류가 상이한 경우에, 제 2 디바이스(3000) 및 외부 기기(2000) 간의 서비스 연결이 실패될 수 있다.
단계 S235에서 제 2 디바이스(3000)는 중계기를 검색한다. 제 2 디바이스(3000)는 외부 기기(2000)와의 서비스 연결이 실패됨에 따라 소정의 중계기를 검색할 수 있다. 제 2 디바이스(3000)는 외부 기기(2000)와의 서비스 연결이 실패되었음을 확인하고, 외부 기기(2000)와의 서비스 데이터의 전송을 중계할 제 1 디바이스(1000)를 검색할 수 있다.
서비스 데이터는, 소정의 서비스를 제공하기 위하여 디바이스들 간에 송수신되는 데이터로서, 외부 기기(2000) 및 제 2 디바이스(1000) 중 적어도 하나의 제어와 관련된 데이터일 수 있다. 또한, 예를 들어, 서비스 데이터는, 외부 기기(2000)의 제어와 관련된 애플리케이션에 의해 생성된 데이터, 제 2 디바이스(3000)의 제어와 관련된 애플리케이션에 의해 생성된 데이터일 수 있으나, 이에 제한되지 않는다.
또한, 단계 S210 내지 단계 S230에서, 제 2 디바이스(3000)는 외부 기기(2000)와 물리적으로 연결되고 물리적으로 연결된 외부 기기(2000)로부터 수신된 애플리케이션 정보를 수신하고, 애플리케이션 정보에 기초하여 설치된 애플리케이션을 이용하여 외부 기기(2000)와의 서비스 연결을 시도한 후, 서비스 연결이 실패되는 것으로 설명하였지만, 이에 제한되지 않는다.
제 2 디바이스(3000)가 외부 기기(2000)와 물리적으로 연결됨에 따라, 외부 기기(2000)로부터 수신된 외부 기기(2000)의 식별 값에 기초하여, 제 2 디바이스(3000)는 외부 기기(2000)와의 서비스 연결이 가능한지를 확인할 수도 있다. 이 경우, 제 2 디바이스(3000)는 외부 기기(2000)에서 이용되는 서비스 프로토콜의 종류 및 데이터 포맷을, 외부 기기(2000)의 식별 값에 기초하여 확인할 수 있으며, 확인된 서비스 프로토콜 및 데이터 포맷을 자신의 서비스 프로토콜 및 데이터 포맷과 비교함으로써, 제 2 디바이스(3000)는 외부 기기(2000)와의 서비스 연결이 가능한지를 확인할 수 있다.
또한, 단계 S235에서 제 2 디바이스(3000)는 제 2 디바이스(3000) 및 외부 기기(2000)의 기기 정보를 주변의 디바이스들에게 브로드캐스팅할 수 있다. 제 2 디바이스(3000)는, 제 2 디바이스(3000)에서 이용되는 서비스 프로토콜 및 데이터 포맷에 관한 정보, 외부 기기(2000)에서 이용되는 서비스 프로토콜 및 데이터 포맷에 관한 정보를 주변의 디바이스들에게 브로드캐스팅할 수 있다.
한편, 제 2 디바이스(3000)는 외부 기기(2000)에 관한 정보를 제 1 디바이스(1000)에게 제공하지 않고, 제 2 디바이스(3000)에서 이용될 서비스의 종류 및 제 2 디바이스(3000)의 서비스 프로토콜에 관한 정보만을 제 1 디바이스(1000)에게 제공할 수도 있다. 이 경우, 제 1 디바이스(1000)는 제 2 디바이스(3000)에서 이용될 서비스의 종류 및 제 2 디바이스(3000)의 서비스 프로토콜에 기초하여 외부 기기(2000)를 결정할 수 있다.
단계 S240에서 제 1 디바이스(1000)는 제 2 디바이스(3000)에게 ACK 신호를 전송한다. 제 1 디바이스(1000)는 제 2 디바이스(3000)로부터의 중계 요청에 응답하여, 소정의 ACK 신호를 제 1 디바이스(1000)에게 전송할 수 있다. 이 경우, 제 1 디바이스(1000)는 제 2 디바이스(3000)에서 이용되는 서비스 프로토콜 및 데이터 포맷에 관한 정보, 외부 기기(2000)에서 이용되는 서비스 프로토콜 및 데이터 포맷에 관한 정보를 제 2 디바이스(3000)로부터 수신하고, 수신된 정보에 기초하여 자신이 외부 기기(2000)와 제 2 디바이스(3000) 간의 서비스 데이터의 전송을 중계할 수 있는지를 판단할 수 있다.
단계 S245에서 제 2 디바이스(3000)는 ACK 신호를 전송한 제 1 디바이스(1000)에게 서비스 데이터의 중계를 요청한다.
단계 S250에서 제 1 디바이스(1000)는 제 2 디바이스(3000)와 외부 기기(2000) 간에 전송되는 데이터를 중계한다. 제 1 디바이스(1000)는 제 2 디바이스(3000)로부터 수신되는 서비스 데이터를 외부 기기(2000)에 적합하도록 변환하고 변환된 서비스 데이터를 외부 기기(2000)에게 전송할 수 있다. 또한, 제 1 디바이스(1000)는 외부 기기(2000)로부터 수신되는 서비스 데이터를 제 2 디바이스(3000)에 적합하도록 변환하고, 변환된 서비스 데이터를 제 1 디바이스(1000)에게 전송할 수 있다.
도 3은 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서 제 2 디바이스(3000)가 제 1 디바이스(1000)에 연결된 외부 기기(2000)를 제어하는 일례를 도시한 도면이다. 도 3에서 스마트 폰은 제 1 디바이스(1000)이며, 조이패드 및 스피커는 외부 기기(2000)이며, 스마트 TV는 제 2 디바이스(3000)일 수 있다.
스마트폰은 조이패드 및 스피커와 물리적 연결 및 서비스 연결되어 있으며, 스마트폰, 조이패드 및 스피커는 서비스 데이터를 서로 송수신함으로써 사용자에게 소정의 서비스를 제공할 수 있다.
이후, 스마트 TV가 조이패드와 서비스 연결을 시도하고, 서비스 연결이 실패됨에 따라 중계기를 검색할 수 있다. 이후, 스마트폰으로부터의 ACK 신호에 기초하여 스마트폰과 스마트 TV 간의 통신 세션이 오픈될 수 있다. 또한, 스마트폰은 스마트 TV로부터의 중계 요청에 응답하여, 스마트 TV와 조이패드 간의 서비스 데이터를 중계할 수 있다.
도 4는 본 발명의 일 실시예에 따른 블루투스 통신을 통한 디바이스 간의 물리적 연결 및 서비스 연결의 일례를 설명하기 위한 도면이다. 도 4에 도시된 두 디바이스는 제 1 디바이스(1000), 제 2 디바이스(3000) 및 외부 기기(2000) 중 둘일 수 있다.
두 개의 기기 간의 물리적 연결은, 두 기기가 서로 데이터를 송수신할 수 있도록 연결된 상태를 의미하며, 두 기기는, 예를 들어, 블루투스 통신을 통하여 서로 연결될 수 있다. 또한, 블루투스 통신을 이용하는 두 기기는 도 3에 연결된 Physical 레이어를 통하여 서로 물리적으로 연결될 수 있다.
또한, 두 기기 간의 서비스 연결은, 두 기기간에 송수신되는 데이터를 이용하여 두 기기가 소정의 서비스를 실행할 수 있도록 연결된 상태를 의미한다. 두 기기가 서로 서비스 연결되면, 물리적 연결을 수행하는 레이어(layer)의 상위 레이어(layer)에서 제공하는 각 기기의 기능을 각 기기가 서로 이용할 수 있게 된다. 또한, 블루투스 통신을 이용하는 두 기기는 도 3에 연결된 Service 레이어를 통하여 서로 서비스 연결될 수 있다.
도 5는 본 발명의 일 실시예에 따른 두 기기가 NFC 통신 및 다른 통신 방법을 통하여 서로 연결되는 일례를 도시한 도면이다. 도 5에서는 제 1 디바이스(1000) 및 외부 기기(2000)가 서로 연결되는 경우를 설명하였다.
단계 S500에서, 제 1 디바이스(1000)와 외부 기기(2000)간의 거리가 제 1 근거리 통신 반경 내로 접근함에 따라, 단계 S505 및 S510에서 제 1 디바이스(1000)와 외부 기기(2000)는 각각 제 1 근거리 통신 발생을 감지한다. 도 5에서 제 1 근거리 통신은 NFC 통신일 수 있다.
단계 S515에서, NFC 통신을 기반으로 외부 기기(2000)는 제 1 디바이스(1000)로 제 2 근거리 통신 연결을 위한 정보 및 외부 기기(2000)에 관련된 애플리케이션 정보를 전송한다.
단계 S520에서, 제 1 디바이스(1000)는 외부 기기(2000)에 대해 인증 처리를 한다. 인증 처리는 외부 기기(2000)로부터 수신된 사전에 약속된 인증 정보를 인증하는 방식으로 수행될 수 있다. 따라서, 단계 S520에서 외부 기기(2000)로부터 인증 정보가 수신되어야 한다. 만약 단계 S520에서 외부 기기(2000)로부터 인증 정보가 수신되지 않고, 외부 기기(2000)에 대한 인증 절차를 수행하지 않은 것으로 실시 예를 구현하는 경우에, 단계 S520은 생략될 수 있다.
그러나, 외부 기기(2000)에 대한 인증 절차를 수행하는 것으로 실시 예를 구현한 경우에, 외부 기기(2000)로부터 인증 정보가 수신되지 않거나 잘못된 인증 정보가 수신되면, 제 1 디바이스(1000)는 다음 과정을 수행하지 않을 수 있다.
단계 S925에서, 제 1 디바이스(1000)는 수신된 제 2 근거리 통신 연결에 대한 정보에 기초하여 외부 기기(2000)에서의 제 2 근거리 통신 방식을 판별한다.
도 5는 외부 기기(2000)가 제 2 근거리 통신 방식을 통하여 제 1 디바이스(1000)와 직접 통신하는 경우이다. 따라서, 단계 930에서, 제 1 디바이스(1000)는 기기간 직접 통신 요청 시 필요한 제 1 디바이스(1000)의 정보를 NFC 통신 방식으로 외부 기기(2000)로 전송할 수 있다. 이로 인하여 외부 기기(2000)는 차후에 제 1 디바이스(1000)의 정보를 이용하여 제 1 디바이스(1000)와의 기기간 직접 통신을 먼저 시도할 수 있다.
그러나, 기기간 직접 통신 시도를 제 1 디바이스(1000) 측에서만 수행할 수 있도록, 단계 S930이 수행되지 않을 수도 있다.
단계 S535에서, 제 1 디바이스(1000)는 외부 기기(2000)의 제 2 근거리 통신 연결 정보에 기초하여 외부 기기(2000)로 연결 요청을 전송한다. 이에 대해 단계 S540에서, 외부 기기(2000)로부터 연결 수락 신호가 수신되면, 제 1 디바이스(1000)는 단계 S545에서, 애플리케이션을 실행한다.
단계 S550에서, 제 1 디바이스(1000)는 실행되는 애플리케이션을 기반으로 중계기(110)를 통해 외부 기기(2000)를 제어한다. 제 1 디바이스(1000)는 외부 기기(2000)와 서비스 연결됨에 따라, 실행된 애플리케이션을 이용하여 외부 기기(2000)를 제어하고, 외부 기기(2000)와 함께 소정의 서비스를 제공할 수 있다.
도 6은 본 발명의 일 실시예에 따른 두 기기가 BLE 통신 및 다른 통신 방법을 통하여 서로 연결되는 일례를 도시한 도면이다. 도 6에서는 제 1 디바이스(1000) 및 외부 기기(2000)가 서로 연결되는 경우를 설명하였다.
단계 S600에서, 외부 기기(2000)는 BLE 통신을 통하여 제 2 근거리 통신 연결을 위한 정보 및 외부 기기(2000)에 관련된 애플리케이션 정보를 브로드캐스팅한다.
단계 S605에서, 브로드캐스팅된 정보가 수신됨에 따라 제 1 디바이스(1000)는 제 1 근거리 통신 발생을 감지한다. 도 6에서 제 1 근거리 통신은 BLE 통신일 수 있다. 단계 S600과 단계 S605는 설명의 편의상 다른 단계로 도시하였으나, 동시에 발생될 수 있다. 즉, 외부 기기(2000)로부터 브로드캐스팅되는 신호가 수신됨과 동시에 제 1 디바이스(1000)는 제 1 근거리 통신의 발생을 감지할 수 있다. 단계 S600에서 외부 기기(2000)는 애플리케이션 정보를 전송하지 않을 수도 있다.
단계 S610에서, 제 1 디바이스(1000)는 외부 기기(2000)에 대해 인증 처리를 한다. 인증 처리는 외부 기기(2000)로부터 수신된 사전에 약속된 인증 정보를 인증하는 방식으로 수행될 수 있다. 따라서, 단계 S600에서 외부 기기(2000)로부터 인증 정보가 수신되어야 한다. 만약 단계 S600에서 외부 기기(2000)로부터 인증 정보가 수신되지 않고, 외부 기기(2000)에 대한 인증 절차를 수행하지 않은 것으로 실시 예를 구현하는 경우에, 단계 S610은 생략될 수 있다.
그러나, 외부 기기(2000)에 대한 인증 절차를 수행하는 것으로 실시 예를 구현한 경우에, 외부 기기(2000)로부터 인증 정보가 수신되지 않거나 잘못된 인증 정보가 수신되면, 제 1 디바이스(1000)는 다음 과정을 수행하지 않을 수 있다.
단계 S615에서, 제 1 디바이스(1000)는 외부 기기(2000)에 관한 정보를 디스플레이 한다. 이를 위해 단계 S600에서, 외부 기기(2000)는 외부 기기(2000)에 관한 정보를 제 1 디바이스(1000)로 전송할 수 있다.
한편, 제 1 근거리 통신 발생이 감지된 후, 제 1 디바이스(1000)로부터 외부 기기(2000)로의 정보 요구에 따라 제 1 디바이스(1000)가 상술한 인증 정보 및 외부 기기(2000)에 관한 정보를 수신할 수도 있다.
단계 S620에서, 디스플레이 되고 있는 외부 기기(2000)에 대한 정보에 기초하여 외부 기기(2000)와의 연결을 선택하는 사용자의 입력이 수신되면, 단계 S625에서, 제 1 디바이스(1000)는 제 2 근거리 통신 연결에 대한 정보에 기초하여 외부 기기(2000)에서의 제 2 근거리 통신 방식을 판별한다.
단계 S630에서, 제 1 디바이스(1000)는 기기간 직접 통신 요청시 필요한 제 1 디바이스(1000)의 정보를 BLE 통신 방식으로 외부 기기(2000)로 전송할 수 있다. 이로 인하여 외부 기기(2000)는 차후에 제 1 디바이스(1000)의 정보를 이용하여 제 1 디바이스(1000)와의 기기간 직접 통신을 먼저 시도할 수 있다.
그러나, 기기간 직접 통신 시도를 제 1 디바이스(1000) 측에서만 수행할 수 있도록, 단계 S630이 수행되지 않을 수도 있다.
단계 S635에서, 제 1 디바이스(1000)는 외부 기기(2000)의 제 2 근거리 통신 연결 정보에 기초하여 외부 기기(2000)로 연결 요청을 전송한다. 또한, 단계 S640에서 외부 기기(2000)로부터 연결 수락 신호가 수신되면, 단계 S645에서 제 1 디바이스(1000)는 애플리케이션을 실행한다.
단계 S645에서, 제 1 디바이스(1000)는 실행되는 애플리케이션을 이용하여 외부 기기(2000)를 제어한다. 제 1 디바이스(1000)는 외부 기기(2000)와 서비스 연결됨에 따라, 실행된 애플리케이션을 이용하여 외부 기기(2000)를 제어하고, 외부 기기(2000)와 함께 소정의 서비스를 제공할 수 있다.
도 7은 본 발명의 일 실시예에 따른 제 2 디바이스(3000)가 제 1 디바이스(1000) 및 제 3 디바이스(4000) 중 하나를 중계기로 선택하도록 하는 외부 기기 제어 시스템의 개요도이다.
도 7에 도시된 외부 기기 제어 시스템은, 제 1 디바이스(1000), 제 3 디바이스(4000), 적어도 하나의 외부 기기(2000) 및 제 2 디바이스(3000)를 포함할 수 있다. 또한, 제 1 디바이스(1000) 및 제 3 디바이스(4000)는 호스트 디바이스일 수 있으며, 적어도 하나의 외부 기기(2000)는 호스트 디바이스에 연결되며 호스트 디바이스에 의해 관리되는 주변 기기일 수 있다.
또한, 제 1 디바이스(1000) 및 제 3 디바이스(4000) 중 적어도 하나는 외부 기기(2000)와 연결되며 외부 기기(2000)를 제어할 수 있으며, 외부 기기(2000)와 제 2 디바이스(3000) 간의 데이터 전송을 중계할 수 있다.
또한, 제 2 디바이스(3000)는 소정의 외부 기기(2000)에 물리적으로 연결되고, 연결된 외부 기기(2000)와의 서비스 연결을 시도한다. 만약, 제 2 디바이스(3000)가 외부 기기(2000)와의 서비스 연결에 실패하면, 제 2 디바이스(3000)는 외부 기기(2000)에 연결된 제 1 디바이스(1000) 및 제 3 디바이스(4000)를 검색할 수 있다. 또한, 제 2 디바이스(3000)는 검색된 제 1 디바이스(1000) 및 제 3 디바이스(4000) 중 적어도 하나를 선택할 수 있으며, 선택된 디바이스에 연결될 수 있다. 또한, 제 2 디바이스(3000)는 소정의 데이터를 외부 기기(2000)에게 중계해 줄 것을 선택된 디바이스에게 요청할 수 있다.
제 3 디바이스(4000)는, 예를 들어, 스마트폰, 휴대폰, PDA(personal digital assistant), 랩톱, 미디어 플레이어, PC, GPS(global positioning system) 장치, 및 기타 모바일 또는 비모바일 컴퓨팅 장치일 수 있으나, 이에 제한되지 않는다. 또한, 제 3 디바이스(4000)는, 가전 기기 및 댁 내에 설치된 각종 기기를 포함할 수 있으며, 예를 들어, TV, 조명, 냉장고, 오디오 장치, 세탁기, 냉장고, 오븐, 가스렌지, 홈 게이트웨이, 게임 기기, 전자 칠판 및 터치 테이블을 포함할 수 있으나, 이에 제한되지 않는다.
도 8은 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서 제 2 디바이스(3000)가 제 1 디바이스(1000) 및 제 3 디바이스 중에서, 제 1 디바이스(1000)를 중계기로서 선택하고, 외부 기기(2000)를 제어하는 방법을 도시한 흐름도이다.
단계 S800에서 제 3 디바이스(4000) 및 외부 기기(2000)가 연결된다. 제 3 디바이스(4000) 및 외부 기기(2000)는 서로 물리적으로 연결될 수 있다. 제 3 디바이스(4000)와 외부 기기(2000)가 접근함에 따라, 제 3 디바이스(4000) 및 외부 기기(2000)는 제 1 근거리 통신 발생을 감지할 수 있다. 또한, 외부 기기(2000)는 제 1 근거리 통신을 통하여 제 3 디바이스(4000)에게 외부 기기(2000)의 식별 값을 전송할 수 있다.
또한, 외부 기기(2000)는 제 1 근거리 통신을 통하여, 제 3 디바이스(4000)에게 제 2 근거리 통신 연결을 위한 정보 및 외부 기기(2000)에 관련된 애플리케이션 정보를 전송할 수 있다.
또한, 외부 기기(2000))에 관련된 애플리케이션 정보는, 외부 기기(2000)와 소정의 서비스를 제공하기 위한 애플리케이션일 수 있다. 애플리케이션 정보는, 예를 들어, 외부 기기(2000)에 설치된 애플리케이션에 관한 정보 및 외부 기기(2000)를 제어하기 위한 애플리케이션에 관한 정보를 포함할 수 있으나, 이에 제한되지 않는다.
단계 S805에서 제 1 디바이스(1000) 및 외부 기기(2000)가 연결된다. 제 1 디바이스(1000) 및 외부 기기(2000)는 단계 S800에서 설명한 바와 마찬가지로 서로 연결될 수 있다.
단계 S810에서 제 3 디바이스(4000)는 외부 기기(2000)를 제어하기 위한 애플리케이션을 실행한다. 제 3 디바이스(4000)는 외부 기기(2000)로부터 수신된 애플리케이션 정보에 기초하여, 외부 기기(2000)를 제어하기 위한 애플리케이션을 설치하고 실행할 수 있다. 제 3 디바이스(4000)가 외부 기기(2000)로부터 애플리케이션 정보로서 애플리케이션 파일을 수신한 경우에는, 제 3 디바이스(4000)는 수신된 애플리케이션 파일을 실행할 수 있다. 또한, 제 3 디바이스(4000)가 소정의 애플리케이션을 다운로드하기 위한 링크 주소를 수신한 경우에는, 제 3 디바이스(4000)는 수신된 링크 정보를 이용하여 애플리케이션 파일을 다운로드하고 다운로드된 애플리케이션 파일을 실행할 수 있다.
또한, 제 3 디바이스(4000)가 실행된 애플리케이션을 이용하여, 외부 기기(2000)와 소정의 서비스를 위한 데이터를, 외부 기기(2000)와 온전하게 송수신할 수 있는 상태가 됨으로써, 제 3 디바이스(4000)와 외부 기기(2000)와의 서비스 연결이 완료되게 된다.
단계 S815에서 제 1 디바이스(1000)는 외부 기기(2000)를 제어하기 위한 애플리케이션을 실행한다. 제 1 디바이스(1000)는 단계 S810에서 설명한 바와 마찬가지로 애플리케이션을 실행하고, 외부 기기(2000)와 서비스 연결될 수 있다.
단계 S820에서 제 2 디바이스(3000) 및 외부 기기(2000)가 연결된다. 단계 S820에서, 제 2 디바이스(3000) 및 외부 기기(2000)는 서로 물리적으로 연결될 수 있다.
단계 S825에서 제 2 디바이스(3000)는 연결된 외부 기기(2000)의 식별 정보를 디스플레이하며, 단계 S830에서 제 2 디바이스(3000)는 외부 기기(2000)를 제어하기 위한 애플리케이션을 실행한다. 제 2 디바이스(3000)는 외부 기기(2000)와의 연결을 위한 사용자 입력에 기초하여 외부 기기(2000)를 제어하기 위한 애플리케이션을 실행할 수 있다.
단계 S835에서 제 2 디바이스(3000)는 외부 기기(2000)에게 서비스 연결을 요청한다. 제 2 디바이스(3000)는 단계 S830에서 실행된 애플리케이션을 이용하여 외부 기기(2000)에게 서비스 연결을 요청할 수 있다.
단계 S840에서 제 2 디바이스(3000)와 외부 기기(2000) 간의 서비스 연결이 실패된다. 제 2 디바이스(3000)의 서비스 프로토콜이 외부 기기(2000)의 서비스 프로토콜과 서로 상이한 경우에, 제 2 디바이스(3000) 및 외부 기기(2000) 간의 서비스 연결이 실패될 수 있다. 예를 들어, 제 2 디바이스(3000)에 설치된 OS(Operating System)가 외부 기기에 설치된 OS와 서로 상이하여, 제 2 디바이스(3000)의 서비스 프로토콜 및 데이터 포맷이 외부 기기(2000)의 서비스 프로토콜 및 데이터 포맷과 상이한 경우에, 제 2 디바이스(3000) 및 외부 기기(2000) 간의 서비스 연결이 실패될 수 있다.
단계 S845 및 S850에서 제 2 디바이스(3000)는 중계기를 검색한다. 제 2 디바이스(3000)는 외부 기기(2000)와의 서비스 연결이 실패됨에 따라 소정의 중계기를 검색할 수 있다. 제 2 디바이스(3000)는 외부 기기(2000)와의 서비스 연결이 실패되었음을 확인하고, 외부 기기(2000)와의 서비스 데이터의 전송을 중계할 제 1 디바이스(1000)를 검색할 수 있다.
또한, 단계 S820 내지 단계 S840에서, 제 2 디바이스(3000)는 외부 기기(2000)와 물리적으로 연결되고 물리적으로 연결된 외부 기기(2000)로부터 수신된 애플리케이션 정보를 수신하고, 애플리케이션 정보에 기초하여 설치된 애플리케이션을 이용하여 외부 기기(2000)와의 서비스 연결을 시도한 후, 서비스 연결이 실패되는 것으로 설명하였지만, 이에 제한되지 않는다. 제 2 디바이스(3000)가 외부 기기(2000)와 물리적으로 연결됨에 따라, 외부 기기(2000)로부터 수신된 외부 기기(2000)의 식별 값에 기초하여, 제 2 디바이스(3000)는 외부 기기(2000)와의 서비스 연결이 가능한지를 확인할 수도 있다. 이 경우, 제 2 디바이스(3000)는 외부 기기(2000)에서 이용되는 서비스 프로토콜의 종류 및 데이터 포맷을, 외부 기기(2000)의 식별 값에 기초하여 확인할 수 있으며, 확인된 서비스 프로토콜 및 데이터 포맷을 자신의 서비스 프로토콜 및 데이터 포맷과 비교함으로써, 제 2 디바이스(3000)는 외부 기기(2000)와의 서비스 연결이 가능한지를 확인할 수 있다.
또한, 단계 S840 및 S850에서 제 2 디바이스(3000)는 서비스 중계 요청을 주변의 디바이스들에게 브로드캐스팅할 수 있다. 제 2 디바이스(3000)는, 제 2 디바이스(3000)에서 이용되는 서비스 프로토콜 및 데이터 포맷에 관한 정보, 외부 기기(2000)에서 이용되는 서비스 프로토콜 및 데이터 포맷에 관한 정보를 주변의 디바이스들에게 브로드캐스팅할 수 있다.
단계 S855에서 제 2 디바이스(3000)는 중계기를 선택한다. 제 1 디바이스(1000) 및 제 3 디바이스(4000)는 제 2 디바이스(3000)로부터의 중계 요청에 응답하여, 소정의 ACK 신호를 제 2 디바이스(3000)에게 전송할 수 있다. 또한, 제 2 디바이스(3000)는 제 1 디바이스(1000) 및 제 3 디바이스(4000) 중에서 서비스 데이터의 중계를 요청할 디바이스로서 제 1 디바이스(1000)를 선택할 수 있다.
단계 S860에서 제 2 디바이스(3000)는 제 1 디바이스(1000)에게 서비스 데이터의 중계를 요청하며, 단계 S865에서 제 1 디바이스(1000)는 제 2 디바이스(3000)와 외부 기기(2000) 간에 전송되는 서비스 데이터를 중계한다. 제 1 디바이스(1000)는 제 2 디바이스(3000)로부터 수신되는 서비스 데이터를 외부 기기(2000)에 적합하도록 변환(convert)하고 변환된 서비스 데이터를 외부 기기(2000)에게 전송할 수 있다. 또한, 제 1 디바이스(1000)는 외부 기기(2000)로부터 수신되는 서비스 데이터를 제 2 디바이스(3000)에 적합하도록 변환하고, 변환된 서비스 데이터를 제 1 디바이스(1000)에게 전송할 수 있다.
도 9는 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서 제 2 디바이스(3000)가 제 1 디바이스(1000)를 중계기로 선택하고, 제 1 디바이스(1000)에 연결된 외부 기기(2000)를 제어하는 일례를 도시한 도면이다. 도 9에서 제 1 스마트폰은 제 1 디바이스(1000)이고, 제 2 스마트폰은 제 3 디바이스(4000)일 수 있으며, 스피커 및 태블릿 PC는 외부 기기(2000)이며, 스마트 TV는 제 2 디바이스(3000)일 수 있다.
제 1 스마트폰은 스피커 및 태블릿 PC와 물리적 연결 및 서비스 연결되어 있으며, 제 1 스마트폰, 스피커 및 태블릿 PC는 서비스 데이터를 서로 송수신함으로써 사용자에게 소정의 서비스를 제공할 수 있다.
또한, 제 2 스마트폰은 태블릿 PC와 물리적 연결 및 서비스 연결되어 있으며, 제 2 스마트폰 및 태블릿 PC는 서비스 데이터를 서로 송수신함으로써 사용자에게 소정의 서비스를 제공할 수 있다.
이후, 스마트 TV가 태블릿 PC와 서비스 연결을 시도하고, 서비스 연결이 실패됨에 따라 중계기를 검색할 수 있다. 스마트 TV는 제 1 스마트폰 및 제 2 스마트폰을 검색할 수 있다. 스마트 TV는 검색된 제 1 스마트폰 및 제 2 스마트폰 중에서 제 1 스마트폰을 중계기로 선택할 수 있다. 스마트 TV는 검색된 제 1 스마트폰 및 제 2 스마트폰으로부터 수신되는 기기 정보에 기초하여, 중계기를 선택할 수 있다.
또한, 스마트폰과 스마트 TV 간의 통신 세션이 오픈될 수 있으며, 제 1 스마트폰은 스마트 TV로부터의 중계 요청에 응답하여, 스마트 TV와 태블릿 PC 간의 서비스 데이터를 중계할 수 있다.
도 10은 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서, 제 2 디바이스(3000)가 제 1 디바이스(1000)에 연결된 외부 기기(2000) 중 하나를 선택하고, 제 1 디바이스(1000)가 제 2 디바이스(3000)와 선택된 외부 기기(2000) 간의 서비스 데이터를 중계하는 방법의 흐름도이다.
단계 S1000에서 제 1 디바이스(1000)는 외부 기기(2000)와 연결된다. 제 1 디바이스(1000) 및 외부 기기(2000)는 서로 물리적으로 연결될 수 있다. 제 1 디바이스(1000)와 외부 기기(2000)가 접근함에 따라, 제 1 디바이스(1000) 및 외부 기기(2000)는 제 1 근거리 통신 발생을 감지할 수 있다. 또한, 외부 기기(2000)는 제 1 근거리 통신을 통하여 제 1 디바이스(1000)에게 외부 기기(2000)의 식별 값을 전송할 수 있다. 외부 기기(2000)의 식별 값은, 예를 들어, SSID, 모델명, 제품 번호, 및 주변 기기(2000 또는 3000)의 사용자 ID를 포함할 수 있으나, 이에 제한되지 않는다. 또한, 외부 기기(2000)는 제 1 근거리 통신을 통하여, 제 1 디바이스(1000)에게 제 2 근거리 통신 연결을 위한 정보 및 외부 기기(2000)에 관련된 애플리케이션 정보를 전송할 수 있다. 제 1 근거리 통신 및 제 2 근거리 통신은, 예를 들어, NFC 통신, 블루투스(bluetooth) 통신, WIFI 통신을 포함할 수 있으나, 이에 제한되지 않는다. 또한, 제 1 근거리 통신 및 제 2 근거리 통신은 동일할 수 있으나, 이에 제한되지 않는다. 또한, 외부 기기(2000))에 관련된 애플리케이션 정보는, 외부 기기(2000)와 소정의 서비스를 제공하기 위한 애플리케이션일 수 있다. 애플리케이션 정보는, 예를 들어, 외부 기기(2000)에 설치된 애플리케이션에 관한 정보 및 외부 기기(2000)를 제어하기 위한 애플리케이션에 관한 정보를 포함할 수 있으나, 이에 제한되지 않는다.
단계 S1005에서 제 1 디바이스(1000)는 외부 기기(2000)를 제어하기 위한 애플리케이션을 실행한다. 제 1 디바이스(1000)는 외부 기기(2000)로부터 수신된 애플리케이션 정보에 기초하여, 외부 기기(2000)를 제어하기 위한 애플리케이션을 설치하고 실행할 수 있다. 제 1 디바이스(1000)가 외부 기기(2000)로부터 애플리케이션 정보로서 애플리케이션 파일을 수신한 경우에는, 제 1 디바이스(1000)는 수신된 애플리케이션 파일을 실행할 수 있다. 또한, 제 1 디바이스(1000)가 소정의 애플리케이션을 다운로드하기 위한 링크 주소를 수신한 경우에는, 제 1 디바이스(1000)는 수신된 링크 정보를 이용하여 애플리케이션 파일을 다운로드하고 다운로드된 애플리케이션 파일을 실행할 수 있다.
또한, 제 1 디바이스(1000)가 실행된 애플리케이션을 이용하여, 외부 기기(2000)와 소정의 서비스를 위한 데이터를, 외부 기기(2000)와 온전하게 송수신할 수 있는 상태가 됨으로써, 제 1 디바이스(1000)와 외부 기기(2000)와의 서비스 연결이 완료되게 된다.
단계 S1010에서 제 1 디바이스(1000) 및 제 2 디바이스(3000)가 서로 연결된다. 제 1 디바이스(1000)와 제 2 디바이스(3000)가 접근함에 따라, 제 1 디바이스(1000) 및 제 2 디바이스(3000)는 제 1 근거리 통신 발생을 감지할 수 있다. 또한, 제 2 디바이스(3000)는 제 1 근거리 통신을 통하여 제 1 디바이스(1000)에게 외부 기기(2000)의 식별 값을 전송할 수 있다. 또한, 제 2 디바이스(3000)는 제 1 근거리 통신을 통하여, 제 1 디바이스(1000)에게 제 2 근거리 통신 연결을 위한 정보 및 제 2 디바이스(3000)에 관련된 애플리케이션 정보를 전송할 수 있다. 또한, 제 1 디바이스(1000)가 제 2 디바이스(3000)에게 제 1 디바이스(1000)에 관련된 애플리케이션 정보를 전송할 수도 있다. 또한, 제 1 디바이스(1000)에 제 2 디바이스(3000)를 제어하기 위한 애플리케이션이 설치될 수 있으며, 제 2 디바이스(3000)에 제 1 디바이스(1000)를 제어하기 위한 애플리케이션이 설치될 수도 있다.
단계 S1015에서 제 2 디바이스(3000)는 제 1 디바이스(1000)에 연결된 외부 기기(2000)에 관한 정보를 디스플레이한다. 제 2 디바이스(3000)는 제 1 디바이스(1000)로부터 제 1 디바이스(1000)에 연결된 적어도 하나의 외부 기기(2000)에 관한 기기 정보를 수신하고, 수신된 기기 정보에 기초하여 외부 기기(2000)의 목록을 제 2 디바이스(3000)의 화면에 디스플레이할 수 있다.
단계 S1020에서 제 2 디바이스(3000)는 소정의 외부 기기(2000)를 선택한다. 제 2 디바이스(3000)의 화면에 표시된 외부 기기(2000)의 목록에 대한 사용자의 선택 입력에 기초하여, 제 2 디바이스(3000)는 소정의 외부 기기(2000)를 선택할 수 있다.
단계 S1025에서 제 2 디바이스(3000)는 제 1 디바이스(1000)에게 선택된 외부 기기(2000)에 관한 기기 정보를 전송한다. 제 2 디바이스(3000)는, 예를 들어, 선택된 외부 기기(2000)의 식별 값을 제 1 디바이스(1000)에게 전송할 수 있다.
단계 S1030에서 제 1 디바이스(1000)는 선택된 외부 기기(2000)의 서비스 프로토콜이 제 2 디바이스(3000)의 서비스 프로토콜과 상이한지를 판단한다. 예를 들어, 제 2 디바이스(3000)에 설치된 OS가 선택된 외부 기기(2000)에 설치된 OS와 서로 상이한 경우에, 선택된 외부 기기(2000)의 서비스 프로토콜이 제 2 디바이스(3000)의 서비스 프로토콜과 상이할 수 있다. 또한, 제 2 디바이스(3000)의 데이터 포맷이 선택된 외부 기기(2000)의 데이터 포맷과 상이한 경우에, 선택된 외부 기기(2000)의 서비스 프로토콜이 제 2 디바이스(3000)의 서비스 프로토콜과 상이할 수 있다. 그러나, 이에 제한되지 않는다.
단계 S1035에서 제 1 디바이스(1000)는 서비스 데이터를 변환한다. 제 1 디바이스(1000)는 선택된 외부 기기(2000)로부터 서비스 데이터를 수신하고, 수신된 데이터를 제 2 디바이스(3000)에 적합하도록 변환할 수 있다. 제 1 디바이스(1000)는 외부 기기(2000)로부터 수신된 서비스 데이터의 포맷을 제 2 디바이스(3000)의 데이터 포맷으로 변환할 수 있다. 또한, 제 1 디바이스(1000)는 외부 기기(2000)로부터 수신된 서비스 데이터를 제 2 디바이스(3000)의 서비스 프로토콜에 맞도록 변환할 수 있다.
또한, 제 1 디바이스(1000)는 제 2 디바이스(3000)로부터 서비스 데이터를 수신하고, 수신된 데이터를 제 2 디바이스(3000)에 적합하도록 변환할 수 있다. 제 1 디바이스(1000)는 제 2 디바이스(3000)로부터 수신된 서비스 데이터의 포맷을 외부 기기(2000)의 데이터 포맷으로 변환할 수 있다. 또한, 제 1 디바이스(1000)는 제 2 디바이스(3000)로부터 수신된 서비스 데이터를 외부 기기(2000)의 서비스 프로토콜에 맞도록 변환할 수 있다.
이 경우, 제 1 디바이스(1000)는 외부 기기(2000)의 서비스 프로토콜 및 제 2 디바이스(3000)의 서비스 프로토콜을 해석하고, 외부 기기(2000)의 데이터 포맷 및 제 2 디바이스(3000)의 데이터 포맷을 확인할 수 있다.
단계 S1040 및 단계 S1045에서 제 1 디바이스(1000)는 변환된 서비스 데이터를 외부 기기(2000) 및 제 2 디바이스(3000)에게 전송한다. 제 1 디바이스(1000)는 변환된 외부 기기(2000)의 서비스 데이터를 제 2 디바이스(3000)의 서비스 프로토콜에 기초하여 제 2 디바이스(3000)에게 제공할 수 있다. 또한, 제 1 디바이스(1000)는 변환된 제 2 디바이스(3000)의 서비스 데이터를 외부 기기(2000)의 서비스 프로토콜에 기초하여 외부 기기(2000)에게 제공할 수 있다.
도 11은 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서, 제 2 디바이스(3000)가 서비스 데이터의 변환이 필요한지를 판단하고, 제 2 디바이스(3000)와 외부 기기(2000) 간의 서비스 데이터를 중계하는 일례를 도시한 도면이다. 도 11에서 스마트폰은 제 1 디바이스(1000)이고, 조이패드는 외부 기기(2000)일 수 있으며, 스마트 TV는 제 2 디바이스(3000)일 수 있다.
스마트폰은 조이패드와 물리적 연결 및 서비스 연결되어 있으며, 스마트폰 및 조이 패드는 서비스 데이터를 서로 송수신함으로써 사용자에게 소정의 서비스를 제공할 수 있다.
이후, 스마트폰은 스마트 TV와 물리적 연결 및 서비스 연결되고, 스마트폰은 조이패드와 스마트 TV 간에 송수신될 서비스 데이터의 컨버팅이 필요한지를 판단할 수 있다. 스마트폰은 조이패드의 서비스 프로토콜 및 스마트 TV의 서비스 프로토콜을 비교할 수 있다.
이후, 스마트폰은 조이패드로부터 수신되는 서비스 데이터를 스마트 TV의 서비스 프로토콜에 맞게 변환할 수 있으며, 변환된 서비스 데이터를 스마트 TV에게 전송할 수 있다.
도 12는 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서 제 1 디바이스(1000)가 외부 기기(2000)와 제 2 디바이스(3000) 간에 송수신되는 서비스 데이터를 변환하지 않고, 서비스 데이터를 전달하는 방법을 도시한 흐름도이다.
단계 S1200에서 제 1 디바이스(1000) 및 외부 기기(2000)가 연결된다. 제 1 디바이스(1000) 및 외부 기기(2000)는 서로 물리적으로 연결될 수 있다. 제 1 디바이스(1000)와 외부 기기(2000)가 접근함에 따라, 제 1 디바이스(1000) 및 외부 기기(2000)는 제 1 근거리 통신 발생을 감지할 수 있다. 또한, 외부 기기(2000)는 제 1 근거리 통신을 통하여 제 1 디바이스(1000)에게 외부 기기(2000)의 식별 값을 전송할 수 있다. 외부 기기(2000)의 식별 값은, 예를 들어, SSID, 모델명, 제품 번호, 및 주변 기기(2000 또는 3000)의 사용자 ID를 포함할 수 있으나, 이에 제한되지 않는다.
또한, 외부 기기(2000)는 제 1 근거리 통신을 통하여, 제 1 디바이스(1000)에게 제 2 근거리 통신 연결을 위한 정보 및 외부 기기(2000)에 관련된 애플리케이션 정보를 전송할 수 있다. 제 1 근거리 통신 및 제 2 근거리 통신은, 예를 들어, NFC 통신, 블루투스(bluetooth) 통신, WIFI 통신을 포함할 수 있으나, 이에 제한되지 않는다. 또한, 제 1 근거리 통신 및 제 2 근거리 통신은 동일할 수 있으나, 이에 제한되지 않는다.
또한, 외부 기기(2000))에 관련된 애플리케이션 정보는, 외부 기기(2000)와 소정의 서비스를 제공하기 위한 애플리케이션일 수 있다. 애플리케이션 정보는, 예를 들어, 외부 기기(2000)에 설치된 애플리케이션에 관한 정보 및 외부 기기(2000)를 제어하기 위한 애플리케이션에 관한 정보를 포함할 수 있으나, 이에 제한되지 않는다.
단계 S1205에서 제 1 디바이스(1000)는 외부 기기(2000)를 제어하기 위한 애플리케이션을 실행한다. 제 1 디바이스(1000)는 외부 기기(2000)로부터 수신된 애플리케이션 정보에 기초하여, 외부 기기(2000)를 제어하기 위한 애플리케이션을 설치하고 실행할 수 있다. 제 1 디바이스(1000)가 외부 기기(2000)로부터 애플리케이션 정보로서 애플리케이션 파일을 수신한 경우에는, 제 1 디바이스(1000)는 수신된 애플리케이션 파일을 실행할 수 있다. 또한, 제 1 디바이스(1000)가 소정의 애플리케이션을 다운로드하기 위한 링크 주소를 수신한 경우에는, 제 1 디바이스(1000)는 수신된 링크 정보를 이용하여 애플리케이션 파일을 다운로드하고 다운로드된 애플리케이션 파일을 실행할 수 있다.
또한, 제 1 디바이스(1000)가 실행된 애플리케이션을 이용하여, 외부 기기(2000)와 소정의 서비스를 위한 데이터를, 외부 기기(2000)와 온전하게 송수신할 수 있는 상태가 됨으로써, 제 1 디바이스(1000)와 외부 기기(2000)와의 서비스 연결이 완료되게 된다.
단계 S1210에서 제 1 디바이스(1000)는 외부 기기(2000)의 서비스 프로토콜에 적합한 제 2 디바이스(3000)를 검색한다. 제 1 디바이스(1000)는 외부 기기(2000)의 서비스 프로토콜에 관한 정보를 주변의 기기들에게 브로드캐스팅할 수 있다. 외부 기기(2000)의 서비스 프로토콜에 관한 정보는, 예를 들어, 외부 기기(2000)의 서비스 프로토콜의 종류, 외부 기기(2000)의 서비스 프로토콜에서 이용되는 데이터의 포맷, 및 외부 기기(2000)에 설치된 OS의 종류에 관한 정보를 포함할 수 있으나, 이에 제한되지 않는다.
단계 S1215에서 제 1 디바이스(1000)는 제 2 디바이스(3000)로부터 ACK 신호를 수신한다. 브로드캐스팅된 서비스 프로토콜에 관한 정보에 기초하여, 제 2 디바이스(3000)의 서비스 프로토콜이 외부 기기(2000)의 서비스 프로토콜과 동일한 지를 판단할 수 있다. 또한, 제 2 디바이스(3000)는 외부 기기(2000)의 서비스 프로토콜에 기초하여 서비스 데이터를 외부 기기(2000)와 송수신할 수 있는지를 판단할 수 있다. 또한, 제 2 디바이스(3000)는 외부 기기(2000)에 설치된 OS가 제 2 디바이스(3000)에 설치된 OS와 동일한지를 판단할 수 있다.
단계 S1220에서 제 1 디바이스(1000) 및 제 2 디바이스(3000)는 연결된다. 제 2 디바이스(3000)는 ACK 신호를 제 1 디바이스(1000)에게 전송하면서, 제 2 디바이스(3000)의 연결 정보를 제 1 디바이스(1000)에게 전송할 수 있다. 제 2 디바이스(3000)의 연결 정보는 제 2 디바이스(3000)에 연결하기 위하여 필요한 정보로서, 예를 들어, NFC 통신, 블루투스 통신, WIFI 통신을 통하여 연결하기 위한 정보를 포함할 수 있다. 또한, 제 1 디바이스(1000)는 수신된 연결 정보를 이용하여 제 2 디바이스(3000)와 연결될 수 있다.
또한, 제 2 디바이스(3000)는 제 2 디바이스(3000)의 애플리케이션에 관한 정보를 제 1 디바이스(1000)에게 전송할 수도 있다. 제 2 디바이스(3000)의 애플리케이션은 제 2 디바이스(3000)와 소정의 서비스를 제공하기 위한 애플리케이션에 관한 정보일 수 있다. 애플리케이션 정보는, 예를 들어, 제 2 디바이스(3000)에 설치된 애플리케이션을 다운로드하기 위한 링크 정보 및 제 2 디바이스(3000)에 설치된 애플리케이션 파일을 포함할 수 있으나, 이에 제한되지 않는다. 또한, 제 1 디바이스(1000)는 수신된 애플리케이션 정보에 기초하여, 소정의 애플리케이션을 제 1 디바이스(1000)에 설치하고 실행할 수 있다.
단계 S1225에서 제 1 디바이스(1000)는 외부 기기(2000)와 제 2 디바이스(3000) 간의 서비스 데이터를 전달한다. 제 1 디바이스(1000)는 외부 기기(2000)로부터 수신되는 서비스 데이터를 변환하지 않고 제 2 디바이스(3000)에게 전달할 수 있다. 또한, 제 1 디바이스(1000)는 제 2 디바이스(3000)로부터 수신되는 서비스 데이터를 변환하지 않고 외부 기기(2000)에게 전달할 수 있다.
도 13은 본 발명의 일 실시예에 따른 외부 기기 제어 시스템에서 제 1 디바이스(1000)가 제 2 디바이스(3000)를 검색하고, 외부 기기(2000)와 제 2 디바이스(3000) 간에 송수신되는 서비스 데이터를 전달하는 일례를 도시한 도면이다. 도 13에서 스마트 TV은 제 1 디바이스(1000)이고, 제 1 스마트폰은 외부 기기(2000)이며, 제 2 스마트 폰은 제 2 디바이스(3000)일 수 있다.
스마트 TV는 제 1 스마트폰과 연결되고, 제 1 스마트폰에 저장된 콘텐트를 제 1 스마트폰으로부터 수신하여 재생할 수 있다.
이후, 스마트 TV는 제 1 스마트폰에 저장된 콘텐트를 재생할 수 있는 기기를 검색할 수 있다. 스마트 TV는 제 1 스마트폰의 서비스 프로토콜에 관한 정보를 브로드캐스팅할 수 있다.
이후, 스마트 TV는 제 2 스마트폰으로부터 수신되는 기기 정보에 기초하여 제 2 스마트폰과 연결될 수 있다. 이후, 스마트 TV는 제 1 스마트폰으로부터 수신되는 서비스 데이터를 제 2 스마트폰에게 전달하며, 제 2 스마트폰으로부터 수신되는 서비스 데이터를 제 1 스마트폰에게 전달할 수 있다.
도 14는 본 발명의 일 실시예에 따른 외부 기기 제어 시스템의 일례를 도시한 도면이다. 도 14에서 스마트폰은 제 1 디바이스(1000)이며, 헤드폰, 스피커, 조이패드, 카메라, 키보드는 외부 기기(2000)이며, 태블릿 PC는 제 2 디바이스(3000)일 수 있다.
도 14를 참조하면, 스마트폰은 헤드폰, 스피커, 조이패드, 카메라 및 키보드로부터 수신되는 서비스 데이터를 태블릿 PC에게 중계하거나, 태블릿 PC로부터 수신되는 서비스 데이터를 헤드폰, 스피커, 조이패드, 카메라 및 키보드에게 중계할 수 있다.
이 경우, 헤드폰, 스피커, 조이패드, 카메라 및 키보드에서 이용되는 서비스 프로토콜은 각각 상이할 수 있다. 예를 들어, 헤드폰, 스피커, 조이패드, 카메라 및 키보드에서 이용되고 있는 서비스의 종류가 상이하거나, 헤드폰, 스피커, 조이패드, 카메라 및 키보드에서 이용되는 데이터의 포맷이 상이할 수 있다.
또한, 스마트폰은 태블릿 PC로부터 수신되는 서비스 데이터를 헤드폰, 스피커, 조이패드, 카메라 및 키보드의 서비스 프로토콜에 각각 적합하도록 변환하고, 변환된 서비스 데이터를 헤드폰, 스피커, 조이패드, 카메라 및 키보드 각각에 전송할 수 있다.
따라서, 헤드폰, 스피커, 조이패드, 카메라 및 키보드가 이용하는 서비스 및 서비스 프로토콜이 각각 상이한 경우에도, 스마트폰은 태블릿 PC와, 헤드폰, 스피커, 조이패드, 카메라 및 키보드 간의 서비스 데이터를 효과적으로 중계할 수 있다.
도 15는 본 발명의 일 실시예에 따른, 제 2 디바이스(3000)가 외부 기기(2000)와의 연결을 시도하고 중계기를 검색하도록 하기 위한 사용자 인터페이스의 일례를 도시한 도면이다.
도 15(a)를 참조하면, 본 발명의 일 실시예에 따른 제 2 디바이스(3000)는 연결하고자하는 외부 기기(2000)를 검색하고, 검색된 외부 기기(2000)의 목록을 화면에 디스플레이할 수 있다. 또한, 외부 기기(2000)의 목록에 대한 사용자 입력에 기초하여, 제 2 디바이스(3000)는 외부 기기 A를 선택할 수 있다. 또한, 제 2 디바이스(3000)는 외부 기기 A와의 서비스 연결을 시도할 수 있다.
또한, 도 15(b)를 참조하면, 제 2 디바이스(3000)가 외부 기기 A와의 서비스 연결에 실패하면, 중계기를 검색할 지를 확인하는 사용자 인터페이스를 화면에 디스플레이할 수 있다. 제 2 디바이스(3000)의 서비스 프로토콜과 외부 기기 A의 서비스 프로토콜이 상이한 경우에, 외부 기기 A와 제 2 디바이스(3000)의 서비스 연결이 실패할 수 있다. 또한, 중계기 검색을 하라는 사용자 입력에 기초하여, 제 2 디바이스(3000)는 외부 기기 A와의 서비스 데이터를 중계하기 위한 중계기를 검색할 수 있다.
또한, 15(c)를 참조하면, 제 2 디바이스(3000)는 검색된 중계기의 목록을 화면에 디스플레이할 수 있다. 중계기는 제 1 디바이스(1000)일 수 있다. 또한, 중계기의 목록에 대한 사용자 입력에 기초하여, 제 2 디바이스(3000)는 디바이스 A를 중계기로서 선택할 수 있다. 이후, 제 2 디바이스(3000)는 디바이스 A에게 서비스 데이터의 중계를 요청할 수 있으며, 디바이스 A는 제 2 디바이스(3000)로부터 수신되는 서비스 데이터를 외부 기기 A의 서비스 프로토콜에 맞도록 변환하고, 변환된 서비스 데이터를 외부 기기 A에게 전송할 수 있다.
도 16은 본 발명의 일 실시예에 따른, 제 1 디바이스(1000)가 외부 기기(2000) 및 제 2 디바이스(3000)의 서비스 프로토콜을 비교한 후, 제 2 디바이스(3000)와 외부 기기(2000)간의 서비스 데이터를 중계하도록 하는 사용자 입력을 수신하기 위한 사용자 인터페이스의 일례를 도시한 도면이다.
도 16을 참조하면, 제 1 디바이스(1000)는 제 1 디바이스(1000)에 연결된 외부 기기(2000)와 함께 소정의 서비스를 제공할 제 2 디바이스(3000)를 검색하고, 외부 기기(2000)의 서비스 프로토콜과 제 2 디바이스(3000)의 서비스 프로토콜이 상이한지를 판단할 수 있다. 만약, 외부 기기(2000)의 서비스 프로토콜과 제 2 디바이스(3000)의 서비스 프로토콜이 상이하다면, 도 16에서와 같이, 외부 기기(2000)와 제 2 디바이스(3000) 간의 서비스 데이터를 중계할지를 문의하는 사용자 인터페이스를 화면에 디스플레이할 수 있다.
또한, 사용자 입력에 기초하여, 제 1 디바이스 A는 제 2 디바이스(3000)로부터 수신되는 서비스 데이터를 외부 기기(2000)의 서비스 프로토콜에 맞도록 변환하고, 변환된 서비스 데이터를 외부 기기(2000)에게 전송할 수 있다.
도 17은 본 발명의 일 실시예에 따른 제 1 디바이스(1000)가 외부 기기(2000)와 동일한 프로토콜의 제 2 디바이스(3000)를 검색하고 선택하도록 하는 사용자 인터페이스의 일례를 도시한 도면이다.
도 17(a)를 참조하면, 제 1 디바이스(1000)는 제 1 디바이스(1000)에 연결된 외부 기기(2000)와 함께 소정의 서비스를 제공하도록 하기 위하여, 외부 기기(2000)의 서비스 프로토콜과 동일한 서비스 프로토콜을 이용하는 제 2 디바이스(3000)를 검색할 지를 사용자에게 문의할 수 있다.
또한, 도 17(b)를 참조하면, 제 1 디바이스(1000)는 외부 기기(2000)의 서비스 프로토콜과 동일한 서비스 프로토콜을 이용하는 디바이스의 목록을 화면에 표시하고, 표시된 목록에 대한 사용자 입력에 기초하여 제 2 디바이스(3000)를 선택할 수 있다. 이후, 제 1 디바이스(1000)는 외부 기기(2000)로부터 수신되는 서비스 데이터를 변환하지 않고 제 2 디바이스(3000)에게 전달하며, 제 2 디바이스(3000)로부터 수신되는 서비스 데이터를 변환하지 않고 외부 기기(2000)에게 전달할 수 있다.
도 18은 본 발명의 일 실시예에 따른 제 2 디바이스(3000)가 외부 기기(2000)와 소정의 서비스를 제공하는 일례를 도시한 도면이다.
도 18(a)를 참조하면, 제 2 디바이스(3000)는 소정의 서비스를 함께 제공하기 위한 적어도 하나의 외부 기기(2000)를 검색하고, 검색된 외부 기기(2000)의 목록을 화면에 표시할 수 있다. 예를 들어, " Wireless headphone A", "Digital camera B", "Joy-pad A", 및 "Keyboard C"와 같이, 외부 기기(2000)의 목록이 표시될 수 있다.
또한, 사용자가 표시된 목록에서 "Digital camera B"를 선택하면, 도 18(b)에서와 같이, "Digital camera B"에서 촬영된 영상(10) 및 "Digital camera B"를 제어하기 위한 메뉴(12)가 화면에 표시될 수 있다.
도 19는 본 발명의 일 실시예에 따른 디바이스의 블록도이다. 도 19에 도시된 디바이스는 제 1 디바이스(1000) 또는 제 2 디바이스(3000)일 수 있다.
이동 통신부(1001)는 3G/4G와 같은 셀룰러 네트워크를 통해 기지국과의 호 설정, 데이터 통신 등을 수행한다. 서브 통신부(1002)는 블루투스나 NFC 등 근거리 통신을 위한 기능을 수행한다. 방송부(1003)는 DMB 방송 신호를 수신한다.
카메라부(1004)는 사진이나 동영상을 촬영하기 위한 렌즈 및 광학 소자들을 포함한다.
센서부(1005)는 디바이스의 움직임을 감지하는 중력 센서, 빛의 밝기를 감지하는 조도 센서, 사람의 근접도를 감지하는 근접 센서, 사람의 움직임을 감지하는 모션 센서 등을 포함할 수 있다.
GPS 수신부(1006)는 인공 위성으로부터 GPS 신호를 수신한다. 이러한 GPS 신호를 이용하여 다양한 서비스가 사용자에게 제공될 수 있다.
입출력부(1010)은 외부 기기나 사람과의 인터페이스를 제공하며, 버튼(1011), 마이크(1012), 스피커(1013), 진동 모터(1014), 커넥터(1015), 키패드(1016)을 포함한다.
터치 스크린(1018)은 사용자의 터치 입력을 수신한다. 터치 스크린 컨트롤러(1017)는 터치 스크린(1018)을 통해 입력된 터치 입력을 제어부(1050)에 전달한다. 전원 공급부(1019)는 디바이스에 필요한 전력을 공급하기 위해 배터리 또는 외부 전원 소스와 연결된다.
제어부(1050)는 메모리(1060)에 저장된 프로그램들을 실행함으로써 본 발명에 따라 결제를 요청하거나 결제를 수행한다.
메모리(1060)에 저장된 프로그램들은 그 기능에 따라 복수 개의 모듈들로 분류할 수 있는데, 이동 통신 모듈(1061), Wi-Fi 모듈(1062), 블루투스 모듈(1063), DMB 모듈(1062), 카메라 모듈(1065), 센서 모듈(1066), GPS 모듈(1067), 동영상 재생 모듈(1068), 오디오 재생 모듈(1069), 전원 모듈(1070), 터치 스크린 모듈(1071), UI 모듈(1072), 어플리케이션 모듈(1073) 등으로 분류될 수 있다.
각 모듈들의 기능은 그 명칭으로부터 당업자가 직관적으로 추론할 수 있을 것이므로 여기서는 어플리케이션 모듈(1073)에 대해서만 설명하기로 한다.
먼저, 도 19의 디바이스가 제 2 디바이스(3000)인 경우에 대하여 설명하기로 한다.
도 19의 디바이스가 제 2 디바이스(3000)인 경우에, 애플리케이션 모듈(1073)은 외부 기기(2000)와 서비스 연결을 시도하고, 서비스 연결에 실패하면 서비스 데이터를 중계할 제 1 디바이스(1000)를 검색한다. 또한, 애플리케이션 모듈(1073)은 제 1 디바이스(1000)를 경유하여 서비스 데이터를 외부 기기(2000)와 송수신할 수 있다.
구체적으로, 애플리케이션 모듈(1073)은 이동 통신부(1001) 및 서브 통신부(1002) 중 적어도 하나를 이용하여 외부 기기(2000)와 물리적으로 연결될 수 있다. 또한, 애플리케이션 모듈(1073)은 외부 기기(2000)를 제어하기 위한 소정의 애플리케이션을 설치 및 실행하고, 외부 기기(2000)에게 서비스 연결을 요청할 수 있다.
만약, 제 2 디바이스(3000)와 외부 기기(2000) 간의 서비스 연결이 실패되면, 애플리케이션 모듈(1073)은 중계기를 검색할 수 있다. 제 2 디바이스(3000)는 외부 기기(2000)와의 서비스 연결이 실패됨에 따라 소정의 중계기를 검색할 수 있다. 제 2 디바이스(3000)는 외부 기기(2000)와의 서비스 연결이 실패되었음을 확인하고, 외부 기기(2000)와의 서비스 데이터의 전송을 중계할 제 1 디바이스(1000)를 이동 통신부(1001) 및 서브 통신부(1002) 중 적어도 하나를 이용하여 검색할 수 있다.
이 때, 애플리케이션 모듈(1073)은 제 2 디바이스(3000) 및 외부 기기(2000)의 기기 정보를 주변의 디바이스들에게 브로드캐스팅할 수 있다. 한편, 제 2 디바이스(3000)가 외부 기기(2000)와 물리적으로 연결됨에 따라, 외부 기기(2000)로부터 수신된 외부 기기(2000)의 식별 값에 기초하여, 애플리케이션 모듈(1073)은 외부 기기(2000)와의 서비스 연결이 가능한지를 확인할 수도 있다. 이 경우, 애플리케이션 모듈(1073)은 외부 기기(2000)에서 이용되는 서비스 프로토콜의 종류 및 데이터 포맷을, 외부 기기(2000)의 식별 값에 기초하여 확인할 수 있으며, 확인된 서비스 프로토콜 및 데이터 포맷을 자신의 서비스 프로토콜 및 데이터 포맷과 비교함으로써, 애플리케이션 모듈(1073)은 외부 기기(2000)와의 서비스 연결이 가능한지를 확인할 수 있다.
또한, 브로드캐스팅된 기기 정보에 기초하여, 예를 들어, 제 1 디바이스(1000) 및 제 3 디바이스(4000)가는 소정의 ACK 신호를 제 2 디바이스(3000)에게 전송할 수 있다. 이 경우, 애플리케이션 모듈(1073)은 제 1 디바이스(1000) 및 제 3 디바이스(4000) 중에서 서비스 데이터의 중계를 요청할 중계기로서 제 1 디바이스(1000)를 선택할 수 있다.
또한, 애플리케이션 모듈(1073)은 제 1 디바이스(1000)에게 서비스 데이터의 중계를 요청하고, 서비스 데이터를 제 1 디바이스(1000)에게 전송할 수 있다. 이에 따라, 제 1 디바이스(1000)는 제 2 디바이스(3000)로부터 수신되는 서비스 데이터를 외부 기기(2000)에 적합하도록 변환하고 변환된 서비스 데이터를 외부 기기(2000)에게 전송할 수 있다.
한편, 애플리케이션 모듈(1073)은 외부 기기(2000)와의 서비스 연결을 시도하지 않고, 제 1 디바이스(1000)에게 서비스 데이터의 중계를 요청할 수도 있다. 애플리케이션 모듈(1073)은 제 1 디바이스(1000)로부터 외부 기기(2000)의 목록을 수신하고 소정의 외부 기기(2000)를 선택할 수 있으며, 선택된 외부 기기(2000)에 대하여 서비스 데이터를 중계해 줄 것을 제 1 디바이스(1000)에게 요청할 수 있다.
이하에서는, 도 19의 디바이스가 제 1 디바이스(1000)인 경우에 대하여 설명하기로 한다.
도 19의 디바이스가 제 1 디바이스(1000)이면, 애플리케이션 모듈(1073)은 제 2 디바이스(3000)로부터 외부 기기(2000) 및 제 2 디바이스(3000)의 기기 정보를 수신하고, 외부 기기(2000)와 제 2 디바이스(3000) 간의 서비스 데이터 중계를 할 지를 판단할 수 있다. 또한, 제 1 디바이스(1000)는 서비스 데이터를 중계하기 위하여, 제 2 디바이스(3000)에게 소정의 ACK 신호를 전송할 수 있다. 또한, 제 2 디바이스(3000)로부터 서비스 데이터를 수신하고, 수신된 서비스 데이터를 외부 기기(2000)의 서비스 프로토콜에 적합하도록 변환할 수 있으며, 변환된 서비스 데이터를 외부 기기(2000)에게 전송할 수 있다. 또한, 외부 기기(2000)로부터 서비스 데이터를 수신하고, 수신된 서비스 데이터를 제 2 디바이스(3000)의 서비스 프로토콜에 적합하도록 변환할 수 있으며, 변환된 서비스 데이터를 제 2 디바이스(3000)에게 전송할 수 있다.
한편, 애플리케이션 모듈(1073)은 제 2 디바이스가 제 1 디바이스(1000)에 연결되면, 제 1 디바이스(1000)에 연결된 적어도 하나의 외부 기기(2000)의 목록을 제 2 디바이스(3000)에게 전송할 수 있다. 또한, 제 1 디바이스(1000)는 제 2 디바이스(3000)에 의해 선택된 외부 기기(2000)의 식별 값을 제 2 디바이스(3000)로부터 수신하고, 제 2 디바이스(3000)의 서비스 프로토콜이 제 1 디바이스(1000)에 의해 선택된 외부 기기(2000)의 서비스 프로토콜과 상이한 지를 판단할 수 있다. 서비스 프로토콜이 상이하면, 제 1 디바이스(1000)는 제 2 디바이스(3000)로부터 수신되는 서비스 데이터를 외부 기기(2000)의 서비스 프로토콜에 맞게 변환할 수 있다. 또한, 서비스 프로토콜이 상이하지 않으며, 제 1 디바이스(1000)는 제 2 디바이스(3000)로부터 수신된 서비스 데이터를 외부 기기(2000)에게 전달할 수 있다.
상기에서는 편의상 어플리케이션 모듈(1073)의 기능에 대하여 개괄적으로 설명하였지만, 이에 제한되지 않으며, 어플리케이션 모듈(1073)의 구체적인 기능은, 도 1 내지 도 20에 의해 유추될 수 있다.
본 발명의 실시 예들에 따른 외부 기기 제어 방법을 컴퓨터로 구현하는 방법을 수행하도록 하는 명령어들을 포함하는 하나 이상의 프로그램은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로써 기록되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 저장 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로써 저장되고 실행될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (38)

  1. 제 2 디바이스가 제1 디바이스를 통해 외부 기기에 서비스를 제공하는 방법에 있어서,
    상기 외부 기기와 상기 제2 디바이스의 서비스 프로토콜이 서로 다름으로 인해, 상기 외부 기기와의 서비스 연결이 실패됨에 따라, 상기 외부 기기에 대한 서비스 데이터를 중계할 제 1 디바이스를 검색하는 단계;
    상기 제 1 디바이스에게 중계 요청 신호를 전송하는 단계; 및
    상기 제 1 디바이스에게 상기 외부 기기에 대한 서비스 데이터를 전송하는 단계;
    를 포함하며,
    상기 전송된 서비스 데이터는 상기 제 1 디바이스에 의해 상기 외부 기기의 서비스 프로토콜에 기초하여 변환되고, 상기 변환된 서비스 데이터가 상기 외부 기기에게 제공되고,
    상기 서비스 데이터는, 상기 외부 기기의 제어에 관련되는, 방법.
  2. 제 1 항에 있어서,
    상기 제 2 디바이스의 서비스 프로토콜이 상기 외부 기기의 서비스 프로토콜과 상이함에 따라, 상기 서비스 연결이 실패된 것인, 방법.
  3. 제 2 항에 있어서,
    상기 제 1 디바이스에 의해 변환된 서비스 데이터는 상기 외부 기기의 서비스 프로토콜에 기초하여 변환된 것인, 방법.
  4. 제 2 항에 있어서,
    상기 서비스 프로토콜은 상기 제 2 디바이스 및 상기 외부 기기에 설치된 OS(Operating System)의 종류, 상기 제 2 디바이스 및 상기 외부 기기가 제공하는 서비스의 종류, 및 상기 제 2 디바이스 및 상기 외부 기기에서 이용되는 데이터의 포맷 중 적어도 하나에 따라 구별되는 것인, 방법.
  5. 제 1 항에 있어서,
    상기 적어도 하나의 외부 기기와 물리적으로 연결되는 단계; 및
    상기 물리적으로 연결된 상기 외부기기에게 서비스 연결을 요청하는 단계;
    를 더 포함하는 것인, 방법.
  6. 제 5 항에 있어서,
    상기 서비스 연결을 요청하는 단계는, 상기 제 2 디바이스에 상기 외부 기기의 제어와 관련된 애플리케이션을 설치하고, 상기 설치된 애플리케이션을 통하여 상기 서비스 연결을 요청하는 것인, 방법.
  7. 제 1 항에 있어서,
    상기 제 1 디바이스를 검색하는 단계는, 상기 제 2 디바이스의 기기 정보 및 상기 제 2 디바이스에서 제공될 서비스에 관한 정보를 브로드캐스팅함으로써 상기 제 1 디바이스를 검색하는 것인, 방법.
  8. 제 1 항에 있어서,
    상기 제 1 디바이스를 검색하는 단계는, 상기 제 2 디바이스의 기기 정보 및 상기 외부 기기의 기기 정보를 브로드캐스팅함으로써 상기 제 1 디바이스를 검색하는 것인, 방법.
  9. 제 1 항에 있어서,
    상기 서비스 데이터는, 상기 외부 기기의 제어와 관련된 애플리케이션에 의해 생성된 데이터인 것인, 방법.
  10. 제 1 디바이스가 제 2 디바이스와 외부 기기 간의 서비스 데이터를 중계하는 방법에 있어서,
    상기 외부 기기와 상기 제2 디바이스의 서비스 프로토콜이 서로 다름으로 인해, 상기 제2 디바이스와 상기 외부 기기간의 서비스 연결이 실패한 경우, 상기 외부 기기에 대한 서비스 데이터의 중계를 요청하는 중계 요청 신호를 상기 제 2 디바이스로부터 수신하는 단계;
    상기 외부 기기의 서비스 프로토콜과 상기 제 2 디바이스의 서비스 프로토콜을 비교하는 단계;
    상기 외부 기기의 서비스 프로토콜과 상기 제 2 디바이스의 서비스 프로토콜이 상이함에 따라, 상기 제 2 디바이스로부터 수신되는 서비스 데이터를 상기 외부 기기의 서비스 프로토콜에 적합하게 변환하는 단계; 및
    상기 변환된 서비스 데이터를 상기 외부 기기에게 전송하는 단계를 포함하고,
    상기 서비스 데이터는, 상기 외부 기기의 제어에 관련되는, 서비스 데이터 중계 방법.
  11. 제 10 항에 있어서,
    상기 중계 요청 신호를 수신하는 단계는, 상기 제 2 디바이스가 상기 외부 기기에 대한 서비스 연결을 실패함에 따라 상기 제 2 디바이스로부터 상기 중계 요청 신호를 수신하는 것인, 방법.
  12. 제 11 항에 있어서,
    상기 제 2 디바이스의 서비스 프로토콜이 상기 외부 기기의 서비스 프로토콜과 상이함에 따라, 상기 서비스 연결이 실패된 것인, 방법.
  13. 제 12 항에 있어서,
    상기 서비스 프로토콜은 상기 제 2 디바이스 및 상기 외부 기기에 설치된 OS(Operating System)의 종류, 상기 제 2 디바이스 및 상기 외부 기기가 제공하는 서비스의 종류, 및 상기 제 2 디바이스 및 상기 외부 기기에서 이용되는 데이터의 포맷 중 적어도 하나에 따라 구별되는 것인, 방법.
  14. 제 10 항에 있어서,
    상기 제 2 디바이스로부터 브로드캐스팅된 상기 제 2 디바이스의 기기 정보 및 상기 제 2 디바이스에서 제공될 서비스에 관한 정보를 수신하는 단계; 및
    상기 수신된 상기 제 2 디바이스의 기기 정보 및 상기 제 2 디바이스에서 제공될 서비스에 관한 정보에 기초하여, 상기 제 2 디바이스에게 ACK 신호를 전송하는 단계;
    를 더 포함하며,
    상기 중계 요청 신호는, 상기 ACK 신호에 기초하여, 상기 제 2 디바이스로부터 수신되는 것인, 방법.
  15. 제 10 항에 있어서,
    상기 제 2 디바이스로부터 브로드캐스팅된 상기 제 2 디바이스의 기기 정보 및 상기 외부 기기의 기기 정보를 수신하는 단계; 및
    상기 수신된 상기 제 2 디바이스의 기기 정보 및 상기 외부 기기의 기기 정보에 기초하여, 상기 제 2 디바이스에게 ACK 신호를 전송하는 단계;
    를 더 포함하며,
    상기 중계 요청 신호는, 상기 ACK 신호에 기초하여, 상기 제 2 디바이스로부터 수신되는 것인, 방법.
  16. 제 10 항에 있어서,
    상기 서비스 데이터는, 상기 외부 기기의 제어와 관련된 애플리케이션에 의해 상기 제 2 디바이스에서 생성된 데이터인 것인, 방법.
  17. 제 10 항에 있어서,
    상기 적어도 하나의 외부 기기는 상기 제 1 디바이스에 연결된 것인, 방법.
  18. 제 10 항에 있어서,
    상기 적어도 하나의 외부 기기의 목록을 상기 제 2 디바이스에게 제공하는 단계;
    를 더 포함하며,
    상기 중계 요청 신호를 수신하는 단계는, 상기 외부 기기의 목록 중에서 상기 제 2 디바이스에 의해 선택된 외부 기기에 대한 중계 요청 신호를 수신하는 것인, 방법.
  19. 제 1 디바이스를 통하여 외부 기기에 서비스를 제공하는 제 2 디바이스에 있어서,
    적어도 하나의 프로그램이 저장되는 메모리; 및
    상기 적어도 하나의 프로그램을 실행함으로써 상기 제 1 디바이스를 통하여 상기 외부 기기와 서비스를 제공하도록 하는 프로세서를 포함하고,
    상기 적어도 하나의 프로그램은,
    상기 외부 기기와 상기 제2 디바이스의 서비스 프로토콜이 서로 다름으로 인해, 상기 외부 기기와의 서비스 연결이 실패됨에 따라, 상기 외부 기기에 대한 서비스 데이터를 중계할 제 1 디바이스를 검색하는 단계;
    상기 제 1 디바이스에게 중계 요청 신호를 전송하는 단계; 및
    상기 제 1 디바이스에게 상기 외부 기기에 대한 서비스 데이터를 전송하는 단계;
    를 실행하는 명령어들을 포함하며,
    상기 전송된 서비스 데이터는 상기 제 1 디바이스에 의해 상기 외부 기기의 서비스 프로토콜에 기초하여 변환되고, 상기 변환된 서비스 데이터가 상기 외부 기기에게 제공되고,
    상기 서비스 데이터는, 상기 외부 기기의 제어에 관련되는 것인, 제 2 디바이스.
  20. 제 19 항에 있어서,
    상기 제 2 디바이스의 서비스 프로토콜이 상기 외부 기기의 서비스 프로토콜과 상이함에 따라, 상기 서비스 연결이 실패된 것인, 제 2 디바이스.
  21. 제 20 항에 있어서,
    상기 제 1 디바이스에 의해 변환된 서비스 데이터는 상기 외부 기기의 서비스 프로토콜에 기초하여 변환된 것인, 제 2 디바이스.
  22. 제 20 항에 있어서,
    상기 서비스 프로토콜은 상기 제 2 디바이스 및 상기 외부 기기에 설치된 OS(Operating System)의 종류, 상기 제 2 디바이스 및 상기 외부 기기가 제공하는 서비스의 종류, 및 상기 제 2 디바이스 및 상기 외부 기기에서 이용되는 데이터의 포맷 중 적어도 하나에 따라 구별되는 것인, 제 2 디바이스.
  23. 제 19 항에 있어서,
    상기 적어도 하나의 프로그램은,
    상기 적어도 하나의 외부 기기와 물리적으로 연결되는 단계; 및
    상기 물리적으로 연결된 상기 외부기기에게 서비스 연결을 요청하는 단계;
    를 실행하는 명령어들을 더 포함하는 것인, 제 2 디바이스.
  24. 제 23 항에 있어서,
    상기 서비스 연결을 요청하는 단계는, 상기 제 2 디바이스에 상기 외부 기기의 제어와 관련된 애플리케이션을 설치하고, 상기 설치된 애플리케이션을 통하여 상기 서비스 연결을 요청하는 것인, 제 2 디바이스.
  25. 제 19 항에 있어서,
    상기 제 1 디바이스를 검색하는 단계는, 상기 제 2 디바이스의 기기 정보 및 상기 제 2 디바이스에서 제공될 서비스에 관한 정보를 브로드캐스팅함으로써 상기 제 1 디바이스를 검색하는 것인, 제 2 디바이스.
  26. 제 19 항에 있어서,
    상기 제 1 디바이스를 검색하는 단계는, 상기 제 2 디바이스의 기기 정보 및 상기 외부 기기의 기기 정보를 브로드캐스팅함으로써 상기 제 1 디바이스를 검색하는 것인, 제 2 디바이스.
  27. 제 19 항에 있어서,
    상기 서비스 데이터는, 상기 외부 기기의 제어와 관련된 애플리케이션에 의해 생성된 데이터인 것인, 제 2 디바이스.
  28. 제 2 디바이스와 외부 기기 간의 서비스 데이터를 중계하는 제 1 디바이스에 있어서,
    적어도 하나의 프로그램이 저장되는 메모리; 및
    상기 적어도 하나의 프로그램을 실행함으로써 상기 제 2 디바이스와 상기 외부 기기 간의 상기 서비스 데이터를 중계하도록 하는 프로세서를 포함하고,
    상기 적어도 하나의 프로그램은,
    상기 외부 기기와 상기 제2 디바이스의 서비스 프로토콜이 서로 다름으로 인해, 상기 제2 디바이스와 상기 외부 기기간의 서비스 연결이 실패한 경우, 상기 외부 기기에 대한 서비스 데이터의 중계를 요청하는 중계 요청 신호를 상기 제 2 디바이스로부터 수신하는 단계;
    상기 외부 기기의 서비스 프로토콜과 상기 제 2 디바이스의 서비스 프로토콜을 비교하는 단계;
    상기 외부 기기의 서비스 프로토콜과 상기 제 2 디바이스의 서비스 프로토콜이 상이함에 따라, 상기 제 2 디바이스로부터 수신되는 서비스 데이터를 상기 외부 기기의 서비스 프로토콜에 적합하게 변환하는 단계; 및
    상기 외부 기기의 제어에 관련되는, 상기 변환된 서비스 데이터를 상기 외부 기기에게 전송하는 단계;
    를 실행하는 명령어들을 포함하는 것인, 제 1 디바이스.
  29. 제 28 항에 있어서,
    상기 중계 요청 신호를 수신하는 단계는, 상기 제 2 디바이스가 상기 외부 기기에 대한 서비스 연결을 실패함에 따라 상기 제 2 디바이스로부터 상기 중계 요청 신호를 수신하는 것인, 제 1 디바이스.
  30. 제 29 항에 있어서,
    상기 제 2 디바이스의 서비스 프로토콜이 상기 외부 기기의 서비스 프로토콜과 상이함에 따라, 상기 서비스 연결이 실패된 것인, 제 1 디바이스.
  31. 제 30 항에 있어서,
    상기 서비스 프로토콜은 상기 제 2 디바이스 및 상기 외부 기기에 설치된 OS(Operating System)의 종류, 상기 제 2 디바이스 및 상기 외부 기기가 제공하는 서비스의 종류, 및 상기 제 2 디바이스 및 상기 외부 기기에서 이용되는 데이터의 포맷 중 적어도 하나에 따라 구별되는 것인, 제 1 디바이스.
  32. 제 28 항에 있어서,
    상기 적어도 하나의 프로그램은,
    상기 제 2 디바이스로부터 브로드캐스팅된 상기 제 2 디바이스의 기기 정보 및 상기 제 2 디바이스에서 제공될 서비스에 관한 정보를 수신하는 단계; 및
    상기 수신된 상기 제 2 디바이스의 기기 정보 및 상기 제 2 디바이스에서 제공될 서비스에 관한 정보에 기초하여, 상기 제 2 디바이스에게 ACK 신호를 전송하는 단계;
    를 실행하는 명령어들을 더 포함하며,
    상기 중계 요청 신호는, 상기 ACK 신호에 기초하여, 상기 제 2 디바이스로부터 수신되는 것인, 제 1 디바이스.
  33. 제 28 항에 있어서,
    상기 적어도 하나의 프로그램은,
    상기 제 2 디바이스로부터 브로드캐스팅된 상기 제 2 디바이스의 기기 정보 및 상기 외부 기기의 기기 정보를 수신하는 단계; 및
    상기 수신된 상기 제 2 디바이스의 기기 정보 및 상기 외부 기기의 기기 정보에 기초하여, 상기 제 2 디바이스에게 ACK 신호를 전송하는 단계;
    를 실행하는 명령어들을 더 포함하며,
    상기 중계 요청 신호는, 상기 ACK 신호에 기초하여, 상기 제 2 디바이스로부터 수신되는 것인, 제 1 디바이스.
  34. 제 28 항에 있어서,
    상기 서비스 데이터는, 상기 외부 기기의 제어와 관련된 애플리케이션에 의해 상기 제 2 디바이스에서 생성된 데이터인 것인, 제 1 디바이스.
  35. 제 28 항에 있어서,
    상기 적어도 하나의 외부 기기는 상기 제 1 디바이스에 연결된 것인, 제 1 디바이스.
  36. 제 28 항에 있어서,
    상기 적어도 하나의 프로그램은,
    상기 적어도 하나의 외부 기기의 목록을 상기 제 2 디바이스에게 제공하는 단계;
    를 실행하는 명령어들을 더 포함하며,
    상기 중계 요청 신호를 수신하는 단계는, 상기 외부 기기의 목록 중에서 상기 제 2 디바이스에 의해 선택된 외부 기기에 대한 중계 요청 신호를 수신하는 것인, 제 1 디바이스.
  37. 제 1 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  38. 제 10 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020130039511A 2012-12-24 2013-04-10 디바이스간 통신 방법 및 시스템 KR102001221B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP13868614.2A EP2936923B1 (en) 2012-12-24 2013-12-23 Methods and apparatuses for communication between devices
CN201380060935.2A CN104823515B (zh) 2012-12-24 2013-12-23 用于设备之间通信的方法和系统
PCT/KR2013/011932 WO2014104656A1 (en) 2012-12-24 2013-12-23 Method and system for communication between devices
US14/140,227 US9952985B2 (en) 2012-12-24 2013-12-24 Method and system for communication between devices via an intermediate device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020120152499 2012-12-24
KR20120152499 2012-12-24

Publications (2)

Publication Number Publication Date
KR20140082541A KR20140082541A (ko) 2014-07-02
KR102001221B1 true KR102001221B1 (ko) 2019-07-18

Family

ID=51733450

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130039511A KR102001221B1 (ko) 2012-12-24 2013-04-10 디바이스간 통신 방법 및 시스템

Country Status (5)

Country Link
US (1) US9952985B2 (ko)
EP (1) EP2936923B1 (ko)
KR (1) KR102001221B1 (ko)
CN (1) CN104823515B (ko)
WO (1) WO2014104656A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11716603B2 (en) 2019-10-28 2023-08-01 Samsung Electronics Co., Ltd. Method for transmitting data based on multiple communication schemes and electronic device supporting same

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101512491B1 (ko) * 2014-08-28 2015-04-16 주식회사 이도링크 게이트웨이용 스마트폰에 의한 홈네트워크 시스템
JP6421920B2 (ja) * 2014-09-03 2018-11-14 カシオ計算機株式会社 表示装置及びその表示制御方法、制御プログラム
US9716969B2 (en) * 2015-07-01 2017-07-25 Lg Electronics Inc. Method and apparatus for controlling device in wireless communication system
US20170034646A1 (en) * 2015-07-27 2017-02-02 Lg Electronics Inc. Method and apparatus for transmitting and receiving data in wireless communication system
CN105337981A (zh) * 2015-11-18 2016-02-17 上海新储集成电路有限公司 一种中继装置、更新方法及设备间进行数据交互的方法
KR20170109790A (ko) * 2016-03-22 2017-10-10 삼성전자주식회사 허브를 제어하는 디스플레이장치 및 그 제어방법과, 시스템
JP6697090B2 (ja) * 2016-04-25 2020-05-20 オッポ広東移動通信有限公司Guangdong Oppo Mobile Telecommunications Corp., Ltd. データ伝送方法及び装置
TW202143139A (zh) * 2020-05-13 2021-11-16 微星科技股份有限公司 支付方法及系統
CN111860016A (zh) * 2020-07-15 2020-10-30 维沃移动通信有限公司 近场通信nfc的信息显示方法、装置及电子设备
EP4186335A4 (en) * 2020-07-24 2024-01-17 Arris Entpr Llc SYSTEM AND METHOD FOR MANAGING INTELLIGENT DEVICES

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010018328A1 (en) * 2000-02-29 2001-08-30 Yoshinori Ohkura Radio relay system
US20030140180A1 (en) 2002-01-23 2003-07-24 International Business Machines Corporation Multi-protocol object distribution
US20080313319A1 (en) * 2007-06-18 2008-12-18 Avocent Huntsville Corporation System and method for providing multi-protocol access to remote computers
US20110137436A1 (en) * 2010-03-23 2011-06-09 Michael Alan Chang Intelligent gateway for heterogeneous peer-to-peer home automation networks

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5457785A (en) * 1993-02-10 1995-10-10 Elonex Technologies, Inc. CPU-independent and device-driver transparent system for translating a computer's internal bus signals onto an intermediate bus and further translating onto an expansion bus
JP2937232B2 (ja) * 1996-05-20 1999-08-23 日本電気株式会社 通信ネットワーク、及び、通信ネットワークの障害回復方式、及び、光通信ネットワーク・ノード
JP3244051B2 (ja) * 1998-05-28 2002-01-07 日本電気株式会社 リレー通信システムとそのデータ転送保証監視方法及びそれに用いる通信機
US7783299B2 (en) 1999-01-08 2010-08-24 Trueposition, Inc. Advanced triggers for location-based service applications in a wireless location system
US6782264B2 (en) * 1999-01-08 2004-08-24 Trueposition, Inc. Monitoring of call information in a wireless location system
JP3639184B2 (ja) * 2000-04-18 2005-04-20 日本電信電話株式会社 通信システムにおける制御情報の符号化方法
US7209436B1 (en) * 2000-12-30 2007-04-24 Redback Networks Inc. Method and apparatus for variable rate pipes
US20030236865A1 (en) * 2002-06-20 2003-12-25 Microsoft Corporation Method and system for configuring remote access to a server
US8437364B2 (en) * 2004-08-06 2013-05-07 Qualcomm Incorporated Wireless network supporting failover between network protocols
US20060171302A1 (en) * 2005-02-03 2006-08-03 Cisco Technology, Inc. Data transmission in a network comprising bridges
US7895270B2 (en) * 2005-04-21 2011-02-22 Microsoft Corporation Transport abstraction for multiparty replication
KR20060123974A (ko) 2005-05-30 2006-12-05 삼성전자주식회사 이종 시스템들간 서비스 연동 방법
EP2288196B1 (en) * 2006-01-11 2018-02-21 Qualcomm Incorporated Wireless communication methods and apparatus supporting synchronization
JP4508114B2 (ja) * 2006-01-12 2010-07-21 セイコーエプソン株式会社 ネットワーク型プラグアンドプレイに対応したネットワーク中継制御
US8078787B2 (en) * 2007-06-22 2011-12-13 Apple Inc. Communication between a host device and an accessory via an intermediate device
CN101252461B (zh) * 2008-04-11 2010-08-04 华为技术有限公司 信令传送的保护方法、装置、终端及系统
US9084282B2 (en) * 2008-10-17 2015-07-14 Qualcomm Incorporated Apparatus and method for providing a portable broadband service using a wireless convergence platform
US7944812B2 (en) * 2008-10-20 2011-05-17 International Business Machines Corporation Redundant intermediary switch solution for detecting and managing fibre channel over ethernet FCoE switch failures
US20100121968A1 (en) 2008-11-11 2010-05-13 Qwebl, Inc. System and method for automating operations of household systems from remote applications
JP5662437B2 (ja) 2009-07-02 2015-01-28 アップル インコーポレイテッド アクセスポイント及び端末の通信
KR101496649B1 (ko) * 2009-08-21 2015-03-02 삼성전자주식회사 복합 네트워크 망을 통한 외부 디바이스의 기능 공유 방법 및 그 장치
US8484661B2 (en) * 2010-03-19 2013-07-09 At&T Mobility Ii Llc Agnostic execution cluster for an agnostic execution environment
US20120083208A1 (en) 2010-09-30 2012-04-05 Apple Inc. Wireless accessory device pairing transfer between multiple host devices
US8627136B2 (en) * 2010-12-27 2014-01-07 Netapp Inc. Non-disruptive failover of RDMA connection
US8688431B2 (en) * 2011-04-05 2014-04-01 Bose Corporation Computer system audio device switching
US9386392B2 (en) * 2012-06-21 2016-07-05 Cue, Inc. Media content control module and presentation device
US9479606B2 (en) * 2012-09-30 2016-10-25 Sheridan Ross P.C. System and method for enhanced media brokering in VoIP network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010018328A1 (en) * 2000-02-29 2001-08-30 Yoshinori Ohkura Radio relay system
US20030140180A1 (en) 2002-01-23 2003-07-24 International Business Machines Corporation Multi-protocol object distribution
US20080313319A1 (en) * 2007-06-18 2008-12-18 Avocent Huntsville Corporation System and method for providing multi-protocol access to remote computers
US20110137436A1 (en) * 2010-03-23 2011-06-09 Michael Alan Chang Intelligent gateway for heterogeneous peer-to-peer home automation networks

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11716603B2 (en) 2019-10-28 2023-08-01 Samsung Electronics Co., Ltd. Method for transmitting data based on multiple communication schemes and electronic device supporting same

Also Published As

Publication number Publication date
US9952985B2 (en) 2018-04-24
CN104823515B (zh) 2018-10-02
US20140181335A1 (en) 2014-06-26
WO2014104656A1 (en) 2014-07-03
EP2936923B1 (en) 2020-03-11
KR20140082541A (ko) 2014-07-02
CN104823515A (zh) 2015-08-05
EP2936923A4 (en) 2016-08-10
EP2936923A1 (en) 2015-10-28

Similar Documents

Publication Publication Date Title
KR102001221B1 (ko) 디바이스간 통신 방법 및 시스템
US9893934B2 (en) System and method of controlling surrounding devices, based on topology
US9641226B2 (en) Mobile device and method for performing function based on short-range communication
EP2750425B1 (en) Secure Service Providing Terminal Connection Method and Apparatus
CN103576125B (zh) 多装置间转移工作的方法及手持通信装置
JP4331233B2 (ja) 無線通信装置
CN109257802B (zh) 使用Wi-Fi网络通信的方法和设备
US11372537B2 (en) Image sharing method and electronic device
EP3516854B1 (en) System and method of providing sensing data to electronic device
JP4914414B2 (ja) 携帯機器および実行制御方法
JP2016042365A (ja) 複合ネットワーク網を介した外部デバイスの機能共有方法及びその装置
US9241369B2 (en) Method and apparatus for establishing wireless local area network link between portable terminals
KR101942797B1 (ko) 휴대단말들 간의 무선 랜 링크 형성 방법 및 시스템
KR20120100514A (ko) 디바이스 그룹핑 방법 및 이를 적용한 서버
AU2013364730B2 (en) System and method of controlling surrounding devices, based on topology
KR102043641B1 (ko) 통신 기능 처리 방법 및 이를 지원하는 전자 장치
JP2011211513A (ja) 制御システム、制御端末、画像表示装置及び制御方法
KR20120059168A (ko) 테더링 서비스 지원 시스템 및 지원 방법과, 이를 지원하는 단말기
US9497066B2 (en) Information processing apparatus, method for controlling the same, and storage medium
JP6169543B2 (ja) リモートコントロールシステム及び、リモートコントロール方法
KR20140083850A (ko) 서비스 제공 단말에 연결하는 방법 및 그 장치
KR20130059204A (ko) 근거리 네트워크 디바이스 연결장치 및 방법
JP2014068207A (ja) 情報処理端末、再生装置、情報制御システム、制御方法、及びプログラム
JP2015149685A (ja) 接続情報共有サーバ、接続情報共有方法、接続情報共有サーバ用プログラム

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