KR20200009721A - System and method for providing message push service - Google Patents

System and method for providing message push service Download PDF

Info

Publication number
KR20200009721A
KR20200009721A KR1020180084459A KR20180084459A KR20200009721A KR 20200009721 A KR20200009721 A KR 20200009721A KR 1020180084459 A KR1020180084459 A KR 1020180084459A KR 20180084459 A KR20180084459 A KR 20180084459A KR 20200009721 A KR20200009721 A KR 20200009721A
Authority
KR
South Korea
Prior art keywords
server
message
data
application
mobile device
Prior art date
Application number
KR1020180084459A
Other languages
Korean (ko)
Other versions
KR102091676B1 (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 KR1020180084459A priority Critical patent/KR102091676B1/en
Publication of KR20200009721A publication Critical patent/KR20200009721A/en
Application granted granted Critical
Publication of KR102091676B1 publication Critical patent/KR102091676B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • H04L67/26
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/42
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/54Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Cardiology (AREA)
  • Telephonic Communication Services (AREA)

Abstract

The present invention relates to a method for providing a message push service which comprises the steps of: receiving, by a first server, sensing data transmitted from a hub; determining, by the first server, whether an application installed in a mobile device is in a login state; determining, by the first server, a processing order of the sensing data when the application is in the login state; generating, by the first server, a first message including indication data indicating whether the sensing data is to be urgently transmitted and the sensing data and transmitting the first message to a second server in accordance with a determination result of the processing order; determining an operation mode of the application by the second server for receiving the first message; generating, by the second server, a second message including the sensing data included in the first message on the basis of the determination result of the operation mode and the indication data; and pushing, by the second server, the second message to the mobile device.

Description

메시지 푸시 서비스 제공 시스템과 방법{SYSTEM AND METHOD FOR PROVIDING MESSAGE PUSH SERVICE}SYSTEM AND METHOD FOR PROVIDING MESSAGE PUSH SERVICE}

본 발명의 개념에 따른 실시 예는 메시지 푸시 서비스에 관한 것으로, 특히 제1통신 프로토콜을 사용하여 IoT 장치의 정보를 수집하는 제1서버와, 수집된 정보를 제2통신 프로토콜을 사용하여 애플리케이션으로 푸시하는 메시지 푸시 서비스 제공 시스템과 방법에 관한 제공하는 것이다.An embodiment according to the concept of the present invention relates to a message pushing service, and in particular, a first server for collecting information of an IoT device using a first communication protocol, and pushing the collected information to an application using a second communication protocol. It is to provide a message push service providing system and method.

MQTT(Message Queue Telemetry Transport) 프로토콜은 퍼블리시(publish)와 섭스크라이브(subscribe) 모델을 사용하고 있다.The Message Queue Telemetry Transport (MQTT) protocol uses a publish and subscribe model.

IoT 장치로부터 MQTT 브로커로 퍼블리시되는 메시지를 수신하기 위해 애플리케이션은 섭스크라이브하고 있어야 하고, 킵 얼라이브(keep alive) 상태를 유지해야 한다. MQTT 브로커는 클라이언트로부터 전송된 메시지에 대해 섭스크라이브하고 있으며, 상기 메시지를 킵 얼라이브 상태의 애플리케이션으로 전송한다.In order to receive messages published from the IoT device to the MQTT broker, the application must subscribe and keep a keep alive. The MQTT broker subscribes to the message sent from the client and sends the message to the keep alive application.

애플리케이션이 킵 얼라이브 상태를 유지하기 위해, 상기 애플리케이션은 MQTT 브로커로 주기적으로 핑(ping)을 전송해야 한다. 따라서, 애플리케이션이 지소적으로 킵 얼라이브 상태를 유지해야 하므로, 상기 애플리케이션이 설치된 모바일 장치의 배터리는 소모된다.In order for the application to keep keep alive, the application must periodically ping the MQTT broker. Therefore, since the application must locally keep keep alive, the battery of the mobile device in which the application is installed is consumed.

도즈 모드(doze mode)는 안드로이드 OS의 6.0 이상에서 적용되다. 상기 도즈 모드에서 애플리케이션은 백드라운드 동작을 멈추고 네크워크를 액세스하는 작동은 정지된다. Doze mode applies to Android OS 6.0 and above. In the dose mode, the application stops the backround operation and stops accessing the network.

PCT 국제공개공보: WO 2017/072510 (2017.05.04.공개)PCT International Publication: WO 2017/072510 (April 4, 2017)

본 발명이 이루고자 하는 기술적인 과제는 특정 메시지가 모바일 장치로 긴급하게 전송될 필요가 있는 메시지인지를 판단하고, 상기 특정 메시지가 상기 모바일 장치로 긴급하게 전송될 필요가 있는 메시지일 때 상기 모바일 장치가 절전 모드(예컨대, 도즈 모드)에서 작동할지라도 상기 메시지를 지연 없이 또는 긴급하게 상기 모바일 장치로 전송(또는 푸시)하기 위해 상기 모바일 장치의 상기 절전 모드를 강제로 해제할 수 있는 방법과 상기 방법을 수행할 수 있는 시스템을 제공하는 것이다.The technical problem to be achieved by the present invention is to determine whether a specific message is a message that needs to be urgently transmitted to the mobile device, and when the specific message is a message that needs to be urgently transmitted to the mobile device, And a method for forcibly releasing the power saving mode of the mobile device in order to send (or push) the message to the mobile device without delay or urgently even when operating in a power saving mode (e.g., a dose mode). It is to provide a system that can be performed.

본 발명의 실시 예에 따른 메시지 푸시 서비스 제공 방법은 제1서버가 허브로부터 전송된 감지 데이터를 수신하는 단계와, 상기 제1서버가 모바일 장치에 설치된 애플리케이션이 로그인 상태인지를 판단하는 단계와, 상기 애플리케이션이 상기 로그인 상태일 때 상기 제1서버가 상기 감지 데이터의 처리 순서를 판단하는 단계와, 상기 처리 순서의 판단 결과에 따라 상기 제1서버가 상기 감지 데이터의 긴급 전송 여부를 지시하는 지시 데이터와 상기 감지 데이터를 포함하는 제1메시지를 생성하고 상기 제1메시지를 제2서버로 전송하는 단계와, 상기 제1메시지를 수신한 상기 제2서버가 상기 애플리케이션의 작동 모드를 판단하는 단계와, 상기 작동 모드의 판단 결과와 상기 지시 데이터에 기초하여 상기 제2서버가 상기 제1메시지에 포함된 상기 감지 데이터를 포함하는 제2메시지를 생성하는 단계와, 상기 제2서버가 상기 제2메시지를 상기 모바일 장치로 푸시하는 단계를 포함한다.In accordance with another aspect of the present invention, a method of providing a message push service includes: receiving, by a first server, sensing data transmitted from a hub; determining, by the first server, whether an application installed in a mobile device is logged in; Determining, by the first server, the processing order of the sensing data when the application is in the login state; and the indication data indicating whether the first server is urgently transmitting the sensing data according to a determination result of the processing order; Generating a first message including the sensed data and transmitting the first message to a second server; determining, by the second server that received the first message, an operation mode of the application; The detection of the second server included in the first message based on the determination result of the operation mode and the indication data. And generating a second message including the emitter, and a step of the second server to push the second message to the mobile device.

본 발명의 실시 예에 따른 메시지 푸시 서비스 제공 시스템은 허브와 통신하는 제1서버와, 상기 제1서버와 통신하고 모바일 장치로 제2메시지를 푸시하는 제2서버를 포함한다. 상기 제1서버는 상기 허브로부터 전송된 감지 데이터를 수신하고, 상기 모바일 장치에 설치된 애플리케이션이 로그인 상태인지를 판단하고, 상기 애플리케이션이 상기 로그인 상태일 때 상기 감지 데이터의 처리 순서를 판단하고, 상기 처리 순서의 판단 결과에 따라 상기 감지 데이터의 긴급 전송 여부를 지시하는 지시 데이터와 상기 감지 데이터를 포함하는 제1메시지를 생성하고, 상기 제1메시지를 상기 제2서버로 전송한다. 상기 제2서버는 상기 애플리케이션의 작동 모드를 판단하고, 상기 작동 모드의 판단 결과와 상기 지시 데이터에 기초하여 상기 감지 데이터를 포함하는 상기 제2메시지를 생성하고, 상기 제2메시지를 상기 모바일 장치로 푸시한다.PINGSystem for providing a message push service according to an embodiment of the present invention includes a first server for communicating with a hub, and a second server for communicating with the first server and pushing a second message to a mobile device. The first server receives the sensing data transmitted from the hub, determines whether an application installed in the mobile device is in a login state, determines a processing sequence of the sensing data when the application is in the login state, and processes the processing. According to a result of the determination of the order, a first message including the indication data indicating whether the sensed data is urgently transmitted and the sensed data is generated, and the first message is transmitted to the second server. The second server determines the operation mode of the application, generates the second message including the sensed data based on the determination result of the operation mode and the indication data, and the second message to the mobile device. Push PING

본 발명의 실시 예에 따른 메시지 푸시 서비스 제공 방법과 메시지 푸시 서비스 제공 시스템은, 모바일 장치가 절전 모드(예컨대, 도즈 모드)에서 작동할 때라도 메시지를 지연 없이 또는 긴급하게 전송(또는 푸시)하기 위해 상기 모바일 장치의 상기 절전 모드를 강제로 해제할 수 있는 효과가 있다.The message push service providing method and the message push service providing system according to an embodiment of the present invention may be used to transmit (or push) a message without delay or urgent even when the mobile device operates in a power saving mode (eg, a doze mode). The power saving mode of the mobile device can be forcibly released.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 실시 예에 따른 메시지 푸시 서비스 제공 시스템의 블록도를 나타낸다.
도 2는 도 1에 도시된 제1서버의 블록도를 나타낸다.
도 3은 본 발명의 실시 예에 따른 메시지 푸시 서비스 제공 시스템에 의해 제공되는 메시지 푸시 서비스 제공 방법을 설명하는 플로우차트이다.
The detailed description of each drawing is provided in order to provide a thorough understanding of the drawings cited in the detailed description of the invention.
1 is a block diagram of a message push service providing system according to an exemplary embodiment of the present invention.
FIG. 2 is a block diagram of the first server shown in FIG. 1.
3 is a flowchart illustrating a message push service providing method provided by a message pushing service providing system according to an exemplary embodiment of the present invention.

