KR102112401B1 - 스마트 홈 서비스를 위한 IoT 장치 기능 공유 및 연동 방법 그리고 시스템 - Google Patents

스마트 홈 서비스를 위한 IoT 장치 기능 공유 및 연동 방법 그리고 시스템 Download PDF

Info

Publication number
KR102112401B1
KR102112401B1 KR1020180066707A KR20180066707A KR102112401B1 KR 102112401 B1 KR102112401 B1 KR 102112401B1 KR 1020180066707 A KR1020180066707 A KR 1020180066707A KR 20180066707 A KR20180066707 A KR 20180066707A KR 102112401 B1 KR102112401 B1 KR 102112401B1
Authority
KR
South Korea
Prior art keywords
iot device
iot
function
code
iot devices
Prior art date
Application number
KR1020180066707A
Other languages
English (en)
Other versions
KR20190143533A (ko
Inventor
이채석
김상태
정성관
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Priority to KR1020180066707A priority Critical patent/KR102112401B1/ko
Publication of KR20190143533A publication Critical patent/KR20190143533A/ko
Application granted granted Critical
Publication of KR102112401B1 publication Critical patent/KR102112401B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/30Managing network names, e.g. use of aliases or nicknames
    • H04L61/3015Name registration, generation or assignment
    • H04L61/3025Domain name generation or assignment

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)

Abstract

스마트 홈 서비스를 위한 IoT 장치 기능 공유 및 연동 방법 그리고 시스템이 개시된다. IoT(Internet Of Things) 기기의 기능 공유 및 연동 방법에 있어서, 복수의 IoT 기기에 해당하는 기능 및 인터페이스 정보를 DNS(Domain Name System) 서버에 등록 요청하는 단계, 특정 IoT 기기에 해당하는 기능 및 인터페이스 정보의 조회를 상기 DNS 서버로 요청하는 단계, 상기 요청에 대한 응답으로, 상기 DNS 서버로부터 NAPTR(Name Authority Pointer) 레코드를 수신하는 단계, 및 수신된 상기 NAPTR 레코드에 기초하여 형성된 매시업(mashup) 기능을 제공하는 단계를 포함할 수 있다.

Description

