KR101952925B1 - Method and apparatus for communicating between heterogeneous platforms - Google Patents

Method and apparatus for communicating between heterogeneous platforms Download PDF

Info

Publication number
KR101952925B1
KR101952925B1 KR1020160131915A KR20160131915A KR101952925B1 KR 101952925 B1 KR101952925 B1 KR 101952925B1 KR 1020160131915 A KR1020160131915 A KR 1020160131915A KR 20160131915 A KR20160131915 A KR 20160131915A KR 101952925 B1 KR101952925 B1 KR 101952925B1
Authority
KR
South Korea
Prior art keywords
identification information
platform server
user identification
server
platform
Prior art date
Application number
KR1020160131915A
Other languages
Korean (ko)
Other versions
KR20170058847A (en
Inventor
이은서
이학진
박준희
박호진
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to US15/353,953 priority Critical patent/US10476857B2/en
Publication of KR20170058847A publication Critical patent/KR20170058847A/en
Application granted granted Critical
Publication of KR101952925B1 publication Critical patent/KR101952925B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/28Restricting access to network management systems or functions, e.g. using authorisation function to access network configuration

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephonic Communication Services (AREA)

Abstract

이종 플랫폼 간 통신 방법 및 장치가 개시된다. 개시된 서로 다른 플랫폼을 제공하는 제1 플랫폼 서버 및 제2 플랫폼 서버를 연동시키는 연동 서버의 통신 방법은 제1 플랫폼 서버로부터 제1 플랫폼 서버에 등록된 제1 사용자 식별정보를 포함하는 토큰 요청을 수신하고, 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성된 토큰을 제1 플랫폼 서버로 전송하고, 제1 플랫폼 서버로부터 제2 플랫폼 서버로 전달된 토큰이 유효한지 여부에 대한 확인 요청을 제2 플랫폼 서버로부터 수신하며, 토큰이 유효한 경우, 통합 사용자 식별정보에 대응하고 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 제2 플랫폼 서버로 전달한다.Disclosed are a cross-platform communication method and apparatus. The communication method of the interworking server for interworking a first platform server and a second platform server providing different platforms disclosed may receive a token request including first user identification information registered in the first platform server from the first platform server. And transmitting a token generated from the unified user identification information corresponding to the first user identification information to the first platform server, and confirming whether the token transmitted from the first platform server to the second platform server is valid. Received from the platform server, if the token is valid, and transmits the second user identification information corresponding to the integrated user identification information and registered in the second platform server to the second platform server.

Description

이종 플랫폼 간 통신 방법 및 장치{METHOD AND APPARATUS FOR COMMUNICATING BETWEEN HETEROGENEOUS PLATFORMS}METHOOD AND APPARATUS FOR COMMUNICATING BETWEEN HETEROGENEOUS PLATFORMS}

아래의 설명은 이종 플랫폼 간 통신 방법 및 장치에 관한 것으로, 보다 구체적으로는 서로 다른 플랫폼을 제공하는 제1 플랫폼 서버 및 제2 플랫폼 서버를 연동시키는 연동 서버, 제1 플랫폼 서버, 제2 플랫폼 서버 및 상기 서버의 통신 방법에 관한 것이다.The following description relates to a method and device for communication between heterogeneous platforms, and more specifically, an interworking server interworking with a first platform server and a second platform server providing different platforms, a first platform server, a second platform server, and It relates to a communication method of the server.

최근 통신기술의 보급율이 높아지고 스마트 폰이 대중화되면서, IoT(Internet of things)에 대한 기대가 점차 증가하고 있으며, IoT 구현을 위한 다양한 기술이 개발되고 있다. IoT를 통해, 가정에서 사용되는 모든 가전기기 및 통신기기가 인터넷으로 연결되어 다양한 정보를 수집하고 분석하여 사용자에게 필요한 정보를 제공할 수 있을 것으로 기대되고 있다.Recently, as the penetration rate of communication technology increases and smartphones become popular, expectations for the Internet of Things (IoT) are gradually increasing, and various technologies for implementing IoT are being developed. Through the IoT, it is expected that all home appliances and communication devices used in the home will be connected to the Internet to collect and analyze a variety of information to provide users with the necessary information.

그러나, 가전기기 및 통신기기는 일반적으로 해당 제조사가 제공하는 플랫폼을 통해서 제어가 가능하기 때문에, 만약 가정에서 사용되는 가전기기 및 통신기기의 제조사가 다른 경우, 다른 제조사의 가전기기 및 통신기기를 제어하기가 어렵다.However, since home appliances and communication devices are generally controlled through a platform provided by the corresponding manufacturer, if manufacturers of home appliances and communication devices used in homes are different, they control home appliances and communication devices of other manufacturers. Difficult to do

본 발명은 서로 다른 플랫폼을 제공하는 플랫폼 서버들을 연동시킴으로써, 제조사가 다르더라도 효과적으로 가정에서 사용되는 가전기기 또는 통신기기를 제어할 수 있다.The present invention by interworking platform servers providing different platforms, it is possible to effectively control home appliances or communication devices used at home even if different manufacturers.

본 발명은 시간에 따라 통합 사용자 식별정보를 변경하고, 제1 플랫폼 서버로부터 토큰이 요청된 경우에만 통합 사용자 식별정보에 기초하여 토큰을 생성함으로써, 서로 다른 플랫폼을 제공하는 플랫폼 서버들을 연동시키더라도 높은 보안성을 유지할 수 있다.The present invention changes the integrated user identification information over time, and generates a token based on the integrated user identification information only when a token is requested from the first platform server, thereby interworking platform servers providing different platforms. Security can be maintained.

일실시예에 따른 서로 다른 플랫폼을 제공하는 제1 플랫폼 서버 및 제2 플랫폼 서버를 연동시키는 연동 서버의 통신 방법은 상기 제1 플랫폼 서버로부터 상기 제1 플랫폼 서버에 등록된 제1 사용자 식별정보를 포함하는 토큰 요청을 수신하는 단계; 상기 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성된 토큰을 상기 제1 플랫폼 서버로 전송하는 단계; 상기 제1 플랫폼 서버로부터 상기 제2 플랫폼 서버로 전달된 토큰이 유효한지 여부에 대한 확인 요청을 상기 제2 플랫폼 서버로부터 수신하는 단계; 및 상기 토큰이 유효한 경우, 상기 통합 사용자 식별정보에 대응하고 상기 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 상기 제2 플랫폼 서버로 전달하는 단계를 포함한다.According to an embodiment, a communication method of an interworking server for interworking a first platform server and a second platform server providing different platforms includes first user identification information registered in the first platform server from the first platform server. Receiving a token request; Transmitting a token generated from integrated user identification information corresponding to the first user identification information to the first platform server; Receiving a confirmation request from the second platform server as to whether the token passed from the first platform server to the second platform server is valid; And if the token is valid, transmitting second user identification information corresponding to the integrated user identification information and registered in the second platform server to the second platform server.

일실시예에 따른 연동 서버의 통신 방법에서 상기 통합 사용자 식별정보로부터 생성된 토큰은, 시간에 따라 변경되는 통합 사용자 식별정보가 암호화됨으로써 생성될 수 있다.In the communication method of the companion server according to an embodiment, the token generated from the integrated user identification information may be generated by encrypting the integrated user identification information that changes over time.

일실시예에 따른 연동 서버의 통신 방법에서 상기 제1 사용자 식별정보 및 상기 제2 사용자 식별정보 각각은, 상기 제1 플랫폼 서버 및 상기 제2 플랫폼 서버에 가입한 동일한 사용자를 식별하는 정보이고, 상기 통합 사용자 식별정보는, 상기 제1 사용자 식별정보 및 상기 제2 사용자 식별정보에 맵핑될 수 있다.In the communication method of a companion server according to an embodiment, each of the first user identification information and the second user identification information is information for identifying the same user who has subscribed to the first platform server and the second platform server. Integrated user identification information may be mapped to the first user identification information and the second user identification information.

일실시예에 따른 연동 서버의 통신 방법은 상기 제1 플랫폼 서버로부터 상기 제1 사용자 식별정보를 포함하는 타 플랫폼 연동 요청을 수신하는 단계; 상기 제1 플랫폼 서버에 연동될 수 있는 플랫폼 리스트 및 상기 통합 사용자 식별정보에 기초하여 생성된 트랜잭션 식별정보를 상기 제1 플랫폼 서버로 전송하는 단계; 상기 플랫폼 리스트를 통해 상기 제2 플랫폼 서버에 성공적으로 로그인한 경우, 상기 제2 플랫폼 서버로부터 상기 제2 사용자 식별정보 및 상기 트랜잭션 식별정보를 수신하는 단계; 및 상기 트랜잭션 식별정보가 유효한 경우, 상기 제2 사용자 식별정보를 상기 통합 사용자 식별정보 및 상기 제1 사용자 식별정보에 맵핑하는 단계를 더 포함할 수 있다.According to an embodiment, a communication method of an interworking server may include receiving another platform interworking request including the first user identification information from the first platform server; Transmitting transaction identification information generated based on the platform list and the integrated user identification information that can be linked to the first platform server, to the first platform server; Receiving the second user identification information and the transaction identification information from the second platform server when the user successfully logs in to the second platform server through the platform list; And when the transaction identification information is valid, mapping the second user identification information to the integrated user identification information and the first user identification information.

일실시예에 따른 연동 서버의 통신 방법에서 상기 제2 사용자 식별정보를 상기 통합 사용자 식별정보 및 상기 제2 사용자 식별정보에 맵핑하는 단계는, 상기 트랜잭션 식별정보에 대한 유효시간이 만료되기 전에 상기 제2 플랫폼 서버로부터 상기 트랜잭션 식별정보를 수신하여 상기 트랜잭션 식별정보가 유효한 것으로 판단된 경우, 상기 제2 사용자 식별정보를 상기 통합 사용자 식별정보 및 상기 제2 사용자 식별정보에 맵핑할 수 있다.The mapping of the second user identification information to the unified user identification information and the second user identification information in the communication method of the companion server according to an embodiment may include: generating a first message before the valid time for the transaction identification information expires. When receiving the transaction identification information from the platform server and determining that the transaction identification information is valid, the second user identification information may be mapped to the integrated user identification information and the second user identification information.

일실시예에 따른 연동 서버의 통신 방법에서 상기 플랫폼 리스트는, 상기 제1 플랫폼 서버에 연동되는 플랫폼에 로그인할 수 있는 인터페이스를 제공하는 Federation URL을 포함할 수 있다.In the communication method of the companion server according to an embodiment, the platform list may include an Federation URL that provides an interface for logging in to a platform linked to the first platform server.

일실시예에 따른 연동 서버를 통해 서로 다른 플랫폼을 제공하는 제2 플랫폼 서버에 연동되는 제1 플랫폼 서버의 통신 방법은 상기 연동 서버로 상기 제1 플랫폼 서버에 등록된 제1 사용자 식별정보를 포함하는 토큰 요청을 전송하는 단계; 상기 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성된 토큰을 상기 연동 서버로부터 수신하는 단계; 상기 제2 플랫폼 서버로 상기 토큰 및 상기 제2 플랫폼 서버에 등록된 디바이스에 대한 요청을 전송하는 단계; 및 상기 제2 플랫폼 서버로부터 상기 디바이스에 대한 요청의 처리 결과를 수신하는 단계를 포함하고, 상기 제2 플랫폼 서버는, 상기 제1 플랫폼 서버로부터 상기 제2 플랫폼 서버로 전달된 토큰을 유효한 것으로 판단한 상기 연동 서버로부터 상기 통합 사용자 식별정보에 대응하고 상기 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 수신한 경우, 상기 디바이스에 대한 요청에 따른 처리 결과를 상기 제1 플랫폼 서버로 전송한다.According to an embodiment, a communication method of a first platform server linked to a second platform server providing different platforms through an interlocking server may include first user identification information registered to the first platform server as the interlocking server. Sending a token request; Receiving a token generated from integrated user identification information corresponding to the first user identification information from the companion server; Transmitting a request for the token and a device registered with the second platform server to the second platform server; And receiving a processing result of the request for the device from the second platform server, wherein the second platform server determines that the token transmitted from the first platform server to the second platform server is valid. When receiving the second user identification information corresponding to the integrated user identification information from the companion server and registered in the second platform server, the processing result according to the request for the device is transmitted to the first platform server.

일실시예에 따른 제1 플랫폼 서버의 통신 방법에서 상기 디바이스에 대한 요청은, 상기 제2 플랫폼 서버에 등록된 디바이스 리스트, 상기 디바이스에 대한 제어, 상기 디바이스에 대한 이벤트 구독 중 적어도 하나에 대한 요청을 포함할 수 있다.In the communication method of the first platform server according to an embodiment, the request for the device may include requesting at least one of a device list registered in the second platform server, control of the device, and event subscription to the device. It may include.

일실시예에 따른 제1 플랫폼 서버의 통신 방법은 상기 연동 서버로 상기 제1 사용자 식별정보를 포함하는 타 플랫폼 연동 요청을 전송하는 단계; 상기 연동 서버로부터 상기 제1 플랫폼 서버와 연동될 수 있는 플랫폼 리스트 및 상기 통합 사용자 식별정보에 기초하여 생성된 트랜잭션 식별정보를 수신하는 단계; 및 상기 플랫폼 리스트를 통해 상기 제2 플랫폼 서버에 대한 로그인 정보 및 상기 트랜잭션 식별정보를 전송하는 단계를 더 포함하고, 상기 로그인 정보에 포함된 제2 사용자 식별정보는, 상기 제2 플랫폼 서버에 성공적으로 로그인한 경우, 상기 제2 플랫폼 서버로부터 상기 연동 서버로 전송되어 상기 통합 사용자 식별정보 및 상기 제1 플랫폼 사용자 식별정보에 맵핑될 수 있다.According to an embodiment, a communication method of a first platform server may include transmitting another platform interworking request including the first user identification information to the interworking server; Receiving transaction identification information generated based on the platform list capable of interworking with the first platform server and the integrated user identification information from the companion server; And transmitting the login information and the transaction identification information for the second platform server through the platform list, wherein the second user identification information included in the login information is successfully transmitted to the second platform server. When logged in, the second platform server may be transmitted to the companion server and mapped to the integrated user identification information and the first platform user identification information.

일실시예에 따른 제1 플랫폼 서버의 통신 방법에서 상기 통합 사용자 식별정보로부터 생성된 토큰은, 시간에 따라 변경되는 상기 통합 사용자 식별정보를 암호화함으로써 생성될 수 있다.In the communication method of the first platform server according to an embodiment, the token generated from the integrated user identification information may be generated by encrypting the integrated user identification information changed over time.

일실시예에 따른 제1 플랫폼 서버의 통신 방법에서 상기 제1 사용자 식별정보 및 상기 제2 사용자 식별정보 각각은, 상기 제1 플랫폼 서버 및 상기 제2 플랫폼 서버에 가입한 동일한 사용자를 식별하는 정보이고, 상기 통합 사용자 식별정보는, 상기 제1 사용자 식별정보 및 상기 제2 사용자 식별정보에 맵핑될 수 있다.In the communication method of the first platform server according to an embodiment, each of the first user identification information and the second user identification information is information for identifying the same user subscribed to the first platform server and the second platform server. The integrated user identification information may be mapped to the first user identification information and the second user identification information.

일실시예에 따른 연동 서버를 통해 서로 다른 플랫폼을 제공하는 제1 플랫폼 서버에 연동되는 제2 플랫폼 서버의 통신 방법은 상기 제1 플랫폼 서버로부터 토큰 및 상기 제2 플랫폼 서버에 등록된 디바이스에 대한 요청을 수신하는 단계 -토큰은, 상기 제1 플랫폼 서버의 요청에 응답하여 상기 제1 플랫폼 서버에 등록된 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성됨 -; 상기 연동 서버로 상기 토큰이 유효한지 여부에 대한 확인 요청을 전송하는 단계; 상기 토큰을 유효한 것으로 판단한 상기 연동 서버로부터 상기 통합 사용자 식별정보에 대응하고 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 수신하는 단계를 포함한다.According to an embodiment, a communication method of a second platform server linked to a first platform server providing a different platform through a companion server may include a request for a token and a device registered to the second platform server from the first platform server. Receiving a token, the token being generated from integrated user identification information corresponding to first user identification information registered with the first platform server in response to a request of the first platform server; Transmitting a request for checking whether the token is valid to the companion server; And receiving second user identification information corresponding to the integrated user identification information and registered in a second platform server from the companion server that determines the token as valid.

일실시예에 따른 제2 플랫폼 서버의 통신 방법에서 상기 통합 사용자 식별정보로부터 생성된 토큰은, 시간에 따라 변경되는 통합 사용자 식별정보가 암호화됨으로써 생성될 수 있다.In the communication method of the second platform server according to an embodiment, the token generated from the integrated user identification information may be generated by encrypting the integrated user identification information that changes over time.

일실시예에 따른 제2 플랫폼 서버의 통신 방법에서 상기 디바이스에 대한 요청은, 상기 제2 플랫폼 서버에 등록된 디바이스 리스트, 상기 디바이스에 대한 제어, 상기 디바이스에 대한 이벤트 구독 중 적어도 하나에 대한 요청을 포함할 수 있다.In the communication method of the second platform server according to an embodiment, the request for the device may include requesting at least one of a device list registered in the second platform server, control of the device, and event subscription to the device. It may include.

일실시예에 따른 제2 플랫폼 서버의 통신 방법은 상기 디바이스에 대한 요청의 처리 결과를 상기 디바이스 식별정보 및 상기 제2 플랫폼 서버 식별정보와 함께 상기 제1 플랫폼 서버로 전송하는 단계를 더 포함한다.The communication method of the second platform server according to an embodiment further includes transmitting a result of processing a request for the device to the first platform server together with the device identification information and the second platform server identification information.

일실시예에 따른 제2 플랫폼 서버의 통신 방법은 타 플랫폼 연동을 요청한 상기 제1 플랫폼 서버로부터 상기 제2 플랫폼 서버에 대한 로그인 정보 및 상기 통합 사용자 식별정보에 대응하는 트랜잭션 식별정보를 수신하는 단계; 및 상기 로그인 정보에 기초한 제2 플랫폼 서버에 성공적으로 로그인한 경우, 상기 트랜잭션 식별정보 및 상기 제2 사용자 식별정보를 상기 연동 서버로 전송하는 단계를 더 포함하고, 상기 제2 사용자 식별정보는, 상기 제2 플랫폼 서버로부터 수신된 상기 트랜잭션 식별정보가 유효한 것으로 판단한 상기 연동 서버에 의해 상기 통합 사용자 식별정보 및 상기 제1 플랫폼 사용자 식별정보에 맵핑될 수 있다.According to an embodiment, a communication method of a second platform server may include: receiving login information corresponding to the second platform server and transaction identification information corresponding to the integrated user identification information from the first platform server requesting the interworking of another platform; And when the user has successfully logged in to the second platform server based on the login information, transmitting the transaction identification information and the second user identification information to the companion server. The second user identification information may include: The transaction identification information received from the second platform server may be mapped to the integrated user identification information and the first platform user identification information by the companion server.

일실시예에 따른 제2 플랫폼 서버의 통신 방법에서 상기 제1 사용자 식별정보 및 상기 제2 사용자 식별정보 각각은, 상기 제1 플랫폼 서버 및 상기 제2 플랫폼 서버에 가입한 동일한 사용자를 식별하는 정보이고, 상기 통합 사용자 식별정보는, 상기 제1 사용자 식별정보 및 상기 제2 사용자 식별정보에 맵핑될 수 있다.In the communication method of the second platform server according to an embodiment, each of the first user identification information and the second user identification information is information for identifying the same user who has subscribed to the first platform server and the second platform server. The integrated user identification information may be mapped to the first user identification information and the second user identification information.

일실시예에 따른 서로 다른 플랫폼을 제공하는 제1 플랫폼 서버 및 제2 플랫폼 서버 간의 연동을 위한 연동 서버는 통신 방법이 저장된 메모리; 및 상기 통신 방법을 수행하는 프로세서를 포함하고, 상기 프로세서는, 상기 제1 플랫폼 서버로부터 상기 제1 플랫폼 서버에 등록된 제1 사용자 식별정보를 포함하는 토큰 요청을 수신하고, 상기 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성된 토큰을 상기 제1 플랫폼 서버로 전송하고, 상기 제1 플랫폼 서버로부터 상기 제2 플랫폼 서버로 전달된 토큰이 유효한지 여부에 대한 확인 요청을 상기 제2 플랫폼 서버로부터 수신하며, 상기 토큰이 유효한 경우, 상기 통합 사용자 식별정보에 대응하고 상기 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 상기 제2 플랫폼 서버로 전달한다.An interworking server for interworking between a first platform server and a second platform server providing different platforms according to an embodiment may include a memory in which a communication method is stored; And a processor for performing the communication method, wherein the processor receives a token request including first user identification information registered in the first platform server from the first platform server, and receives the first user identification information. The token generated from the unified user identification information corresponding to the first platform server, the second platform server to confirm whether the token transmitted from the first platform server to the second platform server is valid or not; If received from the token, and the token is valid, and transmits the second user identification information corresponding to the integrated user identification information and registered in the second platform server to the second platform server.

일실시예에 따르면, 서로 다른 플랫폼을 제공하는 플랫폼 서버들을 연동시킴으로써, 제조사가 다르더라도 가정에서 사용되는 가전기기 또는 통신기기를 효과적으로 제어할 수 있다.According to an embodiment, by interworking with platform servers providing different platforms, even if the manufacturer is different, it is possible to effectively control home appliances or communication devices used in the home.

일실시예에 따르면, 시간에 따라 통합 사용자 식별정보를 변경하고, 제1 플랫폼 서버로부터 토큰이 요청된 경우에만 통합 사용자 식별정보에 기초하여 토큰을 생성함으로써, 서로 다른 플랫폼을 제공하는 플랫폼 서버들을 연동시키더라도 높은 보안성을 유지할 수 있다.According to an embodiment, interworking platform servers providing different platforms by changing the integrated user identification information over time and generating a token based on the integrated user identification information only when a token is requested from the first platform server. Even if you do so, you can maintain high security.

도 1은 일실시예에 따라 제1 플랫폼 서버, 제2 플랫폼 서버 및 연동 서버로 구성되는 홈 네트워크 시스템을 설명하기 위한 도면이다.
도 2는 일실시예에 따라 제1 플랫폼 서버, 제2 플랫폼 서버 및 연동 서버의 세부 구성을 나타낸 도면이다.
도 3은 다른 일실시예에 따라 제1 플랫폼 서버, 제2 플랫폼 서버 및 연동 서버의 세부 구성을 나타낸 도면이다.
도 4는 일실시예에 따라 인증 서버에 플랫폼 서버를 등록하는 과정을 설명하기 위한 도면이다.
도 5는 일실시예에 따라 제1 플랫폼 서버 및 제2 플랫폼 서버를 연동시키는 과정을 설명하기 위한 도면이다.
도 6은 일실시예에 따라 타 플랫폼 서버에 등록된 디바이스 리스트를 요청하는 과정을 설명하기 위한 도면이다.
도 7은 일실시예에 따라 타 플랫폼 서버에 등록된 디바이스에 대한 제어를 요청하는 과정을 설명하기 위한 도면이다.
도 8은 일실시예에 따라 타 플랫폼 서버에 등록된 디바이스에 대한 이벤트 구동을 요청하는 과정을 설명하기 위한 도면이다.
도 9는 일실시예에 따라 연동 서버의 통신 방법을 나타낸 도면이다.
도 10은 일실시예에 따라 제1 플랫폼 서버의 통신 방법을 나타낸 도면이다.
도 11은 일실시예에 따라 제2 플랫폼 서버의 통신 방법을 나타낸 도면이다.
도 12는 일실시예에 따른 연동 서버를 나타낸 도면이다.
1 is a diagram for describing a home network system including a first platform server, a second platform server, and an interlocking server, according to an exemplary embodiment.
2 is a diagram illustrating a detailed configuration of a first platform server, a second platform server and a companion server according to an embodiment.
3 is a diagram illustrating a detailed configuration of a first platform server, a second platform server and a linked server according to another exemplary embodiment.
4 is a diagram for describing a process of registering a platform server with an authentication server, according to an exemplary embodiment.
5 is a diagram for describing a process of interworking a first platform server and a second platform server, according to an exemplary embodiment.
6 is a diagram for describing a process of requesting a device list registered to another platform server, according to an exemplary embodiment.
7 is a diagram for describing a process of requesting control of a device registered to another platform server according to an exemplary embodiment.
8 is a diagram for describing a process of requesting to drive an event for a device registered to another platform server, according to an exemplary embodiment.
9 is a diagram illustrating a communication method of a companion server according to one embodiment.
10 illustrates a communication method of a first platform server according to an exemplary embodiment.
11 is a diagram illustrating a communication method of a second platform server according to one embodiment.
12 illustrates a companion server according to an embodiment.

실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Specific structural or functional descriptions of the embodiments are disclosed for purposes of illustration only, and may be practiced in various forms. Accordingly, the embodiments are not limited to the specific disclosure, and the scope of the present specification includes changes, equivalents, or substitutes included in the technical idea.

제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various components, but such terms should be interpreted only for the purpose of distinguishing one component from another component. For example, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.When a component is referred to as being "connected" to another component, it should be understood that there may be a direct connection or connection to that other component, but there may be other components in between.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions include plural expressions unless the context clearly indicates otherwise. As used herein, the terms "comprise" or "have" are intended to designate that the described feature, number, step, operation, component, part, or combination thereof exists, but includes one or more other features or numbers, It is to be understood that it does not exclude in advance the possibility of the presence or addition of steps, actions, components, parts or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art, and are not construed in ideal or excessively formal meanings unless expressly defined herein. Do not.

하기에서 설명될 실시예들은 서로 다른 플랫폼을 제공하는 제1 플랫폼 서버 및 제2 플랫폼 서버를 서로 연동시키는 데 사용될 수 있다. 이하, 제1 플랫폼 서버 및 제2 플랫폼 서버를 서로 연동시키는 동작에는 제1 플랫폼 서버 및 제2 플랫폼 서버를 연동시키는 연동 서버의 동작뿐만 아니라 제1 플랫폼 서버 및 제2 플랫폼 서버 각각의 동작, 제1 플랫폼 서버 또는 제2 플랫폼 서버에 등록된 디바이스의 동작도 포함될 수 있다. 이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Embodiments to be described below may be used to interwork a first platform server and a second platform server that provide different platforms. Hereinafter, operations of interworking the first platform server and the second platform server may include operations of the first platform server and the second platform server as well as operations of the first platform server and the second platform server. Operation of a device registered in the platform server or the second platform server may also be included. Hereinafter, exemplary embodiments will be described in detail with reference to the accompanying drawings. Like reference numerals in the drawings denote like elements.

도 1은 일실시예에 따라 제1 플랫폼 서버, 제2 플랫폼 서버 및 연동 서버로 구성되는 홈 네트워크 시스템을 설명하기 위한 도면이다.1 is a diagram for describing a home network system including a first platform server, a second platform server, and an interlocking server, according to an exemplary embodiment.

일실시예에 따른 홈 네트워크 시스템(100)은 하나 이상의 가전기기 및/또는 통신기기(이하, 디바이스라고 지칭함)를 포함할 수 있으며, 디바이스는 미리 결정된 플랫폼을 통해 서로 간에 통신을 수행할 수 있다. 이 때, 홈 네트워크 시스템(100)에는 서로 다른 플랫폼을 이용하는 디바이스들이 존재할 수 있으며, 이 경우 디바이스들 간의 통신을 위해 서로 다른 플랫폼을 연동시키는 작업이 선행될 필요가 있다.The home network system 100 according to an embodiment may include one or more home appliances and / or communication devices (hereinafter, referred to as devices), and the devices may communicate with each other through a predetermined platform. In this case, devices using different platforms may exist in the home network system 100, and in this case, an operation of interworking different platforms for communication between devices needs to be preceded.

이하에서는, 서로 다른 2개의 플랫폼들이 서로 연동되는 케이스를 기준으로 본 발명을 설명한다. 다만, 하기의 설명이 연동되는 플랫폼의 개수를 제한하지 않으며, 3개 이상의 플랫폼들을 연동시키는 경우에도 마찬가지로 적용될 수 있다.Hereinafter, the present invention will be described based on a case in which two different platforms are linked to each other. However, the following description does not limit the number of interworking platforms, and may be similarly applied to integrating three or more platforms.

도 1을 참조하면, 홈 네트워크 시스템(100)은 제1 플랫폼 서버(110), 제1 디바이스(111), 제2 플랫폼 서버(120), 제2 디바이스(121), 연동 서버(130)를 포함할 수 있다.Referring to FIG. 1, the home network system 100 includes a first platform server 110, a first device 111, a second platform server 120, a second device 121, and an interworking server 130. can do.

제1 플랫폼 서버(110) 및 제2 플랫폼 서버(120)는 서로 다른 플랫폼을 제공하는 서버이다. 제1 플랫폼 서버(110)에는 하나 이상의 제1 디바이스(111)가 등록될 수 있다. 제1 디바이스(111)는 제1 플랫폼 서버(110)를 통해 다른 제1 디바이스와 통신을 수행할 수 있다. 제1 디바이스(111)는 제1 플랫폼 서버(110)를 통해 통신을 수행할 수 있는 장치로서, 예를 들어, 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 스마트 가전 기기(예컨대, 스마트 텔레비전, 스마트 냉장고, 스마트 조명기기, 스마트 에어컨(air conditioner), 스마트 세탁기, 스마트 로봇청소기, 스마트 온도센서 등), 지능형 자동차, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다. 이 때, 제1 플랫폼 서버(110)를 통해 통신을 수행하는 복수의 제1 디바이스들은 제1 플랫폼 서버(110)에 등록된 동일한 사용자 식별정보에 연결된 장치일 수 있다. 사용자 식별정보는 사용자 ID(user identification)를 의미하고, 아래 설명에서는 설명의 편의를 위해 식별정보와 ID는 서로 혼용될 수 있다.The first platform server 110 and the second platform server 120 is a server providing different platforms. One or more first devices 111 may be registered in the first platform server 110. The first device 111 may communicate with another first device through the first platform server 110. The first device 111 is a device capable of performing communication through the first platform server 110, for example, a personal computer, a laptop computer, a tablet computer, a smart phone, a smart home appliance (eg, a smart television, Smart refrigerators, smart lighting equipment, smart air conditioners (smart air conditioners), smart washing machines, smart robot cleaners, smart temperature sensors, etc.), intelligent cars, wearable devices can be implemented in various forms. In this case, the plurality of first devices that communicate through the first platform server 110 may be a device connected to the same user identification information registered in the first platform server 110. The user identification information refers to a user ID, and in the following description, the identification information and the ID may be mixed with each other for convenience of description.

제2 플랫폼 서버(120)에는 하나 이상의 제2 디바이스(121)가 등록될 수 있다. 제2 디바이스(121)는 제2 플랫폼 서버(120)를 통해 다른 제2 디바이스와 통신을 수행할 수 있는 장치로서, 예를 들어, 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 스마트 가전 기기, 지능형 자동차, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다. 마찬가지로, 제2 플랫폼 서버(120)를 통해 통신을 수행하는 복수의 제2 디바이스들은 제2 플랫폼 서버(120)에 등록된 동일한 사용자 식별정보에 연결된 장치일 수 있다.One or more second devices 121 may be registered in the second platform server 120. The second device 121 is an apparatus capable of communicating with another second device through the second platform server 120, and may include, for example, a personal computer, a laptop computer, a tablet computer, a smart phone, a smart home appliance, It can be implemented in various forms of products such as intelligent cars and wearable devices. Similarly, the plurality of second devices communicating through the second platform server 120 may be devices connected to the same user identification information registered in the second platform server 120.

다만, 제1 디바이스(111) 및 제2 디바이스(121)는 서로 다른 플랫폼 서버에 연결되기 때문에, 제1 플랫폼 서버(110) 및 제2 플랫폼 서버(120) 중 어느 하나의 서버만을 이용해서는 통신이 불가능하다. 따라서, 제1 디바이스(111) 및 제2 디바이스(121) 간의 통신을 위해서는 제1 플랫폼 서버(110) 및 제2 플랫폼 서버(120)을 모두 이용해야 하고, 이를 위해 제1 플랫폼 서버(110) 및 제2 플랫폼 서버(120)를 연동시키는 연동 서버(130)가 요구된다.However, since the first device 111 and the second device 121 are connected to different platform servers, communication using only one server of the first platform server 110 and the second platform server 120 is performed. impossible. Therefore, in order to communicate between the first device 111 and the second device 121, both the first platform server 110 and the second platform server 120 should be used. For this, the first platform server 110 and The interworking server 130 for interworking with the second platform server 120 is required.

연동 서버(130)는 서로 다른 플랫폼을 제공하는 제1 플랫폼 서버(110) 및 제2 플랫폼 서버(120)를 연동시키는 서버로서, 제1 플랫폼 서버(110) 및 제2 플랫폼 서버(120)를 연동시킴으로써 제1 플랫폼 서버(110)에 등록된 제1 디바이스(111)와 제2 플랫폼 서버(120)에 등록된 제2 디바이스(121) 간의 통신이 가능할 수 있다. 다시 말해, 연동 서버(130)를 통해, 제1 디바이스(111)가 제2 디바이스(121)를 제어하는 것이 가능하게 될 수 있다. 예를 들어, 사용자는 제1 디바이스(예컨대, 스마트 폰)(111)를 통해 제2 디바이스(예컨대, 스마트 텔레비전, 스마트 에어컨 등)(121)가 온(On) 또는 오프(Off)되었는지 여부 등 상태를 체크하거나 특정 동작을 수행하도록 제어할 수 있다. 이 때, 제1 플랫폼 서버(110)에서 제1 디바이스(111)가 등록된 사용자 식별정보와 제2 플랫폼 서버(120)에서 제2 디바이스(121)가 등록된 사용자 식별정보는 서로 대응될 수 있다.The interlocking server 130 is a server for interlocking the first platform server 110 and the second platform server 120 providing different platforms, and interlocks the first platform server 110 and the second platform server 120. By doing so, communication between the first device 111 registered in the first platform server 110 and the second device 121 registered in the second platform server 120 may be possible. In other words, it may be possible for the first device 111 to control the second device 121 through the interworking server 130. For example, the user may be in a state such as whether the second device (eg, smart television, smart air conditioner, etc.) 121 is turned on or off through the first device (eg, a smartphone) 111. Can be checked or controlled to perform a specific action. In this case, the user identification information in which the first device 111 is registered in the first platform server 110 and the user identification information in which the second device 121 is registered in the second platform server 120 may correspond to each other. .

도 2는 일실시예에 따라 제1 플랫폼 서버, 제2 플랫폼 서버 및 연동 서버의 세부 구성을 나타낸 도면이다.2 is a diagram illustrating a detailed configuration of a first platform server, a second platform server and a companion server according to an embodiment.

도 2를 참조하면, 제1 플랫폼 서버(210), 연동 서버(220) 및 제2 플랫폼 서버(230)가 도시된다.Referring to FIG. 2, a first platform server 210, a companion server 220, and a second platform server 230 are shown.

제1 플랫폼 서버(210)는 플랫폼을 제공하기 위한 장치로서, 예를 들어, DM(Device Manager), 미들웨어(middleware), RM(Resource Manager), DB(Data Base), 오픈 API(open application programming interface), 어댑터 라이브러리(adapter library) 및 데이터 포맷 변환부 등을 포함할 수 있다. 여기서, DM은 제1 플랫폼 서버(210)에 등록되는 디바이스를 관리하기 위한 매니저이며, 미들웨어는 홈 네트워크를 통해 디바이스를 발견, 제어 및 센싱을 위한 프로토콜이며, RM은 디바이스에서 발생하는 정보들을 관리하기 위한 매니저일 수 있다. 또한, DB는 디바이스에서 발생하는 정보에 대한 데이터를 저장하기 위한 장치이고, 오픈 API는 해당 플랫폼에서 각 디바이스를 제어하거나 사용자를 관리하기 위한 것일 수 있다.The first platform server 210 is a device for providing a platform, for example, a device manager (DM), middleware, a resource manager (RM), a data base (DB), and an open application programming interface (API). ), An adapter library, a data format converter, and the like. Here, the DM is a manager for managing a device registered in the first platform server 210, the middleware is a protocol for discovering, controlling and sensing a device through a home network, and the RM is for managing information generated in the device. It can be a manager for. In addition, the DB is a device for storing data about the information generated in the device, the open API may be for controlling each device or user management in the platform.

어댑터 라이브러리는 제1 플랫폼 서버(210)에서 이용하는 메시지를 제1 플랫폼 서버(210)와 연동 서버(220)가 공통으로 사용하는 스탠다드 메시지(standard message)로 변환하거나, 스탠다드 메시지를 제1 플랫폼 서버(210)에서 이용하는 메시지로 변환하는 라이브러리일 수 있다. 어댑터 라이브러리에서 메시지가 변환될 때, 제1 플랫폼 서버(210)에 등록된 제1 사용자 식별정보 및 제1 디바이스 식별정보도 변환될 수도 있다.The adapter library converts the message used by the first platform server 210 into a standard message commonly used by the first platform server 210 and the companion server 220, or converts the standard message into a first platform server ( It may be a library for converting to a message used in (210). When the message is converted in the adapter library, the first user identification information and the first device identification information registered in the first platform server 210 may also be converted.

데이터 포맷 변환부는 데이터의 포맷을 변환할 수 있다. 예를 들어, 제1 플랫폼 서버(210) 및 제1 디바이스 사이에서 사용되는 데이터 포맷은 제1 플랫폼 서버(210) 및 연동 서버(220) 사이에서 사용되는 데이터 포맷과 다를 수 있다. 따라서, 데이터 포맷 변환부는 제1 디바이스로부터 수신한 데이터를 연동 서버(220)로 전달하거나 연동 서버(220)로부터 수신한 데이터를 제1 디바이스로 전달하는 경우에 데이터를 변환할 수 있다.The data format converter may convert the format of the data. For example, the data format used between the first platform server 210 and the first device may be different from the data format used between the first platform server 210 and the companion server 220. Therefore, the data format converter may convert data when the data received from the first device is transferred to the companion server 220 or the data received from the companion server 220 is transferred to the first device.

연동 서버(220)는 서로 다른 플랫폼을 제공하는 제1 플랫폼 서버(210) 및 제2 플랫폼 서버(230)을 서로 연동시키기 위한 인증 동작 및 라우팅 동작을 수행할 수 있다. 연동 서버(220)는 제1 플랫폼 서버(210)에 등록된 제1 사용자 식별정보 및 제2 플랫폼 서버(230)에 등록된 제2 사용자 식별정보를 서로 매칭시켜 관리할 수 있다. 예를 들어, 연동 서버(220)는 통합 사용자 식별정보를 생성하고, 생성된 통합 사용자 식별정보에 제1 사용자 식별정보 및 제2 사용자 식별정보에 맵핑시킴으로써, 제1 사용자 식별정보 및 제2 사용자 식별정보를 통합하여 관리할 수 있다.The interworking server 220 may perform an authentication operation and a routing operation for interworking the first platform server 210 and the second platform server 230, which provide different platforms. The companion server 220 may match and manage first user identification information registered in the first platform server 210 and second user identification information registered in the second platform server 230. For example, the companion server 220 generates the integrated user identification information and maps the generated integrated user identification information to the first user identification information and the second user identification information, thereby identifying the first user identification information and the second user identification information. Information can be integrated and managed.

또한, 연동 서버(220)는 라우팅 동작을 통해, 제1 플랫폼 서버(210) 및 제2 플랫폼 서버(230) 간의 데이터 송수신을 지원할 수 있다.In addition, the interworking server 220 may support data transmission and reception between the first platform server 210 and the second platform server 230 through a routing operation.

제2 플랫폼 서버(230)는 제1 플랫폼 서버(210)와 상이한 플랫폼을 제공하는 장치로서, 세부 구성에 대해서는 앞서 설명한 제1 플랫폼 서버(210)에 대한 내용이 마찬가지로 적용될 수 있다.The second platform server 230 is a device that provides a platform different from the first platform server 210, and the details of the first platform server 210 described above may be similarly applied to the detailed configuration.

도 3은 다른 일실시예에 따라 제1 플랫폼 서버, 제2 플랫폼 서버 및 연동 서버의 세부 구성을 나타낸 도면이다.3 is a diagram illustrating a detailed configuration of a first platform server, a second platform server and a linked server according to another exemplary embodiment.

도 3을 참조하면, 다른 일실시예에 따른 제1 플랫폼 서버(310), 제1 어댑터(320), 연동 서버(330), 제2 어댑터(340), 제2 플랫폼 서버(350)가 도시된다.Referring to FIG. 3, a first platform server 310, a first adapter 320, an interworking server 330, a second adapter 340, and a second platform server 350 are shown according to another embodiment. .

실시예에 따라서는, 도 2의 제1 플랫폼 서버(210)에 포함된 어댑터 라이브러리, 데이터 포맷 변환부가 제1 플랫폼 서버(310)와 구별되는 별도의 장치로 구현될 수 있다. 다시 말해, 제1 플랫폼 서버(310)와 구별되는 제1 어댑터(320)는 도 2에서 설명한 어댑터 라이브러리, 데이터 포맷 변환부의 동작을 수행할 수 있다. 마찬가지로, 제2 플랫폼 서버(350)와 제2 어댑터(340)도 별도의 장치로 구성될 수 있다.According to an exemplary embodiment, the adapter library and data format converter included in the first platform server 210 of FIG. 2 may be implemented as a separate device that is distinguished from the first platform server 310. In other words, the first adapter 320 distinguished from the first platform server 310 may perform the operation of the adapter library and the data format converter described with reference to FIG. 2. Similarly, the second platform server 350 and the second adapter 340 may also be configured as separate devices.

또한, 연동 서버(330)는 별도의 인증 서버와 라우팅 서버로 구성될 수도 있다. 다시 말해, 도 2에서 설명한 연동 서버(220)의 인증 동작은 인증 서버가 수행하고, 연동 서버(220)의 라우팅 동작은 라우팅 서버가 수행할 수 있다.In addition, the interworking server 330 may be configured as a separate authentication server and routing server. In other words, the authentication operation of the companion server 220 described in FIG. 2 may be performed by the authentication server, and the routing operation of the companion server 220 may be performed by the routing server.

이하, 도 4 및 도 5에서는 도 2의 경우와 같이 플랫폼 서버 내에 어댑터 라이브러리가 포함되고, 연동 서버 내에 인증 서버 및 라우팅 서버가 포함되는 케이스를 기준으로 설명하고, 도 6 내지 도 8에서는 도 3의 경우와 같이 플랫폼 서버와 어댑터가 구별되고, 연동 서버가 인증 서버와 라우팅 서버로 나누어지는 케이스를 기준으로 설명한다. 다만, 이는 설명의 편의를 위한 것으로 도 2의 경우를 기준으로 한 설명과 도 3의 경우를 기준으로 한 설명은 다른 경우에도 마찬가지로 적용될 수 있다.4 and 5, the adapter library is included in the platform server as in the case of FIG. 2, and the authentication server and the routing server are included in the interworking server. FIG. 6 to FIG. As described, the platform server and the adapter are distinguished, and the description will be made based on a case in which the interworking server is divided into an authentication server and a routing server. However, this is for convenience of description, and the description based on the case of FIG. 2 and the description based on the case of FIG. 3 may be similarly applied to other cases.

도 4는 일실시예에 따라 인증 서버에 플랫폼 서버를 등록하는 과정을 설명하기 위한 도면이다.4 is a diagram for describing a process of registering a platform server with an authentication server, according to an exemplary embodiment.

도 4를 참조하면, 서로 다른 플랫폼 서버를 연동시키기에 앞서 플랫폼 서버를 연동 서버(420)에 등록시키는 동작을 설명하기 위한 흐름도가 도시된다.Referring to FIG. 4, a flowchart for describing an operation of registering a platform server with the companion server 420 before linking different platform servers is shown.

단계(401)에서, 제1 플랫폼 서버(410)는 연동 서버(420)로 등록을 요청할 수 있다. 예를 들어, 제1 플랫폼 서버(410)는 제1 플랫폼 서버(410)에 대한 설명 및 Federation URL를 연동 서버(420)로 전송함으로써, 등록을 요청할 수 있다. 여기서, Federation URL은 제1 플랫폼 서버(410)에서 제공하는 플랫폼을 이용하는 사용자를 인증하기 위한 URL로서, Federation URL를 통해 해당 플랫폼에 로그인할 수 있는 인터페이스가 제공될 수 있다. 또한, 제1 플랫폼 서버(410)에 대한 설명은 제1 플랫폼 서버(410)를 운영하는 기업에 대한 정보, 제1 플랫폼 서버(410)에서 사용되는 통신방식, 데이터 구조에 대한 정보 등을 포함할 수 있다.In operation 401, the first platform server 410 may request registration with the companion server 420. For example, the first platform server 410 may request registration by transmitting a description of the first platform server 410 and a federation URL to the companion server 420. Here, the Federation URL is a URL for authenticating a user who uses a platform provided by the first platform server 410, and an interface for logging in to the platform through the Federation URL may be provided. In addition, the description of the first platform server 410 may include information on the company operating the first platform server 410, the communication method used in the first platform server 410, information about the data structure, and the like. Can be.

단계(402)에서, 연동 서버(420)는 제1 플랫폼 서버(410)의 등록 요청에 기초하여 제1 플랫폼 서버(410)를 등록할 수 있다. 예를 들어, 연동 서버(420)는 미리 결정된 테이블에 Platform_ID, 설명, Federation URL, Platform_Key를 저장할 수 있다. 여기서, Platform_ID는 플랫폼을 지시하는 플랫폼 식별정보이고, 설명은 해당 플랫폼을 제공하는 기업에 대한 정보, 해당 플랫폼에서 사용하는 통신방식, 데이터 구조에 대한 정보 등을 포함하고, Platform_Key는 플랫폼 인증을 위한 키로서, 해당 플랫폼을 최초로 등록할 때 이용될 수 있다. 연동 서버(420)는 테이블에 등록된 정보를 관리하고 유지할 수 있다.In operation 402, the companion server 420 may register the first platform server 410 based on a registration request of the first platform server 410. For example, the interworking server 420 may store Platform_ID, description, Federation URL, and Platform_Key in a predetermined table. Here, Platform_ID is platform identification information indicating a platform, and the description includes information on a company providing the platform, a communication method used in the platform, and information on a data structure, and Platform_Key is a key for platform authentication. For example, it may be used when registering the platform for the first time. The companion server 420 may manage and maintain the information registered in the table.

단계(403)에서, 연동 서버(420)는 제1 플랫폼 서버(410)가 등록되었다는 응답을 전송할 수 있다. 예를 들어, 연동 서버(420)는 제1 플랫폼 서버(410)과 데이터를 주고 받을 수 있는 세션키를 제1 플랫폼 서버(410)로 전달할 수 있다.In operation 403, the companion server 420 may transmit a response indicating that the first platform server 410 is registered. For example, the companion server 420 may transmit a session key for exchanging data with the first platform server 410 to the first platform server 410.

도 5는 일실시예에 따라 제1 플랫폼 서버 및 제2 플랫폼 서버를 연동시키는 과정을 설명하기 위한 도면이다.5 is a diagram for describing a process of interworking a first platform server and a second platform server, according to an exemplary embodiment.

도 5를 참조하면, 제1 디바이스(510)에 입력된 사용자의 요청에 따라 제1 플랫폼 서버(520)와 제2 플랫폼 서버(540)를 연동시키는 동작을 설명하기 위한 흐름도가 도시된다.Referring to FIG. 5, a flowchart for describing an operation of interworking the first platform server 520 and the second platform server 540 according to a user's request input to the first device 510 is illustrated.

단계(501)에서, 제1 디바이스(510)는 사용자로부터 입력된 타 플랫폼 연동 요청을 제1 플랫폼 서버(520)로 전송할 수 있다. 예를 들어, 사용자는 제1 디바이스(510)의 터치 스크린에 미리 결정된 터치를 입력하거나 제1 디바이스(510)의 버튼을 눌음으로써 타 플랫폼 연동 요청에 대한 명령을 입력할 수 있고, 제1 디바이스(510)는 사용자의 제어에 기초하여 제1 플랫폼 서버(520)로 타 플랫폼 연동 요청을 전송할 수 있다.In operation 501, the first device 510 may transmit another platform interworking request input from the user to the first platform server 520. For example, the user may input a command for another platform interworking request by inputting a predetermined touch on the touch screen of the first device 510 or pressing a button of the first device 510, and the first device ( The 510 may transmit another platform interworking request to the first platform server 520 based on the user's control.

단계(502)에서, 제1 플랫폼 서버(520)는 연동 서버(530)로 타 플랫폼 연동 요청을 전달할 수 있다. 예를 들어, 제1 플랫폼 서버(520)는 제1 플랫폼 서버(520)에 등록된 제1 사용자 ID를 타 플랫폼 연동 요청에 포함시켜, 연동 서버(530)로 전송할 수 있다.In operation 502, the first platform server 520 may transmit another platform interworking request to the interworking server 530. For example, the first platform server 520 may include the first user ID registered in the first platform server 520 in another platform interworking request and transmit the same to the interworking server 530.

단계(503)에서, 연동 서버(530)는 제1 사용자 ID를 등록할 수 있다. 예를 들어, 연동 서버(530)는 맵핑 테이블에 제1 플랫폼 서버(520)로부터 수신한 제1 사용자 ID가 등록되어 있는지 여부를 확인하고, 만약 등록되어 있지 않은 경우에는 제1 사용자 ID에 대응되는 통합 사용자 ID를 생성하고, 제1 사용자 ID를 통합 사용자 ID에 대응시켜서 맵핑 테이블에 등록할 수 있다. 여기서, 통합 사용자 ID는 서로 다른 플랫폼 서버를 연동시키기 위한 사용자 ID로서, 각 플랫폼 서버에 등록된 사용자 ID와 맵핑되어 관리될 수 있다. 만약 맵핑 테이블에 이미 제1 사용자 ID가 등록되어 있는 경우, 단계(503)는 생략될 수 있다.In operation 503, the companion server 530 may register a first user ID. For example, the interworking server 530 checks whether the first user ID received from the first platform server 520 is registered in the mapping table, and if not, corresponds to the first user ID. The integrated user ID may be generated, and the first user ID may be registered in the mapping table in correspondence with the integrated user ID. Here, the integrated user ID is a user ID for interworking different platform servers, and may be managed by being mapped to a user ID registered in each platform server. If the first user ID is already registered in the mapping table, step 503 may be omitted.

단계(504)에서, 연동 서버(530)는 통합 사용자 ID에 대응하는 트랜잭션 ID를 생성할 수 있다. 트랜잭션 ID는 서로 다른 플랫폼 서버에 등록된 사용자 ID가 동일한 사용자에 대응된다는 것을 확인하기 위한 정보로서, 관련 없는 사용자 ID가 서로 맵핑되는 것을 방지하기 위해 비교적 짧은 유효시간을 가질 수 있다.In operation 504, the companion server 530 may generate a transaction ID corresponding to the integrated user ID. The transaction ID is information for confirming that user IDs registered in different platform servers correspond to the same user, and may have a relatively short valid time to prevent unrelated user IDs from being mapped to each other.

단계(505)에서, 연동 서버(530)는 제1 플랫폼 서버(520)에 연동될 수 있는 플랫폼 리스트 및 트랜잭션 ID를 제1 플랫폼 서버(520)로 전송할 수 있다. 그리고, 제1 플랫폼 서버(520)는 플랫폼 리스트 및 트랜잭션 ID를 제1 디바이스(510)로 전달할 수 있다. 여기서, 플랫폼 리스트는 제1 플랫폼 서버(520)에 연동될 수 있는 플랫폼의 Federation URL을 포함할 수 있다. 나아가, 플랫폼 리스트는 플랫폼 명칭 등 해당 플랫폼에 대한 설명이 더 포함될 수도 있다.In operation 505, the companion server 530 may transmit a platform list and a transaction ID that may be linked to the first platform server 520 to the first platform server 520. In addition, the first platform server 520 may transmit the platform list and the transaction ID to the first device 510. Here, the platform list may include the Federation URL of the platform that can be linked to the first platform server 520. In addition, the platform list may further include a description of the platform, such as the platform name.

단계(506)에서, 제1 디바이스(510)는 플랫폼 리스트를 사용자로 제공하고, 사용자로부터 플랫폼 리스트에 포함된 플랫폼들 중에서 연동하고자 하는 플랫폼에 대한 선택을 입력 받을 수 있다.In operation 506, the first device 510 may provide a platform list to the user, and receive a selection of a platform to be interworked from among the platforms included in the platform list from the user.

단계(507)에서, 제1 디바이스(510)는 사용자가 선택한 플랫폼을 제공하는 제2 플랫폼 서버(540)로 Federation URL 호출을 전송할 수 있다. 제2 플랫폼 서버(540)로 Federation URL이 호출되면, 제1 디바이스(510)에는 제2 플랫폼 서버(540)에 대한 로그인 화면을 디스플레이하며, 사용자는 해당 화면을 통해 제2 플랫폼 서버(540)에 등록된 로그인 정보(예컨대, 제2 사용자 ID, 패스워드 등)를 입력할 수 있다.In operation 507, the first device 510 may transmit a Federation URL call to the second platform server 540 providing the platform selected by the user. When the Federation URL is called to the second platform server 540, the login screen for the second platform server 540 is displayed on the first device 510, and the user may access the second platform server 540 through the corresponding screen. Registered login information (eg, a second user ID, a password, etc.) may be input.

단계(508)에서, 제1 디바이스(510)는 제2 플랫폼 서버(540)의 로그인 정보 및 트랜잭션 ID를 제2 플랫폼 서버(540)로 전송할 수 있다.In operation 508, the first device 510 may transmit login information and a transaction ID of the second platform server 540 to the second platform server 540.

단계(509)에서, 제2 플랫폼 서버(540)는 제1 디바이스(510)로부터 수신한 로그인 정보를 확인할 수 있다. 제2 플랫폼 서버(540)는 로그인 정보를 확인함으로써, 연동을 요청한 사용자가 제2 플랫폼 서버(540)에 등록된 정당 사용자인지 여부를 판단할 수 있다. 제1 디바이스(510)로부터 수신한 로그인 정보를 통해 성공적으로 로그인한 경우, 제2 플랫폼 서버(540)는 해당 로그인 정보를 정당한 것으로 확인할 수 있다.In operation 509, the second platform server 540 may check login information received from the first device 510. By checking the login information, the second platform server 540 may determine whether the user who requested the linkage is a party user registered in the second platform server 540. When the user logs in successfully through the login information received from the first device 510, the second platform server 540 may check the corresponding login information as legitimate.

제2 플랫폼 서버(540)에 성공적으로 로그인된 경우, 단계(511)에서, 제2 플랫폼 서버(540)는 로그인 정보에 포함된 제2 사용자 ID와 트랜잭션 ID를 연동 서버(530)로 전송할 수 있다.When the second platform server 540 is successfully logged in, in step 511, the second platform server 540 may transmit the second user ID and the transaction ID included in the login information to the companion server 530. .

단계(512)에서, 연동 서버(530)는 트랜잭션 ID에 기초하여 제2 사용자 ID를 맵핑 테이블에 등록할 수 있다. 연동 서버(530)는 제2 플랫폼 서버(540)로부터 수신한 트랜잭션 ID를 검증할 수 있다. 예를 들어, 연동 서버(530)는 제2 플랫폼 서버(540)로부터 수신한 트랜잭션 ID가 유효한지 여부를 판단하고, 만약 해당 트랜잭션 ID가 유효한 경우, 제2 사용자 ID를 통합 사용자 ID에 대응시켜 맵핑 테이블에 등록할 수 있다. 만약, 미리 결정된 유효시간이 경과되어 트랜잭션 ID가 유효하지 않거나, 통신 도중 트랜잭션 ID가 변형되는 등의 사유로 트랜잭션 ID가 유효하지 않는 경우에는, 연동 서버(530)는 제2 사용자 ID를 맵핑 테이블에 등록하지 않는다.In operation 512, the companion server 530 may register the second user ID in the mapping table based on the transaction ID. The companion server 530 may verify the transaction ID received from the second platform server 540. For example, the companion server 530 determines whether the transaction ID received from the second platform server 540 is valid. If the transaction ID is valid, the companion server 530 maps the second user ID to the integrated user ID. Can be registered in the table. If the transaction ID is invalid due to elapse of the predetermined validity time or the transaction ID is deformed during communication, the companion server 530 assigns the second user ID to the mapping table. Do not register.

단계(513)에서, 연동 서버(530)는 단계(512)의 처리 결과를 제2 플랫폼 서버(540)로 통지할 수 있다. 또한, 실시예에 따라서 연동 서버(530)는 타 플랫폼 연동을 요청한 제1 디바이스(510)로 처리 결과를 통지할 수도 있다.In operation 513, the companion server 530 may notify the second platform server 540 of the processing result of operation 512. In addition, according to an exemplary embodiment, the companion server 530 may notify the first device 510 of the request for interworking with other platforms to process the result.

도 6은 일실시예에 따라 타 플랫폼 서버에 등록된 디바이스 리스트를 요청하는 과정을 설명하기 위한 도면이다.6 is a diagram for describing a process of requesting a device list registered to another platform server, according to an exemplary embodiment.

도 6을 참조하면, 제1 디바이스(610)에서 제2 플랫폼 서버(670)에 등록된 제2 디바이스 리스트를 요청하는 과정을 설명하기 위한 흐름도가 도시된다.Referring to FIG. 6, a flowchart for describing a process of requesting a second device list registered in the second platform server 670 from the first device 610 is illustrated.

일실시예에 따른 제1 디바이스(610)는 제2 디바이스(680)를 제어하기에 앞서 제2 플랫폼 서버(670)에 등록된 제2 디바이스 리스트를 먼저 요청할 수 있다.According to an embodiment, the first device 610 may first request a second device list registered with the second platform server 670 before controlling the second device 680.

단계(601)에서, 제1 디바이스(610)는 제2 디바이스 리스트에 대한 요청을 제1 플랫폼 서버(620)로 전달할 수 있다. 그리고, 제1 플랫폼 서버(620)는 제1 어댑터(630)로 제2 디바이스 리스트에 대한 요청을 전달할 수 있다.In operation 601, the first device 610 may transmit a request for a second device list to the first platform server 620. The first platform server 620 may transmit a request for a second device list to the first adapter 630.

단계(602)에서, 제1 어댑터(630)는 제2 디바이스 리스트 요청을 위한 토큰(예컨대, 액세스 토큰(Access Token))을 인증 서버(640)로 요청할 수 있다. 제1 어댑터(630)는 제2 디바이스 리스트를 요청한 제1 플랫폼 서버(620)의 식별정보, 제2 디바이스(680)가 등록된 제2 플랫폼 서버(670)의 식별정보 및 제2 디바이스 리스트를 요청한 사용자를 나타내는 제1 사용자 ID를 토큰 요청과 함께 인증 서버(640)로 전달할 수 있다.In step 602, the first adapter 630 may request the authentication server 640 for a token (eg, an access token) for the second device list request. The first adapter 630 requests identification information of the first platform server 620 that requests the second device list, identification information of the second platform server 670 to which the second device 680 is registered, and requests the second device list. The first user ID representing the user may be transmitted to the authentication server 640 along with the token request.

단계(603)에서, 인증 서버(640)는 제1 어댑터(730)의 토큰 요청에 기초하여 토큰을 생성할 수 있다. 예를 들어, 인증 서버(640)는 제1 사용자 ID에 대응하는 통합 사용자 ID를 암호화함으로써, 토큰을 생성할 수 있다. 이 때, 통합 사용자 ID는 시간에 따라 변경될 수 있다. 따라서, 토큰이 생성되는 시점에 따라 통합 사용자 ID가 다르게 결정되고, 예를 들어, 통합 사용자 ID는 주기적으로 변경될 수 있다.In step 603, the authentication server 640 may generate a token based on the token request of the first adapter 730. For example, the authentication server 640 may generate a token by encrypting the unified user ID corresponding to the first user ID. At this time, the integrated user ID may change over time. Therefore, the integrated user ID is determined differently according to when the token is generated, and for example, the integrated user ID may be changed periodically.

통합 사용자 ID가 시간에 따라 변경됨으로써, 통합 사용자 ID가 암호화되어 생성되는 토큰도 마찬가지로 시간에 따라 변경될 수 있다. 예를 들어, 제1 시점에 생성된 토큰과 제2 시점에 생성된 토큰은 서로 다른 통합 사용자 ID에 기초하여 생성되고, 제1 시점에 생성된 토큰과 제2 시점에 생성된 토큰은 서로 다를 수 있다. 여기서, 제1 시점과 제2 시점은 미리 결정된 시간적 간격이 있는 시점을 나타낸다. 따라서, 설사 이전에 생성했던 토큰이 유출되더라도 일정한 시간이 경과한 후에는 새로운 토큰이 이용되므로, 서로 다른 플랫폼을 연동시키는 데에 높은 보안성을 유지할 수 있다.As the unified user ID changes over time, the token generated by encrypting the unified user ID may likewise change over time. For example, the token generated at the first time point and the token generated at the second time point may be generated based on different integrated user IDs, and the token generated at the first time point and the token generated at the second time point may be different from each other. have. Here, the first time point and the second time point indicate a time point at which a predetermined time interval exists. Therefore, even if a token previously generated is leaked, a new token is used after a certain time has elapsed, and thus high security can be maintained in interworking different platforms.

단계(604)에서, 인증 서버(640)는 생성된 토큰을 제1 어댑터(630)로 전송할 수 있다.In step 604, the authentication server 640 may send the generated token to the first adapter 630.

단계(605)에서, 제1 어댑터(630)는 라우팅 서버(650)로 제2 디바이스 리스트 요청과 함께 토큰을 전송할 수 있다. 일실시예에 따른 제1 어댑터(630)는 제2 플랫폼 서버(670)만이 해독할 수 있는 키를 이용하여 제2 디바이스 리스트 요청을 암호화하여 전송할 수 있다. 예를 들어, 제1 어댑터(630)는 제2 플랫폼 서버(670)의 공개키로 제2 디바이스 리스트 요청을 암호화함으로써, 제2 플랫폼 서버(670) 이외의 장치(예컨대, 라우팅 서버(650) 등)가 제2 디바이스 리스트 요청을 확인할 수 없도록 할 수 있다. 그리고, 라우팅 서버(650)는 제2 디바이스 리스트 요청과 토큰을 제2 어댑터(660)로 전달할 수 있다.In step 605, the first adapter 630 may send a token with the second device list request to the routing server 650. According to an embodiment, the first adapter 630 may encrypt and transmit the second device list request by using a key that only the second platform server 670 can decrypt. For example, the first adapter 630 encrypts the second device list request with the public key of the second platform server 670, thereby causing a device other than the second platform server 670 (eg, routing server 650, etc.). May not be able to confirm the second device list request. In addition, the routing server 650 may transmit the second device list request and the token to the second adapter 660.

단계(606)에서, 제2 어댑터(660)는 수신한 토큰이 유효한지 여부에 대한 확인을 인증 서버(640)로 요청할 수 있다. 이 때, 제2 어댑터(660)는 수신한 토큰을 인증 서버(640)로 전송할 수 있다.In step 606, the second adapter 660 may request the authentication server 640 to confirm whether the received token is valid. At this time, the second adapter 660 may transmit the received token to the authentication server 640.

단계(607)에서, 인증 서버(640)는 제2 어댑터(660)로부터 수신한 토큰이 유효한지 여부를 확인할 수 있다. 예를 들어, 해당 토큰이 단계(603)에서 생성한 토큰에 해당하는 경우, 인증 서버(640)는 해당 토큰이 유효한 것으로 판단할 수 있다. 해당 토큰이 유효한 경우, 인증 서버(640)는 단계(603)에서 토큰을 생성할 때 이용했던 암호화키에 기초하여 토큰으로부터 통합 사용자 ID를 추출할 수 있다.In step 607, the authentication server 640 may check whether the token received from the second adapter 660 is valid. For example, if the token corresponds to the token generated in step 603, the authentication server 640 may determine that the token is valid. If the token is valid, the authentication server 640 may extract the unified user ID from the token based on the encryption key used when generating the token in step 603.

단계(608)에서, 인증 서버(640)는 확인 결과를 제2 어댑터(660)에 통보할 수 있다. 만약 해당 토큰이 유효한 경우, 인증 서버(640)는 해당 토큰이 유효하다는 메시지와 통합 사용자 ID에 대응하는 제2 사용자 ID를 제2 어댑터(660)로 전송할 수 있다. 만약 해당 토큰이 유효하지 않는 경우, 인증 서버(640)는 해당 토큰이 유효하지 않다는 메시지만을 제2 어댑터(660)로 전송할 수 있다.In step 608, the authentication server 640 may notify the second adapter 660 of the verification result. If the token is valid, the authentication server 640 may transmit a message indicating that the token is valid and a second user ID corresponding to the integrated user ID to the second adapter 660. If the token is not valid, the authentication server 640 may transmit only a message to the second adapter 660 indicating that the token is not valid.

단계(609)에서, 해당 토큰이 유효하다는 메시지를 수신한 제2 어댑터(660)는 제2 디바이스 리스트를 제2 플랫폼 서버(670)로 요청할 수 있다. 이 때, 제2 어댑터(660)는 인증 서버(640)로부터 수신한 제2 사용자 ID와 함께 전송할 수 있다.In operation 609, the second adapter 660 receiving the message that the token is valid may request the second platform server 670 for the second device list. At this time, the second adapter 660 may transmit together with the second user ID received from the authentication server 640.

단계(611)에서, 제2 플랫폼 서버(670)는 제2 디바이스(680)가 포함된 제2 디바이스 리스트를 제2 어댑터(660)로 전송할 수 있다. 이 때, 제2 디바이스(680)는 제2 플랫폼 서버(670)에서 제2 사용자 ID에 대응되어 등록된 디바이스를 나타낼 수 있다. 예를 들어, 제2 디바이스 리스트에는 "DeviceID" 형식의 제2 디바이스 ID가 포함될 수 있다.In operation 611, the second platform server 670 may transmit a second device list including the second device 680 to the second adapter 660. In this case, the second device 680 may indicate a device registered in correspondence with the second user ID in the second platform server 670. For example, the second device list may include a second device ID in a "DeviceID" format.

그리고, 제2 어댑터(660)는 제2 디바이스 리스트를 라우팅 서버(650)로 전달할 수 있다. 이 때, 제2 어댑터(660)는 제2 디바이스 리스트에 포함된 제2 디바이스 ID를 제2 플랫폼 서버(670)의 ID와 병합시킬 수 있다. 그래서, 제2 디바이스 리스트에는 "PlatformID@DeviceID" 형식의 제2 디바이스 ID가 포함될 수 있다.The second adapter 660 may transfer the second device list to the routing server 650. In this case, the second adapter 660 may merge the second device ID included in the second device list with the ID of the second platform server 670. Thus, the second device list may include a second device ID in the format "PlatformID @ DeviceID".

그리고, 라우팅 서버(650)는 제2 디바이스 리스트를 제1 어댑터(630)로 전달하고, 제1 어댑터(630)는 제2 디바이스 리스트를 제1 플랫폼 서버(620)로 전달하며, 제1 플랫폼 서버(620)는 제2 디바이스 리스트를 제1 디바이스(610)로 전달할 수 있다. 제1 디바이스(610)는 제2 디바이스 리스트를 사용자로 제공할 수 있다. 이 때, 제1 플랫폼 서버(620)는 제2 어댑터(670)에서 결정된 "PlatformID@DeviceID" 형식의 제2 디바이스 ID를 그대로 활용할 수도 있고, 또는 제1 플랫폼 서버(620)만의 ID로 변경하여 활용할 수도 있다.In addition, the routing server 650 transmits the second device list to the first adapter 630, and the first adapter 630 delivers the second device list to the first platform server 620, and the first platform server. 620 may transfer the second device list to the first device 610. The first device 610 may provide a second device list to the user. At this time, the first platform server 620 may utilize the second device ID of the format "PlatformID @ DeviceID" determined by the second adapter 670 as it is, or change the ID of the first platform server 620 only. It may be.

도 7은 일실시예에 따라 타 플랫폼 서버에 등록된 디바이스에 대한 제어를 요청하는 과정을 설명하기 위한 도면이다.7 is a diagram for describing a process of requesting control of a device registered to another platform server according to an exemplary embodiment.

도 7을 참조하면, 제1 디바이스(710)에서 제2 디바이스(780)에 대한 제어를 요청하는 과정을 설명하기 위한 흐름도가 도시된다.Referring to FIG. 7, a flowchart illustrating a process of requesting control of the second device 780 from the first device 710 is illustrated.

일실시예에 따른 사용자는 제1 디바이스(710)를 통해 제2 디바이스(780)의 동작을 제어할 수 있다. 이 때, 제2 디바이스(780)는 도 6에서 설명한 방법으로 획득한 제2 디바이스 리스트에 포함된 장치일 수 있다. 예를 들어, 사용자는 제1 디바이스(710)를 통해 제2 디바이스(780)에 해당되는 스마트 에어컨을 온(On)시키거나, 제2 디바이스(780)에 해당되는 스마트 조명을 오프(Off)시킬 수 있다.According to an embodiment, the user may control an operation of the second device 780 through the first device 710. In this case, the second device 780 may be an apparatus included in the second device list obtained by the method described with reference to FIG. 6. For example, the user may turn on the smart air conditioner corresponding to the second device 780 through the first device 710, or turn off the smart lighting corresponding to the second device 780. Can be.

단계(701)에서, 제1 디바이스(710)는 제2 디바이스(780) 제어에 대한 요청을 제1 플랫폼 서버(720)로 전송할 수 있다. 이 때, 제1 디바이스(710)는 제어의 대상이 되는 제2 디바이스(780)를 나타내는 정보인 제2 디바이스 ID를 제어 요청과 함께 제1 플랫폼 서버(720)로 전송할 수 있고, 이 때, 제2 디바이스 ID에는 제2 디바이스(780) 자체에 대한 ID뿐만 아니라 제2 플랫폼 서버(770)의 ID도 포함될 수 있다(예컨대, "PlatformID@DeviceID" 형식의 제2 디바이스 ID).In operation 701, the first device 710 may transmit a request for controlling the second device 780 to the first platform server 720. At this time, the first device 710 may transmit a second device ID, which is information indicating the second device 780 to be controlled, to the first platform server 720 together with the control request. The second device ID may include not only an ID of the second device 780 itself but also an ID of the second platform server 770 (eg, a second device ID having a format of “PlatformID @ DeviceID”).

그리고 제1 플랫폼 서버(720)는 제2 디바이스 제어 요청을 제1 어댑터(730)로 전달할 수 있다.In addition, the first platform server 720 may transmit a second device control request to the first adapter 730.

단계(702)에서, 제1 어댑터(730)는 제2 디바이스 제어 요청을 위한 토큰을 인증 서버(740)로 요청할 수 있다. 제1 어댑터(730)는 제2 디바이스 제어를 요청하는 제1 플랫폼 서버(710)의 식별정보, 제2 디바이스(780)가 등록된 제2 플랫폼 서버(770)의 식별정보, 제2 디바이스 리스트를 요청한 사용자를 나타내는 제1 사용자 ID를 토큰 요청과 함께 인증 서버(740)로 전달할 수 있다.In step 702, the first adapter 730 may request the authentication server 740 for a token for the second device control request. The first adapter 730 may identify identification information of the first platform server 710 requesting control of the second device, identification information of the second platform server 770 on which the second device 780 is registered, and a second device list. The first user ID indicating the requested user may be transmitted to the authentication server 740 together with the token request.

단계(703)에서, 인증 서버(740)는 제1 어댑터(730)의 토큰 요청에 기초하여 토큰을 생성할 수 있다. 인증 서버(740)는 제1 사용자 ID에 대응하는 통합 사용자 ID를 암호화함으로써, 토큰을 생성할 수 있다. 이 때, 통합 사용자 ID는 시간에 따라 다르게 결정될 수 있고 그래서 토큰이 생성되는 시점에 따라 통합 사용자 ID도 다르게 결정될 수 있다. 나아가, 통합 사용자 ID가 시간에 따라 다르게 결정됨으로써, 토큰도 마찬가지로 시간에 따라 다르게 결정될 수 있다.In step 703, the authentication server 740 may generate a token based on the token request of the first adapter 730. The authentication server 740 may generate a token by encrypting the integrated user ID corresponding to the first user ID. At this time, the unified user ID may be determined differently according to time, and thus, the unified user ID may be determined differently according to the time point at which the token is generated. Furthermore, since the unified user ID is determined differently over time, the token can likewise be determined differently over time.

단계(704)에서, 인증 서버(740)는 생성된 토큰을 제1 어댑터(730)로 전송할 수 있다.At step 704, the authentication server 740 may send the generated token to the first adapter 730.

단계(705)에서, 제1 어댑터(730)는 라우팅 서버(750)로 제2 디바이스 제어 요청과 함께 토큰을 전송할 수 있다. 그리고, 라우팅 서버(750)는 제2 디바이스 제어 요청과 토큰을 제2 어댑터(760)로 전달할 수 있다.In step 705, the first adapter 730 may send the token with the second device control request to the routing server 750. In addition, the routing server 750 may transmit the second device control request and the token to the second adapter 760.

단계(706)에서, 제2 어댑터(760)는 수신한 토큰이 유효한지 여부에 대한 확인을 인증 서버(740)로 요청할 수 있다. 이 때, 제2 어댑터(760)는 수신한 토큰을 인증 서버(740)로 전송할 수 있다.In step 706, the second adapter 760 may request the authentication server 740 to confirm whether the received token is valid. At this time, the second adapter 760 may transmit the received token to the authentication server 740.

단계(707)에서, 인증 서버(740)는 제2 어댑터(760)로부터 수신한 토큰이 유효한지 여부를 확인할 수 있다. 해당 토큰이 유효한 경우, 인증 서버(740)는 단계(703)에서 토큰을 생성할 때 이용했던 암호화키에 기초하여 토큰으로부터 통합 사용자 ID를 추출할 수 있다.In step 707, the authentication server 740 may check whether the token received from the second adapter 760 is valid. If the token is valid, the authentication server 740 may extract the unified user ID from the token based on the encryption key used when generating the token in step 703.

단계(708)에서, 인증 서버(740)는 확인 결과를 제2 어댑터(760)에 통보할 수 있다. 만약 해당 토큰이 유효한 경우, 인증 서버(740)는 해당 토큰이 유효하다는 메시지와 통합 사용자 ID에 대응하는 제2 사용자 ID를 제2 어댑터(760)로 전송할 수 있다.In step 708, the authentication server 740 may notify the second adapter 760 of the verification result. If the token is valid, the authentication server 740 may transmit a message indicating that the token is valid and a second user ID corresponding to the integrated user ID to the second adapter 760.

단계(709)에서, 해당 토큰이 유효하다는 메시지를 수신한 제2 어댑터(760)는 제2 디바이스 제어 요청을 제2 플랫폼 서버(770)로 전송할 수 있다. 이 때, 제2 어댑터(760)는 인증 서버(740)로부터 수신한 제2 사용자 ID와 함께 전송할 수 있다. 제2 어댑터(760)는 제어의 대상이 되는 제2 디바이스(780)를 나타내는 제2 디바이스(780)의 ID에서 제2 플랫폼 서버(770)의 ID를 제거한 나머지(예컨대, "DeviceID" 형식의 제2 디바이스 ID)를 제2 플랫폼 서버(770)로 전달할 수 있다.In operation 709, the second adapter 760 having received the message that the token is valid may transmit a second device control request to the second platform server 770. At this time, the second adapter 760 may transmit together with the second user ID received from the authentication server 740. The second adapter 760 removes the ID of the second platform server 770 from the ID of the second device 780 representing the second device 780 to be controlled (for example, the “DeviceID” format). 2 device ID) to the second platform server 770.

그리고, 제2 플랫폼 서버(770)는 제2 사용자 ID에 등록되고 제2 디바이스 ID에 대응되는 제2 디바이스(780)를 식별하고, 식별된 제2 디바이스(780)로 제어를 요청할 수 있다.In addition, the second platform server 770 may identify the second device 780 registered with the second user ID and correspond to the second device ID, and request control to the identified second device 780.

제2 디바이스(780)가 제어 요청에 따라 일정한 동작을 수행한 경우, 단계(711)에서, 제2 디바이스(780)는 제어 요청에 따른 처리 결과를 제2 플랫폼 서버(770)로 전송할 수 있다. 이 때, 처리 결과에는 제2 디바이스(780)를 나타내는 제2 디바이스 ID가 "DeviceID" 형식으로 포함될 수 있다.When the second device 780 performs a certain operation according to the control request, in step 711, the second device 780 may transmit a processing result according to the control request to the second platform server 770. In this case, the second device ID indicating the second device 780 may be included in the “DeviceID” format in the processing result.

그리고, 제2 플랫폼 서버(770)는 처리 결과를 제2 어댑터(760)로 전달할 수 있다. 그리고, 제2 어댑터(760)는 처리 결과를 라우팅 서버(750)로 전달할 수 있다. 이 때, 제2 어댑터(760)는 처리 결과에 포함된 제2 디바이스 ID에 제2 플랫폼 서버(770)의 ID를 병합시켜, "PlatformID@DeviceID" 형식의 제2 디바이스 ID를 전달할 수 있다.In addition, the second platform server 770 may transfer the processing result to the second adapter 760. In addition, the second adapter 760 may transfer the processing result to the routing server 750. At this time, the second adapter 760 may merge the ID of the second platform server 770 with the second device ID included in the processing result, and deliver the second device ID in the format "PlatformID @ DeviceID".

그리고, 라우팅 서버(750)는 처리 결과를 제1 어댑터(730)로 전달하고, 제1 어댑터(730)는 처리결과를 제1 플랫폼 서버(720)로 전달하며, 제1 플랫폼 서버(720)는 처리 결과를 제1 디바이스(710)로 전달할 수 있다. 그래서, 제1 디바이스(710)는 제2 디바이스(780)에 대한 처리 결과를 사용자로 제공할 수 있다.In addition, the routing server 750 transmits the processing result to the first adapter 730, the first adapter 730 transmits the processing result to the first platform server 720, and the first platform server 720 is The processing result may be transferred to the first device 710. Thus, the first device 710 may provide a processing result for the second device 780 to the user.

도 7에 도시된 각 단계들에는 도 1 내지 도 6을 통하여 전술한 사항들이 그대로 적용되므로, 보다 상세한 설명은 생략한다.Since the above-described matters are applied to each of the steps shown in FIG. 7 through FIGS. 1 to 6, detailed description thereof will be omitted.

도 8은 일실시예에 따라 타 플랫폼 서버에 등록된 디바이스에 대한 이벤트 구동을 요청하는 과정을 설명하기 위한 도면이다.8 is a diagram for describing a process of requesting to drive an event for a device registered to another platform server, according to an exemplary embodiment.

도 8을 참조하면, 제2 디바이스(880)에서 발생한 이벤트에 대한 구독을 요청하는 과정을 설명하기 위한 흐름도가 도시된다.Referring to FIG. 8, a flowchart for describing a process of requesting a subscription for an event occurring in the second device 880 is illustrated.

일실시예에 따른 사용자는 제1 디바이스(810)를 통해 제2 디바이스(880)에서 발생한 이벤트를 통지 받을 수 있다. 이 때, 제2 디바이스(880)는 도 6에서 설명한 방법으로 획득한 제2 디바이스 리스트에 포함된 장치일 수 있다. 예를 들어, 제2 디바이스(880)에 해당하는 스마트 세탁기에서 세탁 작업이 완료되는 이벤트가 발생한 경우, 사용자는 제1 디바이스(810)를 통해 제2 디바이스(880)의 이벤트 발생 사실을 통지 받을 수 있다.According to an embodiment, the user may be notified of an event occurring in the second device 880 through the first device 810. In this case, the second device 880 may be an apparatus included in the second device list obtained by the method described with reference to FIG. 6. For example, when an event in which a laundry task is completed in the smart washing machine corresponding to the second device 880 occurs, the user may be notified of the event occurrence of the second device 880 through the first device 810. have.

단계(801)에서, 제1 디바이스(810)는 제2 디바이스 이벤트 구독에 대한 요청을 제1 플랫폼 서버(820)로 전송할 수 있다. 이 때, 제1 디바이스(810)는 구독의 대상이 되는 제2 디바이스(880)를 나타내는 정보인 제2 디바이스 ID를 이벤트 구독 요청과 함께 제1 플랫폼 서버(820)로 전송할 수 있고, 이 때, 제2 디바이스 ID에는 제2 디바이스(880) 자체에 대한 ID뿐만 아니라 제2 플랫폼 서버(870)의 ID도 포함될 수 있다(예컨대, "PlatformID@DeviceID" 형식의 제2 디바이스 ID).In operation 801, the first device 810 may transmit a request for a second device event subscription to the first platform server 820. At this time, the first device 810 may transmit a second device ID, which is information indicating the second device 880 to be subscribed to, with the event subscription request to the first platform server 820. The second device ID may include not only an ID of the second device 880 itself but also an ID of the second platform server 870 (eg, a second device ID having a format of “PlatformID @ DeviceID”).

그리고 제1 플랫폼 서버(820)는 이벤트 구독 요청을 제1 어댑터(830)로 전달할 수 있다.In addition, the first platform server 820 may transmit an event subscription request to the first adapter 830.

단계(802)에서, 제1 어댑터(830)는 이벤트 구독 요청을 위한 토큰을 인증 서버(840)로 요청할 수 있다. 제1 어댑터(830)는 이벤트 구독을 요청하는 제1 플랫폼 서버(820)의 식별정보, 제2 디바이스(880)가 등록된 제2 플랫폼 서버(870)의 식별정보, 제2 디바이스 리스트를 요청한 사용자를 나타내는 제1 사용자 ID를 토큰 요청과 함께 인증 서버(840)로 전달할 수 있다.In operation 802, the first adapter 830 may request the authentication server 840 for a token for an event subscription request. The first adapter 830 may include identification information of the first platform server 820 requesting an event subscription, identification information of the second platform server 870 on which the second device 880 is registered, and the user who requested the second device list. The first user ID indicating a may be transferred to the authentication server 840 together with the token request.

단계(803)에서, 인증 서버(840)는 토큰 요청에 기초하여 토큰을 생성할 수 있다. 인증 서버(840)는 제1 사용자 ID에 대응하는 통합 사용자 ID를 암호화함으로써, 토큰을 생성할 수 있다. 이 때, 통합 사용자 ID는 시간에 따라 다르게 결정될 수 있고, 그래서 생성되는 시점에 따라 통합 사용자 ID는 다르게 결정될 수 있다. 통합 사용자 ID가 시간에 따라 다르게 결정됨으로써, 통합 사용자 ID가 암호화되어 생성되는 토큰도 마찬가지로 시간에 따라 다르게 결정될 수 있다.In step 803, the authentication server 840 may generate a token based on the token request. The authentication server 840 may generate a token by encrypting the integrated user ID corresponding to the first user ID. At this time, the unified user ID may be determined differently according to time, and thus, the unified user ID may be determined differently according to the time of creation. As the unified user ID is determined differently over time, a token generated by encrypting the unified user ID may likewise be determined differently over time.

단계(804)에서, 인증 서버(840)는 생성된 토큰을 제1 어댑터(830)로 전송할 수 있다.In step 804, the authentication server 840 may send the generated token to the first adapter 830.

단계(805)에서, 제1 어댑터(830)는 라우팅 서버(850)로 이벤트 구독 요청과 함께 토큰을 전송할 수 있다. 그리고, 라우팅 서버(850)는 이벤트 구독 요청과 토큰을 제2 어댑터(860)로 전달할 수 있다.In step 805, the first adapter 830 may send a token to the routing server 850 with the event subscription request. In addition, the routing server 850 may transmit the event subscription request and the token to the second adapter 860.

단계(806)에서, 제2 어댑터(860)는 수신한 토큰이 유효한지 여부에 대한 확인을 인증 서버(840)로 요청할 수 있다. 이 때, 제2 어댑터(860)는 수신한 토큰을 인증 서버(840)로 전송할 수 있다.In step 806, the second adapter 860 may request the authentication server 840 to confirm whether the received token is valid. At this time, the second adapter 860 may transmit the received token to the authentication server 840.

단계(807)에서, 인증 서버(840)는 제2 어댑터(860)로부터 수신한 토큰이 유효한지 여부를 확인할 수 있다. 해당 토큰이 유효한 경우, 인증 서버(840)는 단계(803)에서 토큰을 생성할 때 이용했던 암호화키에 기초하여 토큰으로부터 통합 사용자 ID를 추출할 수 있다.In step 807, the authentication server 840 may check whether the token received from the second adapter 860 is valid. If the token is valid, the authentication server 840 may extract the unified user ID from the token based on the encryption key used to generate the token in step 803.

단계(808)에서, 인증 서버(840)는 확인 결과를 제2 어댑터(860)에 통보할 수 있다. 만약 해당 토큰이 유효한 경우, 인증 서버(840)는 해당 토큰이 유효하다는 메시지와 통합 사용자 ID에 대응하는 제2 사용자 ID를 제2 어댑터(860)로 전송할 수 있다.In step 808, the authentication server 840 may notify the second adapter 860 of the verification result. If the token is valid, the authentication server 840 may transmit a message indicating that the token is valid and a second user ID corresponding to the integrated user ID to the second adapter 860.

단계(809)에서, 해당 토큰이 유효하다는 메시지를 수신한 제2 어댑터(860)는 이벤트 구독 요청을 제2 플랫폼 서버(870)로 전송할 수 있다. 이 때, 제2 어댑터(860)는 인증 서버(840)로부터 수신한 제2 사용자 ID와 함께 전송할 수 있다. 제2 어댑터(860)는 구독의 대상이 되는 제2 디바이스(880)를 나타내는 제2 디바이스 ID에서 제2 플랫폼 서버(870)의 ID를 제거한 나머지(예컨대, "DeviceID" 형식의 제2 디바이스 ID)를 제2 플랫폼 서버(870)로 전달할 수 있다.In operation 809, the second adapter 860 receiving the message that the token is valid may transmit an event subscription request to the second platform server 870. In this case, the second adapter 860 may transmit together with the second user ID received from the authentication server 840. The second adapter 860 removes the ID of the second platform server 870 from the second device ID indicating the second device 880 to be subscribed to (eg, a second device ID in the form of “DeviceID”). May be transferred to the second platform server 870.

그리고, 제2 플랫폼 서버(870)는 제2 사용자 ID에 등록되고 제2 디바이스 ID에 대응되는 제2 디바이스(880)를 식별하고, 식별된 제2 디바이스(880)에서 발생한 이벤트를 감지할 수 있다.In addition, the second platform server 870 may identify the second device 880 registered with the second user ID and correspond to the second device ID, and sense an event occurring in the identified second device 880. .

제2 디바이스(880)에서 이벤트가 발생된 경우, 단계(811)에서, 제2 디바이스(880)는 발생한 이벤트를 제2 플랫폼 서버(870)로 통지할 수 있다. 이 때, 이벤트 통지에는 제2 디바이스(880)를 나타내는 제2 디바이스 ID가 "DeviceID" 형식으로 포함될 수 있다.When an event occurs in the second device 880, in operation 811, the second device 880 may notify the second platform server 870 of the event. At this time, the event notification may include a second device ID indicating the second device 880 in a "DeviceID" format.

그리고, 제2 플랫폼 서버(870)는 이벤트를 제2 어댑터(860)로 통지할 수 있다. 그리고, 제2 어댑터(860)는 이벤트를 라우팅 서버(850)로 통지할 수 있다. 이 때, 제2 어댑터(860)는 이벤트 통지에 포함된 제2 디바이스(880)의 ID에 제2 플랫폼 서버(870)의 ID를 병합시켜, "PlatformID@DeviceID" 형식으로 제2 디바이스(880)의 ID를 전달할 수 있다.In addition, the second platform server 870 may notify the second adapter 860 of the event. The second adapter 860 may notify the routing server 850 of the event. At this time, the second adapter 860 merges the ID of the second platform server 870 with the ID of the second device 880 included in the event notification, and the second device 880 in the format "PlatformID @ DeviceID". You can pass the ID of.

그리고, 라우팅 서버(850)는 이벤트를 제1 어댑터(830)로 통지하고, 제1 어댑터(830)는 이벤트를 제1 플랫폼 서버(820)로 통지하며, 제1 플랫폼 서버(820)는 이벤트를 제1 디바이스(810)로 통지할 수 있다. 그래서, 제1 디바이스(810)는 제2 디바이스(880)에서 발생한 이벤트에 대한 정보를 사용자로 제공할 수 있다.The routing server 850 notifies the event to the first adapter 830, the first adapter 830 notifies the event to the first platform server 820, and the first platform server 820 notifies the event. The first device 810 may be notified. Thus, the first device 810 may provide the user with information about an event occurring in the second device 880.

도 8에 도시된 각 단계들에는 도 1 내지 도 6을 통하여 전술한 사항들이 그대로 적용되므로, 보다 상세한 설명은 생략한다.Since the above-described matters are applied to each step illustrated in FIG. 8 as it is through FIGS. 1 to 6, a detailed description thereof will be omitted.

도 9는 일실시예에 따라 연동 서버의 통신 방법을 나타낸 도면이다.9 is a diagram illustrating a communication method of a companion server according to one embodiment.

도 9를 참조하면, 연동 서버에 구비된 프로세서에 의해 수행되는 연동 서버의 통신 방법이 도시된다.Referring to FIG. 9, a communication method of a coordinated server performed by a processor included in a coordinated server is illustrated.

단계(910)에서, 연동 서버는 제1 플랫폼 서버로부터 제1 플랫폼 서버에 등록된 제1 사용자 식별정보를 포함하는 토큰 요청을 수신한다.In operation 910, the companion server receives a token request including first user identification information registered in the first platform server from the first platform server.

단계(920)에서, 연동 서버는 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성된 토큰을 제1 플랫폼 서버로 전송한다. 연동 서버는 시간에 따라 변경되는 통합 사용자 식별정보를 암호화함으로써, 토큰을 생성할 수 있다.In operation 920, the companion server transmits a token generated from the integrated user identification information corresponding to the first user identification information to the first platform server. The companion server may generate a token by encrypting the unified user identification information that changes over time.

단계(930)에서, 연동 서버는 제1 플랫폼 서버로부터 제2 플랫폼 서버로 전달된 토큰이 유효한지 여부에 대한 확인 요청을 제2 플랫폼 서버로부터 수신한다.In step 930, the interworking server receives a confirmation request from the second platform server as to whether the token passed from the first platform server to the second platform server is valid.

토큰이 유효한 경우, 단계(940)에서 연동 서버는 통합 사용자 식별정보에 대응하고 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 제2 플랫폼 서버로 전달한다.If the token is valid, in step 940, the companion server transmits the second user identification information corresponding to the integrated user identification information and registered in the second platform server to the second platform server.

여기서, 제1 사용자 식별정보 및 제2 사용자 식별정보 각각은 제1 플랫폼 서버 및 제2 플랫폼 서버에 가입한 동일한 사용자를 식별하는 정보일 수 있다. 또한, 통합 사용자 식별정보는 제1 사용자 식별정보 및 제2 사용자 식별정보에 맵핑될 수 있다.Here, each of the first user identification information and the second user identification information may be information for identifying the same user who has subscribed to the first platform server and the second platform server. In addition, the integrated user identification information may be mapped to the first user identification information and the second user identification information.

일실시예에 따른 연동 서버는 단계(910)를 수행하기에 앞서 하기의 동작들을 수행할 수 있다. 연동 서버는 제1 플랫폼 서버로부터 제1 사용자 식별정보를 포함하는 타 플랫폼 연동 요청을 수신할 수 있다. 그리고, 연동 서버는 제1 플랫폼 서버에 연동될 수 있는 플랫폼 리스트 및 통합 사용자 식별정보에 기초하여 생성된 트랜잭션 식별정보를 제1 플랫폼 서버로 전송할 수 있다. 그리고, 연동 서버는 플랫폼 리스트를 통해 제2 플랫폼 서버에 성공적으로 로그인한 경우, 제2 플랫폼 서버로부터 제2 사용자 식별정보 및 트랜잭션 식별정보를 수신할 수 있다. 그리고, 연동 서버는 트랜잭션 식별정보가 유효한 경우, 제2 사용자 식별정보를 통합 사용자 식별정보 및 제1 사용자 식별정보에 맵핑할 수 있다.The interworking server according to an embodiment may perform the following operations before performing step 910. The interworking server may receive another platform interworking request including the first user identification information from the first platform server. The interworking server may transmit the transaction identification information generated based on the platform list capable of interworking with the first platform server and the integrated user identification information to the first platform server. When the interworking server successfully logs in to the second platform server through the platform list, the companion server may receive second user identification information and transaction identification information from the second platform server. When the transaction identification information is valid, the companion server may map the second user identification information to the integrated user identification information and the first user identification information.

이 때, 연동 서버는 트랜잭션 식별정보에 대한 유효시간이 만료되기 전에 제2 플랫폼 서버로부터 트랜잭션 식별정보를 수신하여 트랜잭션 식별정보가 유효한 것으로 판단된 경우, 제2 사용자 식별정보를 통합 사용자 식별정보 및 제2 사용자 식별정보에 맵핑할 수 있다.At this time, when the interworking server receives the transaction identification information from the second platform server before the validity time for the transaction identification information expires, and determines that the transaction identification information is valid, the interworking server may include the second user identification information and the second user identification information. 2 Can be mapped to user identification information.

또한, 플랫폼 리스트는 제1 플랫폼 서버에 연동되는 플랫폼에 로그인할 수 있는 인터페이스를 제공하는 Federation URL을 포함할 수 있다.In addition, the platform list may include a Federation URL that provides an interface for logging in to the platform linked to the first platform server.

도 9에 도시된 각 단계들에는 도 1 내지 도 8을 통하여 전술한 사항들이 그대로 적용되므로, 보다 상세한 설명은 생략한다.Since the above-described matters are applied to each step shown in FIG. 9 through FIGS. 1 to 8, the detailed description thereof will be omitted.

도 10은 일실시예에 따라 제1 플랫폼 서버의 통신 방법을 나타낸 도면이다.10 illustrates a communication method of a first platform server according to an exemplary embodiment.

도 10을 참조하면, 제1 플랫폼 서버에 구비된 프로세서에 의해 수행되는 제1 플랫폼 서버의 통신 방법이 도시된다.Referring to FIG. 10, a communication method of a first platform server performed by a processor included in the first platform server is illustrated.

단계(1010)에서, 제1 플랫폼 서버는 연동 서버로 제1 플랫폼 서버에 등록된 제1 사용자 식별정보를 포함하는 토큰 요청을 전송한다.In operation 1010, the first platform server transmits a token request including first user identification information registered to the first platform server to the companion server.

단계(1020)에서, 제1 플랫폼 서버는 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성된 토큰을 연동 서버로부터 수신한다.In operation 1020, the first platform server receives a token generated from the integrated user identification information corresponding to the first user identification information from the companion server.

단계(1030)에서, 제1 플랫폼 서버는 제2 플랫폼 서버로 토큰 및 제2 플랫폼 서버에 등록된 디바이스에 대한 요청을 전송한다. 여기서, 디바이스에 대한 요청은 제2 플랫폼 서버에 등록된 디바이스 리스트, 디바이스에 대한 제어, 디바이스에 대한 이벤트 구독 중 적어도 하나에 대한 요청을 포함할 수 있다.In step 1030, the first platform server sends a request to the second platform server for a token and a device registered with the second platform server. Here, the request for the device may include a request for at least one of a device list registered in the second platform server, control of the device, and event subscription for the device.

단계(1040)에서, 제1 플랫폼 서버는 제2 플랫폼 서버로부터 디바이스에 대한 요청의 처리 결과를 수신한다.In step 1040, the first platform server receives a processing result of a request for a device from a second platform server.

이 때, 제2 플랫폼 서버는 제1 플랫폼 서버로부터 제2 플랫폼 서버로 전달된 토큰을 유효한 것으로 판단한 연동 서버로부터 통합 사용자 식별정보에 대응하고 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 수신한 경우, 디바이스에 대한 요청에 따른 처리 결과를 제1 플랫폼 서버로 전송한다.At this time, the second platform server corresponding to the integrated user identification information from the linkage server that determines that the token passed from the first platform server to the second platform server is valid and receives the second user identification information registered in the second platform server In the case of transmitting the processing result according to the request for the device to the first platform server.

일실시예에 따른 제1 플랫폼 서버는 단계(1010)를 수행하기에 앞서 아래의 동작들을 먼저 수행할 수 있다. 제1 플랫폼 서버는 연동 서버로 제1 사용자 식별정보를 포함하는 타 플랫폼 연동 요청을 전송할 수 있다. 그리고, 제1 플랫폼 서버는 연동 서버로부터 제1 플랫폼 서버와 연동될 수 있는 플랫폼 리스트 및 제1 사용자 식별정보에 대응하는 트랜잭션 식별정보를 수신할 수 있다. 그리고, 제1 플랫폼 서버는 플랫폼 리스트를 통해 제2 플랫폼 서버에 대한 로그인 정보 및 트랜잭션 식별정보를 전송할 수 있다.According to an embodiment, the first platform server may perform the following operations first before performing step 1010. The first platform server may transmit another platform interworking request including the first user identification information to the interworking server. The first platform server may receive a platform list capable of interworking with the first platform server and transaction identification information corresponding to the first user identification information from the companion server. The first platform server may transmit login information and transaction identification information for the second platform server through the platform list.

여기서, 로그인 정보에 포함된 제2 사용자 식별정보는 제2 플랫폼 서버에 성공적으로 로그인한 경우에 제2 플랫폼 서버로부터 연동 서버로 전송되어 통합 사용자 식별정보 및 제1 플랫폼 사용자 식별정보에 맵핑될 수 있다.Here, when the second user identification information included in the login information is successfully logged in to the second platform server, the second user identification information may be transmitted from the second platform server to the companion server and mapped to the integrated user identification information and the first platform user identification information. .

도 10에 도시된 각 단계들에는 도 1 내지 도 8을 통하여 전술한 사항들이 그대로 적용되므로, 보다 상세한 설명은 생략한다.Since the above-described matters are applied to each step illustrated in FIG. 10 as it is through FIGS. 1 to 8, a detailed description thereof will be omitted.

도 11은 일실시예에 따라 제2 플랫폼 서버의 통신 방법을 나타낸 도면이다.11 is a diagram illustrating a communication method of a second platform server according to one embodiment.

도 11을 참조하면, 제2 플랫폼 서버에 구비된 프로세서에 의해 수행되는 제2 플랫폼 서버의 통신 방법이 도시된다.Referring to FIG. 11, a communication method of a second platform server performed by a processor included in the second platform server is illustrated.

단계(1110)에서, 제2 플랫폼 서버는 제1 플랫폼 서버로부터 토큰 및 2 플랫폼 서버에 등록된 디바이스에 대한 요청을 수신한다. 이 때, 토큰은 제1 플랫폼 서버의 요청에 응답하여 제1 플랫폼 서버에 등록된 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성될 수 있다.In step 1110, the second platform server receives a request for a device registered with the token and a second platform server from the first platform server. In this case, the token may be generated from the integrated user identification information corresponding to the first user identification information registered in the first platform server in response to a request of the first platform server.

단계(1120)에서, 제2 플랫폼 서버는 연동 서버로 토큰이 유효한지 여부에 대한 확인 요청을 전송할 수 있다.In operation 1120, the second platform server may transmit a confirmation request regarding whether the token is valid to the companion server.

단계(1130)에서, 제2 플랫폼 서버는 토큰을 유효한 것으로 판단한 연동 서버로부터 통합 사용자 식별정보에 대응하고 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 수신할 수 있다.In operation 1130, the second platform server may receive second user identification information corresponding to the integrated user identification information and registered in the second platform server from the companion server that determines the token as valid.

일실시예에 따른 제2 플랫폼 서버는 단계(1110)를 수행하기에 앞서 아래의 동작들을 먼저 수행할 수 있다. 제2 플랫폼 서버는 타 플랫폼 연동을 요청한 제1 플랫폼 서버로부터 제2 플랫폼 서버에 대한 로그인 정보 및 통합 사용자 식별정보에 대응하는 트랜잭션 식별정보를 수신할 수 있다. 그리고, 제2 플랫폼 서버는 로그인 정보에 기초한 제2 플랫폼 서버에 성공적으로 로그인한 경우에 트랜잭션 식별정보 및 제2 사용자 식별정보를 연동 서버로 전송할 수 있다.According to an embodiment, the second platform server may perform the following operations first before performing step 1110. The second platform server may receive the transaction identification information corresponding to the login information and the integrated user identification information for the second platform server from the first platform server requesting the interworking of other platforms. When the second platform server successfully logs in to the second platform server based on the login information, the second platform server may transmit the transaction identification information and the second user identification information to the companion server.

여기서, 제2 사용자 식별정보는 제2 플랫폼 서버로부터 수신된 트랜잭션 식별정보가 유효한 것으로 판단한 연동 서버에 의해 통합 사용자 식별정보 및 제1 플랫폼 사용자 식별정보에 맵핑될 수 있다.Here, the second user identification information may be mapped to the integrated user identification information and the first platform user identification information by the companion server that determines that the transaction identification information received from the second platform server is valid.

도 11에 도시된 각 단계들에는 도 1 내지 도 8을 통하여 전술한 사항들이 그대로 적용되므로, 보다 상세한 설명은 생략한다.Each of the steps shown in FIG. 11 is the same as described above with reference to FIGS. 1 through 8, and thus a detailed description thereof will be omitted.

도 12는 일실시예에 따른 연동 서버를 나타낸 도면이다.12 illustrates a companion server according to an embodiment.

도 12을 참조하면, 연동 서버(1200)는 메모리(1210), 프로세서(1220)를 포함한다. 연동 서버(1200)는 홈 네트워크 시스템에 포함된 다른 장치와 통신을 수행하는 통신부(1230)를 더 포함할 수 있다.Referring to FIG. 12, the companion server 1200 includes a memory 1210 and a processor 1220. The companion server 1200 may further include a communication unit 1230 for communicating with other devices included in the home network system.

메모리(1210)는 프로세서(1220)에 의해 수행될 수 있는 통신 방법을 저장할 수 있다.The memory 1210 may store a communication method that may be performed by the processor 1220.

프로세서(1220)는 제1 플랫폼 서버로부터 제1 플랫폼 서버에 등록된 제1 사용자 식별정보를 포함하는 토큰 요청을 수신한다. 그리고, 프로세서(1220)는 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성된 토큰을 제1 플랫폼 서버로 전송한다. 그리고, 프로세서(1220)는 제1 플랫폼 서버로부터 제2 플랫폼 서버로 전달된 토큰이 유효한지 여부에 대한 확인 요청을 제2 플랫폼 서버로부터 수신한다. 그리고, 프로세서(1220)는 토큰이 유효한 경우에 통합 사용자 식별정보에 대응하고 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 제2 플랫폼 서버로 전달한다.The processor 1220 receives a token request including first user identification information registered with the first platform server from the first platform server. The processor 1220 transmits the token generated from the unified user identification information corresponding to the first user identification information to the first platform server. In addition, the processor 1220 receives a confirmation request from the second platform server as to whether the token transmitted from the first platform server to the second platform server is valid. When the token is valid, the processor 1220 transmits the second user identification information corresponding to the integrated user identification information and registered in the second platform server to the second platform server.

도 12에 도시된 각 구성요소들에는 도 1 내지 도 9를 통하여 전술한 사항들이 그대로 적용되므로, 보다 상세한 설명은 생략한다.Since the above-described matters are applied to each of the elements shown in FIG. 12 through FIGS. 1 to 9, detailed description thereof will be omitted.

이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The embodiments described above may be implemented as hardware components, software components, and / or combinations of hardware components and software components. For example, the devices, methods, and components described in the embodiments may include, for example, processors, controllers, arithmetic logic units (ALUs), digital signal processors, microcomputers, field programmable gates (FPGAs). It may be implemented using one or more general purpose or special purpose computers, such as an array, a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to the execution of the software. For convenience of explanation, one processing device may be described as being used, but one of ordinary skill in the art will appreciate that the processing device includes a plurality of processing elements and / or a plurality of types of processing elements. It can be seen that it may include. For example, the processing device may include a plurality of processors or one processor and one controller. In addition, other processing configurations are possible, such as parallel processors.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the above, and configure the processing device to operate as desired, or process it independently or collectively. You can command the device. Software and / or data may be any type of machine, component, physical device, virtual equipment, computer storage medium or device in order to be interpreted by or to provide instructions or data to the processing device. Or may be permanently or temporarily embodied in a signal wave to be transmitted. The software may be distributed over networked computer systems so that they may be stored or executed in a distributed manner. Software and data may be stored on one or more computer readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be embodied in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the media may be those specially designed and constructed for the purposes of the embodiments, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

실시예들에서 설명된 구성요소들은 하나 이상의 DSP (Digital Signal Processor), 프로세서 (Processor), 컨트롤러 (Controller), ASIC (Application Specific Integrated Circuit), FPGA (Field Programmable Gate Array)와 같은 프로그래머블 논리 소자 (Programmable Logic Element), 다른 전자 기기들 및 이것들의 조합 중 하나 이상을 포함하는 하드웨어 구성 요소들(hardware componests)에 의해 구현될 수 있다. 실시예들에서 설명된 기능들(functions) 또는 프로세스들(processes) 중 적어도 일부는 소프트웨어(software)에 의해 구현될 수 있고, 해당 소프트웨어는 기록 매체(recording medium)에 기록될 수 있다. 실시예들에서 설명된 구성요소들, 기능들 및 프로세스들은 하드웨어와 소프트웨어의 조합에 의해 구현될 수 있다.The components described in the embodiments are programmable logic devices such as one or more Digital Signal Processors (DSPs), Processors, Controllers, Controllers, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs). Logic Element), other electronic devices, and a combination of hardware components (hardware components) including one or more of these. At least some of the functions or processes described in the embodiments may be implemented by software, and the software may be recorded on a recording medium. The components, functions, and processes described in the embodiments may be implemented by a combination of hardware and software.

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described with reference to the accompanying drawings, those skilled in the art may apply various technical modifications and variations based on the above. For example, the described techniques may be performed in a different order than the described method, and / or components of the described systems, structures, devices, circuits, etc. may be combined or combined in a different form than the described method, or other components. Or even if replaced or substituted by equivalents, an appropriate result can be achieved.

100: 홈 네트워크 시스템
110: 제1 플랫폼 서버
111: 제1 디바이스
120: 제2 플랫폼 서버
121: 제2 디바이스
100: home network system
110: first platform server
111: first device
120: second platform server
121: second device

Claims (18)

서로 다른 플랫폼을 제공하는 제1 플랫폼 서버 및 제2 플랫폼 서버를 연동시키는 연동 서버의 통신 방법에 있어서,
상기 제1 플랫폼 서버로부터 상기 제1 플랫폼 서버에 등록된 제1 사용자 식별정보를 포함하는 토큰 요청을 수신하는 단계;
상기 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성된 토큰을 상기 제1 플랫폼 서버로 전송하는 단계;
상기 제1 플랫폼 서버로부터 상기 제2 플랫폼 서버로 전달된 토큰이 유효한지 여부에 대한 확인 요청을 상기 제2 플랫폼 서버로부터 수신하는 단계; 및
상기 연동 서버에 의해 토큰이 유효한 것으로 판단된 경우, 상기 통합 사용자 식별정보에 대응하고 상기 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 상기 제2 플랫폼 서버로 전달하는 단계
를 포함하고,
상기 통합 사용자 식별정보는
상기 연동 서버에 의해 생성되고, 상기 제1 플랫폼 서버 및 상기 제2 플랫폼 서버 간 상호작용에 관한 사용자 식별을 참조하는 통신 방법.
In the communication method of the interlocking server interlocking the first platform server and the second platform server providing different platforms,
Receiving a token request from the first platform server, the token request including first user identification information registered with the first platform server;
Transmitting a token generated from integrated user identification information corresponding to the first user identification information to the first platform server;
Receiving a confirmation request from the second platform server as to whether the token passed from the first platform server to the second platform server is valid; And
If it is determined by the companion server that the token is valid, transferring the second user identification information corresponding to the integrated user identification information and registered in the second platform server to the second platform server.
Including,
The integrated user identification information
A communication method generated by the interworking server and referring to a user identification regarding interaction between the first platform server and the second platform server.
제1항에 있어서,
상기 통합 사용자 식별정보로부터 생성된 토큰은,
시간에 따라 변경되는 통합 사용자 식별정보가 암호화됨으로써 생성되는, 통신 방법.
The method of claim 1,
The token generated from the integrated user identification information,
Wherein the unified user identification that changes over time is generated by encryption.
제1항에 있어서,
상기 제1 사용자 식별정보 및 상기 제2 사용자 식별정보 각각은,
상기 제1 플랫폼 서버 및 상기 제2 플랫폼 서버에 가입한 동일한 사용자를 식별하는 정보이고,
상기 통합 사용자 식별정보는,
상기 제1 사용자 식별정보 및 상기 제2 사용자 식별정보에 맵핑되는, 통신 방법.
The method of claim 1,
Each of the first user identification information and the second user identification information,
Information identifying the same user who has subscribed to the first platform server and the second platform server,
The integrated user identification information,
And mapped to the first user identification information and the second user identification information.
제1항에 있어서,
상기 제1 플랫폼 서버로부터 상기 제1 사용자 식별정보를 포함하는 타 플랫폼 연동 요청을 수신하는 단계;
상기 제1 플랫폼 서버에 연동될 수 있는 플랫폼 리스트 및 상기 통합 사용자 식별정보에 기초하여 생성된 트랜잭션 식별정보를 상기 제1 플랫폼 서버로 전송하는 단계;
상기 플랫폼 리스트를 통해 상기 제2 플랫폼 서버에 성공적으로 로그인한 경우, 상기 제2 플랫폼 서버로부터 상기 제2 사용자 식별정보 및 상기 트랜잭션 식별정보를 수신하는 단계; 및
상기 트랜잭션 식별정보가 상기 연동 서버에 의해 유효한 것으로 판단된 경우, 상기 제2 사용자 식별정보를 상기 통합 사용자 식별정보 및 상기 제1 사용자 식별정보에 맵핑하는 단계
를 더 포함하는, 통신 방법.
The method of claim 1,
Receiving another platform interworking request including the first user identification information from the first platform server;
Transmitting transaction identification information generated based on the platform list and the integrated user identification information that can be linked to the first platform server, to the first platform server;
Receiving the second user identification information and the transaction identification information from the second platform server when the user successfully logs in to the second platform server through the platform list; And
Mapping the second user identification information to the integrated user identification information and the first user identification information when it is determined that the transaction identification information is valid by the companion server.
Further comprising, a communication method.
제4항에 있어서,
상기 제2 사용자 식별정보를 상기 통합 사용자 식별정보 및 상기 제1 사용자 식별정보에 맵핑하는 단계는,
상기 트랜잭션 식별정보에 대한 유효시간이 만료되기 전에 상기 제2 플랫폼 서버로부터 상기 트랜잭션 식별정보를 수신하여 상기 트랜잭션 식별정보가 상기 연동 서버에 의해 유효한 것으로 판단된 경우, 상기 제2 사용자 식별정보를 상기 통합 사용자 식별정보 및 상기 제1 사용자 식별정보에 맵핑하는, 통신 방법.
The method of claim 4, wherein
The mapping of the second user identification information to the integrated user identification information and the first user identification information may include:
If the transaction identification information is received from the second platform server before the valid time for the transaction identification information expires, and the transaction identification information is determined to be valid by the companion server, the second user identification information is integrated. And mapping to user identification information and the first user identification information.
제4항에 있어서,
상기 플랫폼 리스트는,
상기 제1 플랫폼 서버에 연동되는 플랫폼에 로그인할 수 있는 인터페이스를 제공하는 Federation URL을 포함하는, 통신 방법.
The method of claim 4, wherein
The platform list is,
And a Federation URL that provides an interface for logging in to a platform linked to the first platform server.
연동 서버를 통해 서로 다른 플랫폼을 제공하는 제2 플랫폼 서버에 연동되는 제1 플랫폼 서버의 통신 방법에 있어서,
상기 연동 서버로 상기 제1 플랫폼 서버에 등록된 제1 사용자 식별정보를 포함하는 토큰 요청을 전송하는 단계;
상기 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성된 토큰을 상기 연동 서버로부터 수신하는 단계;
상기 제2 플랫폼 서버로 상기 토큰 및 상기 제2 플랫폼 서버에 등록된 디바이스에 대한 요청을 전송하는 단계; 및
상기 제2 플랫폼 서버로부터 상기 디바이스에 대한 요청의 처리 결과를 수신하는 단계
를 포함하고,
상기 제2 플랫폼 서버는,
상기 제1 플랫폼 서버로부터 상기 제2 플랫폼 서버로 전달된 토큰을 유효한 것으로 판단한 상기 연동 서버로부터 상기 통합 사용자 식별정보에 대응하고 상기 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 수신한 경우, 상기 디바이스에 대한 요청에 따른 처리 결과를 상기 제1 플랫폼 서버로 전송하고,
상기 통합 사용자 식별정보는
상기 연동 서버에 의해 생성되고, 상기 제1 플랫폼 서버 및 상기 제2 플랫폼 서버 간 상호작용에 관한 사용자 식별을 참조하는 통신 방법.
In the communication method of the first platform server linked to the second platform server providing a different platform through the interlocking server,
Transmitting a token request including first user identification information registered to the first platform server to the companion server;
Receiving a token generated from integrated user identification information corresponding to the first user identification information from the companion server;
Transmitting a request for the token and a device registered with the second platform server to the second platform server; And
Receiving a processing result of a request for the device from the second platform server
Including,
The second platform server,
When receiving the second user identification information corresponding to the integrated user identification information and registered in the second platform server from the companion server that determines that the token transmitted from the first platform server to the second platform server is valid, Send the processing result according to the request for the device to the first platform server,
The integrated user identification information
A communication method generated by the interworking server and referring to a user identification regarding interaction between the first platform server and the second platform server.
제7항에 있어서,
상기 디바이스에 대한 요청은,
상기 제2 플랫폼 서버에 등록된 디바이스 리스트, 상기 디바이스에 대한 제어, 상기 디바이스에 대한 이벤트 구독 중 적어도 하나에 대한 요청을 포함하는, 통신 방법.
The method of claim 7, wherein
The request for the device,
And requesting at least one of a device list registered with the second platform server, control of the device, and event subscription to the device.
제7항에 있어서,
상기 연동 서버로 상기 제1 사용자 식별정보를 포함하는 타 플랫폼 연동 요청을 전송하는 단계;
상기 연동 서버로부터 상기 제1 플랫폼 서버와 연동될 수 있는 플랫폼 리스트 및 상기 통합 사용자 식별정보에 기초하여 생성된 트랜잭션 식별정보를 수신하는 단계; 및
상기 플랫폼 리스트를 통해 상기 제2 플랫폼 서버에 대한 로그인 정보 및 상기 트랜잭션 식별정보를 전송하는 단계
를 더 포함하고,
상기 로그인 정보에 포함된 제2 사용자 식별정보는,
상기 제2 플랫폼 서버에 성공적으로 로그인한 경우, 상기 제2 플랫폼 서버로부터 상기 연동 서버로 전송되어 상기 통합 사용자 식별정보 및 상기 제1 사용자 식별정보에 맵핑되는, 통신 방법.
The method of claim 7, wherein
Transmitting another platform interworking request including the first user identification information to the interworking server;
Receiving transaction identification information generated based on the platform list capable of interworking with the first platform server and the integrated user identification information from the companion server; And
Transmitting login information and the transaction identification information for the second platform server through the platform list;
More,
The second user identification information included in the login information is
And upon successfully logging in to the second platform server, is transmitted from the second platform server to the companion server and mapped to the integrated user identification information and the first user identification information.
제7항에 있어서,
상기 통합 사용자 식별정보로부터 생성된 토큰은,
시간에 따라 변경되는 상기 통합 사용자 식별정보를 암호화함으로써 생성되는, 통신 방법.
The method of claim 7, wherein
The token generated from the integrated user identification information,
And encrypting the aggregated user identification that changes over time.
제7항에 있어서,
상기 제1 사용자 식별정보 및 상기 제2 사용자 식별정보 각각은,
상기 제1 플랫폼 서버 및 상기 제2 플랫폼 서버에 가입한 동일한 사용자를 식별하는 정보이고,
상기 통합 사용자 식별정보는,
상기 제1 사용자 식별정보 및 상기 제2 사용자 식별정보에 맵핑되는, 통신 방법.
The method of claim 7, wherein
Each of the first user identification information and the second user identification information,
Information identifying the same user who has subscribed to the first platform server and the second platform server,
The integrated user identification information,
And mapped to the first user identification information and the second user identification information.
연동 서버를 통해 서로 다른 플랫폼을 제공하는 제1 플랫폼 서버에 연동되는 제2 플랫폼 서버의 통신 방법에 있어서,
상기 제1 플랫폼 서버로부터 토큰 및 상기 제2 플랫폼 서버에 등록된 디바이스에 대한 요청을 수신하는 단계 -토큰은, 상기 제1 플랫폼 서버의 요청에 응답하여 상기 제1 플랫폼 서버에 등록된 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성됨 -;
상기 연동 서버로 상기 토큰이 유효한지 여부에 대한 확인 요청을 전송하는 단계;
상기 토큰을 유효한 것으로 판단한 상기 연동 서버로부터 상기 통합 사용자 식별정보에 대응하고 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 수신하는 단계
를 포함하고,
상기 통합 사용자 식별정보는
상기 연동 서버에 의해 생성되고, 상기 제1 플랫폼 서버 및 상기 제2 플랫폼 서버 간 상호작용에 관한 사용자 식별을 참조하는 통신 방법.
In the communication method of the second platform server linked to the first platform server providing a different platform through the interlocking server,
Receiving a token and a request for a device registered with the second platform server from the first platform server, wherein the token is a first user identification registered with the first platform server in response to a request of the first platform server; Generated from integrated user identification information corresponding to the information;
Transmitting a request for checking whether the token is valid to the companion server;
Receiving second user identification information corresponding to the integrated user identification information and registered in a second platform server from the companion server that determines the token as valid;
Including,
The integrated user identification information
A communication method generated by the interworking server and referring to a user identification regarding interaction between the first platform server and the second platform server.
제12항에 있어서,
상기 통합 사용자 식별정보로부터 생성된 토큰은,
시간에 따라 변경되는 통합 사용자 식별정보가 암호화됨으로써 생성되는, 통신 방법.
The method of claim 12,
The token generated from the integrated user identification information,
Wherein the unified user identification that changes over time is generated by encryption.
제12항에 있어서,
상기 디바이스에 대한 요청은,
상기 제2 플랫폼 서버에 등록된 디바이스 리스트, 상기 디바이스에 대한 제어, 상기 디바이스에 대한 이벤트 구독 중 적어도 하나에 대한 요청을 포함하는, 통신 방법.
The method of claim 12,
The request for the device,
And requesting at least one of a device list registered with the second platform server, control of the device, and event subscription to the device.
제12항에 있어서,
상기 디바이스에 대한 요청의 처리 결과를 상기 디바이스의 식별정보 및 상기 제2 플랫폼 서버의 식별정보와 함께 상기 제1 플랫폼 서버로 전송하는 단계
를 더 포함하는, 통신 방법.
The method of claim 12,
Transmitting the result of processing the request for the device to the first platform server together with the identification information of the device and the identification information of the second platform server.
Further comprising, a communication method.
제12항에 있어서,
타 플랫폼 연동을 요청한 상기 제1 플랫폼 서버로부터 상기 제2 플랫폼 서버에 대한 로그인 정보 및 상기 통합 사용자 식별정보에 대응하는 트랜잭션 식별정보를 수신하는 단계; 및
상기 로그인 정보에 기초한 제2 플랫폼 서버에 성공적으로 로그인한 경우, 상기 트랜잭션 식별정보 및 상기 제2 사용자 식별정보를 상기 연동 서버로 전송하는 단계
를 더 포함하고,
상기 제2 사용자 식별정보는,
상기 제2 플랫폼 서버로부터 수신된 상기 트랜잭션 식별정보가 유효한 것으로 판단한 상기 연동 서버에 의해 상기 통합 사용자 식별정보 및 상기 제1 사용자 식별정보에 맵핑되는, 통신 방법.
The method of claim 12,
Receiving login information about the second platform server and transaction identification information corresponding to the integrated user identification information from the first platform server that requests the other platform interworking; And
If the user successfully logs in to the second platform server based on the login information, transmitting the transaction identification information and the second user identification information to the companion server.
More,
The second user identification information,
And mapped to the integrated user identification information and the first user identification information by the companion server that determines that the transaction identification information received from the second platform server is valid.
제12항에 있어서,
상기 제1 사용자 식별정보 및 상기 제2 사용자 식별정보 각각은,
상기 제1 플랫폼 서버 및 상기 제2 플랫폼 서버에 가입한 동일한 사용자를 식별하는 정보이고,
상기 통합 사용자 식별정보는,
상기 제1 사용자 식별정보 및 상기 제2 사용자 식별정보에 맵핑되는, 통신 방법.
The method of claim 12,
Each of the first user identification information and the second user identification information,
Information identifying the same user who has subscribed to the first platform server and the second platform server,
The integrated user identification information,
And mapped to the first user identification information and the second user identification information.
서로 다른 플랫폼을 제공하는 제1 플랫폼 서버 및 제2 플랫폼 서버 간의 연동을 위한 연동 서버에 있어서,
통신 방법이 저장된 메모리; 및
상기 통신 방법을 수행하는 프로세서
를 포함하고,
상기 프로세서는,
상기 제1 플랫폼 서버로부터 상기 제1 플랫폼 서버에 등록된 제1 사용자 식별정보를 포함하는 토큰 요청을 수신하고,
상기 제1 사용자 식별정보에 대응하는 통합 사용자 식별정보로부터 생성된 토큰을 상기 제1 플랫폼 서버로 전송하고,
상기 제1 플랫폼 서버로부터 상기 제2 플랫폼 서버로 전달된 토큰이 유효한지 여부에 대한 확인 요청을 상기 제2 플랫폼 서버로부터 수신하며,
상기 토큰이 유효한 경우, 상기 통합 사용자 식별정보에 대응하고 상기 제2 플랫폼 서버에 등록된 제2 사용자 식별정보를 상기 제2 플랫폼 서버로 전달하고,
상기 통합 사용자 식별정보는
상기 연동 서버에 의해 생성되고, 상기 제1 플랫폼 서버 및 상기 제2 플랫폼 서버 간 상호작용에 관한 사용자 식별을 참조하는 연동 서버.
In the interworking server for interworking between the first platform server and the second platform server providing a different platform,
A memory in which a communication method is stored; And
Processor for performing the communication method
Including,
The processor,
Receiving a token request from the first platform server, the token request including first user identification information registered with the first platform server;
Transmitting a token generated from integrated user identification information corresponding to the first user identification information to the first platform server,
Receiving a confirmation request from the second platform server as to whether the token passed from the first platform server to the second platform server is valid,
When the token is valid, the second user identification information corresponding to the integrated user identification information and registered in the second platform server is transmitted to the second platform server.
The integrated user identification information
An interworking server generated by the interworking server and referring to a user identification regarding interaction between the first platform server and the second platform server.
KR1020160131915A 2015-11-19 2016-10-12 Method and apparatus for communicating between heterogeneous platforms KR101952925B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/353,953 US10476857B2 (en) 2015-11-19 2016-11-17 Method and apparatus for communication between heterogeneous platforms

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020150162859 2015-11-19
KR20150162859 2015-11-19

Publications (2)

Publication Number Publication Date
KR20170058847A KR20170058847A (en) 2017-05-29
KR101952925B1 true KR101952925B1 (en) 2019-02-28

Family

ID=59053668

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160131915A KR101952925B1 (en) 2015-11-19 2016-10-12 Method and apparatus for communicating between heterogeneous platforms

Country Status (1)

Country Link
KR (1) KR101952925B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110321176A1 (en) * 2010-06-28 2011-12-29 Canon Kabushiki Kaisha Authority transfer system, authority transfer method, information processing apparatus, and recording medium
US20140122198A1 (en) * 2012-10-29 2014-05-01 Trialpay, Inc. Affiliate network tracking for online-to-offline transactions

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110321176A1 (en) * 2010-06-28 2011-12-29 Canon Kabushiki Kaisha Authority transfer system, authority transfer method, information processing apparatus, and recording medium
US20140122198A1 (en) * 2012-10-29 2014-05-01 Trialpay, Inc. Affiliate network tracking for online-to-offline transactions

Also Published As

Publication number Publication date
KR20170058847A (en) 2017-05-29

Similar Documents

Publication Publication Date Title
US11128612B1 (en) Zero-touch provisioning of IoT devices with multi factor authentication
US11196742B2 (en) Method, system, and device for communicating data between devices to control one of the devices
US10911436B2 (en) Method and device for registering and certifying device in wireless communication system
US11336635B2 (en) Systems and methods for authenticating device through IoT cloud using hardware security module
US9386015B2 (en) Security model for industrial devices
US10915896B2 (en) Signature verification method, apparatus, and system
US20180219676A1 (en) Managing smart appliances using blockchain technology
WO2018161807A1 (en) User identity verification method and apparatus
US9571495B2 (en) Methods and systems for authorizing web service requests
US9548975B2 (en) Authentication method, authentication system, and service delivery server
US10476857B2 (en) Method and apparatus for communication between heterogeneous platforms
US9547756B2 (en) Registration of devices in a digital rights management environment
US20140245396A1 (en) System and method for integrating two-factor authentication in a device
JP2018525722A (en) Resource-driven dynamic approval framework
WO2018196686A1 (en) Service response method and middleware thereof
JP5727661B2 (en) Authentication method, authentication system, service providing server, and authentication server
CN113765655A (en) Access control method, device, equipment and storage medium
KR101836211B1 (en) Electronic device authentication manager device
KR102377045B1 (en) SYSTEMS AND METHODS FOR AUTHENTICATING IoT DEVICE THROUGH CLOUD USING HARDWARE SECURITY MODULE
JP2023120287A (en) Scalable certificate management system architecture
KR101952925B1 (en) Method and apparatus for communicating between heterogeneous platforms
JP2017183930A (en) Server management system, server device, server management method, and program
CN113489695A (en) Private cloud networking method, device and system, computer equipment and storage medium
KR20140121571A (en) System for intergrated authentication, method and apparatus for intergraged authentication thereof
US11245694B2 (en) User terminal apparatus and control method thereof

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