본 명세서에서 애플리케이션(application)은 애플리케이션 프로그램 또는 모바일 애플리케이션 프로그램(간단히, 모바일 앱(mobile app))을 의미하고, 모바일 장치(예컨대, 스마트폰)에 상기 애플리케이션이 설치되어 있을 때, 상기 모바일 장치의 사용자는 상기 애플리케이션에 로그인하여 IoT 장치(120)에 각 센서(110-1과 110-2)를 등록하고, 상기 애플리케이션을 이용하여 각 센서(110-1과 110-2)의 작동을 제어할 수 있다.In the present specification, an application means an application program or a mobile application program (simply, a mobile app), and when the application is installed in a mobile device (eg, a smartphone), a user of the mobile device Log in to the application to register each sensor 110-1 and 110-2 with the IoT device 120, and control the operation of each sensor 110-1 and 110-2 using the application. .

도 1은 본 발명의 실시 예에 따른 메시지 푸시 서비스 제공 시스템의 블록도를 나타낸다.1 is a block diagram of a message push service providing system according to an exemplary embodiment of the present invention.

도 1을 참조하면, 메시지 푸시 서비스 제공 시스템(100)은 복수 개의 센서들 (110-1과 110-2), 사물 인터넷(Internet of Things(IoT)) 장치(120), 중계 서버 (130), 제1서버(140), 데이터 저장 장치(150), 제2서버(160), 및 모바일 장치(170)를 포함한다.Referring to FIG. 1, the message push service providing system 100 includes a plurality of sensors 110-1 and 110-2, an Internet of Things (IoT) device 120, a relay server 130, The first server 140, the data storage device 150, the second server 160, and the mobile device 170 are included.

복수 개의 센서들(110-1과 110-2) 각각은 IoT 장치(120)와 유선 또는 무선을 통해 신호를 주거나 받을 수 있다. 여기서 신호는 정보, 데이터, 디지털 신호들의 집합, 또는 메시지를 의미한다.Each of the plurality of sensors 110-1 and 110-2 may transmit or receive a signal through the wired or wireless connection with the IoT device 120. Here, the signal means information, data, a collection of digital signals, or a message.

제1센서(110-1)는 감시 영역(예컨대, 출입문)에 설치되고, 상기 감시 영역에 대한 이벤트, 예컨대 상기 출입문의 열림과 닫힘을 감지하고, 감지의 결과에 따라 제1감지 데이터(SD1)를 생성하고, 제1감지 데이터(SD1)를 무선으로 IoT 장치(120)로 전송할 수 있다. 제1센서(110-1)는 배터리의 전압을 작동 전압으로 사용하고, 자석 문 스위치(Magnetic Door Switch) 또는 자석 센서로 구현될 수 있다.The first sensor 110-1 is installed in the surveillance area (eg, the door), and detects an event for the surveillance area, for example, the opening and closing of the door, and detects the first detection data SD1 according to the detection result. May be generated and the first detection data SD1 may be wirelessly transmitted to the IoT device 120. The first sensor 110-1 uses the voltage of the battery as an operating voltage, and may be implemented as a magnetic door switch or a magnetic sensor.

제1감지 데이터(SD1)는 제1센서(110-1)의 기능(또는 명칭)을 나타내는 기능(또는 명칭) 정보, 제1센서(110-1)가 설치된 위치를 나타내는 위치 정보(예컨대, 현관 또는 안방 창문), 및 출입문이 열렸음을 지시하는 열림 정보를 포함할 수 있다. 또한, 제1감지 데이터(SD1)는 상기 기능 정보, 상기 위치 정보, 상기 열림 정보, 및 제1센서(110-1) 내부의 배터리 상태(예컨대, 배터리 교체 시기가 되었음을 나타내는 또는 배터리가 저전압임을 나타내는 배터리 로우(low))를 나타내는 배터리 상태 정보를 포함할 수 있다.The first detection data SD1 may include function (or name) information indicating a function (or name) of the first sensor 110-1 and position information (eg, entrance) indicating a location where the first sensor 110-1 is installed. Or a room window), and opening information indicating that the door has been opened. In addition, the first detection data SD1 may indicate the function information, the location information, the opening information, and a battery state inside the first sensor 110-1 (eg, indicating that it is time to replace the battery or indicating that the battery is low voltage). It may include battery state information indicating a battery low.

제2센서(110-2)는 감시 영역(예컨대, 출입문)의 주위에 설치되고, 사람(또는 침입자) 또는 동물의 움직임을 감지하고, 감지의 결과에 따라 제2감지 데이터(SD2)를 생성하고, 제2감지 데이터(SD2)를 무선으로 IoT 장치(120)로 전송할 수 있다. 제2센서(110-2)는 배터리의 전압을 작동 전압으로 사용하고 적외선을 이용한 동작 감지 센서일 수 있다.The second sensor 110-2 is installed around a surveillance area (eg, a door), detects a movement of a person (or an intruder) or an animal, and generates second detection data SD2 according to the detection result. The second detection data SD2 may be wirelessly transmitted to the IoT device 120. The second sensor 110-2 may be a motion detection sensor using a voltage of a battery as an operating voltage and using infrared light.

제2감지 데이터(SD2)는 제2센서(110-2)의 기능(또는 명칭)을 나타내는 기능 정보, 제2센서(110-2)가 설치된 위치를 나타내는 위치 정보(예컨대, 현관 또는 안방 창문), 및 사람 또는 동물의 움직임이 감지됨을 지시하는 움직임 정보를 포함할 수 있다. 또한, 제2감지 데이터 (SD2)는 상기 기능 정보, 상기 위치 정보, 상기 움직임 정보, 및 제2센서(110-2)의 배터리 상태(예컨대, 배터리 교체 시기가 되었음을 나타내는 또는 배터리가 저전압임을 나타내는 배터리 로우(low))를 나타내는 배터리 상태 정보를 포함할 수 있다.The second detection data SD2 includes function information indicating a function (or name) of the second sensor 110-2 and position information indicating a position where the second sensor 110-2 is installed (eg, an entrance or a front window). , And motion information indicating that motion of a person or animal is detected. In addition, the second detection data SD2 may include the function information, the location information, the motion information, and a battery state of the second sensor 110-2 (eg, a battery indicating that it is time to replace the battery or indicating that the battery is low voltage). It may include battery state information indicating a low (low).

메시지 푸시 서비스 제공 시스템(100)이 보안 시스템일 때, 배터리 상태 정보와 달리 보안 감지 정보(예컨대, 열림 정보 또는 움직임 정보)는 지연(또는 지체) 없이 제1서버(140)와 제2서버(160)를 통해 모바일 장치(170)의 애플리케이션 (172)으로 전송(또는 푸시)되어야 한다.When the message push service providing system 100 is a security system, unlike the battery state information, the security detection information (for example, the opening information or the movement information) is the first server 140 and the second server 160 without delay (or delay). ) Must be sent (or pushed) to the application 172 of the mobile device 170.

IoT 장치(120)는 센서(110-1 또는 110-2)로부터 무선 전송된 감지 데이터 (SD1 또는 SD2)를 수신하고, 감지 데이터(SD1 또는 SD2)를 제1통신 프로토콜을 이용하여 중계 서버(130)로 전송하는 기능을 수행할 수 있다. 또한, IoT 장치(120)는 각 센서(110-1과 110-2)의 작동을 제어하는 허브(hub)로서의 기능을 수행할 수 있다.The IoT device 120 receives the sensing data SD1 or SD2 wirelessly transmitted from the sensor 110-1 or 110-2, and relays the sensing data SD1 or SD2 using the first communication protocol to the relay server 130. ) Can be sent. In addition, the IoT device 120 may perform a function as a hub for controlling the operation of each sensor 110-1 and 110-2.

중계 서버(130)는 제1장치(예컨대, IoT 장치(120) 또는 제1서버(140))로부터 전송된 메시지를 수신하고, 상기 메시지 또는 상기 메시지와 다른 메시지를 제2장치(예컨대, 제1서버(140) 또는 IoT 장치(120))로 전송하는 기능을 수행한다.The relay server 130 receives the message transmitted from the first device (eg, the IoT device 120 or the first server 140), and transmits the message or a message different from the message to the second device (eg, the first device). Performs a function of transmitting to the server 140 or the IoT device 120.

예컨대, IoT 장치(120)와 제1서버(140)가 MQTT(Message Queue Telemetry Transport) 프로토콜을 이용하여 신호를 주거나 받을 때, 중계 서버(130)는 MQTT 브로커라고 불릴 수 있다. 따라서, 장치들(120, 130, 및 140) 사이의 통신은 MQTT 프로토콜을 이용하여 수행될 수 있다.For example, when the IoT device 120 and the first server 140 transmit or receive signals using the Message Queue Telemetry Transport (MQTT) protocol, the relay server 130 may be called an MQTT broker. Thus, communication between devices 120, 130, and 140 may be performed using the MQTT protocol.

제1서버(140)는 데이터 저장 장치(150)를 액세스할 수 있다. 제1서버(140)는 데이터 저장 장치(150)에 데이터를 저장하거나 데이터 저장 장치(150)에 저장된 데이터를 읽어 처리할 수 있다. 또한, 제1서버(140)는 데이터 저장 장치(150)로부터 필요한 데이터를 검색할 수 있다. 데이터 저장 장치(150)는 데이터베이스로 구현될 수 있다.The first server 140 may access the data storage device 150. The first server 140 may store data in the data storage device 150 or read and process data stored in the data storage device 150. In addition, the first server 140 may retrieve necessary data from the data storage device 150. The data storage device 150 may be implemented as a database.

제1서버(140)는 IoT 장치(120), 예컨대 허브(120)로부터 전송된 감지 데이터 (SD1 또는 SD2)를 중계 서버(130)를 통해 수신하고, 모바일 장치(170)에 설치된 애플리케이션(172)이 로그인 상태(예컨대, 애플리케이션(172)을 이용하여 각 장치 (110-1, 110-2, 및 120)를 제어할 수 있는 상태 또는 제2메시지(MSG2)를 바로 수신할 수 있는 상태)인지 또는 로그아웃 상태(예컨대, 애플리케이션(172)을 이용하여 각 장치(110-1, 110-2, 및 120)를 제어할 수 없는 상태 또는 제2메시지(MSG2)를 바로 수신할 수 없는 상태)인지를 판단(또는 결정)하고, 애플리케이션(172)이 상기 로그인 상태일 때 감지 데이터(SD1 또는 SD2)의 처리 순서를 데이터 저장 장치 (150)에 저장된 룩-업 테이블(151)을 참조(또는 서치)하여 판단하고, 상기 처리 순서의 판단 결과에 따라 감지 데이터(SD1 또는 SD2)의 긴급 전송 여부를 지시하는 지시 데이터와 감지 데이터(SD1 또는 SD2)를 포함하는 제1메시지(MSG1)를 생성하고, 제1메시지(MSG1)를 제2통신 프로토콜을 이용하여 제2서버(160)로 전송한다.The first server 140 receives the sensing data (SD1 or SD2) transmitted from the IoT device 120, for example, the hub 120, through the relay server 130, and the application 172 installed in the mobile device 170. This login state (for example, the state that can control each device (110-1, 110-2, and 120) using the application 172 or the state that can receive the second message MSG2 immediately) or Whether the device is not able to control the devices 110-1, 110-2, and 120 using the application 172 or cannot receive the second message MSG2 directly. And (or search) the look-up table 151 stored in the data storage device 150 to determine the processing order of the sensing data SD1 or SD2 when the application 172 is in the login state. And whether the sensing data SD1 or SD2 is urgently transmitted according to the determination result of the processing sequence. Generating an instruction for instructing data and the detected data, a first message including (SD1 or SD2) (MSG1), and a first message (MSG1) by using the second communication protocol, and transmits it to the second server 160.

제1서버(140)는 애플리케이션(172)으로부터 전송된 정보, 또는 애플리케이션 (172)으로 전송된 특정 신호에 대한 응답의 수신 여부에 따라 애플리케이션(172)이 로그인 상태인지 또는 로그아웃 상태인지를 판단할 수 있다.The first server 140 may determine whether the application 172 is logged in or logged out according to whether information received from the application 172 or a response to a specific signal transmitted to the application 172 is received. Can be.

예컨대, 제1서버(140)는 감지 데이터(SD1 또는 SD2)에 포함된 기능 정보, 열림 정보(또는 움직임 정보), 및/또는 배터리 상태 정보를 분석하여 감지 데이터 (SD1 또는 SD2)의 처리 순서를 판단(또는 결정)할 수 있다.For example, the first server 140 analyzes the function information, the opening information (or movement information), and / or the battery state information included in the sensing data SD1 or SD2 to determine the processing order of the sensing data SD1 or SD2. Judgment (or determination) can be made.

예컨대, 기능 정보, 열림 정보(또는 움직임 정보), 및/또는 배터리 상태 정보는 메타데이터(metadata)를 의미할 수 있다.For example, the function information, the opening information (or motion information), and / or the battery state information may mean metadata.

따라서 제1서버(140)는 중계 서버(130)를 통해 수신된 감지 데이터(SD1 또는 SD2)로부터 메타데이터를 추출하고, 추출된 메타데이터와 데이터 저장 장치(150)의 룩-업 테이블(151)에 저장된 처리 순서에 따라 감지 데이터(SD1 또는 SD2)의 처리 순서(또는 푸시 순서)를 판단할 수 있다.Accordingly, the first server 140 extracts metadata from the sensed data SD1 or SD2 received through the relay server 130, and extracts the metadata and the look-up table 151 of the data storage device 150. The processing order (or push order) of the sensed data SD1 or SD2 may be determined according to the processing order stored in the.

제1서버(140)는 모바일 장치(170)에 설치된 애플리케이션(172)이 로그인 될 때 또는 로그아웃될 때 애플리케이션(172)이 로그인 상태인지 로그아웃 상태인지를 나타내는 로그인/로그아웃 정보를 모바일 장치(170)로부터 수신하여 애플리케이션 (172)이 상기 로그인 상태인지 또는 상기 로그아웃 상태인지를 판단할 수 있다.The first server 140 may provide login / logout information indicating whether the application 172 is logged in or logged out when the application 172 installed in the mobile device 170 is logged in or logged out. Received from 170, it may be determined whether the application 172 is in the logged in state or the logged out state.

예컨대, 제1서버(140)는 애플리케이션(172)의 로그인 상태 또는 로그아웃 상태를 나타내는 정보를 관리할 수 있고, 상기 정보를 관리하기 위해 오픈 API(Open Application Programming Interface)를 제공할 수 있다.For example, the first server 140 may manage information indicating a login state or a logout state of the application 172, and may provide an open application programming interface (API) to manage the information.

데이터 저장 장치(150)는 검색 또는 처리 속도를 높이기 위해 룩-업 테이블 (151)을 저장할 수 있다. 룩-업 테이블(151)은 감지 데이터별 처리 순서를 저장한다.The data storage device 150 may store the look-up table 151 to speed up a search or processing. The look-up table 151 stores the processing order for each sensed data.

예컨대, 도 1의 룩-업 테이블을 참조하면, 제1감지 데이터(SD1)가 열림 정보를 포함할 때 제1감지 데이터(SD1)의 처리 순서는 "1"이고, 제2감지 데이터(SD2)가 움직임 정보를 포함할 때 제2감지 데이터(SD2)의 처리 순서는 "1(예컨대, 이진수로는 01)"이고, 감지 데이터(SD1 또는 SD2)가 각 센서(110-1 또는 110-2))에 내장된 배터리의 상태(예컨대, 배터리 교체 시기 또는 배터리 로우)를 나타낼 때 감지 데이터(SD1 또는 SD2)의 처리 순서는 "2(예컨대, 이진수로는 10)"이고, 처리 순서 "1"은 처리 순서 "2"보다 상대적으로 높다고 가정한다.For example, referring to the look-up table of FIG. 1, when the first sensing data SD1 includes opening information, the processing order of the first sensing data SD1 is “1”, and the second sensing data SD2 is processed. Processing sequence of the second sensed data SD2 is " 1 (e.g., 01 in binary number) " when the motion information includes motion information, and the sensed data SD1 or SD2 are stored in the respective sensors 110-1 or 110-2. In order to indicate the state of the battery (e.g., battery replacement time or battery low), the processing order of the sensing data SD1 or SD2 is "2 (e.g., 10 in binary)", and the processing order "1" Assume that the processing order is higher than "2".

제1서버(140)는 감지 데이터(SD1 또는 SD2)로부터 열림 정보, 움직임 정보, 및/또는 배터리 상태 정보를 추출하고, 추출된 정보를 쿼리로서 데이터 저장 장치 (150)로 전송하고, 데이터 저장 장치(150)는 상기 추출된 정보에 응답하여 룩-업 테이블(151)에 저장된 처리 순서("1" 또는 "2")를 제1서버(140)로 전송한다.The first server 140 extracts open information, motion information, and / or battery state information from the sensing data SD1 or SD2, and transmits the extracted information to the data storage device 150 as a query, and the data storage device. 150 transmits the processing order ("1" or "2") stored in the look-up table 151 to the first server 140 in response to the extracted information.

추출된 정보에 열림 정보(또는 움직임 정보)와 배터리 상태 정보 모두가 포함되어 있을 때, 제1서버(140)는 열림 정보(또는 움직임 정보)만을 추출된 정보로서 데이터 저장 장치(150)로 전송할 수 있다.When the extracted information includes both the opening information (or movement information) and the battery state information, the first server 140 may transmit only the opening information (or movement information) to the data storage device 150 as extracted information. have.

제1서버(140)가 열림 정보 또는 움직임 정보에 해당하는 처리 순서("1")을 데이터 저장 장치(150)로부터 수신하면, 제1서버(140)는 제1값을 갖는 지시 데이터를 생성하고, 생성된 지시 데이터와 감지 데이터(SD1 또는 SD2)를 포함하는 제1메시지(MSG1)를 생성할 수 있다.When the first server 140 receives the processing order ("1") corresponding to the opening information or the motion information from the data storage device 150, the first server 140 generates the indication data having the first value and The first message MSG1 including the generated indication data and the sensing data SD1 or SD2 may be generated.

제1서버(140)가 배터리 상태 정보에 해당하는 처리 순서("2")을 데이터 저장 장치(150)로부터 수신하면, 제1서버(140)는 제2값을 갖는 지시 데이터를 생성하고, 생성된 지시 데이터와 감지 데이터(SD1 또는 SD2)를 포함하는 제1메시지(MSG1)를 생성할 수 있다.When the first server 140 receives a processing sequence ("2") corresponding to the battery state information from the data storage device 150, the first server 140 generates the indication data having the second value, and generates The first message MSG1 including the indicated indication data and the sensing data SD1 or SD2 may be generated.

제2서버(160)는 제1값 또는 제2값을 포함하는 지시 데이터를 포함하는 제1메시지(MSG1)를 제1서버(140)로부터 수신하고, 모바일 장치(170)의 애플리케이션 (172)으로부터 전송된 정보(예컨대, 애플리케이션(172)이 절전 모드에 있는지 아닌지를 나타내는 정보)에 기초하여 애플리케이션(172)의 작동 모드를 판단하고, 상기 작동 모드의 판단 결과와 제1메시지(MSG1)에 포함된 상기 지시 데이터에 기초하여 감지 데이터(SD1 또는 SD2)를 포함하는 제2메시지(MSG2)를 생성하고, 제2메시지 (MSG2)를 모바일 장치(170)로 푸시한다.The second server 160 receives the first message MSG1 including the first value or the indication data including the second value from the first server 140 and from the application 172 of the mobile device 170. The operation mode of the application 172 is determined based on the transmitted information (for example, information indicating whether the application 172 is in the power saving mode), and the result of the determination of the operation mode and included in the first message MSG1. The second message MSG2 including the sensing data SD1 or SD2 is generated based on the indication data, and the second message MSG2 is pushed to the mobile device 170.

실시 예들에 따라 제2메시지(MSG2)는 애플리케이션(172)의 작동 모드를 강제로 변경할 수 있는 명령을 포함할 수도 있고 포함하지 않을 수도 있다.According to embodiments, the second message MSG2 may or may not include a command for forcibly changing the operation mode of the application 172.

제2메시지(MSG2)를 수신한 모바일 장치(170)의 수신기는 제2메시지(MSG2)를 모바일 장치(170)의 프로세서로 전송한다. 상기 프로세서는 제2메시지(MSG2)에 포함된 명령에 기초하여 감지 데이터(SD1 또는 SD2)에 해당하는 메시지를 모바일 장치(170)의 출력 장치를 통해 모바일 장치(170)의 사용자에게 알릴 수 있다. 모바일 장치는 스마트폰, 모바일 인터넷 장치(mobile internet device(MID)), 또는 랩탑 컴퓨터일 수 있다. 예컨대, 장치들(140, 160, 및 170) 사이의 통신은 FCM(Firebase Cloud Messaging) 프로토콜을 사용하여 수행될 수 있다.The receiver of the mobile device 170 having received the second message MSG2 transmits the second message MSG2 to the processor of the mobile device 170. The processor may notify a user of the mobile device 170 through the output device of the mobile device 170 a message corresponding to the sensing data SD1 or SD2 based on the command included in the second message MSG2. The mobile device can be a smartphone, a mobile internet device (MID), or a laptop computer. For example, communication between devices 140, 160, and 170 may be performed using Firebase Cloud Messaging (FCM) protocol.

도 2는 도 1에 도시된 제1서버의 블록도를 나타낸다. 도 2를 참조하면, 제1서버(140)는 중계 서버 관리(141), 제2서버 관리(143), 사용자 관리(145), 및 장치 관리(147)을 포함한다. 본 명세서에서 설명되는 각 관리(141, 143, 145, 및 147)와 각 관리(141, 143, 145, 및 147)에 포함된 각 명칭은 기능(function)을 의미할 수 있고, 실시예에 따라 모듈(module)을 의미할 수 있다.FIG. 2 is a block diagram of the first server shown in FIG. 1. Referring to FIG. 2, the first server 140 includes a relay server management 141, a second server management 143, a user management 145, and a device management 147. Each of the managements 141, 143, 145, and 147 described herein and each name included in each of the managements 141, 143, 145, and 147 may mean a function, and according to an embodiment, It may mean a module.

상기 모듈은 하드웨어 장치를 의미할 수 있고, 특정한 하드웨어 장치에서 실행되는 컴퓨터 프로그램(또는 프로그램 코드들)을 의미할 수 있다. 또한, 상기 모듈은 각 명칭에 따른 기능적 및/또는 구조적 결합을 의미할 수 있다.The module may mean a hardware device, and may mean a computer program (or program codes) executed in a specific hardware device. In addition, the module may mean a functional and / or structural combination according to each name.

중계 서버(130)가 MQTT 프로토콜을 사용하는 MQTT 브로커로 구현될 때, 중계 서버 관리(141)는 MQTT 관리를 의미할 수 있다. MQTT 관리(141)는 퍼블리시(141-1), 섭스크라이브(141-2), 메시지 처리(141-3), 및 메시지 이력(141-4)을 포함한다. 각 구성(141-1, 141-2, 141-3, 및 141-4)은 앞에서 설명한 바와 같이 기능 또는 모듈을 의미한다.When relay server 130 is implemented as an MQTT broker using the MQTT protocol, relay server management 141 may mean MQTT management. The MQTT management 141 includes a publish 141-1, a subscribe 141-2, a message processing 141-3, and a message history 141-4. Each of the components 141-1, 141-2, 141-3, and 141-4 means a function or a module as described above.

퍼블리시(141-1)는 애플리케이션(172)으로부터 전송된 메시지(예컨대, 제어 또는 정보 조회 등)에 대해 퍼블리시한다. 퍼블리시된 메시지는 IoT 장치(120)로 전달된다.The publish 141-1 publishes a message (eg, control or information inquiry, etc.) sent from the application 172. The published message is delivered to the IoT device 120.

섭스크라이브(141-2)는 IoT 장치(120)의 정보를 수신하기 위해 중계 서버(130), 예컨대 MQTT 브로커(130)로 섭스크라이브한다. The subscribe 141-2 subscribes to the relay server 130, for example, the MQTT broker 130, to receive the information of the IoT device 120.

메시지 처리(141-3)는 섭스크라이브 메시지에 대한 처리(예컨대, 메시지 전달 또는 정보 가공 등)을 한다.Message processing 141-3 performs processing (e.g., message delivery or information processing, etc.) for subscribed messages.

메시지 이력(141-4)은 퍼블리시된 메시지 및/또는 섭스크라이브된 메시지에 대한 이력을 저장하고 관리한다.The message history 141-4 stores and manages a history of published and / or subscribed messages.

제2서버 관리(143)의 등록 관리(143-1)는 제2서버(160), 예컨대 FCM 등록 토큰을 관리하는 기능을 한다. 애플리케이션(172)은 자신의 등록 토큰을 등록 관리 (143-1)로 전송할 수 있다. 등록 관리(143-1)는 제2서버(160)에 등록되어 있지 않은 토큰을 삭제하는 기능을 한다. 예컨대, 등록 관리(143-1)는 등록 토큰 조회, 생성, 수정, 및/또는 삭제를 관리한다.The registration management 143-1 of the second server management 143 functions to manage the second server 160, for example, the FCM registration token. The application 172 may send its registration token to the registration management 143-1. The registration manager 143-1 functions to delete tokens not registered in the second server 160. For example, registration management 143-1 manages registration token inquiry, creation, modification, and / or deletion.

제2서버 관리(143)의 서버키 관리(143-2)는 메시지 푸시 서비스, 예컨대 FCM 서비스에 액세스할 수 있도록 서버 키를 관리하는 기능을 한다. 메시지 푸시(143-3)는 중계 서버, 예컨대, MQTT 섭스크라이브 메시지를 애플리케이션(172)으로 푸시하는 기능을 한다. 메시지 푸시(143-3)는 애플리케이션(172)으로부터 전송된 메시지를 다른 애플리케이션으로 푸시하는 기능을 한다.The server key management 143-2 of the second server management 143 functions to manage the server key to access the message push service, for example, the FCM service. Message push 143-3 functions to push a relay server, such as an MQTT subscribed message, to application 172. The message push 143-3 functions to push a message sent from the application 172 to another application.

메시지 푸시 이력(143-4)은 푸시된 메시지들에 대한 이력을 저장하는 기능을 한다. 메시지는 보통 우선 순위 메시지와 높은 우선 순위 메시지로 분류된다.The message push history 143-4 functions to store a history of the pushed messages. Messages are usually classified into priority messages and high priority messages.

보통 우선 순위 메시지(예컨대, 도 1의 처리 순서 "2"에 해당하는 메시지)는 절전 모드로 작동 중인 장치(예컨대, 네트워크에 연결되지 않은 모바일 장치)로 하여금 상기 네트워크에 연결하도록 하는 작동을 시키지 않는다. 보통 우선 순위 메시지에 의해 장치의 절전 모드는 해제되지 않으므로, 상기 보통 우선 순위 메시지는 상기 장치의 절전 모드가 해제된 후에야 비로소 상기 장치로 전송된다. 따라서 상기 장치의 절전 모드가 해제될 때까지, 상기 장치로 전송될 상기 보통 우선 순위 메시지의 전송은 지연된다.Normal priority messages (e.g., messages corresponding to processing sequence "2" in FIG. 1) do not cause the device that is operating in power saving mode (e.g., a mobile device not connected to the network) to connect to the network. . Since the power saving mode of the device is not released by the normal priority message, the normal priority message is sent to the device only after the power saving mode of the device is released. Thus, the transmission of the normal priority message to be sent to the device is delayed until the device's power saving mode is released.

그러나, 높은 우선 순위 메시지(예컨대, 도 1의 처리 순서 "1"에 해당하는 메시지)는 절전 모드로 작동 중인 장치(예컨대, 네트워크에 연결되지 않은 모바일 장치)로 하여금 상기 네트워크에 연결하도록 하는 작동을 시킨다. 높은 우선 순위 메시지에 의해 상기 장치의 절전 모드는 해제되므로, 상기 장치로 전송될 상기 높은 우선 순위 메시지는 절전 모드가 강제로 해제된 장치로 즉시 전송된다.However, a high priority message (e.g., the message corresponding to processing sequence "1" in FIG. 1) may cause an operation (such as a mobile device not connected to the network) operating in the power saving mode to connect to the network. Let's do it. Since the power saving mode of the device is released by the high priority message, the high priority message to be sent to the device is immediately sent to the device for which the power saving mode is forcibly released.

메시지 수명 관리(143-6)는, 모바일 장치(170)의 전원이 꺼져 있거나 제2서버(160)와 모바일 장치(172)와의 통신이 불가능한 경우, 모바일 장치(170)로 전송될 메시지를 제2서버(160)에 의해 액세스 가능한 데이터 저장 장치(예컨대, 데이터베이스)에 저장하고, 모바일 장치(170)의 전원이 켜지거나 제2서버(160)와 모바일 장치(172)와의 통신이 가능해질 경우 상기 데이터 저장 장치에 저장된 메시지를 바로 모바일 장치(170)로 전송하는 기능을 수행한다. 상기 데이터 저장 장치는 제2서버(160)의 내부 또는 외부에 배치될 수 있다.The message life management 143-6 may transmit a message to be transmitted to the mobile device 170 when the mobile device 170 is powered off or when the communication between the second server 160 and the mobile device 172 is impossible. The data is stored in a data storage device (eg, a database) accessible by the server 160 and the data when the mobile device 170 is turned on or communication between the second server 160 and the mobile device 172 becomes possible. Performs a function of directly transmitting the message stored in the storage device to the mobile device 170. The data storage device may be disposed inside or outside the second server 160.

메시지 수명은, 모바일 장치(170)로 전송될 메시지가 앞에서 설명한 예들에 따라 모바일 장치(170)로 전송되지 못할 때 모바일 장치(170)로 전송될 메시지가 데이터 저장 장치에 저장되어 있는 시간을 의미한다.The message lifetime refers to the time when a message to be transmitted to the mobile device 170 is stored in the data storage device when the message to be transmitted to the mobile device 170 is not transmitted to the mobile device 170 according to the examples described above. .

제2서버(160)와 애플리케이션(172)과의 사이에 실시간 동기화가 필요한 메시지의 수명은 짧게 설정되어야 한다. 왜냐하면, 모바일 장치(170)에서 메시지가 나중에 수신되면, 상기 메시지는 불필요한 메시지가 되지 때문이다. The lifetime of a message requiring real time synchronization between the second server 160 and the application 172 should be set short. This is because if a message is received later at the mobile device 170, the message is not an unnecessary message.

그러나 모바일 장치(170)로 반드시 전송되어야 할 메시지의 수명은 길게 설정되어야 한다. 왜냐하면, 제2서버(160)와 모바일 장치(172)와의 통신이 불가능한 상태에서 가능한 상태로 변경되었을 때, 모바일 장치(170)로 전송되어야 할 메시지는 모바일 장치(170)로 전송되어야 하기 때문이다.However, the lifetime of the message that must be sent to the mobile device 170 must be set long. This is because, when the communication between the second server 160 and the mobile device 172 is not possible, the message to be transmitted to the mobile device 170 should be transmitted to the mobile device 170.

모바일 장치(170)의 사용자가 애플리케이션(172)으로부터 로그아웃되었을 때, IoT 장치(120)의 정보나 감지 데이터(SD1 또는 SD2)는 사용자가 로그아웃한 애플리케이션(172)으로 전송되어서는 안 된다. 상기 사용자가 애플리케이션(172)에 다시 로그인 했을 때, 사용자가 로그아웃한 애플리케이션(172)으로 전송되지 못한 제1메시지(MSG1)는 제1서버(140)로부터 제2서버(160)로 전송되고, 제2서버(160)의 메시지 재전송(143-7)은 제1메시지(MSG1)에 해당하는 제2메시지(MSG2)를 모바일 장치(170)로 푸시한다.When the user of the mobile device 170 is logged out of the application 172, the information or sense data SD1 or SD2 of the IoT device 120 should not be transmitted to the application 172 where the user has logged out. When the user logs in to the application 172 again, the first message MSG1, which is not transmitted to the application 172 in which the user logs out, is transmitted from the first server 140 to the second server 160, The message retransmission 143-7 of the second server 160 pushes the second message MSG2 corresponding to the first message MSG1 to the mobile device 170.

사용자 관리(145)의 사용자 정보 관리(145-1)는 애플리케이션(172)을 사용하는 사용자 정보를 관리, 예컨대 사용자 정보 조회, 사용자 정보 생성, 사용자 정보 수정, 및/또는 사용자 정보 삭제를 한다.The user information management 145-1 of the user management 145 manages user information using the application 172, for example, user information inquiry, user information generation, user information modification, and / or user information deletion.

로그인/로그아웃(145-2)은 사용자의 애플리케이션(172)에 대한 로그인 또는 로그아웃을 관리하고, 상기 로그인 또는 상기 로그아웃에 따라 제2메시지(MSG2)의 푸시 여부를 결정한다.The login / logout 145-2 manages the login or logout of the user's application 172, and determines whether to push the second message MSG2 according to the login or the logout.

장치 관리(147)의 장치 정보 관리(147-1)는 제1서버(140)에 등록되어 있는 모든 장치들에 대한 정보를 관리한다, 또한, 장치 정보 관리(147-1)는 모바일 장치(170)의 사용자가 이용하고 있는 장치들에 대한 정보를 관리한다.The device information management 147-1 of the device management 147 manages information on all devices registered in the first server 140. Also, the device information management 147-1 manages the mobile device 170. It manages information about the devices being used by the user.

제어(147-2)는 각 장치(예컨대, 110-1, 110-2, 및/또는 120)에 대한 경비 시작 명령, 각 장치(예컨대, 110-1, 110-2, 및/또는 120)를 IoT 장치(120), 제1서버 (140), 또는 애플리케이션(172)에 등록하기 위한 모드 전환 명령, 각 장치(예컨대, 110-1, 110-2, 및/또는 120)의 상태 정보 전송 요청 등 애플리케이션(172)으로부터 전송된 명령을 처리하고 관리한다.Control 147-2 may initiate a guard start command for each device (eg, 110-1, 110-2, and / or 120), each device (eg, 110-1, 110-2, and / or 120). Mode change command for registering to the IoT device 120, the first server 140, or the application 172, request for transmission of status information of each device (eg, 110-1, 110-2, and / or 120) Process and manage commands sent from application 172.

예컨대, 제2서버(160)가 FCM(Firebase Cloud Messaging)을 위한 서버일 때, 제1서버(140)와 제2서버(160)은 FCM 프로토콜을 이용하여 신호를 주고받고, 제2서버(160)와 모바일 장치(170), 예컨대, 애플리케이션(172)은 FCM 프로토콜을 이용하여 신호를 주고받는다. 애플리케이션(172)이 외부 장치와 신호를 주거나 받는다 함은 모바일 장치(170)에 설치된 무선 송수신기를 이용하여 모바일 장치(170)가 상기 외부 장치(예컨대, 140 또는 160)과 신호를 주거나 받는 것을 의미한다.For example, when the second server 160 is a server for Firebase Cloud Messaging (FCM), the first server 140 and the second server 160 exchange signals using the FCM protocol, and the second server 160 ) And mobile device 170, for example, application 172, exchange signals using the FCM protocol. The application 172 sending or receiving a signal to or from an external device means that the mobile device 170 sends or receives a signal to or from the external device (eg, 140 or 160) using a wireless transceiver installed in the mobile device 170. .

도 3은 본 발명의 실시 예에 따른 메시지 푸시 서비스 제공 시스템에 의해 제공되는 메시지 푸시 서비스 제공 방법을 설명하는 플로우차트이다.3 is a flowchart illustrating a message push service providing method provided by a message pushing service providing system according to an exemplary embodiment of the present invention.

도 1부터 도 3을 참조하여 메시지 푸시 서비스 제공 방법이 상세히 설명된다. 제1서버(140)은 사용자가 애플리케이션(172)에 로그인되었는지 로그아웃되었는지를 판단할 수 있고, 제2서버(160)는 애플리케이션(172)의 작동 모드가 절전 모드인지 또는 비절전 모드인지를 판단할 수 있다고 가정한다.A method of providing a message push service will be described in detail with reference to FIGS. 1 to 3. The first server 140 may determine whether the user is logged in or logged out of the application 172, and the second server 160 determines whether the operation mode of the application 172 is a power saving mode or a non-sleep mode. Suppose you can.

여기서, 절전 모드는 모바일 장치(170)가 오랫동안 사용되지 않는 경우로서 모바일 장치(170)에 대한 네트워크 연결과 백그라운드 작업을 미룸으로써 모바일 장치(170)의 배터리의 사용량을 줄이는 기능(또는 모드)을 의미한다. 또한, 도즈 (doze) 모드는 안드로이드 OS(operating system)가 6.0으로 업그레이드됨에 따라 상기 안드로이드 OS에 적용된 절전 모드의 일 예이다.Here, the power saving mode refers to a function (or mode) that reduces battery usage of the mobile device 170 by delaying network connection and background tasks to the mobile device 170 when the mobile device 170 is not used for a long time. do. In addition, the doze mode is an example of a power saving mode applied to the Android OS as the operating system (OS) is upgraded to 6.0.

스마트폰은 아래의 조건들이 모두 만족될 때 도즈 모드로 진입할 수 있다. 상기 조건들 중에서 어느 하나라도 만족되지 못하면, 상기 스마트폰은 상기 도즈 모드로부터 해제(release)된다.The smartphone may enter the doze mode when all of the following conditions are met. If any of the above conditions are not met, the smartphone is released from the dose mode.

1. 스마트폰의 배터리가 충전되지 않고,1. The battery of the smartphone does not charge,

2. 스마트폰이 물리적으로 제자리에 계속 놓여진 상태이고,2. Your smartphone remains physically in place,

3. 스크린 오프 상태로 오랫동안 방지되어 있는 경우3. The screen is off and prevented for a long time

제1서버(140)는 IoT 장치(120)와 중계 서버(130)을 통해 감지 데이터(SD1 또는 SD2)를 수신한다(S110). 예컨대, IoT 장치(120)와 중계 서버(130)가 MQTT 프로토콜을 사용하여 신호를 주거나 받고, 중계 서버(130)와 제1서버(140)가 상기 MQTT 프로토콜을 사용하여 신호를 주거나 받을 때, 제1서버(140)는 MQTT 프로토콜을 이용하여 IoT 장치(120)의 정보와 각 센서(110-1과 110-2)의 정보(SD1과 SD2)를 수집한다.The first server 140 receives the sensing data SD1 or SD2 through the IoT device 120 and the relay server 130 (S110). For example, when the IoT device 120 and the relay server 130 send or receive signals using the MQTT protocol, and the relay server 130 and the first server 140 send or receive signals using the MQTT protocol, One server 140 collects the information of the IoT device 120 and the information (SD1 and SD2) of each sensor (110-1 and 110-2) using the MQTT protocol.

제1서버(140)는 모바일 장치(170)의 사용자가 모바일 장치(170)에 설치된 애플리케이션(172)에 로그인 했는지를 판단한다(S115). 모바일 장치(170)의 사용자가 모바일 장치(170)에 설치된 애플리케이션(172)에 로그인하지 않았다고 판단될 때, 제1서버(140)는 감지 데이터(SD1 또는 SD2)는 데이터 저장 장치(150)에 저장한다 (S120).The first server 140 determines whether the user of the mobile device 170 has logged in to the application 172 installed in the mobile device 170 (S115). When it is determined that the user of the mobile device 170 does not log in to the application 172 installed in the mobile device 170, the first server 140 stores the sensed data SD1 or SD2 in the data storage device 150. (S120).

모바일 장치(170)의 사용자가 모바일 장치(170)에 설치된 애플리케이션(172)에 로그인했다고 판단될 때(S115의 YES), 제1서버(140)는 감지 데이터(SD1 또는 SD2)에 포함된 열림 정보(또는 움직임 정보) 또는 배터리 상태 정보를 이용하여 감지 데이터(SD1 또는 SD2)의 처리 순서(예컨대, 우선 순위)를 확인한다(S125).When it is determined that the user of the mobile device 170 has logged in to the application 172 installed in the mobile device 170 (YES in S115), the first server 140 opens information included in the sensing data SD1 or SD2. The processing order (eg, priority) of the sensing data SD1 or SD2 is checked using the motion information or the battery state information (S125).

제1감지 데이터(SD1)가 열림 정보를 포함하는 감지 데이터일 때, 제1서버 (140)는 테이블(151)을 참조하여 제1감지 데이터(SD1)의 처리 순서가 높은지를 판단한다(S130). 도 1에 도시된 바와 같이 열림 정보가 문열림을 나타낼 때, 제1감지 데이터(SD1)의 처리 순서는 "1"이다. 제1서버(140)는 데이터 저장 장치(150)로부터 전송된 처리 순서("1")에 기초하여 열림 정보를 포함하는 제1감지 데이터(SD1)의 처리 순서가 높다고 판단한다(S130의 YES).When the first sensing data SD1 is sensing data including the open information, the first server 140 determines whether the processing order of the first sensing data SD1 is high by referring to the table 151 (S130). . When the opening information indicates the door opening as shown in Fig. 1, the processing order of the first sensing data SD1 is " 1 ". The first server 140 determines that the processing order of the first sensing data SD1 including the opening information is high based on the processing order "1" transmitted from the data storage device 150 (YES in S130). .

따라서 제1서버(140)는 제1값을 갖는 지시 데이터와 제1감지 데이터(SD1)를 포함하는 제1메시지(MSG1)를 생성하고, 생성된 제1메시지(MSG1)를 제2서버(160)로 전송한다(S135). 여기서 제1값은 설명의 편의를 위해 데이터 "1"이라고 가정한다. 지시 데이터가 데이터 "1"일 때, 제1메시지(MSG1)는 긴급 전송이 필요한 메시지이다.Accordingly, the first server 140 generates the first message MSG1 including the indication data having the first value and the first sensing data SD1, and generates the first message MSG1 generated by the second server 160. In step S135). Here, the first value is assumed to be data "1" for convenience of description. When the indication data is data "1", the first message MSG1 is a message that requires urgent transmission.

그러나, 제1감지 데이터(SD1)가 배터리 상태 정보를 포함하는 감지 데이터일 때, 제1서버(140)는 테이블(151)을 참조하여 제1감지 데이터(SD1)의 처리 순서가 높은지를 판단한다(S130). 도 1에 도시된 바와 같이 배터리 상태 정보가 배터리 로우(low)를 나타낼 때, 제1감지 데이터(SD1)의 처리 순서는 "2"이다. 제1서버(140)는 데이터 저장 장치(150)로부터 전송된 처리 순서("2")에 기초하여 배터리 상태 정보를 포함하는 제1감지 데이터(SD1)의 처리 순서는 높지 않다고 판단한다(S130의 NO).However, when the first sensing data SD1 is sensing data including battery state information, the first server 140 determines whether the processing order of the first sensing data SD1 is high by referring to the table 151. (S130). As shown in FIG. 1, when the battery state information indicates the battery low, the processing order of the first sensing data SD1 is "2". The first server 140 determines that the processing order of the first sensing data SD1 including the battery state information is not high based on the processing order (“2”) transmitted from the data storage device 150 (S130). NO).

따라서 제1서버(140)는 제2값을 갖는 지시 데이터와 제1감지 데이터(SD1)를 포함하는 제1메시지(MSG1)를 생성하고, 생성된 제1메시지(MSG1)를 제2서버(160)로 전송한다(S140). 여기서 제2값은 설명의 편의를 위해 데이터 "0"이라고 가정한다. 지시 데이터가 데이터 "0"일 때, 제1메시지(MSG1)는 긴급 전송이 필요하지 않은 메시지이다.Accordingly, the first server 140 generates the first message MSG1 including the indication data having the second value and the first sensing data SD1, and generates the generated first message MSG1 in the second server 160. Transmit (S140). Here, the second value is assumed to be data "0" for convenience of description. When the indication data is data "0", the first message MSG1 is a message that does not require emergency transmission.

또한, 제2감지 데이터(SD2)가 움직임 정보를 포함하는 감지 데이터일 때, 제1서버(140)는 테이블(151)을 참조하여 제2감지 데이터(SD2)의 처리 순서가 높은지를 판단한다(S130). 도 1에 도시된 바와 같이 움직임 정보가 동작 감지를 나타낼 때, 제2감지 데이터(SD2)의 처리 순서는 "1"이다. 제1서버(140)는 데이터 저장 장치(150)로부터 전송된 처리 순서("1")에 기초하여 움직임 정보를 포함하는 제2감지 데이터(SD2)의 처리 순서는 높다고 판단한다(S130의 YES).In addition, when the second sensing data SD2 is sensing data including motion information, the first server 140 determines whether the processing order of the second sensing data SD2 is high by referring to the table 151 ( S130). As shown in FIG. 1, when the motion information indicates motion detection, the processing order of the second detection data SD2 is "1". The first server 140 determines that the processing order of the second sensing data SD2 including the motion information is high based on the processing order "1" transmitted from the data storage device 150 (YES in S130). .

따라서 제1서버(140)는 제1값을 갖는 지시 데이터와 제2감지 데이터(SD2)를 포함하는 제1메시지(MSG1)를 생성하고, 생성된 제1메시지(MSG1)를 제2서버(160)로 전송한다(S135).Accordingly, the first server 140 generates the first message MSG1 including the indication data having the first value and the second sensing data SD2, and generates the generated first message MSG1 by the second server 160. In step S135).

그러나, 제2감지 데이터(SD2)가 배터리 상태 정보를 포함하는 감지 데이터일 때, 제1서버(140)는 테이블(151)을 참조하여 제2감지 데이터(SD2)의 처리 순서가 높은지를 판단한다(S130). 도 1에 도시된 바와 같이 배터리 상태 정보가 배터리 로우(low)를 나타낼 때, 제2감지 데이터(SD2)의 처리 순서는 "2"이다. 제1서버(140)는 데이터 저장 장치(150)로부터 전송된 처리 순서("2")에 기초하여 배터리 상태 정보를 포함하는 제2감지 데이터(SD2)의 처리 순서는 높지 않다고 판단한다(S130의 NO).However, when the second sensing data SD2 is sensing data including battery state information, the first server 140 determines whether the processing order of the second sensing data SD2 is high by referring to the table 151. (S130). As shown in FIG. 1, when the battery state information indicates the battery low, the processing order of the second sensing data SD2 is "2". The first server 140 determines that the processing order of the second sensing data SD2 including the battery state information is not high based on the processing order (“2”) transmitted from the data storage device 150 (S130). NO).

따라서 제1서버(140)는 제2값을 갖는 지시 데이터와 제2감지 데이터(SD2)를 포함하는 제1메시지(MSG1)를 생성하고, 제1메시지(MSG1)를 제2서버(160)로 전송한다(S140).Accordingly, the first server 140 generates the first message MSG1 including the indication data having the second value and the second sensed data SD2, and sends the first message MSG1 to the second server 160. It transmits (S140).

제1메시지(MSG1)를 수신한 제2서버(160)는 애플리케이션(172)의 작동 모드를 판단한다(S145).Upon receiving the first message MSG1, the second server 160 determines an operation mode of the application 172 (S145).

애플리케이션(172)의 작동 모드가 절전 모드(예컨대, 도즈 모드)라고 판단될 때, 제2서버(160)는 제1메시지(MSG1)에 포함된 지시 데이터가 제1값(예컨대, 데이터 "1')을 갖는지 제2값(예컨대, 데이터 "0")을 갖는지를 판단하기 위해 제1메시지 (MSG1)를 분석(또는 파싱)한다(S150). 즉, 제2서버(120)는 제1메시지(MSG1)에 포함된 지시 데이터의 값에 기초하여 제1메시지(MSG1)의 처리 순서를 판단한다(S150).When it is determined that the operating mode of the application 172 is a power saving mode (eg, a dose mode), the second server 160 determines that the indication data included in the first message MSG1 has a first value (eg, data "1 '). The first message MSG1 is analyzed (or parsed) to determine whether it has a second value (eg, data "0") (S150), that is, the second server 120 determines the first message (S). The processing order of the first message MSG1 is determined based on the value of the indication data included in MSG1) (S150).

애플리케이션(172)의 작동 모드가 절전 모드(예컨대, 도즈 모드)이고 지시 데이터가 제1값(예컨대, 데이터 "1')을 가질 때, 즉, 제1메시지(MSG1)의 처리 순서가 높을 때(S155의 YES), 제2서버(160)는 명령(예컨대 강제 해제 비트)와 감지 데이터(SD1 또는 SD2)를 포함하는 제2메시지(MSG2)를 생성하고, 제2메시지(MSG2)를 모바일 장치 (170)로 푸시(또는 전송)한다(S160).When the operating mode of the application 172 is a power saving mode (e.g., a dose mode) and the indication data has a first value (e.g., data "1 '), that is, when the processing order of the first message MSG1 is high ( YES in S155, the second server 160 generates a second message MSG2 including a command (for example, a forced release bit) and sensed data SD1 or SD2, and transmits the second message MSG2 to the mobile device ( Push (or transmit) to 170 (S160).

절전 모드(예컨대, 도즈 모드)로 작동하는 애플리케이션(172)은 제2메시지(MSG2)에 포함된 명령(예컨대, 강제 해제 비트)에 기초하여 절전 모드(예컨대, 도즈 모드)로부터 강제로 해제되고, 절전 모드(예컨대, 도즈 모드)로부터 강제로 해제된 애플리케이션(172)은 제2메시지(MSG2)로부터 추출된 감지 데이터(SD1 또는 SD2)에 기초하여 어떤 장소에 설치된 센서(110-1)의 출입문이 열렸는지 또는 어떤 장소에 설치된 센서(110-2)에서 동작(또는 움직임)이 감지되었는지를 나타내는 메시지를 출력 장치(예컨대, 디스플레이 장치 또는 스피커)를 통해 모바일 장치(170)의 사용자에게 알릴 수 있다(S165).The application 172 operating in the power save mode (eg, the dose mode) is forcibly released from the power save mode (eg, the dose mode) based on the command (eg, force release bit) included in the second message MSG2, The application 172 which is forcibly released from the power saving mode (eg, the dose mode) may have an entrance door of the sensor 110-1 installed at a certain location based on the sensing data SD1 or SD2 extracted from the second message MSG2. A message indicating whether an operation (or movement) is detected by the sensor 110-2 installed in the sensor 110-2 may be notified to the user of the mobile device 170 through an output device (eg, a display device or a speaker) ( S165).

그러나 애플리케이션(172)의 작동 모드가 절전 모드(예컨대, 도즈 모드)이고 지시 데이터가 제2값(예컨대, 데이터 "0')을 가질 때, 즉, 제1메시지(MSG1)의 처리 순서가 높지 않을 때(S155의 NO), 제2서버(160)는 제1메시지(MSG1)에 포함된 감지 데이터(SD1 또는 SD2)를 제2서버(160)에 연결된 데이터 저장 장치에 저장한다 (S170).However, when the operating mode of the application 172 is the power saving mode (eg, the dose mode) and the indication data has the second value (eg, the data "0 '), that is, the processing order of the first message MSG1 may not be high. In operation S155, the second server 160 stores the sensing data SD1 or SD2 included in the first message MSG1 in a data storage device connected to the second server 160 (S170).

제2서버(160)는, 애플리케이션(172)이 절전 모드로부터 해제될 때까지, 제1메시지(MSG1)에 포함된 감지 데이터(SD1 또는 SD2)를 제2서버(160)에 연결된 데이터 저장 장치에 저장한다(S170).The second server 160 stores the sensed data SD1 or SD2 included in the first message MSG1 in the data storage device connected to the second server 160 until the application 172 is released from the power saving mode. Save (S170).

애플리케이션(172)이 절전 모드로부터 해제된 후, 즉 애플리케이션(172)이 제2메시지(MSG2)를 정상적으로 수신할 수 있을 때, 제2서버(160)는 제1메시지 (MSG1)에 해당하는 제2메시지(MSG2)를 생성하고 제2메시지(MSG2)를 모바일 장치 (170)로 푸시(또는 전송)한다(S175). 제2메시지(MSG2)는 감지 데이터(SD1 또는 SD2)를 포함한다.After the application 172 is released from the power saving mode, that is, when the application 172 can normally receive the second message MSG2, the second server 160 receives the second message corresponding to the first message MSG1. A message MSG2 is generated and the second message MSG2 is pushed (or transmitted) to the mobile device 170 (S175). The second message MSG2 includes sensing data SD1 or SD2.

절전 모드(예컨대, 도즈 모드)로부터 해제된 애플리케이션(172)은 제2메시지(MSG2)로부터 추출된 감지 데이터(SD1 또는 SD2)에 기초하여 어떤 장소에 설치된 센서(110-1)의 출입문이 열렸는지 또는 어떤 장소에 설치된 센서(110-2)에서 동작이 감지되었는지를 나타내는 메시지를 출력 장치(예컨대, 디스플레이 장치 또는 스피커)를 통해 모바일 장치(170)의 사용자에게 알릴 수 있다(S165).The application 172 released from the power saving mode (eg, the doze mode) is opened at the door of the sensor 110-1 installed at a certain location based on the sensing data SD1 or SD2 extracted from the second message MSG2. Alternatively, a message indicating whether an operation is detected by the sensor 110-2 installed in a place may be notified to a user of the mobile device 170 through an output device (eg, a display device or a speaker) (S165).

상술한 바와 같이, 제1서버(140)는 제1프로토콜(예컨대, MQTT 프로토콜)을 이용하여 IoT 장치(120)로부터 감지 데이터(SD1 또는 SD2)를 수집하고, 지시 데이터와 감지 데이터(SD1 또는 SD2)를 포함하는 제1메시지(MSG1)를 생성하고, 제1메시지(MSG1)를 제2프로토콜(예컨대, FCM 프로토콜)을 이용하여 제2서버(160)로 전송하면, 제2서버(160)는 애플리케이션(172)의 현재 작동 모드와 제1메시지(MSG1)에 포함된 지시 데이터에 기초하여 제2메시지(MSG2)를 생성하고, 제2메시지(MSG2)가 모바일 장치(170)로 푸시되는 시간 또는 타이밍을 조절할 수 있다.As described above, the first server 140 collects the sensing data SD1 or SD2 from the IoT device 120 using the first protocol (eg, the MQTT protocol), and indicates the indication data and the sensing data SD1 or SD2. After generating the first message MSG1 including) and transmitting the first message MSG1 to the second server 160 using the second protocol (eg, the FCM protocol), the second server 160 The second message MSG2 is generated based on the current operation mode of the application 172 and the indication data included in the first message MSG1, and the time at which the second message MSG2 is pushed to the mobile device 170, or You can adjust the timing.

제1서버(140)는 MQTT 프로토콜을 이용하여 감지 데이터(SD1과 SD2)를 수집하고, 애플리케이션(172)은 MQTT 프로토콜 대신에 오픈 API 또는 FCM 프로토콜을 이용하여 제2서버(160)로부터 제2메시지(MSG2)를 수신한다. 즉, 종래에는 애플리케이션(172)와 제2서버(160)는 MQTT 프로토콜을 이용하여 신호를 주고 받았으나, 본 발명의 실시 예에 따른 메시지 푸시 서비스 제공 시스템(100)에서 제2서버(160)는 FCM 프로토콜을 이용하여 제2메시지(MSG2)를 애플리케이션(172)으로 푸시한다. 따라서, 애플리케이션(172)이 설치된 모바일 장치(170)의 배터리 소모는 감소한다.The first server 140 collects sensed data SD1 and SD2 using the MQTT protocol, and the application 172 uses the open API or FCM protocol instead of the MQTT protocol to send a second message from the second server 160. Receive (MSG2). That is, in the related art, the application 172 and the second server 160 exchange signals using the MQTT protocol, but in the message push service providing system 100 according to the embodiment of the present invention, the second server 160 is an FCM. The second message MSG2 is pushed to the application 172 using the protocol. Thus, battery consumption of the mobile device 170 with the application 172 installed is reduced.

제2서버(160)는 애플리케이션(172)의 절전 모드(예컨대, 도즈 모드)를 제2메시지(MSG2)에 포함된 명령을 이용하여 해제할 수 있다. 이에 따라 애플리케이션 (172)은 제2메시지(MSG2)를 수신하기 위해 제2서버(160)와의 네트워크를 연결할 수 있다.The second server 160 may release the power saving mode (eg, the dose mode) of the application 172 by using a command included in the second message MSG2. Accordingly, the application 172 may connect a network with the second server 160 to receive the second message MSG2.

제2서버(160)는 애플리케이션(172)의 절전 모드(예컨대, 도즈 모드)가 해제될 때까지 제1서버(140)로부터 전송된 제1메시지(MSG1)를 데이터 저장 장치에 저장할 수 있다.The second server 160 may store the first message MSG1 transmitted from the first server 140 in the data storage device until the power saving mode (eg, the dose mode) of the application 172 is released.

본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.Although the present invention has been described with reference to the embodiments shown in the drawings, this is merely exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

100: 메시지 푸시 서비스 제공 시스템
110-1, 110-2: 센서
120: IoT 장치, 허브
130: 중계서버, MQTT 브로커
140: 제1서버
150: 데이터 저장 장치, 데이터베이스
151: 룩-업 테이블
160: 제2서버
170: 모바일 장치
172: 애플리케이션
100: message push service providing system
110-1, 110-2: sensor
120: IoT devices, hubs
130: relay server, MQTT broker
140: first server
150: data storage, database
151: look-up table
160: second server
170: mobile device
172: Application

Claims (9)

제1서버가 허브로부터 전송된 감지 데이터를 수신하는 단계;
상기 제1서버가 모바일 장치에 설치된 애플리케이션이 로그인 상태인지를 판단하는 단계;
상기 애플리케이션이 상기 로그인 상태일 때, 상기 제1서버가 상기 감지 데이터의 처리 순서를 판단하는 단계;
상기 처리 순서의 판단 결과에 따라 상기 제1서버가 상기 감지 데이터의 긴급 전송 여부를 지시하는 지시 데이터와 상기 감지 데이터를 포함하는 제1메시지를 생성하고, 상기 제1메시지를 제2서버로 전송하는 단계;
상기 제1메시지를 수신한 상기 제2서버가 상기 애플리케이션의 작동 모드를 판단하는 단계; 및
상기 작동 모드의 판단 결과와 상기 지시 데이터에 기초하여 상기 제2서버가 상기 제1메시지에 포함된 상기 감지 데이터를 포함하는 제2메시지를 생성하는 단계; 및
상기 제2서버가 상기 제2메시지를 상기 모바일 장치로 푸시하는 단계를 포함하는 메시지 푸시 서비스 제공 방법.
Receiving, by the first server, the sensed data transmitted from the hub;
Determining, by the first server, whether an application installed on a mobile device is logged in;
Determining, by the first server, a processing order of the sensed data when the application is in the login state;
The first server generates a first message including instruction data indicating whether the sensed data is urgently transmitted and the sensed data according to the determination result of the processing sequence, and transmits the first message to the second server. step;
Determining, by the second server receiving the first message, an operation mode of the application; And
Generating, by the second server, a second message including the sensed data included in the first message based on the determination result of the operation mode and the indication data; And
And pushing, by the second server, the second message to the mobile device.
제1항에 있어서, 상기 제2메시지를 생성하는 단계는,
상기 작동 모드가 도즈(doze)모드이고 상기 지시 데이터가 긴급 전송을 지시할 때, 상기 제2서버는 상기 도즈 모드를 강제로 해제하기 위한 해제 지시 데이터와 상기 감지 데이터를 포함하는 상기 제2메시지를 생성하는 메시지 푸시 서비스 제공 방법.
The method of claim 1, wherein generating the second message comprises:
When the operation mode is a doze mode and the indication data indicates an emergency transmission, the second server includes the second message including release indication data and the sensing data for forcibly releasing the dose mode. How to provide a message push service to create.
제1항에 있어서, 상기 제2메시지를 생성하는 단계는,
상기 작동 모드가 도즈(doze)모드이고 상기 지시 데이터가 긴급 전송을 지시하지 않을 때, 상기 제2서버가 상기 제1메시지를 데이터 저장 장치에 저장하는 단계:
상기 제2서버가 상기 도즈 모드의 해제 여부를 감시하는 단계; 및
상기 도즈 모드가 해제될 때, 상기 제2서버가 상기 데이터 저장 장치에 저장된 상기 제1메시지에 해당하는 상기 제2메시지를 생성하는 단계를 포함하는 메시지 푸시 서비스 제공 방법.
The method of claim 1, wherein generating the second message comprises:
When the operation mode is a doze mode and the indication data does not indicate an emergency transmission, the second server storing the first message in a data storage device:
Monitoring, by the second server, whether the dose mode is released; And
And when the dose mode is released, the second server generating the second message corresponding to the first message stored in the data storage device.
제1항에 있어서,
상기 제1서버는 상기 허브로부터 전송된 상기 감지 데이터를 MQTT(Message Queue Telemetry Transport) 프로토콜을 사용하여 수신하고,
상기 제2서버는 상기 제2메시지를 오픈 API 또는 FCM(Firebase Cloud Messaging) 프로토콜을 사용하여 상기 모바일 장치로 푸시하는 메시지 푸시 서비스 제공 방법.
The method of claim 1,
The first server receives the sensed data transmitted from the hub using a Message Queue Telemetry Transport (MQTT) protocol,
And the second server pushes the second message to the mobile device using an open API or Firebase Cloud Messaging (FCM) protocol.
제1항에 있어서,
상기 애플리케이션이 로그 아웃 상태일 때, 상기 제1서버가 상기 감지 데이터를 데이터 저장 장치에 저장하는 단계; 및
상기 애플리케이션이 상기 로그아웃 상태로부터 상기 로그인 상태로 변경된 후, 상기 제1서버가 상기 데이터 저장 장치로부터 읽혀진 상기 감지 데이터의 처리 순서를 판단하는 단계를 더 포함하는 메시지 푸시 서비스 제공 방법.
The method of claim 1,
Storing, by the first server, the sensed data in a data storage device when the application is logged out; And
And after the application is changed from the logout state to the login state, the first server determining a processing order of the sensed data read from the data storage device.
제1항에 있어서, 상기 제1서버가 상기 감지 데이터의 처리 순서를 판단하는 단계는,
상기 제1서버가 상기 감지 데이터로부터 메타데이터를 추출하는 단계; 및
상기 제1서버가 추출된 메타데이터와 데이터 저장 장치에 저장된 처리 순서에 따라 상기 감지 데이터의 처리 순서를 판단하는 단계를 포함하는 메시지 푸시 서비스 제공 방법.
The method of claim 1, wherein the determining of the processing order of the sensed data by the first server comprises:
Extracting metadata from the sensed data by the first server; And
And determining, by the first server, the processing order of the sensed data according to the extracted metadata and the processing order stored in the data storage device.
허브와 통신하는 제1서버;
상기 제1서버와 통신하고, 모바일 장치로 제2메시지를 푸시하는 제2서버를 포함하고,
상기 제1서버는,
상기 허브로부터 전송된 감지 데이터를 수신하고, 상기 모바일 장치에 설치된 애플리케이션이 로그인 상태인지를 판단하고, 상기 애플리케이션이 상기 로그인 상태일 때 상기 감지 데이터의 처리 순서를 판단하고, 상기 처리 순서의 판단 결과에 따라 상기 감지 데이터의 긴급 전송 여부를 지시하는 지시 데이터와 상기 감지 데이터를 포함하는 제1메시지를 생성하고, 상기 제1메시지를 상기 제2서버로 전송하고,
상기 제2서버는,
상기 애플리케이션의 작동 모드를 판단하고, 상기 작동 모드의 판단 결과와 상기 지시 데이터에 기초하여 상기 감지 데이터를 포함하는 상기 제2메시지를 생성하고, 상기 제2메시지를 상기 모바일 장치로 푸시하는 메시지 푸시 서비스 제공 시스템.
A first server in communication with the hub;
A second server in communication with the first server, the second server pushing a second message to a mobile device;
The first server,
Receive sensing data transmitted from the hub, determine whether the application installed in the mobile device is logged in, determine the processing order of the sensing data when the application is in the logged-in state, Accordingly generating a first message including the indication data indicating whether the sensed data is urgently transmitted and the sensed data, transmitting the first message to the second server,
The second server,
A message push service for determining an operation mode of the application, generating the second message including the sensed data based on the determination result of the operation mode and the indication data, and pushing the second message to the mobile device; Provide system.
제7항에 있어서, 상기 제2서버는,
상기 작동 모드가 도즈(doze)모드이고 상기 지시 데이터가 긴급 전송을 지시할 때, 상기 애플리케이션의 상기 도즈 모드를 강제로 해제하기 위한 해제 지시 데이터와 상기 감지 데이터를 포함하는 상기 제2메시지를 생성하는 메시지 푸시 서비스 제공 시스템.
The method of claim 7, wherein the second server,
When the operation mode is a doze mode and the indication data indicates an emergency transmission, generating the second message including the release indication data and the sensing data for forcibly releasing the dose mode of the application. Message Push Service Provision System.
제7항에 있어서,
상기 제1서버는 상기 허브로부터 전송된 상기 감지 데이터를 MQTT (Message Queue Telemetry Transport) 프로토콜을 사용하여 수신하고,
상기 제2서버는 상기 제2메시지를 오픈 API 또는 FCM(Firebase Cloud Messaging) 프로토콜을 사용하여 상기 모바일 장치로 푸시하는 메시지 푸시 서비스 제공 시스템.
The method of claim 7, wherein
The first server receives the sensed data transmitted from the hub using MQTT (Message Queue Telemetry Transport) protocol,
And the second server pushes the second message to the mobile device using an open API or a Firebase Cloud Messaging (FCM) protocol.
KR1020180084459A 2018-07-20 2018-07-20 System and method for providing message push service KR102091676B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180084459A KR102091676B1 (en) 2018-07-20 2018-07-20 System and method for providing message push service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180084459A KR102091676B1 (en) 2018-07-20 2018-07-20 System and method for providing message push service

Publications (2)

Publication Number Publication Date
KR20200009721A true KR20200009721A (en) 2020-01-30
KR102091676B1 KR102091676B1 (en) 2020-03-20

Family

ID=69321690

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180084459A KR102091676B1 (en) 2018-07-20 2018-07-20 System and method for providing message push service

Country Status (1)

Country Link
KR (1) KR102091676B1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007281837A (en) * 2006-04-06 2007-10-25 Nec Corp Urgent contact system and portable communication terminal
KR20090079471A (en) * 2008-01-17 2009-07-22 삼성전자주식회사 Apparatus and method to provide an emergency service in a communication system
KR20110087197A (en) * 2010-01-25 2011-08-02 엘지전자 주식회사 Apparatus and method for receiving an emergency alert message in a broadband wireless communication system
JP2013016892A (en) * 2011-06-30 2013-01-24 Ntt Docomo Inc User terminal and communication method
WO2017072510A1 (en) 2015-10-28 2017-05-04 Simple Matters Limited Communication system
KR20180070947A (en) * 2016-12-19 2018-06-27 전자부품연구원 Communication Method and System based on MQTT/HTTP for IoT Gateway Using Private-IP Address

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007281837A (en) * 2006-04-06 2007-10-25 Nec Corp Urgent contact system and portable communication terminal
KR20090079471A (en) * 2008-01-17 2009-07-22 삼성전자주식회사 Apparatus and method to provide an emergency service in a communication system
KR20110087197A (en) * 2010-01-25 2011-08-02 엘지전자 주식회사 Apparatus and method for receiving an emergency alert message in a broadband wireless communication system
JP2013016892A (en) * 2011-06-30 2013-01-24 Ntt Docomo Inc User terminal and communication method
WO2017072510A1 (en) 2015-10-28 2017-05-04 Simple Matters Limited Communication system
KR20180070947A (en) * 2016-12-19 2018-06-27 전자부품연구원 Communication Method and System based on MQTT/HTTP for IoT Gateway Using Private-IP Address

Also Published As

Publication number Publication date
KR102091676B1 (en) 2020-03-20

Similar Documents

Publication Publication Date Title
US20230362029A1 (en) Bidirectional security sensor communication for a premises security system
US10397042B2 (en) Method and apparatus for automation and alarm architecture
TWI509579B (en) Server-based notification of alarm event subsequent to communication failure with armed security system
US7507946B2 (en) Network sensor system and protocol
US20170257226A1 (en) Method for Detecting the Status of a Home Automation Device
US20080196083A1 (en) Sensor discovery and configuration
US8386559B2 (en) Method for exchanging requests between the computer application of a mobile terminal and an instantaneous messaging server
CN105279210A (en) Automatic mode switching in a synchronous replication environment
Zhou et al. Toward the Internet of Things application and management: A practical approach
KR20200044034A (en) Building system control using building occupancy
EP4106418A1 (en) Intent state management method, network element, and system
CN113038090B (en) Transmission link management method and system
WO2017215476A1 (en) Intelligent device control method, apparatus and device for internet of things
US10018981B2 (en) Monitoring removal of an automation control panel
KR102091676B1 (en) System and method for providing message push service
US9622093B2 (en) System and method of transmitting a message to a wireless limited node
KR102402853B1 (en) Apparatus for providing standalone automatic execution service and standalone simultaneous execution service, and method thereof
CN114194205B (en) Vehicle control method based on Bluetooth process, vehicle and storage medium
KR101514417B1 (en) Method and apparatus for controlling device in home, communicating and transmitting secure image by using communication service and recording medium thereof
US11563659B2 (en) Edge alert coordinator for mobile devices
US11662704B1 (en) Monitoring removal of an automation control panel
EP3179460A1 (en) A sensor network and a method for detecting an event in a sensor network
KR101929257B1 (en) Method of operating hub, and method of operating security system including the hub
WO2023117071A1 (en) Management of offline internet-of-things devices
CN113900714A (en) Electronic equipment and nearby awakening method and device 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
GRNT Written decision to grant