스마트 홈 서비스를 위한 IoT 장치 기능 공유 및 연동 방법 그리고 시스템{The method and system of Mashup Application Generation for Smart Home Service}
본 발명의 실시예들은 IOT 장치/기기의 기능을 공유하고 연동하는 기술에 관한 것으로서, 더욱 상세하게는 스마트 홈 서비스를 위해 가정 내에 위치하는 다양한 IoT 기기들의 기능(예컨대, 서비스)을 인공 지능(AI) 기반으로 공유 및 연동하는 기술에 관한 것이다.
최근 들어 스마트 홈 서비스에 대한 관심이 높아지고 있다. 아래의 비특허문헌 [1] Venturini F., Novak , M., "The Race to The Smart Home.," Report by ACCENTURE, 2017.에 제시된 스마트 홈 서비스는 댁내 가전 제품을 네트워크화하여 제어하는 기술로서, 사물인터넷(Internet of Things, IoT) 기술과 접목되고 있다. 사물인터넷은 4차 산업혁명의 핵심기술로서, 가정 내 가전 제품들(즉, 각각의 사물)을 네트워크로 연결하여 소통하도록 하는 것을 나타낼 수 있다.
일례로, 집에 설치된 다양한 액츄에이터(actuator)와 센서를 통해 여러 객체들(예컨대, 가전제품 제어, 조명, 냉난방 제어, 가스 원격 제어, 구매시스템, 예약시스템 등)과의 소통을 통해 원하는 서비스를 창출할 수 있다. 즉, IoT 기술과 접목된 스마트홈 서비스는 가스, 냉난방, 방법, 방재 등 다양한 IoT 기기들(즉, 스마트 기기들)을 네트워크로 연결하여 통제 가능한 서비스를 제공하는 기술을 나타낼 수 있다.
아래의 비특허 문헌 [2] Li , B., Yu , J., "Research and Application on the Smart Home Based on Component Technologies and Internet of Things.," Procedia Engineering, vol. 15, pp.2087-2092., 2011. 및 [3] Alaa , M., Zaidan , A.A ., Zaidan, B.B.,Talal , M., Kiah , M.L.M ., "A review of smart home applications based on Internet of Things.," Journal of Network and Computer Applications., vol. 97, pp. 48-65, 2017.과 같이, 스마트 홈 서비스는 보안, 의료, 데이터 엔터테인먼트, 비지니스 영역과 같이 다양한 분야로 이용 영역이 확대되고 있다.
그러나, 가정 내 IoT 기기를 통한 스마트홈 서비스를 개발하기 위해서는 아래와 같은 제약 사항이 존재한다.
첫째, 전 세계 각국의 IoT 제품을 생산하는 제조사 및 출시 제품의 종류 또한 매우 많다. 또한, 해당 제품들에 대한 정보획득 및 장치 제어를 위한 인터페이스가 서로 상이하여 각각의 제품에 연관된 정보를 사전에 알지 못한 경우 스마트 홈 환경을 위한 통합 매쉬업(mashup) 구성이 어려운 상황이다.
둘째, "SKT 스마트홈" 플랫폼과 같이 일부 각 제조사 기기 정보에 대한 포탈 서비스를 운영하는 경우가 있으나, 이는 특정 통신사와 제조사간 협의 및 협약 관계에 의존한다는 한계가 존재한다. 그리고, 서비스 인터페이스에 대한 정보를 특정 회사가 독점하게 되어 제조사간 협의 및 정보공유에 걸림돌이 된다.
[1] Venturini F., Novak, M., "The Race to The Smart Home.," Report by ACCENTURE, 2017. [2] Li, B., Yu, J., "Research and Application on the Smart Home Based on Component Technologies and Internet of Things.," Procedia Engineering, vol. 15, pp.2087-2092., 2011. [3] Alaa, M., Zaidan, A.A., Zaidan, B.B.,Talal, M., Kiah, M.L.M., "A review of smart home applications based on Internet of Things.," Journal of Network and Computer Applications., vol. 97, pp. 48-65, 2017.
본 발명은 가정 내 다양한 IoT 기기의 인터페이스 정보 및 기능(즉, 서비스)를 공유할 수 있는 인프라를 구축하여 스마트 홈 서비스를 제공하는 기술에 관한 것이다. 즉, IoT 기기 간 인터페이스 연계 문제를 해결하기 위해 분산형 서비스 레코드 정보 공유를 위한 표준 인터넷 인프라인 DNS(Domain Name Service)를 이용하여 IoT 기기 간 인터페이스 정보를 공유하고, 이를 기반으로 지능형 스마트 홈 서비스를 제공하는 기술에 관한 것이다.
IoT(Internet Of Things) 기기의 기능 공유 및 연동 방법에 있어서, 복수의 IoT 기기에 해당하는 기능 및 인터페이스 정보를 DNS(Domain Name System) 서버에 등록 요청하는 단계, 특정 IoT 기기에 해당하는 기능 및 인터페이스 정보의 조회를 상기 DNS 서버로 요청하는 단계, 상기 요청에 대한 응답으로, 상기 DNS 서버로부터 NAPTR(Name Authority Pointer) 레코드를 수신하는 단계, 및 수신된 상기 NAPTR 레코드에 기초하여 형성된 매시업(mashup) 기능을 제공하는 단계를 포함할 수 있다.
일측면에 따르면, 상기 DNS 서버에 등록 요청하는 단계는, IoT 기기에 부여된 제품 코드, IoT 기기와 연관된 인터페이스 및 IoT 기기의 기능 정보를 기반으로 NAPTR 레코드를 생성하여 상기 DNS 서버에 등록하도록 요청하는 단계를 포함할 수 있다.
다른 측면에 따르면, 상기 IoT 기기에 부여된 제품 코드는, GS1 표준 식별자에 해당하는 GTIN(Global Trade Item Number) 코드를 나타낼 수 있다.
또 다른 측면에 따르면, 상기 NAPTR 레코드에 포함된 엔트리(entry)는 해당 IoT 기기의 GTIN 코드의 역순으로 구성될 수 있다.
또 다른 측면에 따르면, 상기 GTIN 코드는 국가 코드, 회사코드, IoT 기기의 상품 코드, 및 체크 디지트(check digit)를 포함할 수 있다.
또 다른 측면에 따르면, 상기 기능 및 인터페이스 정보의 조회를 상기 DNS 서버로 요청하는 단계는, 상기 특정 IoT 기기의 GTIN 코드를 기반으로 FQDN(Fully Qualified Domain Name) 쿼리(query)를 생성하는 단계, 및 생성한 상기 FQDN 쿼리를 상기 DNS 서버로 전송하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 DNS 서버로부터 NAPTR(Name Authority Pointer) 레코드를 수신하는 단계는, 상기 DNS 서버에 저장된 복수의 NAPTR 레코드들을 대상으로, 전송된 상기 FQDN 쿼리에 포함된 GTIN 코드와 매칭하는 GTIN 코드를 포함하는 NATPR 레코드를 수신할 수 있다.
또 다른 측면에 따르면, 상기 GTIN 코드를 포함하는 NAPTR 레코드는, 상기 FQDN 쿼리에 해당하는 IoT 기기와 연관된 기능 및 인터페이스 정보를 더 포함할 수 있다.
또 다른 측면에 따르면, 상기 매시업 기능을 제공하는 단계는, 상기 DNS 서버로 요청된 복수의 FQDN 쿼리에 해당하는 NAPTR 레코드를 조합하여 새로운 기능 및 인터페이스 중 적어도 하나를 생성하는 단계를 포함할 수 있다.
IoT(Internet Of Things) 기기의 기능 공유 및 연동을 위한 시스템에 있어서, 복수의 IoT 기기에 해당하는 기능 및 인터페이스 정보를 DNS(Domain Name System) 서버에 등록을 요청하는 DNS 등록 제어부, 특정 IoT 기기에 해당하는 기능 및 인터페이스 정보의 조회를 상기 DNS 서버로 요청하는 DNS 조회 제어부, 상기 요청에 대한 응답으로, 상기 DNS 서버로부터 NAPTR(Name Authority Pointer) 레코드를 수신하는 정보 수신부, 및 수신된 상기 NAPTR 레코드에 기초하여 형성된 매시업(mashup) 기능을 제공하는 정보 제공부를 포함할 수 있다.
일측면에 따르면, 상기 DNS 등록 제어부는, IoT 기기에 부여된 제품 코드, IoT 기기와 연관된 인터페이스 및 IoT 기기의 기능 정보를 기반으로 NAPTR 레코드를 생성하여 DNS 서버에 등록하도록 요청할 수 있다.
다른 측면에 따르면, 상기 IoT 기기에 부여된 제품 코드는, GS1 표준 식별자에 해당하는 GTIN(Global Trade Item Number) 코드를 나타낼 수 있다.
또 다른 측면에 다르면, 상기 NAPTR 레코드에 포함된 엔트리(entry)는 해당 IoT 기기의 GTIN 코드의 역순으로 구성될 수 있다.
또 다른 측면에 다르면, 상기 GTIN 코드는 국가 코드, 회사코드, IoT 기기의 상품 코드, 및 체크 디지트(check digit)를 포함할 수 있다.
또 다른 측면에 다르면, 상기 DNS 조회 제어부는, 상기 특정 IoT 기기의 GTIN 코드를 기반으로 FQDN(Fully Qualified Domain Name) 쿼리(query)를 생성하고, 생성된 상기 FQDN 쿼리를 상기 DNS 서버로 전송할 수 있다.
또 다른 측면에 다르면, 상기 정보 수신부는, 상기 DNS 서버에 저장된 복수의 NAPTR 레코드들을 대상으로, 전송된 상기 FQDN 쿼리에 포함된 GTIN 코드와 매칭하는 GTIN 코드를 포함하는 NATPR 레코드를 수신할 수 있다.
또 다른 측면에 다르면, 상기 GTIN 코드를 포함하는 NAPTR 레코드는, 상기 FQDN 쿼리에 해당하는 IoT 기기와 연관된 기능 및 인터페이스 정보를 더 포함할 수 있다.
또 다른 측면에 다르면, 상기 정보 제공부는, 상기 DNS 서버로 요청된 복수의 FQDN 쿼리에 해당하는 NAPTR 레코드를 조합하여 새로운 기능 및 인터페이스 중 적어도 하나를 생성할 수 있다.
본 발명은 분산형 서비스 레코드 정보 공유를 위한 표준 인터넷 인프라인 DNS(Domain Name Service)를 이용하여 IoT 기기 간 인터페이스 정보를 공유하고, 이를 기반으로 지능형 스마트 홈 서비스를 제공함으로써, IoT 기기 간 인터페이스 연계 문제를 해결할 수 있다. 즉, 서로 다른 이종의 브랜드(brand)에 속하는 다양한 IoT 기기들을 대상으로 스마트홈 환경을 위한 통합 매쉬업(mashup)을 형성할 수 있다.
또한, 인공지능 스피커 등의 서비스와 결합하여, 사용자(즉, 사용자 단말)가 해당 IoT 기기의 제품설명서를 읽어 보거나 숙지하지 않더라도 편리하게 해당 IoT 제품을 이용 가능하도록 제공할 수 있다.
도 1은 본 발명의 일실시예에 있어서, IoT 기기의 기능 공유 및 연동을 위한 네트워크 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 있어서, IoT 기기의 기능 공유 및 연동을 위한 시스템의 내부 구성을 도시한 블록도이다.
도 3은 본 발명의 일실시예에 있어서, IoT 기기의 기능 공유 및 연동 방법을 도시한 흐름도이다.
도 4는 본 발명의 일실시예에 있어서, GTIN 코드 및 NAPTR 레코드의 예시를 도시한 도면이다.
도 5는 본 발명의 일실시예에 있어서, 마스터 IoT 기기와 서비스 서버가 인터넷으로 연결된 네트워크 구조를 도시한 도면이다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
본 실시예들은 가정 내 위치하는 서로 다른 브랜드(brand)에 속하는 다양한 IoT 기기들의 기능 및 인터페이스를 공유 및 연동하는 매쉬업(mashup)을 형성하는 기술에 관한 것으로서, 특히, 분산형 서비스 레코드 정보 공유를 위한 표준 인터넷 인프라인 DNS(Domain Name Service)를 이용하여 다양한 종류의 IoT 기기들의 기능 및 인터페이스 정보를 공유하고, 연동하여 스마트 홈 서비스(smart home service)를 제공하는 기술에 관한 것이다.
본 실시예들에서, IoT 기기의 "기능"은 해당 IoT 기기에서 제공하는 서비스 및 해당 서비스를 제공하기 위한 메뉴얼(즉, 제품 사용 설명서)를 포함할 수 있다. 예컨대, IoT 기기가 에어콘, 온풍기 등의 냉난방 기기인 경우, 해당 기기의 제품 사용 설명서 및 해당 기기에서 제공하는 온도 조절, 풍향 조절, 바람 세기 조절, 제습, Auto 모드, 건조 등의 다양한 서비스를 포함할 수 있다. 즉, 사용자가 해당 기기의 사용 설명서를 습득하거나 읽어보지 않더라도(예컨대, 사용 설명서를 잃어버려 확인이 어려운 경우에도), 온도를 1도 올려 등의 명령을 지시하면, 해당 IoT 기기의 설정 온도가 현재 온도를 기준으로 1도 상승하도록 제어하기 위한 기기 메뉴얼에 따른 기능을 나타낼 수 있다.
본 실시예들에서, 사용자 단말은 스마트폰(smartphone), 태블릿(tablet), 노트북 등과 같이 사용자가 소지하고 휴대하는 전자기기, 및 데스크탑 PC 등을 포함하는 전자 기기를 나타내는 것으로서, 유선 또는 무선 인터넷 등을 지원할 수 있다.
본 실시예들에서, IoT 기기의 기능 공유 및 연동을 위한 시스템은 인공 지능 비서로서 동작하는 IoT 기기에 구현될 수도 있고, 상기 비서로서 동작하는 IoT 기기와 네트워크 연결된 별도의 서비스 서버에 구현될 수도 있다. 이외에, 사용자 단말에 어플리케이션(application) 형태로 구현될 수도 있다.
도 1은 본 발명의 일실시예에 있어서, IoT 기기의 기능 공유 및 연동을 위한 네트워크 구조를 도시한 도면이다.
즉, 도 1은 DNS를 기반으로 가정 내 다양한 IoT 기기들을 연동하여 스마트 홈 서비스를 제공하는 네트워크 구조를 나타낼 수 있다. 도 1에서는 서비스 서버가 인공지능 비서로 동작하는 가정 내 IoT 기기로서 구현된 경우를 예로 들어 설명하기로 한다. 예컨대, 아마존 에코(알렉사), 구글 홈, 애플 홈팟(시리), SK 텔레콤의 누구, KT의 기가 지니 등의 인공지능 스피커 장치에 해당하는 IoT가 서비스 서버로 동작하는 경우를 예로 들어 설명하기로 한다.
도 1을 참고하면, 네트워크(100)는 서비스 서버(110), IoT 기기(120, 130), 적어도 하나의 DNS 서버(140), 및 제조사 서버(150)를 포함할 수 있다.
도 1을 참고하면, 서비스 서버(110)는 가정 내 다양한 종류의 IoT 기기들(120, 130)과 유/무선 네트워크로 연결될 수 있다. 그리고, 서비스 서버(110)는 IoT 기기들(120, 130)의 제어를 위한 명령을 스피커를 통해 사용자로부터 입력받을 수도 있고, 옥외에 위치하는 사용자가 가정 내 IoT 기기들(120, 130)을 제어 가능하도록 사용자 단말(미도시)가 무선 네트워크로 연결될 수도 있다. 예컨대, 사용자 단말에 설치된 어플리케이션을 통해 "10분 후에 집 도착" 등의 명령이 입력되면, 해당 명령에 연관하여 저장된 IoT 기기들의 기능들(예컨대, 조명 ON, 실내온도 24도가 되도록 에어콘 또는 난방기 ON, 공기 청정정기 ON, 보일러 온수 ON 등)이 구동하도록 해당 IoT 기기들을 제어할 수 있다.
서비스 서버(110)는 정보 송수신부, 기능 조합부 및 서비스 제공부를 포함할 수 있으며, 정보 송수신부는 설정된 DNS 서버로 FQDN 쿼리(Query)를 송신하고, FQDN 쿼리에 따른 기능정보가 포함된 NAPTR 레코드를 수신받는 역할을 수행할 수 있다. 예컨대, 정보 송수신부는 FQDN 쿼리(Query)에 단말의 GTIN 코드를 넣어 송신할 수 있다.
기능 조합부는 수신된 NAPTR 레코드 안에 포함된 서비스(service) 필드 정보를 이용하여 기능을 조합하여 새로운 기능을 만들어 생성할 수 있다.
일례로, 조명 기기(IoT 기기 1)와 조도센서 기기(IoT 기기 2)에 대하여 각각의 기능을 정보 송수신부를 통해 획득한 경우, 획득한 해당 기능이 각각 조명을 켜는 것과, 조도정보를 가져오는 것으로 가정하면, 기능 조합부는 조도정보가 일정값 이하일 때 조명을 켜는 새로운 기능을 생성할 수 있다.
기능 조합부는 획득한 기능 및 새로 생성한 기능들을 이용하여 사용자 조작에 의해 메뉴얼하게 조합을 할 수 도 있지만, 인공지능 기술을 이용하여 자동으로 조합을 수행 할 수도 있다. 이때, 인공지능 기술을 이용하여 자동으로 조합하는 경우, 사용자 맞춤형 또는 상황인식 등과 같은 새로운 정보를 함께 요구할 수 있다.
기능 조합부는 조합된 기능을 서비스 제공부로 전달할 수 있다. 서비스 제공부는 언제, 어떤 상황에 조합된 서비스를 제공할 것인지 여부를 결정(Triggering)하거나, 예약된 이벤트에 대해서 조합된 서비스를 제공 할 수 있다.
서비스 제공부는 IoT 기기간의 연결을 통해 물리적인 IP 정보를 관리할 수 있다.
이때, 서비스 서버(110)는 서로 다른 브랜드에 속하는 다양한 종류의 IoT 기기들을 연동하여 사용자가 원하는 기능들을 제공하기 위해, 즉, 사용자가 미리 등록한 지시 명령과 연관된 서비스 기능들을 제공하기 위해, DNS 서버(140)를 이용할 수 있다.
DNS 서버(140)는 인터넷을 통해 서비스 서버(110)와 연결될 수 있으며, 가정 내 IoT 기기들(120, 130) 각각에 해당하는 제조사 서버(150)와 네트워크로 연결될 수 있다. 예컨대, IoT 기기(120)와 IoT 기기(130)의 제조사가 서로 상이한 경우, 서비스 서버(110)는 IoT 기기(120)에 해당하는 제조사 서버, IoT 기기(130)에 해당하는 제조사 서버 각각과 네트워크 연결될 수 있다. 그리고, DNS 서버(140)는 사용자가 제품 설명서롤 모르더라도, 즉, 읽어보지 않더라도 해당 IoT 기기를 이용할 수 있도록 하기 위해, 해당 IoT 기기의 제조사 서버(150)에서 제공하는 해당 IoT 기기의 제품설명서 등의 기능 및 인터페이스 정보를 운 서버(140)에 등록할 수 있다.
예를 들어, 서비스 서버(110)는 특정 IoT 기기에 부여된 고유의 제품 코드 정보(예컨대, GTIN 코드)를 스피커를 통해 사용자의 음성을 기반으로 입력받거나 또는 사용자 단말을 통해 입력받아 DNS 서버(140)에 등록할 수 있다. 그러면, DNS 서버(140)는 서비스 서버(110)로부터 제공받은 특정 IoT 기기의 제품 코드 정보(예컨대, GTIN 코드)에 기초하여 해당 제조사 서버(150)로부터 해당 IoT 기기의 기능 정보(사용 설명서 등)와 인터페이스 정보를 제공받아 해당 IoT 기기의 제품 코드 정보, 서비스 서버의 식별자 정보(또는 사용자 ID 등의 사용자 식별자 정보)와 연관하여 등록할 수 있다.
이처럼, 가정 내 IoT 기기들(120, 130)의 기능 정보 및 인터페이스 정보가 DNS 서버(140)에 등록된 이후, 서비스 서버(110)에서 특정 IoT 기기의 제품 코드와 연관된 기능(즉, 서비스)이나 인터페이스 정보의 조회가 DNS 서버(140)로 요청되면, DNS 서버(140)는 요청된 기능이나 인터페이스 정보를 조회하여 서비스 서버(110)로 제공할 수 있다.
제조사 서버(150)는 정보 송수신부 및 상품코드 발급부를 포함할 수 있다. 제조사 서버(150)의 정보 송수신부는 서비스 서버(110)의 정보 송수신부와 동일한 역할을 수행하며, 제조사에서 새로 생산한 IoT 기기에 대한 기존 기능을 조회하거나, 새로 추가를 진행하는 역할을 수행할 수 있다.
제조사 서버(150)의 상품코드 발급부는 발급받은 GS1 코드를 이용하여 새로운 IoT 기기에 대한 코드를 새로이 생성하여 부여할 수 있다.
도 2는 본 발명의 일실시예에 있어서, IoT 기기의 기능 공유 및 연동을 위한 시스템의 내부 구성을 도시한 블록도이고, 도 3은 본 발명의 일실시예에 있어서, IoT 기기의 기능 공유 및 연동 방법을 도시한 흐름도이다.
본 실시예에 따른 시스템(200)은 프로세서(210), 버스(220), 네트워크 인터페이스(230), 메모리(240), 및 데이터베이스(250)를 포함할 수 있다. 메모리(240)는 운영체제(241) 및 서비스 제공 루틴(242)를 포함할 수 있다. 본 실시예들에서 시스템(200)은 도 2의 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 시스템(200)은 디스플레이나 트랜시버(transceiver)와 같은 다른 구성요소들을 포함할 수도 있다.
메모리(240)는 컴퓨터에서 판독 가능한 기록 매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 또한, 메모리(240)에는 운영체제(241)와 서비스 제공 루틴(242)을 위한 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 드라이브 메커니즘(drive mechanism, 미도시)을 이용하여 메모리(240)와는 별도의 컴퓨터에서 판독 가능한 기록 매체로부터 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록 매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록 매체(미도시)를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록 매체가 아닌 네트워크 인터페이스(230)를 통해 메모리(240)에 로딩될 수도 있다.
버스(220)는 시스템(200)의 구성요소들 간의 통신 및 데이터 전송을 가능하게 할 수 있다. 버스(220)는 고속 시리얼 버스(high-speed serial bus), 병렬 버스(parallel bus), SAN(Storage Area Network) 및/또는 다른 적절한 통신 기술을 이용하여 구성될 수 있다.
네트워크 인터페이스(230)는 시스템(200)을 컴퓨터 네트워크에 연결하기 위한 컴퓨터 하드웨어 구성요소일 수 있다. 네트워크 인터페이스(230)는 시스템(200)을 무선 또는 유선 커넥션을 통해 컴퓨터 네트워크에 연결시킬 수 있다.
데이터베이스(250)는 사용자가 등록한 사용자에 특화된 다양한 명령들 및 각 명령에 해당하는 적어도 하나의 IoT 기기의 제품 코드를 연관하여 저장할 수 있다. 데이터베이스(250)는 시스템(200) 내에 포함될 수도 있고, 시스템(200)과는 별도의 다른 시스템 상에 구축된 외부 데이터베이스로서 존재할 수도 있다. 데이터베이스(250)가 외부에 존재하는 경우, 다양한 사용자의 식별자 정보(즉, 사용자 ID)와 해당 사용자가 등록한 명령 및 해당 명령과 관련된 IoT 기기들을 연관하여 저장 및 유지할 수 있다. 그리고, 해당 사용자가 보유한 사용자 단말로 명령에 대한 처리 결과를 제공하기 위해 사용자 단말관련 정보(예컨대, 전화번호, 해당 단말에 설치된 어플리케이션 식별 정보 등)을 연관하여 저장하고 있을 수 있다. 시스템(200)은 IoT 기기들의 기능 및 인터페이스 정보를 공유하거나 연동하여 사용자 단말로 제공하고, 해당 IoT 기기들을 제어하도록 플랫폼(platform) 형태로 구현될 수도 있고, IoT 기기들의 기능 및 인터페이스 정보를 공유하거나 연동하기 위한 명령을 입력받고, 입력된 명령에 대한 처리 결과를 제공하도록 사용자 단말 상에 어플리케이션(application, 즉, 서비스 앱) 형태로 구현될 수도 있다.
프로세서(210)는 기본적인 산술, 로직 및 시스템(200)의 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(240) 또는 네트워크 인터페이스(230)에 의해, 그리고 버스(220)를 통해 프로세서(210)로 제공될 수 있다. 프로세서(210)는 DNS 등록 제어부(211), DNS 조회 제어부(212), 정보 수신부(213) 및 정보 제공부(214)를 위한 프로그램 코드를 실행하도록 구성될 수 있다. 이러한 프로그램 코드는 메모리(240)와 같은 기록 장치에 저장될 수 있다.
DNS 등록 제어부(211), DNS 조회 제어부(212), 정보 수신부(213) 및 정보 제공부(214)는 도 3의 단계들(310 내지 340 단계)을 수행하기 위해 구성될 수 있다. 여기서, DNS 등록 제어부(211), DNS 조회 제어부(212) 및 정보 수신부(213)는 도 1의 서비스 서버(110)의 정보 송수신부에 포함되고, 도 1의 서비스 서버(110)의 기능 조합부 및 서비스 제공부는 정보 제공부(214)에 포함될 수 있다.
310 단계에서, DNS 등록 제어부(211)는 복수의 IoT 기기에 해당하는 기능 및 인터페이스 정보를 DNS 서버에 등록 요청할 수 있다. 예를 들어, 등록 제어부(211)는 최초에 DNS 서버에 등록을 요청하는 경우, 가정 내 보유하고 있는 복수의 IoT 기기와 관련된 기능 및 인터페이스 정보의 등록을 DNS 서버에 요청할 수 있다. 이후, 등록하고자 하는 신규 IoT 기기가 존재하면, 적어도 하나의 신규 IoT 기기의 기능 및 인터페이스 정보의 등록을 DNS 서버에 요청할 수 있다.
일례로, DNS 등록 제어부(211)는 IoT 기기에 부여된 제품 코드(예컨대, GTIN 코드)를 포함하는 등록 요청 정보를 DNS 서버로 전송할 수 있다. 즉, 등록 제어부(211)는 IoT 기기에 부여된 제품 코드(예컨대, GTIN 코드)를 기반으로, GTIN(Global Trade Item Number) 코드, IoT 기기와 연관된 인터페이스 및 기능 정보를 포함하는 NAPTR(Name Authority Pointer) 레코드를 생성하여 해당 IoT 기기와 연관하여 해당 IoT 기기의 기능 및 인터페이스 정보가 DNS 서버에 등록하기 위해, 상기 등록 요청 정보를 전송할 수 있다. 예컨대, 등록 요청 정보는 FQDN(Fully Qualified Domain Name) 쿼리(query) 형태로 전송될 수 있다. 여기서, 제품 코드는 GTIN 코드를 나타낼 수 있으며, GTIN 코드는 GS1 ONS 표준에 따르는 GS1 표준 식별자에 해당할 수 있다.
320 단계에서, DNS 조회 제어부(212)는 특정 IoT 기기에 해당하는 기능 및 인터페이스 정보의 조회를 DNS 서버로 요청할 수 있다.
이례로, 인공지능 비서로서 동작하는 시스템(200)의 스피커를 통해 "취침 모드로 동작해줘" 등의 미리 등록된 명령이 입력되면, DNS 조회 제어부(212)는 해당 명령과 연관하여 미리 등록된 IoT 기기들의 제품 코드를 기반으로 생성한 FQDN 쿼리를 DNS 서버로 전송할 수 있다. 예컨대, 방 1, 방 2, 방3, 거실의 조명, 방범 센서, 창문 센서, 스마트 가스 레인지, 도어락 등과 같이, 취침 모드와 연관된 IoT 기기들의 제품 코드를 기반으로 생성한 각각의 FQDN 쿼리를 DNS 서버로 전송함으로써, 해당 IoT 기기의 조회를 요청할 수 있다. 이때, 조명, 방범 센서, 창문 센서, 스마트 가스레인지, 도어락(door lock) 등과 같이, 취침 모드와 연관된 IoT 기기들이 복수개(예컨대, 6개)인 경우, IoT 기기 별로 FQDN 쿼리(즉, 6개의 FQDN) 쿼리를 생성하여 DNS 서버로 전송함으로써, 해당 IoT 기기의 기능 정보 및 인터페이스 정보의 조회를 요청할 수 있다.
330 단계에서, 정보 수신부(213)는 DNS 서버로 전송한 기능 및 인터페이스 정보의 조회 요청에 대한 응답으로, DNS 서버로부터 NAPTR 레코드를 수신할 수 있다. 예컨대, 상기 요청 시 특정 명령과 연관된 복수개의 IoT 기기 별 FQDN 쿼리가 DNS 서버로 전송된 경우, 정보 수신부(213)는 전송된 FQDN 쿼리 각각에 해당하는 NAPTR 레코드를 수신할 수 있다. 즉, 6개의 쿼리가 전송된 경우, 대응하는 6개의 NAPTR 레코드를 수신할 수 있다.
340 단계에서, 정보 제공부(214)는 수신된 NAPTR 레코드에 기초하여 형성된 매시업(mashup) 기능을 제공할 수 있다.
일례로, 어느 하나의 특정 IoT 기기의 제어를 위한 명령인 경우, 정보 제공부(214)는 수신된 NAPTR 레코드에 기초하여 해당 IoT 기기의 기능을 제어할 수 있다. 예컨대, 세탁기 또는 건조기 동작 ON을 위한 명령인 경우, 세탁기 또는 건조기의 사용설명서를 사용자가 모르더라도, 정보 제공부(214)가 해당 IoT 기기(즉, 세탁기 또는 건조기)의 작동을 ON 시키는 제어 명령을 해당 기기로 전달하여 구동시킬 수 있다. 그리고, 전달에 대한 응답으로서, 해당 IoT 기기로부터 명령 처리 확인을 수신하면, 처리 확인에 기초하여 처리 결과(예컨대, 세탁기 또는 건조기 동작 ON시킴, 처리 완료 예상 시간 2시간 후 등)를 사용자 단말에 설치된 어플리케이션을 통해 사용자 단말에게 제공할 수 있다.
다른 예로, 특정 명령과 관련하여 IoT 기기가 복수개인 경우, 정보 제공부(214)는 수신된 복수개의 IoT 기기 각각에 해당하는 NAPTR 레코드를 기반으로 매시업 기능을 형성하여 해당 IoT 기기들의 동작을 제어할 수 있다. 즉, NAPTR 레코드들을 조합하여 새로운 기능 및 인터페이스 정보를 생성하고, 생성된 새로운 기능 및 인터페이스 정보를 기반으로 해당 IoT 기기들의 동작을 제어하는 한 이후, 처리 결과를 사용자 단말로 제공할 수 있다. 예들 들어, 조명 기기와 조도 센서 기기가 있다고 가정, 조명기기와 조도센서는 IoT 기기라고 가정, 서비스 서버(110)는 사전 접속 과정을 통해 조명기기와 조도센서의 IP 주소를 알고 있다고 가정할 수 있다. 실제 RESTful API는 HTTP 형태로 이루어지는데, 이는 제조사 서버에 해당하는 영역이므로 구체적인 형식은 여기서 정의하지 않기로 한다. 그러면, 조명기기의 NAPTR은 코드 | 1 | 1 | u | /light/on | 조명을 켠다. |를 포함하고, 조도센서의 NAPTR은 코드 | 95 | 1 | u | /proximity/get | 조도 값을 가져온다. |를 포함할 수 있다. 상기 두 개의 IoT 기기에 대한 NAPTR을 획득하면, 단순 조합을 할 수 있는 근거가 되고, 메뉴얼하게 사용자가 조합을 입력한다면 조도값이 50이하 일 때, 조명을 켜라 라고 기능을 조합할 수 있으며 이를 통해 정보 제공부(214, 즉, 서비스 서버의 서비스 제공부)에서 조합된 기능에 해당하는 서비스를 제공 할 수 있다. 메뉴얼하게 사용자 조합하는 일련의 프로세스를 인공지능이 학습하는 경우, order 필드, service 필드, regexp 필드를 통해 새로운 기능을 조합하거나, 대화를 만들어 자동으로 소개 할 수 있는 근거로 이용될 수 있다. 여기서, order 필드, service 필드, regexp 필드에 대해서는 도 4를 참조하여 후술하기로 한다. 이처럼, 새로운 기능을 조합한 경우, 정보 제공부(214, 즉, 서비스 서버의 기능 조합부)는 상기 두 개의 IoT 기기 각각에 해당하는 NAPTR을 묶어 새로운 기능을 생성하여 저장할 수 있다. 이때, 여러 개가 묶일 수도 있다. 예컨대, 서비스1 {'조합': {조명기기NAPTR 코드, 조도센서 NAPTR 코드}, '조건':{조도값이 50이하 일 때 조명 On}}과 같이 정의 할 수 있으며, 서비스 서버를 구성하는 사업자 별로 그 방법이 상이 할 수 있다.
상기 NAPTR 레코드들을 조합하여 새로운 기능 및 인터페이스 정보를 생성하고, 생성된 새로운 기능 및 인터페이스 정보를 기반으로 해당 IoT 기기들의 동작을 제어하는 다른 예로서, 취침 모드 명령과 관련된 IoT 기기들의 NAPTR 레코드를 조합하여, 즉, 방 1, 방 2, 방 3, 거실의 조명, 방범 센서, 창문 센서, 스마트 가스 레인지, 도어락 각각에 해당하는 NAPTR 레코드를 조합하여 새로운 기능 및 인터페이스 정보를 생성할 수 있다. 그러면, 새로운 기능 및 인터페이스 정보를 기반으로 방 1, 방 2, 방 3, 거실의 조명은 OFF, 방범 센서는 ON, 창문 센서는 ON, 스마트 가스 레인지는 락(LOCK) 설정, 도어락은 잠금(LOCK) 확인 등의 동작을 처리하고, 정보 제공부(214)는 처리 결과를 사용자 단말로 제공할 수 있다. 여기서, NAPTR 레코드 및 제품 코드의 구조는 도 4에서 후술하기로 한다.
도 4는 본 발명의 일실시예에 있어서, GTIN 코드 및 NAPTR 레코드의 예시를 도시한 도면이다.
도 4를 참고하면, 제품 코드는 GS1 ONS 표준을 따르는 GS1 표준 식별자로서, GS1 표준 식별자는 해당 IoT 기기의 정보를 기록하는 GTIN 코드를 나타낼 수 있다. 즉, 제품 코드는 GTIN 코드를 나타내며, GTIN 코드(410)는 국가 코드(411), 회사 코드(즉, 제조사 코드, 412), 상품 코드(즉, 해당 IoT 기기에 부여된 제품 시리얼 넘버 413), 체크 비트(414)를 포함할 수 있다.
예를 들어, 삼성전자 SM-N900SZKESKO 제품의 경우, GS1 GTIN 코드는 국가 코드 8800, 회사코드 608580, 상품코드 241, 체크비트 4를 포함하도록 구성될 수 있다.
시스템(200)인 서비스 서버에서 DNS 서버로 해당 IoT 기기의 등록을 요청 시, 등록 요청 정보는 상기 GTIN 코드를 포함할 수 있다. 그러면, DNS 서버는 GTIN 코드를 기반으로 해당 제조사 서버로부터 인터페이스 정보 및 기능 정보(즉, 제품 사용설명서 등의 메뉴얼을 포함하는 서비스 정보)를 제공받을 수 있다. 이미 저장된 해당 제품의 메뉴얼이 DB에 존재하는 경우, 해동 제조사 서버의 웹페이지에 접속하여 별도로 다운받지 않고 이미 등록된 기능 정보 및 인터페이스 정보를 이용할 수도 있다. 그러면, 해당 IoT 기기의 기능 정보 및 인터페이스 정보, GTIN 코드를 기반으로 해당 IoT 기기에 해당하는 NAPTR 레코드를 생성하고, 생성된 NAPTR 레코드를 DNS 서버에 저장할 수 있다. 이처럼, NAPTR 레코드의 생성 및 저장을 통해 해당 IoT 기기가 DNS 서버에 등록될 수 있다.
이때, NATPTR 레코드(420)는 GTIN 코드를 포함하되, GTIN 코드의 역순을 기반으로 생성될 수 있다. NAPTR 레코드(420)는 엔트리(ENTRY, 421), order(422), pref(423), flags(424), service(425), regexp(426) 및 replacement(427)를 포함할 수 있다. 여기서, order(422)는 IoT 기기의 성격에 따른 분류를 나타낼 수 있다. 예를 들어 조명은 1, 냉장고는 2, 세탁기는 3, 보일러는 4, 등으로 미리 정의될 수 있다. Pref(423)는 기능의 순번을 나타낼 수 있다. 1개의 IoT 기기는 여러 개의 기능을 가질 수 있다. Flags(424)는 기능의 형식을 나타내는 것으로서, 예컨대, Uri 형식인 경우, 해당 필드에 'u'가 삽입이 되고, Text 형식인 경우 해당 필드에 't'가 삽입될 수 있다. Service(425)는 기능을 나타내는 것으로서, 예를 들어, Flags(424)에 u가 포함된 경우, 즉, Uri형식이었다면, Service(425)는 '/light/on'이 삽입될 수 있다. Regexp(426)는 기능에 대한 설명을 포함할 수 있으며, 추후 사용자 또는 인공지능이 해당 기능에 대한 이해를 할 수 있는 근거자료로 이용될 수 있다. Replacement(427)는 미사용 필드에 해당할 수 있다.
일례로, 엔트리(421)는 GTIN 코드 8806085802414의 역순으로 구성될 수 있다. 즉, 엔트리(421)는 4142085806088을 포함할 수 있다. Service(425) 필드는 해당 IoT 기기의 기능 정보 또는 인터페이스 정보를 포함할 수 있다.
이처럼, NAPTR 레코드가 등록되면, 이후, 적어도 하나의 IoT 기기와 연관된 기능 정보 및 인터페이스의 정보 조회를 DNS 서버로 요청할 수 있다. 이때, 조회 요청은 FQDN 쿼리 형태로 요청될 수 있으며, FQDN 쿼리는 해당 IoT 기기의 GTIN 코드를 포함할 수 있다. 예컨대, FQDN 쿼리는 4.1.4.2.0.8.5.8.0.6.0.8.8.gtin.gs1.id.onsepc.com을 포함하는 형태로 생성될 수 있다. 그러면, DNS 서버는 수신된 FQDN 쿼리에 포함된 GTIN 코드를 기반으로, 자신이 저장하고 있는 복수의 NAPTR 레코드들 중 상기 GTIN 코드에 매칭하는 GTIN 코드를 포함하는 NAPTR 레코드를 결정할 수 있다. 이때, 매칭하는 GTIN 코드를 선별하기 위해, 수신된 GTIN 코드를 역순으로 정렬하고, 역순으로 정렬된 GTIN 코드를 기반으로 NAPTR 레코드를 결정할 수 있다. 이어, 조회 요청에 대한 응답으로, 결정된 NATPR 레코드를 서비스 서버인 시스템(200)으로 전송할 수 있다. 이때, FQDN 쿼리가 여러개 요청된 경우, FQDN 쿼리 별로 해당하는 NAPTR 레코드를 결정하여 시스템(200)으로 전송할 수 있다. 그러면, 시스템(200)은 수신된 NAPTR 레코드를 기반으로 해당 IoT 기기의 동작을 제어할 수도 있고, 여러개의 NAPTR 레코드가 수신된 경우, NAPTR 레코드를 조합하여 새로운 기능(예컨대, 서비스)를 사용자 단말로 제공할 수 있다.
이상에서 설명한 바와 같이, 인공지능 비서로 동작하는 마스터 IoT 기기가 시스템(200)인 서비스 서버로 구현될 수도 있고, 마스터 IoT 기기와 네트워크로 연결되어, 시스템(200)인 서비스 서버가 별도로 구현될 수도 있다. 이하에서는 도 5를 참고하여, 시스템(200)인 서비스 서버와 마스터 IoT 기기가 네트워크로 연결하여 스마트 홈 서비스를 제공하는 경우를 예로 들어 설명하기로 한다.
도 5는 본 발명의 일실시예에 있어서, 마스터 IoT 기기와 서비스 서버가 인터넷으로 연결된 네트워크 구조를 도시한 도면이다.
도 5를 참고하면, 스마트 홈 네트워크(500)는 가정 내 위치하는 복수의 IoT 기기들(510, 520, 530), 사용자 단말(540), 인공지능 비서 역할을 하는 마스터 IoT 기기(550), 인터넷을 통해 마스터 IoT 기기(550)와 연결된 서비스 서버(즉, 인공지능 비서에 해당하는 마스터 IoT 기기의 서버, 560), 및 DNS 서버(570)를 포함할 수 있다.
인공지능 비서로서 동작하는 마스터 IoT 기기(550)는 사용자 단말(540)에 설치된 어플리케이션을 통해 요청된 명령 또는 마스터 IoT 기기(500)에 마련된 스피커를 통해 사용자의 음성으로 요청된 명령(예컨대, 취침 모드, 여행 모드, 집 도착 모드 등의 서비스 명령)을 입력받을 수 있다. 그러면, 상기 마스터 IoT 기기(550)는 입력된 명령을 자신의 식별자 정보와 함께 서비스 서버(560)로 전송할 수 있다.
서비스 서버(560)는 마스터 IoT 기기의 식별자 정보와 함께 수신된 명령을 기반으로 해당 마스터 IoT 기기와 연관하여 등록된 IoT 기기들을 식별할 수 있다. 여기서, 마스터 IoT 기기의 식별자 정보는 서비스 서버(560)에서 IoT 기기 별로 랜덤하게 부여한 정보일 수도 있고, 해당 IoT 기기의 GTIN 코드일 수도 있다. 그리고, 해당 IoT 기기들의 NATPR 레코드의 조회를 DNS 서버(570)에 요청하는 FQDN 쿼리를 생성할 수 있다. 예컨대, 서비스 서버(560)는 마스터 IoT 기기(550)에 연관하여 등록된 복수의 IoT 기기들 중 특정 명령에 해당하는 적어도 하나의 IoT 기기를 결정할 수 있다. 이때, 특정 명령과 연관된 IoT 기기의 식별자 정보(예컨대, GTIN 코드, 랜덤하게 부여된 정보 등)가 미리 서비스 서버(560)에 등록되어 저장 및 유지될 수 있다. 그러면, 서비스 서버(560)는 결정된 상기 명령과 연관된 IoT 기기들의 GTIN 코드를 기반으로 연관 IoT 기기 별 FQDN 쿼리를 생성하여 DNS 서버(570)로 전송할 수 있다. 예컨대, IoT 기기가 6개인 경우, 6개의 FQDN 쿼리를 생성하여 전송할 수 있다. 그러면, DNS 서버(570)는 FQDN 쿼리를 기반으로 해당하는 NAPTR 레코드를 자신의 데이터베이스에서 검색하여 서비스 서버(560)로 제공할 수 있다.
서비스 서버(560)는 수신된 NATPR 레코드를 기반으로 매시업(mashup) 기능 생성하여 인공지능 비서인 마스터 IoT 기기(550)로 제공할 수 있다. 예컨대, 마스터 IoT 기기(550)로부터 수신된 명령이 취침 모드인 경우, 취침 모드와 관련된 IoT 기기들의 NAPTR 레코드를 기반으로, 해당 IoT 기기의 ON/OFF, 상세 동작 모드(예컨대, 온도 조절, 습도 조절, 조명의 조도 조절 등)를 제어하기 위한 명령을 마스터 IoT 기기(550)로 제공할 수 있다. 그러면, 마스터 IoT 기기(550)는 수신된 상기 명령을 기반으로 해당 IoT 기기들의 동작을 제어할 수 있다. 그리고, 동작 제어 처리 결과를 사용자 단말(540)의 어플리케이션을 통해 사용자에게 제공할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (18)

  1. IoT(Internet Of Things) 기기들의 기능 공유 및 연동 방법에 있어서,
    DNS(Domain Name System) 서버에 복수의 IoT 기기들에 해당하는 기능 및 인터페이스 정보의 등록을 요청하는 단계;
    상기 DNS 서버로 상기 복수의 IoT 기기들 중 적어도 하나에 해당하는 기능 및 인터페이스 정보의 조회를 요청하는 단계;
    상기 조회 요청에 대한 응답으로, 상기 DNS 서버로부터 상기 적어도 하나의 IoT 기기에 각각 대응하는 적어도 하나의 NAPTR(Name Authority Pointer) 레코드를 수신하는 단계; 및
    상기 NAPTR 레코드에 기초하여 형성된 매시업(mashup) 기능을 제공하는 단계를 포함하고
    상기 등록 요청 단계는,
    상기 DNS 서버에 상기 복수의 IoT 기기들에 각각 부여된 제품 코드들을 전송하는 단계를 포함하고,
    상기 DNS 서버는,
    상기 등록 요청 시, 상기 제품 코드들에 기초하여, 상기 복수의 IoT 기기들에 해당하는 적어도 하나의 제조사 서버로부터 상기 복수의 IoT 기기들에 해당하는 기능 및 인터페이스 정보를 수신하고, 상기 제품 코드들과 상기 복수의 IoT 기기들에 해당하는 기능 및 인터페이스 정보가 개별적으로 연관시켜, 복수의 NAPTR 레코드들을 생성하거나,
    상기 등록 요청 시, 상기 제품 코드들에 기초하여, 상기 제조사 서버로부터 상기 제품 코드들과 상기 복수의 IoT 기기들에 해당하는 기능 및 인터페이스 정보가 개별적으로 연관되어 생성된 복수의 NAPTR 레코드들을 수신하고,
    상기 제품 코드들은, GS1 표준 식별자에 해당하는 GTIN(Global Trade Item Number) 코드를 나타내고,
    상기 GTIN 코드는 국가 코드, 상기 복수의 IoT 기기들 각각의 회사코드, 상기 복수의 IoT 기기들 각각의 상품 코드, 및 체크 디지트(check digit)를 포함하고,
    상기 NAPTR 레코드들은, 엔트리(entry) 필드, IoT 기기의 성격에 따른 분류를 나타내는 order 필드, IoT 기기의 순번을 나타내는 pref 필드, IoT 기기의 형식을 나타내는 flag 필드, IoT 기기의 기능 정보 또는 인터페이스 정보가 포함된 service 필드, IoT 기기의 기능에 대한 설명이 포함된 regexp 필드를 포함하고,
    상기 엔트리(entry) 필드는 상기 GTIN 코드의 역순으로 구성되고,
    상기 조회 요청 단계는,
    상기 복수의 IoT 기기들 중 특정 명령과 연관하여 미리 등록된 IoT 기기 각각에 대하여 상기 GTIN 코드를 기반으로 FQDN(Fully Qualified Domain Name) 쿼리(query)를 생성하는 단계; 및
    상기 FQDN 쿼리를 상기 DNS 서버로 전송하는 단계를 포함하고,
    상기 DNS 서버는,
    상기 FQDN 쿼리에 포함된 상기 GTIN 코드를 역순으로 정렬한 후 역순으로 정렬된 상기 GTIN 코드를 기반으로 상기 GTIN 코드에 매칭되는 NAPTR 레코드를 결정하고,
    상기 NAPTR 레코드 수신 단계는,
    상기 DNS 서버로 전송된 FQDN 쿼리 각각에 해당하는 NAPTR 레코드를 수신하고,
    상기 매시업 기능 제공 단계는,
    상기 NAPTR 레코드에 기초하여 상기 미리 등록된 IoT 기기의 기능을 제어하는 것으로,
    상기 미리 등록된 IoT 기기가 복수 개인 경우 IoT 기기 각각에 해당되는 NAPTR 레코드들을 조합하여 새로운 기능 및 인터페이스를 생성하는 단계; 및
    상기 새로운 기능 및 인터페이스를 기반으로 상기 특정 명령과 연관하여 미리 등록된 IoT 기기를 제어하는 단계를 포함하고,
    상기 미리 등록된 IoT 기기에 대하여 NAPTR 레코드들을 조합하는 것은,
    상기 order 필드, 상기 service 필드, 상기 regexp 필드를 통해 상기 새로운 기능을 조합하는 것
    을 특징으로 하는 IoT 기기의 기능 공유 및 연동 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. IoT(Internet Of Things) 기기들의 기능 공유 및 연동을 위한 시스템에 있어서,
    DNS(Domain Name System) 서버에 복수의 IoT 기기들에 해당하는 기능 및 인터페이스 정보의 등록을 요청하는 DNS 등록 제어부;
    상기 DNS 서버로 상기 복수의 IoT 기기들 중 적어도 하나에 해당하는 기능 및 인터페이스 정보의 조회를 요청하는 DNS 조회 제어부;
    상기 조회 요청에 대한 응답으로, 상기 DNS 서버로부터 상기 적어도 하나의 IoT 기기에 각각 대응하는 적어도 하나의 NAPTR(Name Authority Pointer) 레코드를 수신하는 정보 수신부; 및
    상기 NAPTR 레코드에 기초하여 형성된 매시업(mashup) 기능을 제공하는 정보 제공부를 포함하고,
    상기 DNS 등록 제어부는,
    상기 DNS 서버에 상기 복수의 IoT 기기들에 각각 부여된 제품 코드들을 전송하고,
    상기 DNS 서버는,
    상기 등록 요청 시, 상기 제품 코드들에 기초하여, 상기 복수의 IoT 기기들에 해당하는 적어도 하나의 제조사 서버로부터 상기 복수의 IoT 기기들에 해당하는 기능 및 인터페이스 정보를 수신하고, 상기 제품 코드들과 상기 복수의 IoT 기기들에 해당하는 기능 및 인터페이스 정보가 개별적으로 연관시켜, 복수의 NAPTR 레코드들을 생성하거나,
    상기 등록 요청 시, 상기 제품 코드들에 기초하여, 상기 제조사 서버로부터 상기 제품 코드들과 상기 복수의 IoT 기기들에 해당하는 기능 및 인터페이스 정보가 개별적으로 연관되어 생성된 복수의 NAPTR 레코드들을 수신하고,
    상기 제품 코드들은, GS1 표준 식별자에 해당하는 GTIN(Global Trade Item Number) 코드를 나타내고,
    상기 GTIN 코드는 국가 코드, 상기 복수의 IoT 기기들 각각의 회사코드, 상기 복수의 IoT 기기들 각각의 상품 코드, 및 체크 디지트(check digit)를 포함하고,
    상기 NAPTR 레코드들은, 엔트리(entry) 필드, IoT 기기의 성격에 따른 분류를 나타내는 order 필드, IoT 기기의 순번을 나타내는 pref 필드, IoT 기기의 형식을 나타내는 flag 필드, IoT 기기의 기능 정보 또는 인터페이스 정보가 포함된 service 필드, IoT 기기의 기능에 대한 설명이 포함된 regexp 필드를 포함하고,
    상기 엔트리(entry) 필드는 상기 GTIN 코드의 역순으로 구성되고,
    상기 DNS 조회 제어부는,
    상기 복수의 IoT 기기들 중 특정 명령과 연관하여 미리 등록된 IoT 기기 각각에 대하여 상기 GTIN 코드를 기반으로 FQDN(Fully Qualified Domain Name) 쿼리(query)를 생성한 후,
    상기 FQDN 쿼리를 상기 DNS 서버로 전송하고,
    상기 DNS 서버는,
    상기 FQDN 쿼리에 포함된 상기 GTIN 코드를 역순으로 정렬한 후 역순으로 정렬된 상기 GTIN 코드를 기반으로 상기 GTIN 코드에 매칭되는 NAPTR 레코드를 결정하고,
    상기 정보 수신부는,
    상기 DNS 서버로 전송된 FQDN 쿼리 각각에 해당하는 NAPTR 레코드를 수신하고,
    상기 정보 제공부는,
    상기 NAPTR 레코드에 기초하여 상기 미리 등록된 IoT 기기의 기능을 제어하는 것으로,
    상기 미리 등록된 IoT 기기가 복수 개인 경우 IoT 기기 각각에 해당되는 NAPTR 레코드들을 조합하여 새로운 기능 및 인터페이스를 생성하고,
    상기 새로운 기능 및 인터페이스를 기반으로 상기 특정 명령과 연관하여 미리 등록된 IoT 기기를 제어하고,
    상기 미리 등록된 IoT 기기에 대하여 NAPTR 레코드들을 조합하는 것은,
    상기 order 필드, 상기 service 필드, 상기 regexp 필드를 통해 상기 새로운 기능을 조합하는 것
    을 특징으로 하는 시스템.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
