KR20190095743A - Device, method and computer readable storage medium to provide messaging service using bluetooth low energy - Google Patents

Device, method and computer readable storage medium to provide messaging service using bluetooth low energy Download PDF

Info

Publication number
KR20190095743A
KR20190095743A KR1020180015117A KR20180015117A KR20190095743A KR 20190095743 A KR20190095743 A KR 20190095743A KR 1020180015117 A KR1020180015117 A KR 1020180015117A KR 20180015117 A KR20180015117 A KR 20180015117A KR 20190095743 A KR20190095743 A KR 20190095743A
Authority
KR
South Korea
Prior art keywords
message
computing device
data
partial
input
Prior art date
Application number
KR1020180015117A
Other languages
Korean (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 KR1020180015117A priority Critical patent/KR20190095743A/en
Publication of KR20190095743A publication Critical patent/KR20190095743A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)

Abstract

An instant messaging device is generally described. According to an embodiment of the present invention, the instant messaging device may comprise a Bluetooth module, a data packet analyzing unit, a message data collecting unit, and a message restoring unit. The Bluetooth module may be configured to scan a computing device advertising a data packet, and to receive the data packet. The data packet analyzing unit may obtain a message identifier and partial message data from the received data packet. The message data collecting unit may collect at least one partial message data based on the message identifier. The message restoring unit may restore a message by integrating the collected at least one partial message data.

Description

저전력 블루투스를 이용한 인스턴트 메시징 서비스를 제공하기 위한 장치, 방법 및 컴퓨터 판독가능 저장 매체 {DEVICE, METHOD AND COMPUTER READABLE STORAGE MEDIUM TO PROVIDE MESSAGING SERVICE USING BLUETOOTH LOW ENERGY}DEVICE, METHOD AND COMPUTER READABLE STORAGE MEDIUM TO PROVIDE MESSAGING SERVICE USING BLUETOOTH LOW ENERGY}

본 개시는 블루투스, 특히 저전력 블루투스를 이용하여 인스턴트 메시징 서비스를 제공하기 위한 장치, 방법 및 컴퓨터 판독가능 저장 매체에 관한 것이다.The present disclosure relates to an apparatus, a method and a computer readable storage medium for providing an instant messaging service using Bluetooth, in particular low power Bluetooth.

여기에서 달리 언급하지 않으면, 본 섹션에서 기술되는 내용은 본 출원에서의 청구항의 선행 기술이 아니며 본 섹션에 기재된 것 만으로 선행 기술로서 인정되는 것이 아니다.Unless stated otherwise herein, the content described in this section is not prior art to the claims in this application and is not admitted as prior art only as described in this section.

블루투스(Bluetooth)는 휴대폰, 노트북, 스마트폰, 태블릿, 등의 컴퓨팅 장치를 이용하여 근거리 무선 통신을 수행하기 위한 무선 기술 표준을 지칭한다. 블루투스를 이용하는 컴퓨팅 장치는 통상, 블루투스 모듈을 구동/활성화하고, 활성화된 블루투스 모듈을 이용하여 컴퓨팅 장치 근방의 블루투스 모듈과 통신 가능한 장치를 스캔한다. 이후, 컴퓨팅 장치는 스캔된 장치와 페어링 및/또는 본딩 절차를 수행함으로써, 스캔된 장치에 연결되고 스캔된 장치와의 통신을 수행할 수 있다. 최근, 저전력 블루투스(Bluetooth Low Energy; BLE)와 같은 블루투스 기술의 발전에 따라, 블루투스 통신의 속도는 점차 증가하고, 블루투스 통신에 의한 소비전력은 점차 감소해왔다.Bluetooth refers to a wireless technology standard for performing near field communication using computing devices such as mobile phones, laptops, smartphones, tablets, and the like. A computing device using Bluetooth typically drives / activates the Bluetooth module and scans for devices that can communicate with the Bluetooth module near the computing device using the activated Bluetooth module. Thereafter, the computing device may be connected to the scanned device and perform communication with the scanned device by performing a pairing and / or bonding procedure with the scanned device. Recently, with the development of Bluetooth technology such as Bluetooth Low Energy (BLE), the speed of Bluetooth communication has gradually increased, and the power consumption by Bluetooth communication has gradually decreased.

이러한 블루투스를 적절하게 이용하면, 컴퓨팅 장치는 인스턴트 메시징 서비스를 제공할 수 있다. 선행기술문헌 1에 따르면, 블루투스 기반의 채팅 시스템을 개시한다. 선행기술문헌 1은 기지국의 관여 없이 다른 장치와의 링크를 설정한 후에 메시지를 송수신할 수 있도록 하고 있다. 선행기술문헌 2에 따르면, BLE 기법을 이용한 메시징 방법을 개시하고 있다. 선행기술문헌 2는 블루투스 모듈을 이용하여 다른 장치와의 페어링 및 본딩 절차를 수행한 이후에는 Wi-Fi와 같은 다른 통신 매체를 이용하여, 다른 장치와의 메시징을 수행한다. Using such Bluetooth as appropriate, the computing device can provide instant messaging services. According to the prior art document 1, a Bluetooth-based chat system is disclosed. Prior art document 1 allows a message to be transmitted and received after establishing a link with another device without involvement of a base station. According to Prior Art Document 2, a messaging method using a BLE technique is disclosed. Prior art document 2 performs a messaging with another device using another communication medium such as Wi-Fi after performing a pairing and bonding procedure with another device using a Bluetooth module.

선행기술문헌 1: 한국 특허공개공보 제10-2008-0013119호Prior Art Document 1: Korean Patent Publication No. 10-2008-0013119 선행기술문헌 2: 한국특허 제10-1728115호Prior Art Document 2: Korean Patent No. 10-1728115

일부 실시예에서, 블루투스 모듈을 이용한 인스턴트 메시징 방법이 설명된다. 일 예시적인 방법은 제1 컴퓨팅 장치의 제어 하에서 수행될 수 있다. 방법은 블루투스 모듈에 의해, 데이터 패킷을 어드버타이징(advertising)하는 제2 컴퓨팅 장치를 스캔하는 단계; 블루투스 모듈에 의해, 스캔된 제2 컴퓨팅 장치로부터 어드버타이징되는 데이터 패킷을 수신하는 단계; 수신된 데이터 패킷으로부터, 메시지 식별자 및 제2 컴퓨팅 장치에서 입력된 메시지의 적어도 일부를 포함하는 부분 메시지 데이터를 획득하는 단계; 메시지 식별자에 기초하여, 부분 메시지 데이터를 포함하는 메시지에 관한 하나 이상의 부분 메시지 데이터를 수집하는 단계; 수집된 하나 이상의 부분 메시지 데이터를 통합하여 메시지를 복원하는 단계; 및 복원된 메시지를 제1 컴퓨팅 장치 상에서 출력하는 단계를 포함할 수 있다.In some embodiments, an instant messaging method using a Bluetooth module is described. One example method may be performed under the control of a first computing device. The method includes scanning, by the Bluetooth module, a second computing device for advertising the data packet; Receiving, by the Bluetooth module, a data packet being advertised from the scanned second computing device; Obtaining, from the received data packet, partial message data comprising a message identifier and at least a portion of the message input at the second computing device; Based on the message identifier, collecting one or more partial message data relating to the message comprising the partial message data; Reconstructing the message by integrating the collected one or more partial message data; And outputting the restored message on the first computing device.

일부 실시예에서, 제1 컴퓨팅 장치의 제어 하에서 구동되는 블루투스 모듈을 이용하여 수행되는 인스턴트 메시징 방법이 설명된다. 일 예시적인 방법은 제1 컴퓨팅 장치의 사용자에 의해 입력되거나 제1 컴퓨팅 장치에 의해 획득된 정보에 기초하여 생성된 입력 메시지를 수신하는 단계; 블루투스 모듈에 의해 어드버타이징(advertising)될 데이터 패킷의 미리 정해진 특성에 기초하여, 입력 메시지를 하나 이상의 부분 메시지 데이터로 분할하는 단계; 제1 컴퓨팅 장치를 식별하는 장치 식별자, 입력 메시지의 어드버타이징에 관한 미리 정해진 시간 구간을 나타내는 세션 식별자, 하나 이상의 부분 메시지 데이터 중 하나의 부분 메시지 데이터 및 입력 메시지에 대한 하나의 부분 메시지 데이터의 메시지 인덱스를 각각 포함하는 하나 이상의 데이터 패킷을 생성하는 단계; 및 블루투스 모듈에 의해, 미리 정해진 시간 구간 동안, 생성된 하나 이상의 데이터 패킷을 어드버타이징(advertising)하는 단계를 포함할 수 있다.In some embodiments, an instant messaging method performed using a Bluetooth module driven under the control of a first computing device is described. One example method includes receiving an input message generated by a user of a first computing device or generated based on information obtained by the first computing device; Partitioning the input message into one or more partial message data based on a predetermined characteristic of the data packet to be advertised by the Bluetooth module; A device identifier identifying the first computing device, a session identifier indicating a predetermined time interval for advertising the input message, one partial message data of the one or more partial message data, and one partial message data for the input message. Generating one or more data packets each comprising a message index; And advertising, by the Bluetooth module, the generated one or more data packets during a predetermined time interval.

일부 실시예에서, 인스턴트 메시징 장치가 설명된다. 일 예시적인 인스턴트 메시징 장치는 블루투스 모듈, 데이터 패킷 분석부, 메시지 데이터 수집부 및 메시지 복원부를 포함할 수 있다. 블루투스 모듈은 데이터 패킷을 어드버타이징(advertising)하는 컴퓨팅 장치를 스캔하고, 스캔된 컴퓨팅 장치로부터 어드버타이징되는 데이터 패킷을 수신하도록 구성될 수 있다. 데이터 패킷 분석부는 수신된 데이터 패킷으로부터, 메시지 식별자 및 컴퓨팅 장치에서 입력된 메시지의 적어도 일부를 포함하는 부분 메시지 데이터를 획득하도록 구성될 수 있다. 메시지 데이터 수집부는 메시지 식별자에 기초하여, 부분 메시지 데이터를 포함하는 메시지에 관한 하나 이상의 부분 메시지 데이터를 수집하도록 구성될 수 있다. 메시지 복원부는 수집된 하나 이상의 부분 메시지 데이터를 통합하여 메시지를 복원하도록 구성될 수 있다.In some embodiments, instant messaging devices are described. One exemplary instant messaging device may include a Bluetooth module, a data packet analyzer, a message data collector, and a message restorer. The Bluetooth module may be configured to scan a computing device for advertising the data packet and receive the data packet being advertised from the scanned computing device. The data packet analyzer may be configured to obtain, from the received data packet, partial message data including a message identifier and at least a portion of the message input at the computing device. The message data collector may be configured to collect one or more partial message data related to the message including the partial message data based on the message identifier. The message recovery unit may be configured to restore the message by integrating the collected one or more partial message data.

일부 실시예에서, 인스턴트 메시징 장치는 입력부, 입력 메시지 분할부 및 어드버타이즈 스케줄러를 더 포함할 수 있다. 입력부는 사용자에 의해 입력되거나 인스턴트 메시징 장치에 의해 획득된 정보에 기초하여 생성된 입력 메시지를 수신하도록 구성될 수 있다. 입력 메시지 분할부는 블루투스 모듈에 의해 어드버타이징될 데이터 패킷의 미리 정해진 특성에 기초하여, 입력 메시지를 하나 이상의 부분 입력 메시지 데이터로 분할하도록 구성될 수 있다. 어드버타이즈 스케줄러는 입력 메시지에 대한 입력 메시지 식별자 및 하나 이상의 부분 메시지 데이터 중 하나의 부분 입력 메시지 데이터를 각각 포함하는 하나 이상의 전송 데이터 패킷을 생성하도록 구성될 수 있다. 블루투스 모듈은 어드버타이즈 스케줄러에 의해 생성된 하나 이상의 전송 데이터 패킷을 어드버타이징하도록 구성될 수 있다.In some embodiments, the instant messaging device may further include an input, an input message divider and an advertising scheduler. The input unit may be configured to receive an input message generated by the user or generated based on the information obtained by the instant messaging device. The input message divider may be configured to divide the input message into one or more partial input message data based on a predetermined characteristic of the data packet to be advertised by the Bluetooth module. The advertising scheduler may be configured to generate one or more transmission data packets each comprising an input message identifier for the input message and one partial input message data of the one or more partial message data. The Bluetooth module may be configured to advertise one or more transmission data packets generated by the advertising scheduler.

일부 실시예에서, 블루투스 모듈을 이용하는 컴퓨팅 장치에서 실행되며, 인스턴트 메시징 서비스를 제공하기 위하여 하나 이상의 컴퓨터 실행가능 명령어가 저장된 컴퓨터 판독가능 저장 매체가 설명된다. 블루투스 모듈은 데이터 패킷을 어드버타이징(advertising)하는 외부 컴퓨팅 장치를 스캔하고, 스캔된 외부 컴퓨팅 장치로부터 어드버타이징되는 데이터 패킷을 수신하도록 구성될 수 있다. 일 예시적인 컴퓨터 판독가능 저장 매체는 저장된 하나 이상의 컴퓨터 실행가능 명령어가 실행되면, 컴퓨팅 장치로 하여금, 수신된 데이터 패킷으로부터, 메시지 식별자 및 외부 컴퓨팅 장치에서 입력된 메시지의 적어도 일부를 포함하는 부분 메시지 데이터를 획득하는 동작; 메시지 식별자에 기초하여, 부분 메시지 데이터를 포함하는 메시지에 관한 하나 이상의 부분 메시지 데이터를 수집하는 동작; 및 수집된 하나 이상의 부분 메시지 데이터를 통합하여 메시지를 복원하는 동작을 포함하는 동작들을 수행하도록 할 수 있다.In some embodiments, a computer readable storage medium that executes on a computing device using a Bluetooth module and stores one or more computer executable instructions for providing an instant messaging service is described. The Bluetooth module may be configured to scan an external computing device advertising the data packet and receive the data packet being advertised from the scanned external computing device. One exemplary computer readable storage medium may, when executed, store one or more computer executable instructions, cause the computing device to include, from a received data packet, at least a portion of a message input from a received data packet and an external computing device. Obtaining; Based on the message identifier, collecting one or more partial message data relating to the message including the partial message data; And integrating the collected one or more partial message data to perform operations including restoring the message.

일부 실시예에서, 블루투스 모듈을 이용하는 컴퓨팅 장치에서 실행되며, 인스턴트 메시징 서비스를 제공하기 위하여 하나 이상의 컴퓨터 실행가능 명령어가 저장된 컴퓨터 판독가능 저장 매체가 설명된다. 일 예시적인 컴퓨터 판독가능 저장 매체는 저장된 하나 이상의 컴퓨터 실행가능 명령어가 실행되면, 컴퓨팅 장치로 하여금, 컴퓨팅 장치의 사용자에 의해 입력되거나 컴퓨팅 장치에 의해 획득된 정보에 기초하여 생성된 입력 메시지를 수신하는 동작; 블루투스 모듈에 의해 어드버타이징(advertising)될 데이터 패킷의 미리 정해진 특성에 기초하여, 입력 메시지를 하나 이상의 부분 메시지 데이터로 분할하는 동작; 컴퓨팅 장치를 식별하는 장치 식별자, 입력 메시지의 어드버타이징에 관한 미리 정해진 시간 구간을 나타내는 세션 식별자, 하나 이상의 부분 메시지 데이터 중 하나의 부분 메시지 데이터 및 입력 메시지에 대한 하나의 부분 메시지 데이터의 메시지 인덱스를 각각 포함하는 하나 이상의 데이터 패킷을 생성하는 동작; 및 블루투스 모듈에 의해 미리 정해진 시간 구간 동안 하나 이상의 데이터 패킷을 어드버타이징(advertising)하는 동작을 포함하는 동작들을 수행하도록 할 수 있다.In some embodiments, a computer readable storage medium that executes on a computing device using a Bluetooth module and stores one or more computer executable instructions for providing an instant messaging service is described. One example computer readable storage medium may, when executed, store one or more computer executable instructions that cause a computing device to receive an input message generated by a user of the computing device or generated based on information obtained by the computing device. action; Segmenting the input message into one or more partial message data based on a predetermined characteristic of the data packet to be advertised by the Bluetooth module; A device identifier identifying the computing device, a session identifier indicating a predetermined time interval for advertising the input message, one partial message data of one or more partial message data, and a message index of one partial message data for the input message Generating one or more data packets each comprising; And advertising the at least one data packet during a predetermined time period by the Bluetooth module.

이상의 요약은 단순히 예시적인 것으로서 어떠한 방식으로든 제한적으로 의도된 것이 아니다. 이하의 상세한 설명과 도면을 참조함으로써, 상술된 예시적인 양태들, 실시예들, 그리고 특징들에 더하여, 추가적인 양태들, 실시예들, 그리고 특징들 또한 명확해질 것이다.The above summary is merely illustrative and is not intended to be limiting in any way. By referring to the following detailed description and drawings, further aspects, embodiments, and features will also be apparent in addition to the illustrative aspects, embodiments, and features described above.

본 개시의 전술한 특징들 및 기타 특징들은, 첨부 도면을 참조하여 이하의 설명으로부터 충분히 분명해질 것이다. 이러한 도면들은 본 개시에 따르는 단지 몇 가지의 실시예만을 도시한 것이고, 따라서 그 범위를 제한하는 것으로 간주되어서는 안되는 것을 이해하면서, 본 개시는 첨부된 도면의 사용을 통하여, 더 구체적이고 상세하게 기술될 것이다.
도 1은 본 개시의 적어도 일부 실시예에 따른 인스턴트 메시징 서비스가 제공되는 환경을 예시하는 도면이고;
도 2는 본 개시의 적어도 일부 실시예에 따른 인스턴트 메시징 장치를 예시하는 개략적인 블록도이고;
도 3은 본 개시의 적어도 일부 실시예에 따라 어드버타이징되는 데이터 패킷의 일 예시적인 구조를 나타내고;
도 4는 본 개시의 적어도 일부 실시예에 따른 인스턴트 메시징 서비스에서, 인스턴트 메시지를 수신하는 것에 관한 예시적인 프로세스를 도시하는 흐름도이고;
도 5는 본 개시의 적어도 일부 실시예에 따른 인스턴트 메시징 서비스에서, 인스턴트 메시지를 전송하는 것에 관한 예시적인 프로세스를 도시하는 흐름도이고;
도 6은 본 개시의 적어도 일부 실시예에 따라 사용자와의 챗봇 대화를 관리하는 데 이용될 수 있는 예시적인 컴퓨터 프로그램 제품을 도시한다.
The foregoing and other features of the present disclosure will become apparent from the following description with reference to the accompanying drawings. While the drawings illustrate only a few embodiments in accordance with the present disclosure and therefore should not be considered as limiting its scope, the present disclosure is described in more detail and detail, through the use of the accompanying drawings. Will be.
1 is a diagram illustrating an environment in which an instant messaging service is provided in accordance with at least some embodiments of the present disclosure;
2 is a schematic block diagram illustrating an instant messaging device in accordance with at least some embodiments of the present disclosure;
3 illustrates an example structure of a data packet being advertised in accordance with at least some embodiments of the present disclosure;
4 is a flowchart illustrating an example process for receiving an instant message in an instant messaging service, in accordance with at least some embodiments of the present disclosure;
5 is a flowchart illustrating an example process for sending instant messages in an instant messaging service, in accordance with at least some embodiments of the present disclosure;
6 illustrates an example computer program product that may be used to manage chatbot conversations with a user in accordance with at least some embodiments of the present disclosure.

본 개시의 전술한 특징들 및 기타 특징들은, 첨부 도면을 참조하여 이하의 설명으로부터 충분히 분명해질 것이다. 이러한 도면들은 본 개시에 따르는 단지 몇 가지의 실시예만을 도시한 것이고, 따라서 그 범위를 제한하는 것으로 간주되어서는 안되는 것을 이해하면서, 본 개시는 첨부된 도면의 사용을 통하여, 더 구체적이고 상세하게 기술될 것이다.The foregoing and other features of the present disclosure will become apparent from the following description with reference to the accompanying drawings. While the drawings illustrate only a few embodiments in accordance with the present disclosure and therefore should not be considered as limiting its scope, the present disclosure is described in more detail and detail, through the use of the accompanying drawings. Will be.

본 개시는 일반적으로, 블루투스 모듈을 이용한 인스턴트 메시징 장치, 시스템, 방법 및/또는 컴퓨터 판독가능 저장매체에 관련된다.The present disclosure generally relates to instant messaging devices, systems, methods and / or computer readable storage media using a Bluetooth module.

간단히 설명하면, 본 개시에 따른 컴퓨팅 장치는 블루투스 모듈을 포함할 수 있으며, 이러한 블루투스 모듈을 이용하여 인스턴트 메시징 서비스를 제공할 수 있다. 일부 예시에서, 블루투스 모듈은 예컨대, 저전력 블루투스(Bluetooth Low Energy; BLE) 기법을 이용하여 무선 통신할 수 있다. In brief, the computing device according to the present disclosure may include a Bluetooth module, and may provide an instant messaging service using the Bluetooth module. In some examples, the Bluetooth module may wirelessly communicate using, for example, a Bluetooth Low Energy (BLE) technique.

일부 예시에서, 제1 컴퓨팅 장치는 블루투스 모듈을 포함할 수 있다. 일 예시에서, 블루투스 모듈은 저전력 블루투스(Bluetooth Low Energy; BLE) 기법을 이용할 수 있다. 제1 사용자는 제1 컴퓨팅 장치를 이용하여 메시지를 입력할 수 있다. 일부 다른 예시에서, 제1 컴퓨팅 장치는 제1 컴퓨팅 장치에 의해 획득된 정보에 기초하여 입력 메시지를 생성할 수 있다. 입력 메시지는 텍스트 메시지를 포함할 수 있지만, 이에 제한되지 않는다. 다른 예시에서, 입력 메시지는 텍스트뿐만 아니라, 이미지, 동영상, 음성 또는 파일 중 적어도 하나를 포함하는 다양한 유형일 수 있다. 이후, 제1 컴퓨팅 장치는 블루투스 모듈에 관한 미리 정해진 특성에 기초하여, 입력 메시지를 하나 이상의 부분 메시지 데이터로 분할할 수 있다. 제1 컴퓨팅 장치는 하나 이상의 데이터 패킷을 생성할 수 있다. 하나 이상의 데이터 패킷 각각은 분할된 하나 이상의 부분 메시지 데이터 중 하나 및 메시지 식별자를 포함할 수 있다. 제1 컴퓨팅 장치는 블루투스 모듈을 이용하여 생성된 하나 이상의 데이터 패킷을, 미리 정해진 시간 구간 동안, 어드버타이징(advertising)할 수 있다.In some examples, the first computing device may include a Bluetooth module. In one example, the Bluetooth module may use a Bluetooth Low Energy (BLE) technique. The first user may input a message using the first computing device. In some other examples, the first computing device may generate an input message based on the information obtained by the first computing device. The input message may include, but is not limited to, a text message. In another example, the input message may be of various types including not only text, but also at least one of an image, a video, a voice, or a file. Thereafter, the first computing device may split the input message into one or more partial message data based on a predetermined characteristic regarding the Bluetooth module. The first computing device may generate one or more data packets. Each of the one or more data packets may include one of the divided one or more partial message data and a message identifier. The first computing device may advertise one or more data packets generated using the Bluetooth module for a predetermined time interval.

일부 예시에서, 제2 사용자의 제2 컴퓨팅 장치는 블루투스 모듈을 이용하여 데이터 패킷을 어드버타이징하는 제1 컴퓨팅 장치를 스캔할 수 있다. 제2 컴퓨팅 장치가 제1 컴퓨팅 장치를 스캔하는 경우, 제1 컴퓨팅 장치로부터 어드버타이징되는 데이터 패킷을 수신할 수 있다. 제2 컴퓨팅 장치는 수신된 데이터 패킷으로부터 메시지 식별자 및 제1 사용자에 의해 입력된 입력 메시지에 대한 하나의 부분 메시지 데이터를 획득할 수 있다. 이와 같이, 제2 컴퓨팅 장치는 제1 컴퓨팅 장치로부터 어드버타이징되는 하나 이상의 데이터 패킷을 수신하고, 수신된 하나 이상의 데이터 패킷으로부터 하나 이상의 부분 메시지 데이터를 획득할 수 있다. 또한, 제2 컴퓨팅 장치는 메시지 식별자에 기초하여 하나 이상의 부분 메시지 데이터를 수집할 수 있다. 제2 컴퓨팅 장치는 수집된 하나 이상의 부분 메시지 데이터를 통합하여 제1 사용자에 의해 입력된 입력 메시지를 복원할 수 있다. 제2 컴퓨팅 장치는 복원된 메시지를 출력, 예컨대, 출력할 수 있다.In some examples, the second computing device of the second user may scan the first computing device for advertising the data packet using a Bluetooth module. When the second computing device scans the first computing device, it may receive an advertised data packet from the first computing device. The second computing device may obtain the message identifier and one partial message data for the input message input by the first user from the received data packet. As such, the second computing device may receive one or more data packets being advertised from the first computing device and obtain one or more partial message data from the received one or more data packets. In addition, the second computing device may collect one or more partial message data based on the message identifier. The second computing device may restore the input message input by the first user by integrating the collected one or more partial message data. The second computing device may output, for example, output the restored message.

일부 예시에서, 제1 컴퓨팅 장치 및 제2 컴퓨팅 장치는 제1 컴퓨팅 장치 및 제2 컴퓨팅 장치 간의 페어링(pairing) 및/또는 본딩(bonding)을 수행하지 않으면서, 컴퓨팅 장치의 스캔, 데이터 패킷의 어드버타이징 및 어드버타이징되는 데이터 패킷의 수신에 의해 메시지를 송신 또는 수신할 수 있다. 이와 같이, 제1 컴퓨팅 장치 및 제2 컴퓨팅 장치는 제1 컴퓨팅 장치가 제2 컴퓨팅 장치와 직접적으로 통신하는, 예컨대, 애드혹 네트워킹(ad-hoc networking) 방식을 이용하여 메시지를 전송 및/또는 수신할 수 있다.In some examples, the first computing device and the second computing device may scan the computing device, add data packets without performing pairing and / or bonding between the first computing device and the second computing device. The message may be sent or received by the reception of the data packets being burnt and advertised. As such, the first computing device and the second computing device may transmit and / or receive messages using, for example, an ad-hoc networking scheme in which the first computing device communicates directly with the second computing device. Can be.

도 1은 본 개시의 적어도 일부 실시예에 따른 인스턴트 메시징 서비스가 제공되는 환경(100)을 예시하는 도면이다. 예시적인 환경(100)은 제1 컴퓨팅 장치(110) 및 하나 이상의 제2 컴퓨팅 장치(122, 124, 126, 128 및 130)를 포함할 수 있다. 도 1에서 제1 컴퓨팅 장치(110) 및 제2 컴퓨팅 장치(122, 124, 126, 128 및 130)가 특정 유형의 장치(예컨대, 110 및 122는 스마트폰, 124는 태블릿 컴퓨터, 126은 랩탑 컴퓨터, 128은 세탁기, 130은 냉장고)인 것으로 도시되지만, 이에 제한되지 않으며, 제1 및 제2 컴퓨팅 장치(110, 122, 124, 126 및 130) 각각은 블루투스 모듈을 이용하여 통신할 수 있는 다양한 유형의 컴퓨팅 장치일 수 있다. 예컨대, 제1 및 제2 컴퓨팅 장치(110, 122, 124, 126, 128 및 130)는 데스크 탑 컴퓨터, 랩탑 컴퓨터, 스마트폰, 태블릿 컴퓨터, 휴대 전화기, 개인 휴대용 단말기(PDA), 특정 용도 장치, 인터넷을 활용하여 통신 가능한 텔레비전, 냉장고, 세탁기, 청소기, 난방기, 공기 청정기와 같은 가전을 포함하는 사물 인터넷 장치 또는 상기 기능 중 임의의 것을 포함하는 융합 장치와 같은 소형 폼팩터 휴대용(모바일) 전자 장치를 포함하지만, 이에 제한되는 것은 아니다.1 is a diagram illustrating an environment 100 in which an instant messaging service is provided, in accordance with at least some embodiments of the present disclosure. Example environment 100 may include a first computing device 110 and one or more second computing devices 122, 124, 126, 128, and 130. In FIG. 1, the first computing device 110 and the second computing device 122, 124, 126, 128, and 130 are devices of a particular type (eg, 110 and 122 are smartphones, 124 are tablet computers, 126 are laptop computers). , 128 is a washing machine, and 130 is a refrigerator, but the present invention is not limited thereto, and each of the first and second computing devices 110, 122, 124, 126, and 130 may communicate with each other using a Bluetooth module. May be a computing device. For example, first and second computing devices 110, 122, 124, 126, 128, and 130 may be used as desktop computers, laptop computers, smartphones, tablet computers, mobile phones, personal digital assistants (PDAs), special purpose devices, Small form factor portable (mobile) electronic devices, such as Internet of Things devices including household appliances such as televisions, refrigerators, washing machines, cleaners, radiators, air purifiers, or fusion devices including any of the above, capable of communicating using the Internet. However, it is not limited thereto.

제1 및 제2 컴퓨팅 장치(110, 122, 124, 126, 128 및 130)는 각각 블루투스 모듈을 포함할 수 있으며, 블루투스 모듈을 이용하여, 통신할 수 있다. 일부 예시에서, 블루투스 모듈은 BLE 기법을 사용할 수 있다. 제1 컴퓨팅 장치(110)는 블루투스 모듈을 이용하여 범위(112) 내의 영역에 데이터 패킷을 브로드캐스팅(broadcasting) 및/또는 어드버타이징(advertising)(이하에서는 어드버타이징으로 통칭함)할 수 있다. 범위(112) 내에 있는 제2 컴퓨팅 장치(122, 124, 126, 128)는 블루투스 장치를 이용하여 스캐닝을 수행함으로써, 제1 컴퓨팅 장치(110)에 의해 어드버타이징되는 데이터 패킷을 수신할 수 있다. BLE 기법을 이용하는 경우, 범위(112)는 제1 컴퓨팅 장치(110)로부터 예컨대, 약 50m일 수 있다. 그러나, 범위(112)의 반경 및 형태는 이에 제한되지 않으며, 제1 컴퓨팅 장치(100)의 조건 및 환경(100)의 특성에 따라 변동될 수 있다.The first and second computing devices 110, 122, 124, 126, 128, and 130 may each include a Bluetooth module, and may communicate using the Bluetooth module. In some examples, the Bluetooth module may use the BLE technique. The first computing device 110 may use a Bluetooth module to broadcast and / or advertise (hereinafter referred to as advertising) the data packet to an area within the range 112. Can be. Second computing devices 122, 124, 126, and 128 within range 112 may receive data packets that are advertised by first computing device 110 by performing scanning using a Bluetooth device. have. When using the BLE technique, the range 112 may be, for example, about 50m from the first computing device 110. However, the radius and shape of the range 112 is not limited thereto and may vary depending on the conditions of the first computing device 100 and the characteristics of the environment 100.

일부 예시에서, 제1 사용자는 제1 컴퓨팅 장치(110)를 이용하여 메시지를 입력할 수 있다. 제1 사용자에 의한 입력 메시지는 텍스트일 수 있지만 이에 제한되지 않는다. 요구되는 구현예에 따라, 입력 메시지는 텍스트뿐만 아니라, 예컨대, 이미지, 동영상, 음성 또는 파일 중 적어도 하나를 포함할 수 있다. 일부 다른 예시에서, 제1 컴퓨팅 장치(110)는 제1 컴퓨팅 장치(110), 예컨대, 센서, 프로세서, 등에 의해 획득된 정보에 기초하여 입력 메시지를 생성할 수 있다. 제1 컴퓨팅 장치(110)는, 입력 메시지를 수신하거나 생성하는 경우, 입력 메시지를 하나 이상의 부분 메시지 데이터로 분할할 수 있다. 일부 예시에서, 제1 컴퓨팅 장치(110)는 블루투스 모듈에 관한 미리 정해진 특성에 기초하여, 입력 메시지를 하나 이상의 부분 메시지 데이터로 분할할 수 있다. 미리 정해진 특성은 예컨대, 블루투스 모듈에 의해 어드버타이징될 데이터 패킷의 길이 또는 구조와 같은 블루투스 통신의 특성 또는 블루투스 모듈을 포함하는 제1 컴퓨팅 장치의 성능과 같은 특성을 포함할 수 있지만 이에 제한되지는 않는다. In some examples, the first user may enter a message using the first computing device 110. The input message by the first user may be text, but is not limited thereto. Depending on the required implementation, the input message may include not only text, but also at least one of, for example, an image, video, voice or file. In some other examples, the first computing device 110 may generate an input message based on information obtained by the first computing device 110, eg, a sensor, a processor, or the like. When the first computing device 110 receives or generates an input message, the first computing device 110 may divide the input message into one or more partial message data. In some examples, the first computing device 110 may split the input message into one or more partial message data based on a predetermined characteristic regarding the Bluetooth module. The predetermined characteristic may include, but is not limited to, for example, a characteristic of a Bluetooth communication such as the length or structure of a data packet to be advertised by the Bluetooth module or a performance of a first computing device including the Bluetooth module. Does not.

제1 컴퓨팅 장치(110)는 이후, 하나 이상의 데이터 패킷을 생성할 수 있다. 하나 이상의 데이터 패킷 각각은 분할된 하나 이상의 부분 메시지 데이터 중 하나의 부분 메시지 데이터 및 이러한 하나의 부분 메시지 데이터에 대한 메시지 식별자를 포함할 수 있다. 메시지 식별자는 입력 메시지를 식별할 수 있는 다양한 유형의 정보를 포함할 수 있다. 일부 예시에서, 메시지 식별자는 장치 식별자, 세션 식별자 및 메시지 인덱스, 메시지 카운트 중 적어도 하나를 포함할 수 있다. 장치 식별자는 제1 컴퓨팅 장치(110)를 식별하기 위한 제1 컴퓨팅 장치(110) 또는 제1 컴퓨팅 장치(110)의 블루투스 모듈에 의해 할당된 고유의 정보일 수 있다. 세션 식별자는 부분 메시지 데이터를 포함하는 데이터 패킷이 어드버타이징되는 미리 정해진 시간구간을 나타낼 수 있다. 메시지 인덱스는 입력 메시지에 대하여 부분 메시지 데이터가 대응하는 위치 또는 순서와 같은 정보를 나타낼 수 있다.The first computing device 110 may then generate one or more data packets. Each of the one or more data packets may comprise one partial message data of the divided one or more partial message data and a message identifier for this one partial message data. The message identifier may include various types of information that can identify the input message. In some examples, the message identifier may include at least one of a device identifier, a session identifier and a message index, and a message count. The device identifier may be unique information assigned by the first computing device 110 or the Bluetooth module of the first computing device 110 to identify the first computing device 110. The session identifier may indicate a predetermined time period during which the data packet including the partial message data is advertised. The message index may indicate information such as a position or order in which partial message data corresponds to an input message.

이와 같이, 제1 컴퓨팅 장치(110)에 의해 생성된 하나 이상의 데이터 패킷 각각은 분할된 하나 이상의 부분 메시지 데이터 중 하나의 부분 메시지 데이터 및 대응하는 메시지 식별자를 포함할 수 있다. 제1 컴퓨팅 장치(110)는 이후, 블루투스 모듈을 이용하여 생성된 하나 이상의 데이터 패킷을 미리 정해진 시간 구간 동안, 어드버타이징할 수 있다.As such, each of the one or more data packets generated by the first computing device 110 may include one partial message data and one corresponding message identifier among the divided one or more partial message data. The first computing device 110 may then advertise one or more data packets generated using the Bluetooth module for a predetermined time interval.

제2 컴퓨팅 장치(122, 124, 126 및 128)는 제2 컴퓨팅 장치(122, 124, 126 및 128)의 블루투스 모듈을 구동하고, 구동되는 블루투스 모듈을 이용하여 통신을 위한 스캔을 수행할 수 있다. 일부 예시에서, 제2 컴퓨팅 장치(122, 124, 126 및 128)는 제1 컴퓨팅 장치(110)를 스캔할 수 있다. 또한, 제2 컴퓨팅 장치(122, 124, 126 및 128)는 블루투스 모듈에 의해 제1 컴퓨팅 장치(110)로부터 어드버타이징되는 데이터 패킷을 수신할 수 있다.The second computing devices 122, 124, 126, and 128 may drive a Bluetooth module of the second computing devices 122, 124, 126, and 128, and perform a scan for communication using the driven Bluetooth module. . In some examples, second computing devices 122, 124, 126, and 128 may scan first computing device 110. In addition, the second computing devices 122, 124, 126, and 128 may receive data packets that are advertised from the first computing device 110 by the Bluetooth module.

제2 컴퓨팅 장치(122, 124, 126 및 128)는 수신된 데이터 패킷으로부터 제1 컴퓨팅 장치(110)에서 입력된 입력 메시지의 적어도 일부를 포함하는 부분 메시지 데이터 및 부분 메시지에 대한 메시지 식별자를 획득할 수 있다. 이후, 제2 컴퓨팅 장치(122, 124, 126 및 128)는 메시지 식별자에 기초하여, 입력 메시지에 관한 하나 이상의 부분 메시지 데이터를 수집할 수 있다. 일부 예시에서, 제2 컴퓨팅 장치(122, 124, 126 및 128)는 장치 식별자 및/또는 세션 식별자가 동일한 부분 메시지 데이터를 수집 또는 분류할 수 있다. 추가적인 일부 예시에서, 제2 컴퓨팅 장치(122, 124, 126 및 128)는 메시지 인덱스에 기초하여, 하나 이상의 부분 메시지 데이터를 정렬할 수 있다.The second computing devices 122, 124, 126, and 128 may obtain, from the received data packets, partial message data including at least a portion of an input message input at the first computing device 110 and a message identifier for the partial message. Can be. Thereafter, the second computing device 122, 124, 126, and 128 may collect one or more partial message data regarding the input message based on the message identifier. In some examples, second computing devices 122, 124, 126, and 128 may collect or classify partial message data with the same device identifier and / or session identifier. In some further examples, the second computing devices 122, 124, 126, and 128 may sort the one or more partial message data based on the message index.

제2 컴퓨팅 장치(122, 124, 126 및 128)는 수집된 하나 이상의 부분 메시지 데이터를 통합하여 제1 컴퓨팅 장치(110)의 제1 사용자에 의해 입력된 입력 메시지를 복원할 수 있다. 이후, 제2 컴퓨팅 장치(122, 124, 126 및 128)는 복원된 입력 메시지를 제2 컴퓨팅 장치(122, 124, 126 및 128) 상에 출력할 수 있다. 복원된 입력 메시지는 다양한 방식으로 출력될 수 있다. 추가적이고 선택적인 일부 예시에서, 제2 컴퓨팅 장치(122, 124, 126 및 128)는 제1 컴퓨팅 장치(110)로부터 어드버타이징되는 데이터 패킷의 신호 강도를 측정 또는 결정할 수 있다. 제2 컴퓨팅 장치(122, 124, 126 및 128)는 결정된 신호 강도에 기초하여, 제1 컴퓨팅 장치(110)로부터 제2 컴퓨팅 장치(122, 124, 126 및 128)의 거리를 추정할 수 있다. 제2 컴퓨팅 장치(122, 124, 126 및 128)는 추정된 거리에 기초하여, 복원된 메시지를 출력, 예컨대, 디스플레이 할 수 있다. 예컨대, 제2 컴퓨팅 장치(122, 124, 126 및 128)는 추정된 거리에 기초하여, 예컨대, 디스플레이될 메시지의 크기, 모양, 색깔과 같은 특성을 결정 또는 변경할 수 있다. 추가적이고 선택적인 일부 예시에서, 제2 컴퓨팅 장치(122, 124, 126 및 128)는 요구되는 바에 따라, 복원된 입력 메시지를 이미지 또는 음성(소리)으로 변환하여 변환된 이미지 또는 음성(소리)를 제2 컴퓨팅 장치(122, 124, 126 및 128) 상에 디스플레이할 수 있다.The second computing devices 122, 124, 126, and 128 may integrate the collected one or more partial message data to restore the input message input by the first user of the first computing device 110. Thereafter, the second computing devices 122, 124, 126, and 128 may output the restored input messages on the second computing devices 122, 124, 126, and 128. The restored input message can be output in various ways. In some additional and optional examples, the second computing devices 122, 124, 126, and 128 may measure or determine the signal strength of the data packets advertised from the first computing device 110. The second computing devices 122, 124, 126, and 128 may estimate the distance of the second computing devices 122, 124, 126, and 128 from the first computing device 110 based on the determined signal strength. The second computing devices 122, 124, 126, and 128 may output, eg, display, the restored message based on the estimated distance. For example, the second computing devices 122, 124, 126, and 128 may determine or change characteristics such as, for example, the size, shape, and color of the message to be displayed based on the estimated distance. In some additional and optional examples, the second computing devices 122, 124, 126, and 128 convert the restored input message into an image or voice (sound) as required to convert the converted image or voice (sound). And display on the second computing devices 122, 124, 126, and 128.

전술한 바와 같이, 제2 컴퓨팅 장치(122, 124, 126 및 128)는 제1 컴퓨팅 장치(110)의 제1 사용자에 의해 입력된 입력 메시지를, 제1 컴퓨팅 장치 및 제2 컴퓨팅 장치 간의 페어링(pairing) 및/또는 본딩(bonding)을 수행하지 않으면서, 수신할 수 있다. 제2 컴퓨팅 장치(122, 124, 126 및 128)는 주기적으로 또는 실시간으로 제1 컴퓨팅 장치(110)로부터 어드버타이징되는 데이터 패킷을 수신하고 주기적으로 또는 실시간으로 출력되는 메시지를 갱신할 수 있다. As described above, the second computing devices 122, 124, 126, and 128 may pair input messages input by the first user of the first computing device 110 between the first computing device and the second computing device. can be received without performing pairing and / or bonding. The second computing devices 122, 124, 126, and 128 may receive the data packets being advertised from the first computing device 110 periodically or in real time and update the messages output periodically or in real time. .

일부 예시에서, 도 1에 도시되는 바와 같이, 제2 컴퓨팅 장치(130)는 제1 컴퓨팅 장치(110)에 의한 데이터 패킷이 어드버타이징되는 범위(112)이 밖에 있을 수 있으며, 따라서, 제2 컴퓨팅 장치(130)는 제1 컴퓨팅 장치(110)에 의한 입력 메시지를 수신하지 않을 수 있다. 또한, 제2 컴퓨팅 장치(130)는 범위(132)로 입력 메시지를 적어도 일부 포함하는 데이터 패킷을 어드버타이징할 수 있다. 도 1에 도시되는 바와 같이, 제2 컴퓨팅 장치(122, 126 및 128)는 제1 컴퓨팅 장치(110)에 의한 범위(112) 내에 있고 제2 컴퓨팅 장치(130)에 의한 범위(132) 밖에 있는 한편, 제2 컴퓨팅 장치(124)는 범위(112) 및 범위(132) 내에 있다. 이러한 예시에서, 제2 컴퓨팅 장치(122, 126 및 128)는 제1 컴퓨팅 장치(110)에 의한 입력 메시지만을 수신 및 출력할 수 있는 한편, 제2 컴퓨팅 장치(124)는 제1 컴퓨팅 장치(110)에 의한 입력 메시지 및 제2 컴퓨팅 장치(130)에 의한 입력 메시지 모두 수신 및 출력할 수 있다.In some examples, as shown in FIG. 1, the second computing device 130 may be outside the range 112 where the data packet by the first computing device 110 is advertised, and thus, 2 The computing device 130 may not receive an input message by the first computing device 110. In addition, the second computing device 130 may advertise a data packet that includes at least a portion of the input message in the range 132. As shown in FIG. 1, the second computing devices 122, 126, and 128 are in range 112 by the first computing device 110 and out of range 132 by the second computing device 130. On the other hand, second computing device 124 is in range 112 and in range 132. In this example, the second computing devices 122, 126, and 128 may only receive and output input messages by the first computing device 110, while the second computing device 124 may be the first computing device 110. ) And an input message by the second computing device 130 may be received and output.

도 2는 본 개시의 적어도 일부 실시예에 따른 인스턴트 메시징 장치(200)를 예시하는 개략적인 블록도이다. 예시적인 인스턴트 메시징 장치(200)는 블루투스 모듈(210), 전송 처리부(220), 수신 처리부(230) 및 출력부(240)를 포함할 수 있다. 인스턴트 메시징 장치(200)는 인스턴트 메시징 서비스를 제공할 수 있다. 예컨대, 인스턴트 메시징 장치(200)는 다양한 유형의 컴퓨팅 장치일 수 있다. 예컨대, 인스턴트 메시징 장치(200)는 데스크 탑 컴퓨터, 랩탑 컴퓨터, 스마트폰, 태블릿 컴퓨터, 휴대 전화기, 개인 휴대용 단말기(PDA), 특정 용도 장치, 인터넷을 활용하여 통신 가능한 텔레비전, 냉장고, 세탁기, 청소기, 난방기, 공기 청정기와 같은 가전을 포함하는 사물 인터넷 장치 또는 상기 기능 중 임의의 것을 포함하는 융합 장치와 같은 소형 폼팩터 휴대용(모바일) 전자 장치를 포함하지만, 이에 제한되는 것은 아니다.2 is a schematic block diagram illustrating an instant messaging device 200 in accordance with at least some embodiments of the present disclosure. The exemplary instant messaging device 200 may include a Bluetooth module 210, a transmission processor 220, a reception processor 230, and an output 240. The instant messaging device 200 may provide an instant messaging service. For example, instant messaging device 200 may be various types of computing devices. For example, the instant messaging device 200 may include a desktop computer, a laptop computer, a smartphone, a tablet computer, a mobile phone, a personal digital assistant (PDA), a special purpose device, a television, a refrigerator, a washing machine, a cleaner, Small form factor portable (mobile) electronic devices such as, but not limited to, Internet of Things devices including appliances such as radiators, air cleaners, or fusion devices including any of the above functions.

블루투스 모듈(210)은 데이터 패킷을 어드버타이징하는 컴퓨팅 장치를 스캔하고, 스캔된 컴퓨팅 장치로부터 어드버타이징되는 데이터 패킷을 수신하도록 구성될 수 있다. 또한, 블루투스 모듈(210)은 인스턴트 메시징 장치(200)에 의해 생성된 데이터 패킷을 어드버타이징하도록 구성될 수 있다. 일부 예시에서, 블루투스 모듈(210)은 BLE 기법을 사용하여 통신하도록 구성될 수 있다. 블루투스 모듈(210)은 BLE 동작모드를 선택 가능하도록 구성될 수 있다. 블루투스 모듈(210)이 BLE 기법을 이용하여 통신하는 경우, 데이터 패킷은 미리 정해진 범위, 예컨대, 반경이 약 50m인 범위로 데이터 패킷을 어드버타이징 할 수 있다.The Bluetooth module 210 may be configured to scan a computing device advertising the data packet and receive the data packet being advertised from the scanned computing device. In addition, the Bluetooth module 210 may be configured to advertise the data packet generated by the instant messaging device 200. In some examples, Bluetooth module 210 may be configured to communicate using BLE techniques. The Bluetooth module 210 may be configured to select a BLE operation mode. When the Bluetooth module 210 communicates using the BLE technique, the data packet may advertise the data packet in a predetermined range, for example, a range having a radius of about 50 m.

일부 실시예에서, 전송 처리부(220)는 입력부(222), 입력 메시지 분할부(224) 및 어드버타이즈 스케줄러(224)를 포함할 수 있다. 입력부(222)는 사용자로부터의 입력 메시지를 수신할 수 있다. 사용자는 터치패드, 키보드, 포인팅 장치, 등과 같은 다양한 입력 장치를 통하여 입력부(222)에 입력 메시지를 입력할 수 있다. 입력 메시지는 텍스트, 이미지, 동영상, 음성 또는 파일 중 적어도 하나를 포함할 수 있다. 일부 다른 실시예에서, 인스턴트 메시징 장치(200)는 인스턴트 메시징 장치(200) 내의 센서, 프로세서, 등의 내부 컴포넌트에 의해 다양한 정보를 획득할 수 있으며, 입력부(222)는 획득된 정보에 기초하여 입력 메시지를 생성할 수 있다.In some embodiments, the transmission processor 220 may include an input unit 222, an input message divider 224, and an advertising scheduler 224. The input unit 222 may receive an input message from a user. The user may input an input message to the input unit 222 through various input devices such as a touch pad, a keyboard, a pointing device, and the like. The input message may include at least one of text, an image, a video, a voice, or a file. In some other embodiments, the instant messaging device 200 may obtain various information by internal components such as sensors, processors, and the like within the instant messaging device 200, and the input unit 222 may input based on the obtained information. You can create a message.

입력 메시지 분할부(224)는 미리 정해진 특성 예컨대, 길이에 기초하여, 입력부(222)에 의해 수신되거나 생성된 입력 메시지를 하나 이상의 부분 메시지 데이터로 분할할 수 있다. 미리 정해진 특성은 예컨대, 블루투스 모듈에 의해 어드버타이징될 데이터 패킷의 길이 또는 구조와 같은 블루투스 통신의 특성 또는 블루투스 모듈을 포함하는 인스턴트 메시징 장치의 성능과 같은 특성을 고려하여 정해질 수 있다. 일 예시에서, 입력 메시지 분할부(224)는 입력 메시지를 입력 메시지의 일부분을 가지는 부분적인 메시지로 분할할 수 있다. 다른 예시에서, 입력 메시지 분할부(224)는 입력 메시지가 인코딩된 데이터의 일부를 가지도록 입력 메시지를 분할할 수 있다.The input message dividing unit 224 may divide the input message received or generated by the input unit 222 into one or more partial message data based on a predetermined characteristic, for example, a length. The predetermined characteristic may be determined in consideration of characteristics such as, for example, the characteristics of the Bluetooth communication such as the length or structure of the data packet to be advertised by the Bluetooth module or the performance of the instant messaging device including the Bluetooth module. In one example, the input message divider 224 may divide the input message into partial messages having a portion of the input message. In another example, the input message divider 224 can divide the input message so that the input message has a portion of the encoded data.

어드버타이즈 스케줄러(226)는 입력 메시지에 대한 하나 이상의 데이터 패킷을 생성하도록 구성될 수 있다. 하나 이상의 데이터 패킷 각각은 분할된 하나 이상의 부분 메시지 데이터 중 하나의 부분 메시지 데이터 및 이러한 하나의 부분 메시지 데이터에 대한 메시지 식별자를 포함할 수 있다. 어드버타이즈 스케줄러(226)는 입력 메시지 분할부(224)에 의해 분할된 각각의 부분 메시지 데이터에 대하여 메시지 식별자를 할당하도록 구성될 수 있다. 메시지 식별자는 입력 메시지를 식별 및/또는 복원하기 위하여 이용 가능한 다양한 유형의 정보를 포함할 수 있다. 일부 예시에서, 메시지 식별자는 장치 식별자, 세션 식별자 및 메시지 인덱스, 메시지 카운트, 등을 포함할 수 있다.Advertisement scheduler 226 may be configured to generate one or more data packets for an input message. Each of the one or more data packets may comprise one partial message data of the divided one or more partial message data and a message identifier for this one partial message data. The advertising scheduler 226 may be configured to assign a message identifier for each partial message data divided by the input message divider 224. The message identifier may include various types of information available for identifying and / or retrieving an input message. In some examples, the message identifier may include a device identifier, session identifier and message index, message count, and the like.

장치 식별자는 인스턴트 메시징 장치(200)를 식별하기 위하여, 인스턴트 메시징 장치(200) 또는 블루투스 모듈(210)에 의해 할당된 고유의 정보일 수 있으며, 어드버타이즈 스케줄러(226)는 모든 부분 메시지 데이터에 대하여 동일한 장치 식별자를 할당할 수 있다. 세션 식별자는 부분 메시지 데이터를 포함하는 데이터 패킷이 어드버타이징되는 미리 정해진 시간구간을 나타낼 수 있다. 세션 식별자는 사용자에 의해 입력된 입력 메시지에 대하여 할당될 수 있다. 메시지 인덱스는 입력 메시지에 대하여 부분 메시지 데이터가 대응하는 위치 또는 순서와 같은 정보를 나타낼 수 있다.The device identifier may be unique information assigned by the instant messaging device 200 or the Bluetooth module 210 to identify the instant messaging device 200, and the advertising scheduler 226 may be assigned to all partial message data. The same device identifier can be assigned to The session identifier may indicate a predetermined time period during which the data packet including the partial message data is advertised. The session identifier may be assigned for an input message entered by the user. The message index may indicate information such as a position or order in which partial message data corresponds to an input message.

일 예시에서, 사용자가 제1 입력 메시지를 입력하고 이후 제2 입력 메시지를 입력할 수 있고, 입력 메시지 분할부(224)는 제1 입력 메시지를 제1 부분 메시지 데이터 및 제2 부분 메시지 데이터로 분할하고 제2 입력 메시지를 제3 부분 메시지 데이터 및 제4 부분 메시지 데이터로 분할할 수 있다. 이러한 예시에서, 어드버타이즈 스케줄러(226)는 제1 입력 메시지에 대한 제1 및 제2 부분 메시지 데이터에 대하여 제1 세션 식별자를 부여할 수 있는 한편, 제2 입력 메시지에 대한 제3 및 제4 부분 메시지 데이터에 대하여는 제2 세션 식별자를 부여할 수 있다. 또한 어드버타이즈 스케줄러(226)는 제1 부분 메시지 데이터 및 제2 부분 메시지 데이터의 순서를 가짐을 나타내는 메시지 인덱스를 각각 할당할 수 있다.In one example, a user may input a first input message and then input a second input message, and the input message divider 224 divides the first input message into first partial message data and second partial message data. The second input message may be divided into third partial message data and fourth partial message data. In this example, the advertising scheduler 226 can assign a first session identifier for the first and second partial message data for the first input message, while the third and fourth for the second input message. The second session identifier may be assigned to the partial message data. In addition, the advertising scheduler 226 may allocate a message index indicating that the first partial message data and the second partial message data have an order.

일부 예시에서, 블루투스 모듈(210)이 BLE 기법을 이용하는 경우, 어드버타이징될 데이터 패킷의 길이는 예컨대, 47Byte일 수 있다. 일 예시에서, BLE에 대하여 미리 정해진 특징에 따라, 어드버타이징될 데이터 패킷의 길이(예컨대, 47Byte) 중 약 20Byte 내지 약 26Byte, 특히 20Byte 내지 22Byte, 바람직하게는 22Byte가 부분 메시지 데이터 및 메시지 식별자를 위하여 이용 가능할 수 있다. 일 예시에서, 이용 가능한 데이터 중 예컨대, 약 4~6Byte는 메시지 식별자를 위하여 미리 할당될 수 있으며, 그에 따라 약 14Byte 내지 약 22Byte가 입력 메시지를 위하여 이용 가능할 수 있다. 이와 같이, 입력 메시지 분할부(224)는 이러한 데이터 패킷의 구조에 기초하여 입력 메시지를 하나 이상의 부분 메시지 데이터로 분할할 수 있고, 어드버타이즈 스케줄러(226)는 분할된 부분 메시지 데이터에 대하여 대응하는 메시지 식별자를 부여하고, 하나 이상의 데이터 패킷을 생성할 수 있다.In some examples, when the Bluetooth module 210 uses the BLE technique, the length of the data packet to be advertising may be, for example, 47 bytes. In one example, according to a predetermined feature for BLE, about 20 bytes to about 26 bytes, in particular 20 bytes to 22 bytes, preferably 22 bytes of the length of the data packet to be advertised (eg 47 bytes) is the partial message data and the message identifier. May be available for In one example, for example, about 4-6 bytes of available data may be pre-allocated for the message identifier, such that about 14 bytes to about 22 bytes may be available for the input message. As such, the input message divider 224 may divide the input message into one or more partial message data based on the structure of this data packet, and the advertising scheduler 226 may correspond to the divided partial message data. It may assign a message identifier and generate one or more data packets.

블루투스 모듈(210)은 어드버타이즈 스케줄러(226)에 의해 생성된 하나 이상의 데이터 패킷을 전술한 바와 같이, 어드버타이징할 수 있다. 일부 예시에서, 블루투스 모듈(210)은 세션 식별자에 의해 정의되는 시간 구간에 대응하는 미리 정해진 시간 구간 동안, 생성된 하나 이상의 데이터 패킷을 어드버타이징할 수 있다.The Bluetooth module 210 may advertise one or more data packets generated by the advertising scheduler 226, as described above. In some examples, the Bluetooth module 210 may advertise one or more data packets generated during a predetermined time interval corresponding to the time interval defined by the session identifier.

일부 실시예에서, 수신 처리부(230)는 데이터 패킷 분석부(232), 메시지 데이터 수집부(234) 및 메시지 복원부(236)를 포함할 수 있다. 블루투스 모듈(210)은, 위에서 설명된 바와 같이, 데이터 패킷을 어드버타이징하는 컴퓨팅 장치를 스캔하고, 스캔된 컴퓨팅 장치로부터 어드버타이징되는 데이터 패킷을 수신할 수 있다. 데이터 패킷 분석부(232)는 블루투스 모듈(210)에 의해 수신된 데이터 패킷으로부터 메시지 식별자 및 데이터 패킷을 어드버타이징한 컴퓨팅 장치에서 입력된 입력 메시지의 적어도 일부를 포함하는 부분 메시지 데이터를 획득하도록 구성될 수 있다.In some embodiments, the reception processor 230 may include a data packet analyzer 232, a message data collector 234, and a message recovery unit 236. The Bluetooth module 210 may scan the computing device for advertising the data packet, as described above, and receive the data packet being advertised from the scanned computing device. The data packet analyzer 232 is configured to obtain partial message data including a message identifier and at least a part of an input message input from the computing device that has advertised the data packet from the data packet received by the Bluetooth module 210. Can be configured.

메시지 데이터 수집부(234)는 메시지 식별자에 기초하여, 데이터 패킷 분석부(232)에 의해 획득된 입력 메시지에 대한 하나 이상의 부분 메시지 데이터를 수집하도록 구성될 수 있다. 일부 예시에서, 메시지 데이터 수집부(234)는 장치 식별자, 세션 식별자, 등이 동일한 부분 메시지 데이터를 수집할 수 있다. The message data collector 234 may be configured to collect one or more partial message data for an input message obtained by the data packet analyzer 232 based on the message identifier. In some examples, the message data collector 234 may collect partial message data that has the same device identifier, session identifier, and the like.

일부 예시에서, 메시지 데이터 수집부(234)는 수집된 하나 이상의 부분 메시지 데이터를 메시지 인덱스에 기초하여, 정렬할 수 있다. 메시지 복원부(236)는 메시지 데이터 수집부(234)에 의해 수집된 하나 이상의 부분 메시지를 통합하여, 입력 메시지를 복원하도록 구성될 수 있다. 일부 예시에서, 메시지 복원부(236)는 세션 식별자에서 나타내는 시간 구간이 종료된 이후에, 메시지 데이터 수집부(234)에 의해 수집된 하나 이상의 부분 메시지 데이터에 대한 통합을 수행할 수 있다. 일부 예시에서, 메시지 데이터 수집부(234)에 의해 수집되고, 장치 식별자, 세션 식별자, 등이 동일하고 메시지 인덱스에 기초하여 정렬된 하나 이상의 부분 메시지 데이터를 통합하여, 하나의 메시지 데이터로 구성할 수 있다.In some examples, the message data collector 234 may sort the collected one or more partial message data based on the message index. The message recovery unit 236 may be configured to integrate one or more partial messages collected by the message data collection unit 234 to restore an input message. In some examples, the message reconstructor 236 may perform consolidation on one or more partial message data collected by the message data collector 234 after the time interval indicated by the session identifier ends. In some examples, one or more partial message data collected by the message data collector 234 and having the same device identifier, session identifier, and the like and arranged based on the message index may be combined into one message data. have.

출력부(240)는 수신 처리부(230)의 메시지 복원부(236)에 의해 복원된 입력 메시지를 출력 또는 디스플레이 하도록 구성될 수 있다. 요구되는 실시예에 따라, 출력부는 복원된 입력 메시지에 대하여 적절한 처리를 수행할 수 있다. 일부 예시에서, 블루투스 모듈(210)은 수신된 데이터 패킷의 신호 강도를 측정할 수 있다. 출력부(240)는 수신된 데이터 패킷의 신호 강도에 기초하여, 인스턴트 메시징 장치(200)와 데이터 패킷을 어드버타이징한 컴퓨팅 장치 사이의 거리를 추정할 수 있다. 출력부(240)는 추정된 거리에 기초하여, 복원된 입력 메시지의 모양, 색깔, 크기, 등과 같은 입력 메시지의 디스플레이되는 유형을 결정할 수 있다. 일부 다른 예시에서, 출력부(240)는 복원된 입력 메시지를 다른 유형의 텍스트(예컨대, 링크를 포함하는 하이퍼 텍스트), 음성 신호, 이미지, 등으로 변환하여 출력할 수 있다.The output unit 240 may be configured to output or display the input message restored by the message recovery unit 236 of the reception processor 230. According to the required embodiment, the output unit may perform appropriate processing on the restored input message. In some examples, the Bluetooth module 210 may measure the signal strength of the received data packet. The output unit 240 may estimate the distance between the instant messaging device 200 and the computing device advertising the data packet based on the signal strength of the received data packet. The output unit 240 may determine the displayed type of the input message, such as the shape, color, size, and the like of the restored input message, based on the estimated distance. In some other examples, the output unit 240 may convert the restored input message into another type of text (eg, hypertext including a link), a voice signal, an image, and the like.

인스턴트 메시징 장치(200) 및/또는 블루투스 모듈(210)은 다른 컴퓨팅 장치로부터 어드버타이징되는 데이터 패킷을 수신하지만, 다른 컴퓨팅 장치와 페어링 및/또는 본딩을 수행하지 않도록 제어할 수 있다. 즉, 본 개시에 따른 인스턴트 메시징 장치(200)는, 블루투스 모듈(210)에 의해 다른 컴퓨팅 장치와의 페어링 및 본딩을 수행하지 않으면서, 인스턴트 메시징 서비스를 제공할 수 있다. The instant messaging device 200 and / or the Bluetooth module 210 may receive a data packet being advertised from another computing device, but control not to perform pairing and / or bonding with another computing device. That is, the instant messaging device 200 according to the present disclosure may provide an instant messaging service without performing pairing and bonding with another computing device by the Bluetooth module 210.

도 3은 본 개시의 적어도 일부 실시예에 따라 어드버타이징되는 데이터 패킷의 일 예시적인 구조(300)를 나타낸다. 통상의 기술자는 도 3에 도시되는 예시가 단지 설명을 위한 예시일 뿐이며, 본 개시에 따른 특징들이 본 개시의 본질을 벗어나지 않는 범위에서 그리고 구현예에 따라 다양한 형태로 구현될 수 있음을 이해할 것이다. 컴퓨팅 장치에 의해 전송되는 데이터 패킷(310)은 예컨대, 47Byte와 같은, 컴퓨팅 장치 또는 기타 요인에 의해 미리 정해진 크기를 가진다. 데이터 패킷(310)은 표준, 프로토콜, 등의 기준에 따라, 자체적인 목적의 영역(312, 316)을 요구하고, 데이터를 수반하는 패킷 데이터 유닛(Packet Data Unit; PDU)(314)을 포함할 수 있다. 일 예시에서, 영역(312, 316)은 약 8Byte의 크기를 요구할 수 있다. 패킷 데이터 유닛(314)은 요구되는 바에 따라 예컨대, 약 8Byte의 오버헤드(overhead)를 포함할 수 있다. 패킷 데이터 유닛(314)은 또한 어드버타이징되는 데이터(324)를 포함할 수 있다. 어드버타이징되는 데이터(324)는 플래그를 위한 영역(332) 및 영역(334)을 포함할 수 있다. 영역(332)은 예컨대, 플래그의 길이, 유형, 데이터, 등과 같은 정보를 포함할 수 있다. 예컨대, 영역(332)은 3Byte를 이용할 수 있다. 영역(334)은 길이(342), 유형(344) 및 데이터(346)를 포함할 수 있으며, 데이터(346)는 전술한 바와 같은, 메시지 식별자 및 부분 메시지 데이터를 포함할 수 있다. 길이(342) 및 유형(344)이 각각 1Byte를 사용하므로, 데이터(346)는 약 26Byte이다. 이상 설명된 각 구조에서 사용되는 Byte의 크기는 예시적인 것이며, 컴퓨팅 장치의 구성, 운영체제, 미리 정해진 오버헤드 사용 방식에 따라 상이할 수 있다. 일부 예시에서, 데이터(346)의 길이는 예컨대, 20Byte 내지 26Byte이며, 바람직하게는 20Byte, 21Byte 또는 22Byte일 수 있다.3 illustrates an example structure 300 of a data packet being advertised in accordance with at least some embodiments of the present disclosure. Those skilled in the art will understand that the example shown in FIG. 3 is merely illustrative and that the features according to the present disclosure may be implemented in various forms without departing from the spirit of the present disclosure and according to the implementation. The data packet 310 sent by the computing device has a size predetermined by the computing device or other factor, for example 47 bytes. The data packet 310 may include a packet data unit (PDU) 314 carrying data and requiring areas of its own purpose 312, 316, according to standards, protocols, and the like. Can be. In one example, regions 312 and 316 may require a size of about 8 bytes. The packet data unit 314 may include, for example, an overhead of about 8 bytes as required. The packet data unit 314 can also include the data 324 being advertised. The advertised data 324 may include an area 332 and an area 334 for the flag. Region 332 may include information such as the length, type, data, etc. of the flag, for example. For example, the region 332 may use 3 bytes. Region 334 can include length 342, type 344, and data 346, and data 346 can include message identifiers and partial message data, as described above. Since the length 342 and type 344 each use 1 byte, the data 346 is about 26 bytes. The size of the byte used in each structure described above is exemplary, and may vary depending on the configuration of the computing device, the operating system, and the predetermined overhead usage. In some examples, the length of data 346 is, for example, 20 bytes to 26 bytes, and preferably 20 bytes, 21 bytes, or 22 bytes.

도 4는 본 개시의 적어도 일부 실시예에 따른 인스턴트 메시징 서비스에서, 인스턴트 메시지를 수신하는 것에 관한 예시적인 프로세스(400)를 도시하는 흐름도이다. 예컨대, 프로세스(400)는 도 2의 인스턴트 메시징 장치(200)와 같은 컴퓨팅 장치의 제어 하에서 수행될 수 있다. 컴퓨팅 장치는 도 4에 도시된 프로세스(400)는 블록(410, 420, 430, 440, 450 및/또는 460)에 의해 예시된 바와 같은 하나 이상의 동작, 기능 또는 작용을 포함할 수 있다. 추가적으로 그리고 선택적으로, 프로세스(400)는 블록(470 및/또는 480)에 예시된 바와 같은 하나 이상의 동작, 기능 또는 작용을 더 포함할 수 있다. 도 4에 도시된 프로세스(400)는 블루투스 모듈을 이용하여 외부 장치와 페어링 및/또는 본딩을 수행함 없이 수행될 수 있다. 다양한 블록은 설명된 실시예로 제한하려고 의도되지는 않는다. 예컨대, 당업자는 여기에서 개시된 본 프로세스에 대하여, 프로세스 및 방법에서 수행되는 기능이 상이한 순서로 구현될 수 있다는 것을 인정할 것이다. 또한, 당업자는 추가적이고 선택적인 블록(470 및/또는 480)이 블록(410, 420, 430, 440, 450 및/또는 460)과 동시에 수행될 수 있거나 블록(420, 430, 440, 450 및/또는 460)의 이전에 또는 이후에 수행될 수 있다는 것을 인정할 것이다. 한편, 도 4에 예시된 개략적인 동작들은 예시로서만 제공되고, 개시된 실시예의 본질에서 벗어나지 않으면서, 동작들 중 일부가 선택적일 수 있거나, 더 적은 동작으로 조합될 수 있거나, 추가적인 동작으로 확장될 수 있다. 프로세스(400)는 데이터 패킷을 어드버타이징하는 컴퓨팅 장치를 스캔하는 블록(410)에서 시작할 수 있다.4 is a flowchart illustrating an example process 400 for receiving instant messages in an instant messaging service, in accordance with at least some embodiments of the present disclosure. For example, process 400 may be performed under the control of a computing device, such as instant messaging device 200 of FIG. 2. The computing device may include one or more operations, functions, or actions as illustrated by block 410, 420, 430, 440, 450, and / or 460 as illustrated in FIG. 4. Additionally and optionally, process 400 may further include one or more operations, functions or actions as illustrated in blocks 470 and / or 480. The process 400 shown in FIG. 4 may be performed without performing pairing and / or bonding with an external device using a Bluetooth module. Various blocks are not intended to be limited to the described embodiments. For example, those skilled in the art will appreciate that, for the present processes disclosed herein, the functions performed in the processes and methods may be implemented in a different order. In addition, one of ordinary skill in the art would appreciate that additional and optional blocks 470 and / or 480 may be performed concurrently with blocks 410, 420, 430, 440, 450 and / or 460 or that blocks 420, 430, 440, 450 and / or Or may be performed before or after 460). On the other hand, the schematic operations illustrated in FIG. 4 are provided by way of example only, and some of the operations may be optional, may be combined in fewer operations, or may be extended to additional operations without departing from the spirit of the disclosed embodiment. Can be. Process 400 can begin at block 410 scanning a computing device for advertising a data packet.

블록(410)에서, 컴퓨팅 장치는 블루투스 모듈을 구동할 수 있으며, 구동되는 블루투스 모듈을 이용한 통신을 위하여 스캔을 수행할 수 있다. 이와 같이, 컴퓨팅 장치는 블루투스 모듈에 의해 외부 컴퓨팅 장치를 스캔할 수 있다. 일부 예시에서, 컴퓨팅 장치의 블루투스 모듈은 저전력 블루투스 방식으로 구동될 수 있다. 외부 컴퓨팅 장치는 예컨대, 블루투스 모듈을 이용하여 데이터 패킷을 어드버타이징할 수 있다. 프로세스(400)는 블록(410)에서 어드버타이징되는 데이터 패킷을 수신하는 블록(420)으로 이어질 수 있다.In block 410, the computing device may drive a Bluetooth module and perform a scan for communication using the driven Bluetooth module. As such, the computing device may scan the external computing device by the Bluetooth module. In some examples, the Bluetooth module of the computing device may be driven in a low power Bluetooth manner. The external computing device may, for example, advertise a data packet using a Bluetooth module. Process 400 may continue to block 420 receiving a data packet being advertised at block 410.

블록(420)에서, 컴퓨팅 장치는 구동되는 블루투스 모듈에 의해 스캔된 외부 컴퓨팅 장치로부터 어드버타이징되는 데이터 패킷을 수신할 수 있다. 프로세스(400)는 블록(420)에서 수신된 데이터 패킷으로부터 메시지 식별자 및 부분 메시지 데이터를 획득하는 블록(430)으로 이어질 수 있다.At block 420, the computing device may receive a data packet being advertised from an external computing device scanned by the Bluetooth module being driven. Process 400 may continue to block 430 to obtain a message identifier and partial message data from the data packet received at block 420.

블록(430)에서, 컴퓨팅 장치는 수신된 데이터 패킷으로부터 메시지 식별자 및 부분 메시지 데이터를 획득할 수 있다. 메시지 식별자는 외부 컴퓨팅 장치에서 입력된 메시지를 식별 및/또는 복원하기 위하여 이용 가능한 다양한 유형의 정보를 포함할 수 있다. 부분 메시지 데이터는 외부 컴퓨팅 장치에서 입력된 메시지의 적어도 일부를 포함할 수 있다. 일부 예시에서, 외부 장치를 식별하는 장치 식별자, 메시지를 수신하는 것에 관한 미리 정해진 시간 구간을 나타내는 세션 식별자, 메시지에 대한 부분 메시지 데이터의 메시지 인덱스 중 적어도 하나를 포함할 수 있다. 프로세스(400)는 블록(430)에서 메시지 식별자에 기초하여 부분 메시지 데이터를 포함하는 메시지에 관한 하나 이상의 부분 메시지 데이터를 수집하는 블록(440)으로 이어질 수 있다.In block 430, the computing device may obtain a message identifier and partial message data from the received data packet. The message identifier may include various types of information available for identifying and / or retrieving a message entered at an external computing device. The partial message data may include at least a portion of the message input at the external computing device. In some examples, the method may include at least one of a device identifier identifying an external device, a session identifier indicating a predetermined time interval for receiving a message, and a message index of partial message data for the message. Process 400 may continue at block 430 with block 440 collecting one or more partial message data regarding a message that includes the partial message data based on the message identifier.

블록(440)에서, 컴퓨팅 장치는 블록(430)에서 획득된 메시지 식별자에 기초하여, 하나 이상의 부분 메시지 데이터를 수집할 수 있다. 컴퓨팅 장치는 메시지 식별자에 기초하여, 외부 컴퓨팅 장치에서 입력된 메시지에 관한 부분 메시지 데이터 모두를 수집할 수 있다. 일부 예시에서, 컴퓨팅 장치는 장치 식별자 및 세션 식별자가 동일한 부분 메시지 데이터를 수집할 수 있다. 프로세스(400)는 블록(440)에서 수집된 하나 이상의 부분 메시지 데이터를 통합하여 메시지를 복원하는 블록(450)으로 이어질 수 있다.At block 440, the computing device may collect one or more partial message data based on the message identifier obtained at block 430. The computing device may collect all of the partial message data regarding the message input at the external computing device based on the message identifier. In some examples, the computing device may collect partial message data that has the same device identifier and session identifier. Process 400 may continue to block 450 to consolidate the one or more partial message data collected at block 440 to restore the message.

블록(450)에서, 컴퓨팅 장치는 블록(440)에서 수집된 하나 이상의 부분 메시지 데이터를 통합하고 통합된 하나 이상의 부분 메시지 데이터를 이용하여 메시지를 복원할 수 있다. 프로세스는(400)는 블록(450)에서 복원된 메시지를 출력하는 블록(460)으로 이어질 수 있다.At block 450, the computing device may consolidate one or more partial message data collected at block 440 and recover the message using the integrated one or more partial message data. The process 400 may continue to block 460 which outputs the restored message at block 450.

블록(460)에서, 컴퓨팅 장치는 블록(440)에서 복원된 메시지를 출력할 수 있다. 일부 예시에서, 컴퓨팅 장치는 복원된 메시지를 컴퓨팅 장치 상에서 디스플레이 할 수 있다. 일부 예시에서, 컴퓨팅 장치는 말 풍선, 등과 같이 인스턴트 메시징 서비스에서 제공되는 잘 알려진 방식으로 복원된 메시지를 디스플레이 할 수 있지만, 메시지의 출력은 이에 제한되지 않는다. 일부 다른 예시에서, 컴퓨팅 장치는 복원된 메시지를 음성 변환, 등의 추가적인 처리를 한 후에, 처리된 메시지를 출력할 수 있다. At block 460, the computing device may output the message restored at block 440. In some examples, the computing device may display the restored message on the computing device. In some examples, the computing device may display the restored message in a well known manner provided by an instant messaging service, such as a speech balloon, but the output of the message is not limited thereto. In some other examples, the computing device may output the processed message after further processing the recovered message, such as voice conversion.

추가적으로 그리고 선택적으로, 프로세스(400)는 블록(410)에서 어드버타이징되는 데이터 패킷의 신호 강도를 결정하는 블록(470)으로 이어질 수 있다. 블록(470)에서, 컴퓨팅 장치 및/또는 컴퓨팅 장치의 블루투스 모듈은 블루투스 모듈에 의해 스캔되는 외부 장치로부터 어드버타이징되는 데이터 패킷의 신호 강도를 결정 또는 측정할 수 있다. 프로세스(400)는 블록(470)에서 결정된 신호 강도에 기초하여, 외부 컴퓨팅 장치로부터의 거리를 추정하는 블록(480)으로 이어질 수 있다.Additionally and optionally, process 400 may continue to block 470 to determine the signal strength of the data packet being advertised at block 410. At block 470, the computing device and / or the Bluetooth module of the computing device may determine or measure the signal strength of the data packet being advertised from an external device scanned by the Bluetooth module. Process 400 may continue to block 480 to estimate a distance from an external computing device based on the signal strength determined at block 470.

블록(480)에서, 컴퓨팅 장치는 블록(470)에서 결정된 신호 강도에 기초하여 컴퓨팅 장치 및 외부 컴퓨팅 장치 간의 거리를 추정할 수 있다. 컴퓨팅 장치는 예컨대, 신호의 세기와 거리를 나타내는 미리 정해진 테이블, 신호의 세기를 이용하여 거리를 계산하기 위한 미리 정해진 수학식, 등을 이용하여, 컴퓨팅 장치 및 외부 컴퓨팅 장치 간의 거리를 추정, 계산 또는 결정할 수 있다.At block 480, the computing device may estimate the distance between the computing device and the external computing device based on the signal strength determined at block 470. The computing device estimates, calculates or calculates the distance between the computing device and an external computing device using, for example, a predetermined table representing the strength and distance of the signal, a predetermined equation for calculating the distance using the strength of the signal, and the like. You can decide.

따라서, 블록(460)에서, 컴퓨팅 장치는 어드버타이징되는 데이터 패킷의 신호 강도, 외부 컴퓨팅 장치와 컴퓨팅 장치 간의 거리와 같은 다양한 요인에 기초하여, 복원된 메시지를 변환하고, 변환된 메시지를 출력할 수 있다.Thus, at block 460, the computing device converts the restored message based on various factors, such as the signal strength of the advertising data packet, the distance between the external computing device and the computing device, and outputs the converted message. can do.

도 5는 본 개시의 적어도 일부 실시예에 따른 인스턴트 메시징 서비스에서, 인스턴트 메시지를 전송하는 것에 관한 예시적인 프로세스(500)를 도시하는 흐름도이다. 도 5에 도시된 프로세스(500)는 도 4에 도시된 프로세스(400)와 마찬가지로, 도 2의 인스턴트 메시징 장치(200)와 같은 컴퓨팅 장치의 제어 하에서 수행될 수 있다. 예컨대, 도 5에 도시된 프로세스(500)는 블록(510, 520, 530 및/또는 540)에 의해 예시된 바와 같은 하나 이상의 동작, 기능 또는 작용을 포함할 수 있다. 또한, 도 5에 예시된 개략적인 동작들은 예시로서만 제공되고, 개시된 실시예의 본질에서 벗어나지 않으면서, 동작들 중 일부가 선택적일 수 있거나 더 적은 동작으로 조합될 수 있거나, 추가적인 동작으로 확장될 수 있다. 프로세스(500)는 사용자에 의해 입력되거나 컴퓨팅 장치에 의회 획득된 정보에 기초하여 생성된 입력 메시지를 수신하는 블록(510)에서 시작할 수 있다.5 is a flow diagram illustrating an example process 500 for sending instant messages in an instant messaging service, in accordance with at least some embodiments of the present disclosure. The process 500 shown in FIG. 5 may be performed under the control of a computing device, such as the instant messaging device 200 of FIG. 2, similar to the process 400 shown in FIG. 4. For example, process 500 shown in FIG. 5 may include one or more operations, functions, or actions as illustrated by blocks 510, 520, 530, and / or 540. In addition, the schematic operations illustrated in FIG. 5 are provided by way of example only, and some of the operations may be optional, may be combined in fewer operations, or may be extended to additional operations without departing from the spirit of the disclosed embodiment. have. Process 500 may begin at block 510 for receiving an input message input by a user or generated based on information obtained parliamentally to a computing device.

블록(510)에서, 컴퓨팅 장치는 사용자로부터 입력 메시지를 수신하거나 컴퓨팅 장치에 의하여 획득되는 정보에 기초하여 입력 메시지를 생성할 수 있다. 일부 예시에서, 사용자는 다양한 입력 장치를 이용하여 컴퓨팅 장치에 입력 메시지를 입력할 수 있다. 일부 다른 예시에서, 컴퓨팅 장치는 예컨대, 센서, 프로세서, 등의 다양한 내부 컴포넌트에 의하여 획득된 정보에 기초하여 입력 메시지를 생성할 수 있다. 일부 예시에서, 컴퓨팅 장치에서 입력 메시지는 텍스트, 이미지, 동영상, 음성 또는 파일 중 적어도 하나를 포함할 수 있다. 프로세스(500)는 블록(510)에서 입력 메시지를 하나 이상의 부분 메시지 데이터로 분할하는 블록(520)으로 이어질 수 있다.At block 510, the computing device may receive an input message from a user or generate an input message based on the information obtained by the computing device. In some examples, a user may enter input messages into the computing device using various input devices. In some other examples, the computing device may generate an input message based on information obtained by various internal components, such as, for example, a sensor, a processor, and the like. In some examples, the input message at the computing device may include at least one of text, image, video, voice, or file. Process 500 may continue at block 510 with block 520 dividing the input message into one or more partial message data.

블록(520)에서, 컴퓨팅 장치는 수신된 입력 메시지를 하나 이상의 부분 메시지 데이터로 분할할 수 있다. 일부 예시에서, 컴퓨팅 장치는 미리 정해진 특성, 예컨대, 부분 메시지 데이터의 길이에 기초하여, 입력 메시지를 하나 이상의 부분 메시지 데이터로 분할할 수 있다. 미리 정해진 특성은 예컨대, 블루투스 모듈에 의해 어드버타이징될 데이터 패킷의 길이 또는 구조와 같은 블루투스 통신의 특성 또는 블루투스 모듈을 포함하는 컴퓨팅 장치의 성능과 같은 특성을 고려하여 정해질 수 있다. 분할되는 하나 이상의 부분 메시지 데이터는 메시지의 일부분에 대응할 수 있거나 입력 메시지가 인코딩되는 데이터의 일부분에 대응할 수 있다. 프로세스(500)는 블록(520)에서 입력 메시지에 대한 하나 이상의 데이터 패킷을 생성하는 블록(530)으로 이어질 수 있다.At block 520, the computing device may split the received input message into one or more partial message data. In some examples, the computing device may split the input message into one or more partial message data based on a predetermined characteristic, such as the length of the partial message data. The predetermined characteristic may be determined in consideration of characteristics such as, for example, the characteristics of the Bluetooth communication such as the length or structure of the data packet to be advertised by the Bluetooth module or the performance of the computing device including the Bluetooth module. The one or more partial message data to be split may correspond to a portion of the message or may correspond to the portion of data into which the input message is encoded. Process 500 may continue to block 530 to generate one or more data packets for the input message at block 520.

블록(530)에서, 컴퓨팅 장치는 블록(520)에서 분할된 하나 이상의 부분 메시지 데이터 중 하나의 부분 메시지 데이터 및 이러한 하나의 부분 메시지 데이터에 대한 메시지 식별자를 각각 포함하는 하나 이상의 데이터 패킷을 생성할 수 있다. 프로세스(500)는 블록(530)에서 생성된 하나 이상의 데이터 패킷을 어드버타이징하는 블록(540)으로 이어질 수 있다.At block 530, the computing device may generate one or more data packets each comprising one partial message data of the one or more partial message data partitioned at block 520 and a message identifier for the one partial message data. have. Process 500 may continue to block 540 advertising the one or more data packets generated at block 530.

블록(540)에서, 컴퓨팅 장치는 블루투스 모듈에 의해 미리 정해진 시간 구간 동안, 생성된 하나 이상의 데이터 패킷을 어드버타이징할 수 있다. 메시지 식별자가 부분 메시지 데이터를 포함하는 데이터 패킷이 어드버타이징되는 미리 정해진 시간구간을 나타내는 세션 식별자를 포함하는 경우, 컴퓨팅 장치는 그러한 세션 식별자가 나타내는 시간구간동안 생성된 데이터 패킷을 어드버타이징할 수 있다. 일부 예시에서, 블루투스 모듈이 BLE 기법을 이용하여 통신하는 경우, 그러한 BLE 기법에 따라, 데이터 패킷을 어드버타이징할 수 있다.In block 540, the computing device may advertise one or more data packets generated during the predetermined time interval by the Bluetooth module. If the message identifier comprises a session identifier that indicates a predetermined time period during which the data packet containing the partial message data is advertising, the computing device is advertising the data packet generated during the time period indicated by that session identifier. can do. In some examples, when the Bluetooth module communicates using the BLE technique, it may advertise the data packet according to such BLE technique.

도 4 및 도 5에 관하여 설명된 바와 같이, 컴퓨팅 장치는 사용자에게 인스턴트 메시징 서비스, 특히 블루투스 모듈을 이용한 인스턴트 메시징 서비스를 제공할 수 있다. 또한 전술한 본 개시에 따르면, 블루투스 모듈을 이용하여 다른 컴퓨팅 장치를 스캔하고, 어드버타이징되는 데이터 패킷을 수신하지만, 다른 컴퓨팅 장치와 페어링 및/또는 본딩 절차를 수행하지 않는다. 이와 같이, 컴퓨팅 장치는 시간 및 공간이 공유되는 다른 컴퓨팅 장치와 인스턴트 메시지를 전송 및 수신할 수 있다.As described with reference to FIGS. 4 and 5, the computing device may provide an instant messaging service to a user, in particular an instant messaging service using a Bluetooth module. In addition, according to the present disclosure described above, a Bluetooth module is used to scan another computing device and receive an advertised data packet, but does not perform a pairing and / or bonding procedure with the other computing device. As such, the computing device may send and receive instant messages with other computing devices that share time and space.

도 6은 본 개시의 적어도 일부 실시예에 따라 사용자와의 챗봇 대화를 관리하는 데 이용될 수 있는 예시적인 컴퓨터 프로그램 제품(600)을 도시한다. 예시적인 컴퓨터 프로그램 제품의 예시적인 실시예는 신호 포함 매체(602)를 이용하여 제공된다. 일부 실시예에서, 하나 이상의 컴퓨터 프로그램 제품(600)의 신호 포함 매체(602)는 컴퓨터 판독가능 매체(606), 기록 가능 매체(608) 및/또는 통신 매체(610)를 포함할 수 있다.6 illustrates an example computer program product 600 that may be used to manage chatbot conversations with a user in accordance with at least some embodiments of the present disclosure. An example embodiment of an example computer program product is provided using a signal bearing medium 602. In some embodiments, signal bearing media 602 of one or more computer program products 600 may include computer readable media 606, recordable media 608, and / or communication media 610.

신호 포함 매체(602)에 포함된 명령어(604)는 도 2에서 설명된 인스턴트 메시징 장치(200)와 같은 컴퓨팅 장치에 의해 실행될 수 있다. 명령어(604)가 실행되면, 컴퓨팅 장치로하여금 블루투스 모듈을 이용하여 인스턴트 메시징 서비스를 제공하도록 할 수 있다. 일부 실시예에서, 블루투스 모듈은 데이터 패킷을 어드버타이징하는 외부 컴퓨팅 장치를 스캔하고, 스캔된 외부 컴퓨팅 장치로부터 어드버타이징되는 데이터 패킷을 수신하도록 구성될 수 있다. 명령어(604)는 블루투스 모듈에 의해 수신된 데이터 패킷으로부터 메시지 식별자 및 외부 컴퓨팅 장치에서 입력된 메시지의 적어도 일부를 포함하는 부분 메시지 데이터를 획득하기 위한 하나 이상의 명령어; 메시지 식별자에 기초하여, 부분 메시지 데이터를 포함하는 메시지에 관한 하나 이상의 부분 메시지 데이터를 수집하기 위한 하나 이상의 명령어 또는 수집된 하나 이상의 부분 메시지를 통합하여 메시지를 복원하기 위한 하나 이상의 명령어 중 적어도 하나를 포함할 수 있다. 또한, 일부 실시예에서, 명령어(604)는 컴퓨팅 장치의 사용자로부터 입력 메시지를 수신하기 위한 하나 이상의 명령어; 블루투스 모듈에 의해 어드버타이징될 데이터 패킷의 미리 정해진 특성에 기초하여, 입력 메시지를 하나 이상의 부분 메시지 데이터로 분할하기 위한 하나 이상의 명령어; 장치 식별자, 세션 식별자, 메시지 인덱스와 같은 메시지 식별자 및 분할된 하나 이상의 부분 메시지 데이터 중 하나의 부분 메시지 데이터를 각각 포함하는 하나 이상의 데이터 패킷을 생성하기 위한 하나 이상의 명령어; 또는 블루투스 모듈에 의해 미리 정해진 시간 구간 동안 하나 이상의 데이터 패킷을 어드버타이징하기 위한 하나 이상의 명령어 중 적어도 하나를 포함할 수 있다.Instructions 604 included in the signal bearing medium 602 may be executed by a computing device, such as the instant messaging device 200 described in FIG. 2. When the command 604 is executed, the computing device may be configured to provide an instant messaging service using a Bluetooth module. In some embodiments, the Bluetooth module may be configured to scan an external computing device advertising the data packet and receive the data packet being advertised from the scanned external computing device. The instructions 604 may include one or more instructions for obtaining partial message data including a message identifier and at least a portion of a message input at an external computing device from a data packet received by a Bluetooth module; Based on the message identifier, at least one of one or more instructions for collecting one or more partial message data relating to the message including the partial message data or one or more instructions for integrating the collected one or more partial messages to restore the message. can do. Further, in some embodiments, instructions 604 may include one or more instructions for receiving an input message from a user of the computing device; One or more instructions for dividing an input message into one or more partial message data based on a predetermined characteristic of the data packet to be advertised by the Bluetooth module; One or more instructions for generating one or more data packets each including a device identifier, a session identifier, a message identifier such as a message index, and one partial message data of the divided one or more partial message data; Alternatively, the Bluetooth module may include at least one of one or more instructions for advertising one or more data packets during a predetermined time interval.

청구된 대상은 여기에서 기술된 특정 구현예로 범위가 제한되지 않는다. 예컨대, 일부 구현예는 장치 또는 장치의 조합 상에서 동작하도록 사용될 수 있는 것과 같은 하드웨어로 있을 수 있는 반면, 예컨대, 다른 구현예는 소프트웨어 및/또는 펌웨어로 있을 수 있다. 마찬가지로, 청구된 대상은 이러한 점에서 범위가 제한되지 않지만, 일부 구현예는 신호 베어링 매체, 저장 매체와 같은 하나 이상의 물품을 포함할 수 있다. CD-ROM, 컴퓨터 디스크, 플래시 메모리 등과 같은 이러한 저장 매체는, 예컨대, 컴퓨팅 시스템, 컴퓨팅 플랫폼 또는 기타 시스템과 같은 컴퓨팅 장치에 의하여 실행되면, 예컨대, 앞서 설명된 구현예 중 하나와 같은 청구된 대상에 따라 프로세서의 실행을 야기시킬 수 있는 명령을 저장할 수 있다. 하나의 가능성으로서, 컴퓨팅 장치는 하나 이상의 처리 유닛 또는 프로세서, 디스플레이, 키보드 및/또는 마우스와 같은 하나 이상의 입/출력 장치, 및 정적 랜덤 액세스 메모리, 동적 랜덤 액세스 메모리, 플래시 메모리 및/또는 하드 드라이브와 같은 하나 이상의 메모리를 포함할 수 있다.The claimed subject matter is not limited in scope to the specific embodiments described herein. For example, some implementations may be in hardware, such as may be used to operate on a device or combination of devices, while other implementations may be in software and / or firmware, for example. Likewise, the claimed subject matter is not limited in scope in this respect, but some embodiments may include one or more articles, such as signal bearing media, storage media. Such storage media, such as CD-ROMs, computer disks, flash memory, etc., when executed by a computing device such as, for example, a computing system, computing platform or other system, may, for example, As a result, instructions may be stored that may cause the processor to execute. As one possibility, the computing device may include one or more processing units or processors, one or more input / output devices such as a display, keyboard, and / or mouse, and static random access memory, dynamic random access memory, flash memory, and / or hard drive. It may include one or more memories.

시스템의 양상들의 하드웨어 및 소프트웨어 구현 사이에는 구별이 거의 없다; 하드웨어 또는 소프트웨어의 사용은 일반적으로 (그러나 어떤 맥락에서 하드웨어 및 소프트웨어 사이의 선택이 중요할 수 있다는 점에서 항상 그런 것은 아니지만) 비용 대비 효율의 트레이드오프(tradeoff)를 나타내는 설계상 선택(design choice)이다. 본 개시에서 기재된 프로세스 및/또는 시스템 및/또는 다른 기술들이 영향 받을 수 있는 다양한 수단(vehicles)(예를 들어, 하드웨어, 소프트웨어 및/또는 펌웨어)이 있으며, 선호되는 수단은 프로세스 및/또는 시스템 및/또는 다른 기술이 사용되는 맥락(context)에 따라 변경될 것이다. 예를 들어, 구현자가 속도 및 정확성이 가장 중요하다고 결정한다면, 구현자는 주로 하드웨어 및/또는 펌웨어 수단을 선택할 수 있으며, 유연성이 가장 중요하다면, 구현자는 주로 소프트웨어 구현을 선택할 수 있으며; 또는, 다른 대안으로서, 구현자는 하드웨어, 소프트웨어 및/또는 펌웨어의 어떤 결합을 선택할 수 있다.There is little distinction between hardware and software implementations of aspects of the system; The use of hardware or software is generally a design choice that represents a tradeoff in cost-efficiency (but not always in the sense that the choice between hardware and software can be important in some contexts). . There are various vehicles (eg, hardware, software and / or firmware) in which the processes and / or systems and / or other techniques described in this disclosure can be affected, and preferred means are processes and / or systems and And / or other techniques will change depending on the context in which it is used. For example, if an implementer decides that speed and accuracy are the most important, then the implementer may primarily choose hardware and / or firmware means; if flexibility is most important, the implementer may choose a software implementation primarily; Or, as another alternative, the implementer may choose any combination of hardware, software, and / or firmware.

전술한 상세한 설명은 블록도, 흐름도, 및/또는 예시를 통해 장치 및/또는 프로세스의 다양한 실시예를 설명하였다. 그러한 블록도, 흐름도, 및/또는 예시는 하나 이상의 기능 및/또는 동작을 포함하는 한, 당업자라면 그러한 블록도, 흐름도, 또는 예시 내의 각각의 기능 및/또는 동작은 하드웨어, 소프트웨어, 펌웨어, 또는 그들의 실질적으로 임의의 조합의 넓은 범위에 의해 개별적으로 및/또는 집합적으로 구현될 수 있다는 것이 이해할 것이다. 일 실시예에서, 본 개시에 기재된 대상의 몇몇 부분은 ASIC(Application Specific Integrated Circuit), FPGA(Field Programmable Gate Array), DSP(Digital Signal Processor) 또는 다른 집적의 형태를 통해 구현될 수 있다. 그러나, 당업자라면, 본 개시의 실시예의 일부 양상은, 하나 이상의 컴퓨터 상에 실행되는 하나 이상의 컴퓨터 프로그램(예를 들어, 하나 이상의 컴퓨터 시스템 상에 실행되는 하나 이상의 프로그램), 하나 이상의 프로세서 상에서 실행되는 하나 이상의 프로그램(예를 들어, 하나 이상의 마이크로프로세서 상에서 실행되는 하나 이상의 프로그램), 펌웨어 또는 이들의 실질적으로 임의의 조합으로써, 전체적으로 또는 부분적으로 균등하게 집적 회로에서 구현될 수 있다는 점, 소프트웨어 및/또는 펌웨어를 위한 코드의 작성 및/또는 회로의 설계는 본 개시에 비추어 당업자의 기술 범위 내라는 점을 알 수 있을 것이다. 또한, 당업자라면, 본 개시의 대상의 매커니즘(mechanism)들이 다양한 형태의 프로그램 제품으로 분배될 수 있음을 이해할 것이며, 본 개시의 대상의 예시는, 분배를 실제로 수행하는데 사용되는 신호 베어링 매체의 특정 유형과 무관하게 적용됨을 이해할 것이다. The foregoing detailed description has described various embodiments of the apparatus and / or process via block diagrams, flow diagrams, and / or examples. As long as such block diagrams, flowcharts, and / or examples include one or more functions and / or operations, those skilled in the art will appreciate that each function and / or operation within such block diagrams, flowcharts, or illustrations may be hardware, software, firmware, or their It will be understood that they may be implemented individually and / or collectively by a wide range of substantially any combination. In one embodiment, some portions of the subject matter described in this disclosure may be implemented via an Application Specific Integrated Circuit (ASIC), Field Programmable Gate Array (FPGA), Digital Signal Processor (DSP), or other integrated form. However, those skilled in the art will appreciate that some aspects of the embodiments of the present disclosure may include one or more computer programs running on one or more computers (eg, one or more programs running on one or more computer systems), one running on one or more processors. Software, and / or firmware that may be implemented in integrated circuits, in whole or in part, as one or more programs (eg, one or more programs running on one or more microprocessors), firmware, or substantially any combination thereof It will be appreciated that the writing of code for and / or the design of circuitry is within the skill of one of ordinary skill in the art in light of the present disclosure. Moreover, those skilled in the art will understand that the mechanisms of the subject matter of the present disclosure may be distributed in various forms of program products, and examples of the subject matter of the present disclosure are specific types of signal bearing media used to actually perform the distribution. It will be understood that it is applied regardless of.

특정 예시적 기법이 다양한 방법 및 시스템을 이용하여 여기에서 기술되고 도시되었으나, 청구된 대상에서 벗어나지 않고, 다양한 기타의 수정이 이루어질 수 있고, 등가물이 대체될 수 있음이 당업자에 의해 이해되어야 한다. 추가적으로, 여기에 기술된 중심 개념으로부터 벗어남이 없이 특정 상황을 청구된 대상의 교시로 적응시키도록 많은 수정이 이루어질 수 있다. 따라서, 청구된 대상이 개시된 특정 예시로 제한되지 않으나, 그러한 청구된 대상은 또한 첨부된 청구범위 및 그 균등의 범위 내에 들어가는 모든 구현예를 포함할 수 있음이 의도된다.While certain example techniques have been described and illustrated herein using various methods and systems, it should be understood by those skilled in the art that various other modifications may be made and equivalents may be substituted without departing from the claimed subject matter. In addition, many modifications may be made to adapt a particular situation to the teachings of the claimed subject matter without departing from the central concept described herein. Thus, although the claimed subject matter is not limited to the specific examples disclosed, it is intended that such claimed subject matter may also include all embodiments falling within the scope of the appended claims and their equivalents.

Claims (13)

제1 컴퓨팅 장치의 제어 하에서 구동되는 블루투스 모듈을 이용하여 수행되는 인스턴트 메시징 방법으로서,
상기 블루투스 모듈에 의해, 데이터 패킷을 어드버타이징(advertising)하는 제2 컴퓨팅 장치를 스캔하는 단계;
상기 블루투스 모듈에 의해, 상기 스캔된 제2 컴퓨팅 장치로부터 어드버타이징되는 상기 데이터 패킷을 수신하는 단계;
상기 수신된 데이터 패킷으로부터, 메시지 식별자 및 상기 제2 컴퓨팅 장치에서 입력된 메시지의 적어도 일부를 포함하는 부분 메시지 데이터를 획득하는 단계;
상기 메시지 식별자에 기초하여, 상기 부분 메시지 데이터를 포함하는 상기 메시지에 관한 하나 이상의 부분 메시지 데이터를 수집하는 단계;
상기 수집된 하나 이상의 부분 메시지 데이터를 통합하여 상기 메시지를 복원하는 단계; 및
상기 복원된 메시지를 상기 제1 컴퓨팅 장치 상에서 출력하는 단계
를 포함하는 인스턴트 메시징 방법.
An instant messaging method performed using a Bluetooth module that is driven under the control of a first computing device,
Scanning, by the Bluetooth module, a second computing device for advertising the data packet;
Receiving, by the Bluetooth module, the data packet being advertised from the scanned second computing device;
Obtaining, from the received data packet, partial message data including a message identifier and at least a portion of a message input at the second computing device;
Based on the message identifier, collecting one or more partial message data relating to the message including the partial message data;
Integrating the collected one or more partial message data to restore the message; And
Outputting the restored message on the first computing device
Instant messaging method comprising a.
제1항에 있어서,
상기 메시징 방법은 페어링(pairing) 절차 없이 상기 제1 컴퓨팅 장치에 의해 애드혹 네트워킹(ad-hoc networking) 방식으로 수행되는 것인, 인스턴트 메시징 방법.
The method of claim 1,
Wherein the messaging method is performed in an ad-hoc networking manner by the first computing device without a pairing procedure.
제1항에 있어서,
상기 블루투스 모듈은 저전력 블루투스(Bluetooth Low Energy; BLE) 방식으로 구동되는 것인, 인스턴트 메시징 방법.
The method of claim 1,
The Bluetooth module is driven in a Bluetooth Low Energy (BLE) scheme, instant messaging method.
제1항에 있어서,
상기 제2 컴퓨팅 장치로부터 어드버타이징되는 상기 데이터 패킷의 신호 강도를 결정하는 단계; 및
상기 결정된 신호 강도에 기초하여, 상기 제1 컴퓨팅 장치로부터 상기 제2 컴퓨팅 장치의 거리를 추정하는 단계
를 더 포함하며,
상기 복원된 메시지를 상기 제1 컴퓨팅 장치 상에서 출력하는 단계는 상기 추정된 거리에 기초하여 상기 복원된 메시지를 출력하는 단계를 포함하는 것인, 인스턴트 메시징 방법.
The method of claim 1,
Determining a signal strength of the data packet being advertised from the second computing device; And
Estimating a distance of the second computing device from the first computing device based on the determined signal strength
More,
Outputting the restored message on the first computing device comprises outputting the restored message based on the estimated distance.
제1항에 있어서,
상기 메시지 식별자는 상기 제2 컴퓨팅 장치를 식별하는 장치 식별자, 상기 메시지를 수신하는 것에 관한 미리 정해진 시간 구간을 나타내는 세션 식별자 및 상기 메시지에 대한 상기 부분 메시지 데이터의 메시지 인덱스 중 적어도 하나를 포함하는 것인, 인스턴트 메시징 방법.
The method of claim 1,
The message identifier comprises at least one of a device identifier identifying the second computing device, a session identifier indicating a predetermined time interval for receiving the message, and a message index of the partial message data for the message. , Instant messaging methods.
제1 컴퓨팅 장치의 제어 하에서 구동되는 블루투스 모듈을 이용하여 수행되는 인스턴트 메시징 방법으로서,
상기 제1 컴퓨팅 장치의 사용자에 의해 입력되거나 상기 제1 컴퓨팅 장치에 의해 획득된 정보에 기초하여 생성된 입력 메시지를 수신하는 단계;
상기 블루투스 모듈에 의해 어드버타이징(advertising)될 데이터 패킷의 미리 정해진 특성에 기초하여, 상기 입력 메시지를 하나 이상의 부분 메시지 데이터로 분할하는 단계;
상기 제1 컴퓨팅 장치를 식별하는 장치 식별자, 상기 입력 메시지의 어드버타이징에 관한 미리 정해진 시간 구간을 나타내는 세션 식별자, 상기 하나 이상의 부분 메시지 데이터 중 하나의 부분 메시지 데이터 및 상기 입력 메시지에 대한 상기 하나의 부분 메시지 데이터의 메시지 인덱스를 각각 포함하는 하나 이상의 데이터 패킷을 생성하는 단계; 및
상기 블루투스 모듈에 의해, 상기 미리 정해진 시간 구간 동안, 상기 생성된 하나 이상의 데이터 패킷을 어드버타이징(advertising)하는 단계
를 포함하는 인스턴트 메시징 방법.
An instant messaging method performed using a Bluetooth module that is driven under the control of a first computing device,
Receiving an input message input by a user of the first computing device or generated based on information obtained by the first computing device;
Dividing the input message into one or more partial message data based on a predetermined characteristic of the data packet to be advertised by the Bluetooth module;
A device identifier identifying the first computing device, a session identifier indicating a predetermined time interval relating to advertising of the input message, one partial message data of the one or more partial message data, and the one for the input message Generating one or more data packets each containing a message index of the partial message data of a; And
Advertising the generated one or more data packets during the predetermined time interval by the Bluetooth module;
Instant messaging method comprising a.
데이터 패킷을 어드버타이징(advertising)하는 컴퓨팅 장치를 스캔하고, 상기 스캔된 컴퓨팅 장치로부터 어드버타이징되는 상기 데이터 패킷을 수신하도록 구성된 블루투스 모듈;
상기 수신된 데이터 패킷으로부터, 메시지 식별자 및 상기 컴퓨팅 장치에서 입력된 메시지의 적어도 일부를 포함하는 부분 메시지 데이터를 획득하도록 구성된 데이터 패킷 분석부;
상기 메시지 식별자에 기초하여, 상기 부분 메시지 데이터를 포함하는 상기 메시지에 관한 하나 이상의 부분 메시지 데이터를 수집하도록 구성된 메시지 데이터 수집부; 및
상기 수집된 하나 이상의 부분 메시지 데이터를 통합하여 상기 메시지를 복원하도록 구성된 메시지 복원부
를 포함하는 인스턴트 메시징 장치.
A Bluetooth module configured to scan a computing device for advertising a data packet and receive the data packet being advertised from the scanned computing device;
A data packet analyzer configured to obtain, from the received data packet, partial message data including a message identifier and at least a portion of a message input at the computing device;
A message data collection unit, configured to collect one or more partial message data relating to the message including the partial message data based on the message identifier; And
A message restoration unit configured to restore the message by integrating the collected one or more partial message data;
Instant messaging device comprising a.
제7항에 있어서,
상기 블루투스 모듈은 상기 블루투스 모듈이 저전력 블루투스(Bluetooth Low Energy; BLE) 동작모드로 동작 가능하도록 구성되는 것인, 인스턴트 메시징 장치.
The method of claim 7, wherein
The Bluetooth module is configured to enable the Bluetooth module to operate in a low power Bluetooth (BLE) operating mode, instant messaging device.
제7항에 있어서,
상기 메시지 식별자는 상기 데이터 패킷을 어드버타이징하는 상기 컴퓨팅 장치를 식별하는 장치 식별자, 상기 메시지를 수신하는 것에 관한 미리 정해진 시간 구간을 나타내는 세션 식별자 및 상기 메시지에 대한 상기 부분 메시지 데이터의 메시지 인덱스 중 적어도 하나를 포함하는 것인, 인스턴트 메시징 장치.
The method of claim 7, wherein
The message identifier is a device identifier identifying the computing device advertising the data packet, a session identifier indicating a predetermined time interval for receiving the message, and a message index of the partial message data for the message. And at least one.
제7항에 있어서,
사용자에 의해 입력되거나 상기 인스턴트 메시징 장치에 의해 획득된 정보에 기초하여 생성된 입력 메시지를 수신하도록 구성된 입력부;
상기 블루투스 모듈에 의해 어드버타이징될 데이터 패킷의 미리 정해진 특성에 기초하여, 상기 입력 메시지를 하나 이상의 부분 입력 메시지 데이터로 분할하도록 구성된 입력 메시지 분할부; 및
상기 입력 메시지에 대한 입력 메시지 식별자 및 상기 하나 이상의 부분 메시지 데이터 중 하나의 부분 입력 메시지 데이터를 각각 포함하는 하나 이상의 전송 데이터 패킷을 생성하도록 구성된 어드버타이즈 스케줄러
를 더 포함하며,
상기 블루투스 모듈은 상기 어드버타이즈 스케줄러에 의해 생성된 상기 하나 이상의 전송 데이터 패킷을 어드버타이징하도록 구성되는 것인, 인스턴트 메시징 장치.
The method of claim 7, wherein
An input unit configured to receive an input message input by a user or generated based on information obtained by the instant messaging device;
An input message divider configured to divide the input message into one or more partial input message data based on a predetermined characteristic of a data packet to be advertised by the Bluetooth module; And
An advertisement scheduler configured to generate one or more transmission data packets each including an input message identifier for the input message and one partial input message data of the one or more partial message data
More,
The Bluetooth module is configured to advertise the one or more transmitted data packets generated by the advertising scheduler.
블루투스 모듈을 이용하는 컴퓨팅 장치에서 실행되며, 인스턴트 메시징 서비스를 제공하기 위하여 하나 이상의 컴퓨터 실행가능 명령어가 저장된 컴퓨터 판독가능 저장 매체로서,
상기 블루투스 모듈은 데이터 패킷을 어드버타이징(advertising)하는 외부 컴퓨팅 장치를 스캔하고, 상기 스캔된 외부 컴퓨팅 장치로부터 어드버타이징되는 상기 데이터 패킷을 수신하도록 구성되며,
상기 하나 이상의 컴퓨터 실행가능 명령어가 실행되면, 상기 컴퓨팅 장치로 하여금,
상기 수신된 데이터 패킷으로부터, 메시지 식별자 및 상기 외부 컴퓨팅 장치에서 입력된 메시지의 적어도 일부를 포함하는 부분 메시지 데이터를 획득하는 동작;
상기 메시지 식별자에 기초하여, 상기 부분 메시지 데이터를 포함하는 상기 메시지에 관한 하나 이상의 부분 메시지 데이터를 수집하는 동작; 및
상기 수집된 하나 이상의 부분 메시지 데이터를 통합하여 상기 메시지를 복원하는 동작
을 포함하는 동작들을 수행하도록 하는, 컴퓨터 판독가능 저장 매체.
A computer readable storage medium executed on a computing device using a Bluetooth module, the one or more computer executable instructions stored thereon for providing an instant messaging service,
The Bluetooth module is configured to scan an external computing device advertising the data packet, and receive the data packet being advertised from the scanned external computing device,
When the one or more computer executable instructions are executed, causing the computing device to:
Obtaining, from the received data packet, partial message data including a message identifier and at least a portion of a message input at the external computing device;
Based on the message identifier, collecting one or more partial message data relating to the message including the partial message data; And
Integrating the collected one or more partial message data to restore the message
Computer readable storage medium adapted to perform operations comprising a.
제11항에 있어서,
상기 메시지 식별자는 상기 데이터 패킷을 어드버타이징하는 상기 외부 컴퓨팅 장치를 식별하는 장치 식별자 및 상기 메시지를 수신하는 것에 관한 미리 정해진 시간 구간을 정의하는 세션 식별자를 포함하는 것인, 컴퓨터 판독가능 저장 매체.
The method of claim 11,
The message identifier comprises a device identifier identifying the external computing device advertising the data packet and a session identifier defining a predetermined time interval for receiving the message. .
제11항에 있어서,
상기 블루투스 모듈은 상기 블루투스 모듈이 저전력 블루투스(Bluetooth Low Energy; BLE) 동작모드로 동작 가능하도록 구성되는 것인, 컴퓨터 판독가능 저장 매체.
The method of claim 11,
And wherein the Bluetooth module is configured to enable the Bluetooth module to operate in a low power Bluetooth Low Energy (BLE) mode of operation.
KR1020180015117A 2018-02-07 2018-02-07 Device, method and computer readable storage medium to provide messaging service using bluetooth low energy KR20190095743A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180015117A KR20190095743A (en) 2018-02-07 2018-02-07 Device, method and computer readable storage medium to provide messaging service using bluetooth low energy

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180015117A KR20190095743A (en) 2018-02-07 2018-02-07 Device, method and computer readable storage medium to provide messaging service using bluetooth low energy

Publications (1)

Publication Number Publication Date
KR20190095743A true KR20190095743A (en) 2019-08-16

Family

ID=67806783

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180015117A KR20190095743A (en) 2018-02-07 2018-02-07 Device, method and computer readable storage medium to provide messaging service using bluetooth low energy

Country Status (1)

Country Link
KR (1) KR20190095743A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102287589B1 (en) * 2020-08-27 2021-08-09 (주)티아이스퀘어 Method and System for Urgent Message Service Using BLE

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080013119A (en) 2006-08-07 2008-02-13 삼성전자주식회사 Bluetooth-based chatting system and method
KR101728115B1 (en) 2016-05-09 2017-04-19 (주)아씨오 Messaging Method and Messaging System Using BLE and Computer Readable Recording Medium

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080013119A (en) 2006-08-07 2008-02-13 삼성전자주식회사 Bluetooth-based chatting system and method
KR101728115B1 (en) 2016-05-09 2017-04-19 (주)아씨오 Messaging Method and Messaging System Using BLE and Computer Readable Recording Medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102287589B1 (en) * 2020-08-27 2021-08-09 (주)티아이스퀘어 Method and System for Urgent Message Service Using BLE

Similar Documents

Publication Publication Date Title
US20200382938A1 (en) Method and apparatus for low energy discovery
CN109271327B (en) Memory management method and device
WO2018059176A1 (en) Method and apparatus for generating targeted label and storage medium
KR102389576B1 (en) Apparatus and method for detecting counterfeit advertiser in wireless communication system
WO2018086462A1 (en) Method and device for generating loading, push, and interaction information of service data
TWI547159B (en) Media content sharing method, terminal device and content sharing system
CN107179950B (en) Application process processing method, mobile terminal and computer readable storage medium
CN110380955B (en) Message processing method and device and electronic equipment
CN107341033A (en) A kind of data statistical approach, device, electronic equipment and storage medium
US10448111B2 (en) Content projection
CN103873883B (en) Video playing method and device and terminal equipment
KR20140136977A (en) Measuring quality of experience associated with a mobile device
US20180293620A1 (en) Information recommendation method, terminal, server, and computer storage medium
WO2019052432A1 (en) Data transmission method, mobile terminal and computer-readable storage medium
CN108900855B (en) Live content recording method and device, computer readable storage medium and server
US20170171255A1 (en) Method and device for establishing a data connection and computer-readable medium
US20180279252A1 (en) Position authentication
WO2015070769A1 (en) Data transfer method and apparatus
CN111491279A (en) Bluetooth scanning method, device, equipment and computer readable storage medium
CN109146446A (en) A kind of virtual objects distribution method, apparatus and system
US10681520B2 (en) Ability to trigger beacon receiver devices in a short-range wireless beacon communication system
CN112131457A (en) Information recommendation method, device and system and storage medium
CN106055598B (en) Information display method and device
CN109976848A (en) A kind of image display method, device, equipment and storage medium
WO2022016981A1 (en) Image processing methods and apparatus, storage medium, and electronic device

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application