KR1020180066707A 2018-06-11 2018-06-11 스마트 홈 서비스를 위한 IoT 장치 기능 공유 및 연동 방법 그리고 시스템 KR102112401B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180066707A KR102112401B1 (ko) 2018-06-11 2018-06-11 스마트 홈 서비스를 위한 IoT 장치 기능 공유 및 연동 방법 그리고 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180066707A KR102112401B1 (ko) 2018-06-11 2018-06-11 스마트 홈 서비스를 위한 IoT 장치 기능 공유 및 연동 방법 그리고 시스템

Publications (2)

Publication Number Publication Date
KR20190143533A KR20190143533A (ko) 2019-12-31
KR102112401B1 true KR102112401B1 (ko) 2020-05-18

Family

ID=69051761

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180066707A KR102112401B1 (ko) 2018-06-11 2018-06-11 스마트 홈 서비스를 위한 IoT 장치 기능 공유 및 연동 방법 그리고 시스템

Country Status (1)

Country Link
KR (1) KR102112401B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3970050A4 (en) * 2019-08-16 2022-12-21 Hewlett-Packard Development Company, L.P. REMOTE CONTROLS

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101807399B1 (ko) * 2015-12-18 2017-12-08 한국과학기술원 Gs1 코드를 사용하는 비콘 장치, 그 동작 방법 및 비콘 장치를 이용하는 서비스 제공 방법
KR101933276B1 (ko) * 2016-08-08 2018-12-27 한국과학기술원 GS1 코드 정보가 포함된 속성을 정의하는 아키텍처를 포함하는 IoT 디바이스 및 IoT 디바이스를 이용하는 서비스 제공 방법

Also Published As

Publication number Publication date
KR20190143533A (ko) 2019-12-31

Similar Documents

Publication Publication Date Title
RU2713706C1 (ru) Эффективная связь для устройств домашней сети
US11178144B2 (en) Apparatus and method by which user device in home network system transmits home-device-related information
EP3506031B1 (en) Smart household control method and system
US10320932B2 (en) Conveying state changes using connectionless messaging and a store-and-forward cache
CN105850076B (zh) 在家庭网络系统中的服务器中注册家庭设备的装置和方法
US20150006719A1 (en) LEVERAGING SYSTEM SIGNALING SERVICE ADVERTISEMENTS FOR APPLICATION-LAYER DISCOVERY AND CONNECTION MANAGEMENT IN AN INTERNET OF THINGS (IoT) ENVIRONMENT
CN110463164B (zh) 一种用于解析用于装置的凭证的系统及方法
CN110086763B (zh) 结构网络
US9906605B2 (en) Enhanced DNS-based service discovery in an internet of things (IoT) environment
US9680726B2 (en) Adaptive and extensible universal schema for heterogeneous internet of things (IOT) devices
US20140244001A1 (en) Controlling many different devices from a smart controller
US9204291B2 (en) User identification and location determination in control applications
US20220166668A1 (en) Preconfigured device representations
US20150006296A1 (en) NOTIFICATION DISMISSAL IN AN INTERNET OF THINGS (IoT) ENVIRONMENT
CN110622485B (zh) Mqtt网络中的主题处理的方法和节点
KR101701158B1 (ko) 홈 네트워크의 장치에 대한 원격 접속 제공 방법 및 시스템
US11411999B2 (en) Building system with dynamic manufacturer usage description (MUD) files based on building model queries
CN111083180B (zh) 物联网系统、物联网设备联动方法及装置
CN114153153B (zh) 设备控制方法、系统、装置、电子设备和存储介质
EP3379795B1 (en) Dongle and control method therefor
US11627171B2 (en) Voice calling with a connected device
US20050099982A1 (en) Proxy device and method for controlling devices in a domain
CN111913402A (zh) 智能家居批量配置方法、装置、系统及电子设备
KR102112401B1 (ko) 스마트 홈 서비스를 위한 IoT 장치 기능 공유 및 연동 방법 그리고 시스템
KR20100059728A (ko) 메타데이터에 기반한 센서노드 관리장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant