KR102682205B1 - Method and server for checking location-related information for service subscribers - Google Patents
Method and server for checking location-related information for service subscribers Download PDFInfo
- Publication number
- KR102682205B1 KR102682205B1 KR1020230174117A KR20230174117A KR102682205B1 KR 102682205 B1 KR102682205 B1 KR 102682205B1 KR 1020230174117 A KR1020230174117 A KR 1020230174117A KR 20230174117 A KR20230174117 A KR 20230174117A KR 102682205 B1 KR102682205 B1 KR 102682205B1
- Authority
- KR
- South Korea
- Prior art keywords
- ble
- information
- advertiser
- client app
- signal
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/01—Determining conditions which influence positioning, e.g. radio environment, state of motion or energy consumption
- G01S5/014—Identifying transitions between environments
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0252—Radio frequency fingerprinting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/021—Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
- H04W4/08—User group management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Multimedia (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
본 발명은 서비스 가입자들에 대한 위치관련 정보 수집 방법 및 서버에 관한 것으로, 보다 구체적으로는 BLE를 통하여 서비스 가입자들에 대한 위치관련 정보 수집 방법 및 서버에 관한 것이다.The present invention relates to a method and server for collecting location-related information about service subscribers, and more specifically, to a method and server for collecting location-related information about service subscribers through BLE.
사용자의 위치 정보는 개인화된 광고/마케팅, 긴급 구호 서비스, 건강/피트니스 관련 서비스, SNS 미디어에서 지역 기반의 커뮤니티 서비스 등 매우 다양하게 활용될 수 있는 무한한 가능성을 지닌다. User location information has infinite potential for a wide variety of uses, including personalized advertising/marketing, emergency relief services, health/fitness-related services, and region-based community services in SNS media.
사용자의 위치 정보를 확보하기 위해선 GPS를 활용해야 하는데, 이는 스마트폰 배터리의 상당한 소모를 야기한다. 일반적으로 GPS는 스마트폰 기기에서 가장 많은 에너지를 소모하는 기능 중 하나로 알려져 있다.To secure the user's location information, GPS must be used, which causes significant consumption of the smartphone battery. GPS is generally known to be one of the most energy-consuming functions in smartphone devices.
이러한 문제를 해결하기 위해, 블루투스를 활용한 위치정보 확인에 대한 기술이 기존에도 있었지만, 별도의 비콘을 설치가 필요하며 인프라 확대에 대한 시간/금전적 비용적 이슈로 인해 활성화가 되지는 못했다. To solve this problem, there was existing technology to check location information using Bluetooth, but it required installation of a separate beacon and was not activated due to time/financial cost issues regarding infrastructure expansion.
한편, GPS는 매우 편리하게 사용자의 위치 정보를 수집할 수 있는 강력한 도구가 되지만, 저궤도 위성을 이용하는 그 본연의 특성상 실내 상권(백화점 등)에서는 GPS 정보를 통한 위치 정보 획득의 어려움이 있다. Meanwhile, GPS is a powerful tool that can very conveniently collect user's location information, but due to its inherent nature of using low-orbit satellites, it is difficult to obtain location information through GPS information in indoor commercial areas (department stores, etc.).
본 발명의 실시예는 GPS 활성화 없이도 실내/실외 제약 없이 사용자 앱과 가맹점 앱간의 BLE 통신으로 사용자의 위치를 파악할 수 있는 BLE를 통한 디바이스 그룹화 및 가맹점 데이터를 가진 서버와의 통신을 활용한 위치관련 정보 확인 방법 및 서버를 제공한다.An embodiment of the present invention provides location-related information using device grouping through BLE and communication with a server with affiliated store data, which can determine the user's location through BLE communication between the user app and the affiliated store app without indoor/outdoor restrictions even without GPS activation. Verification method and server are provided.
한편, 본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 것이다.Meanwhile, other unspecified purposes of the present invention will be additionally considered within the scope that can be easily inferred from the following detailed description and its effects.
일 실시예에 따른 서버의 서비스 가입자들에 대한 위치관련 정보 확인 방법으로서, 상기 서버는 제1 클라이언트 앱이 설치된 다수의 제1 단말기들와, 제2 클라이언트 앱이 설치된 다수의 제2 단말기들와 네트워크를 통해 연결되되, 제1 클라이언트 앱을 통해 제1 BLE 신호를 브로드캐스팅하는 단계; 제2 클라이언트 앱을 통해 제2 BLE 신호를 브로드캐스팅하는 단계; 상기 제1 BLE 신호 및 제2 BLE 신호 중 적어도 하나를 인식한 제2 클라이언트 앱으로부터 BLE 인식 신호를 전달받는 단계; 상기 전달받은 BLE 인식 신호를 수집하고, 수집된 신호를 복호화하여 위치관련-로데이터 DB를 구성하는 단계; 및 상기 위치관련-로데이터 DB를 분석하여 상기 제1 BLE 신호 정보가 포함된 상기 BLE 인식 신호를 전달한 제2 클라이언트 앱에 대해 소정의 구역에 위치하는 것으로 판단하는 단계;를 포함할 수 있다. A method of checking location-related information about service subscribers of a server according to an embodiment, wherein the server connects a plurality of first terminals with a first client app installed and a plurality of second terminals with a second client app installed through a network. Connected, broadcasting a first BLE signal through a first client app; Broadcasting a second BLE signal through a second client app; Receiving a BLE recognition signal from a second client app that recognizes at least one of the first BLE signal and the second BLE signal; Collecting the received BLE recognition signal, decoding the collected signal, and constructing a location-related raw data DB; and analyzing the location-related-raw data DB to determine that the second client app that transmitted the BLE recognition signal including the first BLE signal information is located in a predetermined area.
상기 소정의 구역은 상기 제1 클라이언트 앱에 로그인된 가맹점 주소 정보를 기초로 하는 가상의 상권에 해당할 수 있다. The predetermined area may correspond to a virtual commercial area based on the address information of the affiliated store logged into the first client app.
상기 위치관련-로데이터 DB는 옵저버 BLE 토큰 정보, 어드버타이저 BLE 토큰 정보, 가입자 ID 정보 및 갱신 일시 정보 중 하나 이상을 포함하는 유저 그룹 데이터와, 상기 유저 그룹 데이터의 상기 어드버타이저 BLE 토큰 정보에 포함된 상기 제1 BLE 신호 정보에 대응하는 어드버타이저 BLE 토큰 정보(매핑된 어드버타이저 BLE 토큰 정보), 가맹점 ID 정보, 가맹점 주소 정보, 가맹점 위치 정보 및 갱신 일시 정보 중 하나 이상을 포함하는 기준 가맹점 매핑 데이터를 포함할 수 있다.The location-related raw data DB includes user group data including one or more of observer BLE token information, advertiser BLE token information, subscriber ID information, and update date and time information, and the advertiser BLE of the user group data. One of advertiser BLE token information (mapped advertiser BLE token information), affiliated store ID information, affiliated store address information, affiliated store location information, and update date and time information corresponding to the first BLE signal information included in the token information. It may include standard affiliated store mapping data including the above.
상기 판단하는 단계는 상기 매핑된 어드버타이저 BLE 토큰 정보를 갖는 옵저버 BLE 토큰 정보에 상응하는 제2 클라이언트 앱에 대해 상기 소정의 구역에 위치하는 것으로 판단할 수 있다. In the determining step, it may be determined that the second client app corresponding to the observer BLE token information with the mapped advertiser BLE token information is located in the predetermined area.
상기 판단하는 단계는, 상기 매핑된 어드버타이저 BLE 토큰 정보의 유효 시점을 설정하는 단계; 및 상기 유효 시점을 만족하는 상기 매핑된 어드버타이저 BLE 토큰 정보를 갖는 옵저버 BLE 토큰 정보에 상응하는 제2 클라이언트 앱에 대해서만 상기 소정의 구역에 위치하는 것으로 필터링하는 단계;를 포함할 수 있다. The determining step includes setting a valid time point of the mapped advertiser BLE token information; and filtering only the second client app corresponding to the observer BLE token information having the mapped advertiser BLE token information that satisfies the validity point as being located in the predetermined area.
상기 판단하는 단계는, 상기 매핑된 어드버타이저 BLE 토큰 정보의 유효 개수를 설정하는 단계; 및 상기 유효 개수를 만족하는 상기 매핑된 어드버타이저 BLE 토큰 정보를 갖는 옵저버 BLE 토큰 정보에 상응하는 제2 클라이언트 앱에 대해서만 상기 소정의 구역에 위치하는 것으로 필터링하는 단계;를 포함할 수 있다. The determining step includes setting a valid number of the mapped advertiser BLE token information; and filtering only the second client app corresponding to the observer BLE token information having the mapped advertiser BLE token information that satisfies the valid number as being located in the predetermined area.
상기 위치관련-로데이터 DB는 상기 유저 그룹 데이터의 상기 어드버타이저 BLE 토큰 정보에 포함된 상기 제2 BLE 신호 정보에 대응하는 어드버타이저 BLE 토큰 정보(간접 매핑된 어드버타이저 BLE 토큰 정보)를 포함하는 기준 클라이언트 매핑 데이터를 더 포함할 수 있다. The location-related-raw data DB contains advertiser BLE token information (indirectly mapped advertiser BLE token) corresponding to the second BLE signal information included in the advertiser BLE token information of the user group data. It may further include reference client mapping data including information).
상기 판단하는 단계는 상기 매핑된 어드버타이저 BLE 토큰 정보를 갖지 않더라도, 상기 간접 매핑된 어드버타이저 BLE 토큰 정보를 갖는 옵저버 BLE 토큰 정보에 상응하는 제2 클라이언트 앱에 대해 상기 소정의 구역에 위치하는 것으로 판단할 수 있다. The determining step is performed in the predetermined area for a second client app corresponding to observer BLE token information with the indirectly mapped advertiser BLE token information, even if it does not have the mapped advertiser BLE token information. It can be judged by its location.
상기 제2 BLE 신호는, 기설정된 주기에 따라 제2 클라이언트 앱으로부터 수신한 BLE 토큰 생성 요청에 응답하여 생성한 BLE 토큰에 기초하여 브로드캐스팅되고, 유효기간이 끝난 토큰은 폐기될 수 있다. The second BLE signal is broadcast based on a BLE token generated in response to a BLE token creation request received from the second client app according to a preset period, and tokens whose validity period has expired may be discarded.
상기 BLE 토큰 생성 요청과 그 응답은 클라이언트-서버간 토큰 생성 API를 통해 이루어지며, 상기 토큰 생성 API가 게이트웨이를 지날 때 가입자 ID 정보가 상기 BLE 토큰 생성 요청에 추가될 수 있다. The BLE token creation request and its response are made through a client-server token creation API, and when the token creation API passes through the gateway, subscriber ID information may be added to the BLE token creation request.
또한 일 실시예에 따른 하나 이상의 컴퓨터 프로그램을 저장한 컴퓨터 판독 가능 기록 매체로서 상기 어느 하나의 방법을 수행하기 위한 명령어를 포함할 수 있다. Additionally, a computer-readable recording medium storing one or more computer programs according to an embodiment may include instructions for performing any of the above methods.
또한 일 실시예에 따른 서비스 가입자들에 대한 위치관련 정보를 확인하는 서버로서, 상기 서버는 제1 클라이언트 앱이 설치된 다수의 제1 단말기들와, 제2 클라이언트 앱이 설치된 다수의 제2 단말기들와 네트워크를 통해 연결되되, 제1 클라이언트 앱을 통해 브로드캐스팅된 제1 BLE 신호 및 제2 클라이언트 앱을 통해 브로드캐스팅된 제2 BLE 신호 중 적어도 하나를 인식한 제2 클라이언트 앱으로부터 BLE 인식 신호를 전달받아 수집하고, 수집된 신호를 복호화하여 위치관련-로데이터 DB를 구성하며, 상기 위치관련-로데이터 DB를 분석하여 상기 제1 BLE 신호 정보가 포함된 상기 BLE 인식 신호를 전달한 제2 클라이언트 앱에 대해 소정의 구역에 위치하는 것으로 판단하는 프로세서;를 포함할 수 있다.In addition, it is a server that verifies location-related information about service subscribers according to an embodiment, and the server connects a network with a plurality of first terminals on which a first client app is installed and a plurality of second terminals on which a second client app is installed. Connected through, and receiving and collecting a BLE recognition signal from a second client app that recognizes at least one of the first BLE signal broadcasted through the first client app and the second BLE signal broadcasted through the second client app, , Constructs a location-related raw data DB by decoding the collected signals, and analyzes the location-related raw data DB to provide a predetermined number for the second client app that delivered the BLE recognition signal containing the first BLE signal information. It may include a processor that determines that it is located in the zone.
본 기술은 GPS 활성화 없이도 실내/실외 제약 없이 사용자 앱과 가맹점 앱간의 BLE 통신으로 사용자의 위치를 파악할 수 있는 BLE를 통한 디바이스 그룹화 및 가맹점 데이터를 가진 서버와의 통신을 활용한 위치관련 정보 확인 방법 및 서버를 제공할 수 있다. This technology is a method of checking location-related information using device grouping through BLE and communication with a server with affiliated store data that can determine the user's location through BLE communication between the user app and the affiliated store app without indoor/outdoor restrictions without GPS activation, and Servers can be provided.
또한, 본 기술은 가맹점 앱과 특정 유저 앱이 BLE 통신이 불가능한 거리일지라도, 그 사이에 있는 가맹점 앱과 통신이 가능한 다른 앱 사용자를 통해 동일 상권에 위치함을 인식할 수 있는 데이터를 확보할 수 있다.In addition, this technology can secure data that can recognize that the merchant app and a specific user app are located in the same commercial area through other app users that can communicate with the merchant app, even if the distance between them is such that BLE communication is not possible. .
도 1은 일 실시예에 따른 서비스 가입자들에 대한 위치관련 정보 확인 시스템의 전체적인 구성을 도시하는 도면이다.
도 2는 일 실시예에 따른 서버의 서비스 가입자들에 대한 위치관련 정보 확인 방법의 전체적인 흐름을 도시하는 도면이다.
도 3은 일 실시예에 따른 서버에 의해 유저 그룹 데이터와, 기준 가맹점 매핑 데이터가 구성되는 동작에 관한 블록도를 도시하는 도면이다.
도 4는 일 실시예에 따른 서버에 의해 구성된 위치관련-로데이터 DB의 일 구현예를 도시하는 도면이다.
도 5는 다른 실시예에 따른 위치관련-로데이터 DB에 포함될 수 있는 기준 클라이언트 매핑 데이터의 구현 가능성을 모식적으로 나타내는 도면이다.
도 6은 일 실시예에 따른 BLE 토큰 발급 및 갱신 과정을 상세하게 도시하는 블록도를 나타내는 도면이다.
도 7은 일 실시예에 따른 서비스 가입자들에 대한 위치관련 정보 확인 서버의 하드웨어 구현의 예를 도시한 도면이다.
첨부된 도면은 본 발명의 기술사상에 대한 이해를 위하여 참조로서 예시된 것임을 밝히며, 그것에 의해 본 발명의 권리범위가 제한되지는 아니한다.Figure 1 is a diagram showing the overall configuration of a system for confirming location-related information for service subscribers according to an embodiment.
FIG. 2 is a diagram illustrating the overall flow of a method for confirming location-related information for service subscribers of a server according to an embodiment.
FIG. 3 is a block diagram illustrating an operation of configuring user group data and reference affiliated store mapping data by a server according to an embodiment.
FIG. 4 is a diagram illustrating an implementation example of a location-related-raw data DB constructed by a server according to an embodiment.
Figure 5 is a diagram schematically showing the possibility of implementing reference client mapping data that can be included in a location-related-raw data DB according to another embodiment.
Figure 6 is a block diagram illustrating in detail the BLE token issuance and renewal process according to an embodiment.
FIG. 7 is a diagram illustrating an example of hardware implementation of a server for confirming location-related information for service subscribers according to an embodiment.
The attached drawings are intended as reference for understanding the technical idea of the present invention, and are not intended to limit the scope of the present invention.
위와 같은 본 발명의 목적들, 다른 목적들, 특징들 및 이점들은 첨부된 도면과 관련된 이하의 바람직한 실시예들을 통해서 쉽게 이해될 것이다. 그러나 본 발명은 여기서 설명되는 실시예에 한정되지 않고 다른 형태로 구체화될 수도 있다. 오히려, 여기서 소개되는 실시예들은, 이해의 편의를 제공할 의도 이외에는 다른 의도 없이, 개시된 내용이 보다 철저하고 완전해질 수 있도록 그리고 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 제공되는 것이다.The above objects, other objects, features and advantages of the present invention will be easily understood through the following preferred embodiments related to the attached drawings. However, the present invention is not limited to the embodiments described herein and may be embodied in other forms. Rather, the embodiments introduced herein are provided to enable the disclosed content to be more thorough and complete and to sufficiently convey the spirit of the present invention to those skilled in the art, without any intention other than to provide convenience of understanding.
본 문서에서 사용된 용어 "부"는, 예를 들면, 하드웨어, 소프트웨어 또는 펌웨어(firmware) 중 하나 또는 둘 이상의 조합을 포함하는 단위(unit)를 의미할 수 있다. "부"는, 예를 들면, 모듈(module), 유닛(unit), 로직(logic), 논리 블록(logical block), 부품(component), 또는 회로(circuit) 등의 용어와 바꾸어 사용(interchangeably use)될 수 있다. "부"는, 일체로 구성된 부품의 최소 단위 또는 그 일부가 될 수 있다. "부"는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수도 있다. "부"는 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들면, "부"는, 알려졌거나 앞으로 개발될, 어떤 동작들을 수행하는 ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays) 또는 프로그램 가능 논리 장치(programmable-logic device) 중 적어도 하나를 포함할 수 있다.The term “unit” used in this document may mean, for example, a unit including one or a combination of two or more of hardware, software, or firmware. “Part” can be used interchangeably with terms such as, for example, module, unit, logic, logical block, component, or circuit. ) can be. A “part” may be the minimum unit of an integrated part or a part thereof. “Part” may be the minimum unit or part of one or more functions. The “part” may be implemented mechanically or electronically. For example, a "part" may be an application-specific integrated circuit (ASIC) chip, field-programmable gate arrays (FPGAs), or programmable-logic device, known or to be developed, that performs certain operations. It can contain at least one.
본 명세서에서, 어떤 소자 또는 라인들이 대상 소자 블록에 연결된다 라고 언급된 경우에 그것은 직접적인 연결뿐만 아니라 어떤 다른 소자를 통해 대상 소자 블록에 간접적으로 연결된 의미까지도 포함한다.In this specification, when it is mentioned that certain elements or lines are connected to the target element block, it includes not only direct connection but also indirect connection to the target element block through some other element.
또한, 각 도면에서 제시된 동일 또는 유사한 참조 부호는 동일 또는 유사한 구성 요소를 가급적 나타내고 있다. 일부 도면들에 있어서, 소자 및 라인들의 연결관계는 기술적 내용의 효과적인 설명을 위해 나타나 있을 뿐, 타의 소자나 회로블록들이 더 구비될 수 있다.In addition, the same or similar reference signs in each drawing indicate the same or similar components as much as possible. In some drawings, the connection relationships between elements and lines are only shown for effective explanation of technical content, and other elements or circuit blocks may be further provided.
여기에 설명되고 예시되는 각 실시예는 그것의 상보적인 실시예도 포함될 수 있으며, 위치관련 정보를 확인하는 일반적 동작 및 그러한 일반적 동작을 수행하기 위한 회로나 소자에 관한 세부는 본 발명의 요지를 모호하지 않도록 하기 위해 상세히 설명되지 않음을 유의한다.Each embodiment described and illustrated herein may also include its complementary embodiment, and details regarding general operations for verifying location-related information and circuits or devices for performing such general operations do not obscure the gist of the present invention. Please note that it is not explained in detail to prevent this from happening.
도 1은 일 실시예에 따른 서비스 가입자들에 대한 위치관련 정보 확인 시스템의 전체적인 구성을 도시한다. 도면에 도시된 바와 같이, 서비스 가입자들에 대한 위치관련 정보 확인 시스템(1)(이하 간단히 '시스템'이라 함)은 제1 클라이언트 앱이 설치된 제1 단말기(10), 제2 클라이언트 앱이 설치된 제2 단말기(20), 및 서비스 가입자들에 대한 위치관련 정보 확인 서버(100)(이하, 간단히 '서버'라 함)를 포함한다. Figure 1 shows the overall configuration of a system for verifying location-related information for service subscribers according to an embodiment. As shown in the drawing, the location-related information confirmation system 1 for service subscribers (hereinafter simply referred to as 'system') includes a first terminal 10 on which the first client app is installed, and a second terminal on which the second client app is installed. 2 It includes a terminal 20, and a server 100 for confirming location-related information for service subscribers (hereinafter simply referred to as 'server').
서버(100)는 간편결제 서비스를 제공하는 간편결제 서버일 수 있다. 서버(100)는 간편결제 서비스 제공 회사 내에 구비된 컴퓨터일 수 있다. 반드시 물리적으로 간편결제 서비스 제공 회사 내에 구비될 필요는 없으며 클라우드 서비스 방식으로 구현되어도 무방하다. 서버는 전자 장치로 참조될 수도 있다. The server 100 may be a simple payment server that provides a simple payment service. The server 100 may be a computer installed within a company providing a simple payment service. It does not necessarily have to be physically provided within the simple payment service provider company, and may be implemented as a cloud service. A server may also be referred to as an electronic device.
또한 이하에서는 설명의 편의를 위해 서버가 간편결제 서버인 실시예를 중심으로 설명하기로 하나 반드시 간편결제라는 용어에 한정되지 않으며 용어에 가맹점주와 사용자에게 금융관련 서비스를 제공하는 다양한 서비스 제공 회사의 서버일 수 있다. In addition, for convenience of explanation, the following description will focus on an embodiment in which the server is a simple payment server. However, the term is not necessarily limited to simple payment, and the term includes various service providers that provide financial services to affiliated store owners and users. It could be a server.
서버(100)는 가맹점주(OWNER)와 사용자(USER)간 간편결제를 가능하게 한다. 제1 클라이언트 앱은 가맹점주의 단말기(즉, 제1 단말기)(10)에 설치된다. 제2 클라이언트 앱은 사용자의 단말기(즉, 제2 단말기)(20)에 설치된다. 제1 클라이언트 앱과 제2 클라이언트 앱을 통해 서버는 가입자들에게 관련 서비스를 제공한다. The server 100 enables simple payments between franchise owners (OWNER) and users (USER). The first client app is installed on the affiliated store owner's terminal (i.e., the first terminal) 10. The second client app is installed on the user's terminal (ie, the second terminal) 20. The server provides related services to subscribers through the first client app and the second client app.
제1 단말기(10)는 BLE(Bluetooth Low Energy) 통신이 가능한 스마트폰, 휴대폰, 태블릿, PDA 등일 수 있다. 제1 단말기(10)는 본 발명에서 가맹점에 주로 위치하는 것을 전제로 하는 바, BLE 통신이 가능한 다른 장치 예를 들어, POS 등일 수도 있다. BLE는 블루투스를 기반으로 하나 전력 효율성을 최우선으로 설계된 것으로서, 짧은 데이터 패킷을 교환하며, 필요할 때만 활성화되어 전력 소모를 최소화하는 무선 통신 방식이다. The first terminal 10 may be a smartphone, mobile phone, tablet, PDA, etc. capable of BLE (Bluetooth Low Energy) communication. In the present invention, the first terminal 10 is assumed to be mainly located in an affiliated store, and may be another device capable of BLE communication, such as a POS. BLE is based on Bluetooth, but is designed with power efficiency as the top priority. It is a wireless communication method that exchanges short data packets and is activated only when necessary to minimize power consumption.
제2 단말기(20)는 BLE 통신이 가능한 스마트폰, 휴대폰, 태블릿, PDA 등일 수 있다. 제2 단말기(20)는 본 발명에서 주로 사용자가 소지하고 다니는 것을 전제로 한다는 점에서 제1 단말기(10)와 차이가 있을 뿐, 이하에서는 제1 단말기(10)와 제2 단말기(20)가 모두 스마트폰인 실시예로 설명된다. The second terminal 20 may be a smartphone, mobile phone, tablet, PDA, etc. capable of BLE communication. The second terminal 20 is different from the first terminal 10 in that the present invention is mainly assumed to be carried by the user. Hereinafter, the first terminal 10 and the second terminal 20 are referred to as All are explained in an embodiment that is a smartphone.
서버(100), 제1 단말기(10) 및 제2 단말기(20)는 서로 네트워크를 통해 연결되어 정보를 주고받는다. 네트워크는 유무선 통신 네트워크일 수 있다. 다만, 본 발명에서 제1 단말기와 제2 단말기간에는 BLE 통신을 통해 연결되는 실시예를 중심으로, 서버와 제1 단말기간, 및 서버와 제2 단말기간에는 이동통신을 통해 연결되는 실시예를 중심으로 설명된다. The server 100, the first terminal 10, and the second terminal 20 are connected to each other through a network and exchange information. The network may be a wired or wireless communication network. However, in the present invention, the first terminal and the second terminal are connected through BLE communication, and the server and the first terminal, and the server and the second terminal are connected through mobile communication. explained.
제1 단말기에는 가맹점주용 클라이언트 앱(즉, 제1 클라이언트 앱)이 설치될 수 있다. 제1 클라이언트 앱은 서버에 의해 배포된 것일 수 있다. 이에, 서버(100)는 제1 단말기(10)로부터 가맹점 정보를 읽어올 수 있다. 가맹점 정보는 가맹점 ID, 가맹점 주소, 가맹점 위치(위도, 경도 등) 정보 등을 포함할 수 있다. A client app for affiliated store owners (i.e., first client app) may be installed in the first terminal. The first client app may be distributed by the server. Accordingly, the server 100 can read affiliated store information from the first terminal 10. Merchant information may include affiliated store ID, affiliated store address, affiliated store location (latitude, longitude, etc.) information, etc.
제2 단말기에는 사용자용 클라이언트 앱(즉, 제2 클라이언트 앱)이 설치될 수 있다. 제2 클라이언트 앱은 서버에 의해 배포된 것일 수 있다. 이에, 서버(100)는 제2 단말기(20)로부터 사용자 정보를 읽어올 수 있다. 사용자 정보는 사용자 ID, 생년월일, 성별, 결제내역, 단말기에 설치된 애플리케이션 정보 등을 포함할 수 있다. A client app for the user (i.e., a second client app) may be installed in the second terminal. The second client app may be distributed by the server. Accordingly, the server 100 can read user information from the second terminal 20. User information may include user ID, date of birth, gender, payment history, and application information installed on the terminal.
이러한 사용자 정보로는 GPS에 의한 사용자의 위치 정보 또한 포함할 수 있다. 그러나 일 실시예에 따른 서버는 GPS 활성화 없이도 또한 실내/실외 제약 없이 가맹점 앱과 사용자 앱간의 BLE 통신으로 사용자의 위치를 파악할 수 있는 구성을 제시한다. This user information may also include user location information using GPS. However, the server according to one embodiment presents a configuration that can determine the user's location through BLE communication between the affiliated store app and the user app without GPS activation and without indoor/outdoor restrictions.
이하, 도 2 내지 도 7을 참조하여 보다 상세히 살펴본다. Hereinafter, it will be examined in more detail with reference to FIGS. 2 to 7.
도 2는 일 실시예에 따른 서버의 서비스 가입자들에 대한 위치관련 정보 확인 방법의 전체적인 흐름을 도시한다. 도면에 도시된 바와 같이, 서버의 서비스 가입자들에 대한 위치관련 정보 확인 방법(이하, 간단히 '위치관련 정보 확인 방법' 또는 더욱 간단히 '방법'이라고도 함)은 제1 BLE 신호를 브로드캐스팅하는 단계(S110), 제2 BLE 신호를 브로드캐스팅하는 단계(S120), BLE 인식 신호를 전달받는 단계(S130), 위치관련-로데이터 DB를 구성하는 단계(S140), 및 소정의 구역에 위치하는 것으로 판단하는 단계(S150)를 포함한다. Figure 2 shows the overall flow of a method for confirming location-related information for service subscribers of a server according to an embodiment. As shown in the figure, the method of checking location-related information for service subscribers of the server (hereinafter, simply referred to as 'method of checking location-related information' or more simply 'method') includes the steps of broadcasting a first BLE signal ( S110), broadcasting a second BLE signal (S120), receiving a BLE recognition signal (S130), configuring a location-related raw data DB (S140), and determining that it is located in a predetermined area. It includes a step (S150).
단계(S110)에서 서버는 제1 클라이언트 앱을 통해 제1 BLE 신호를 브로드캐스팅한다. 제1 BLE 신호는 제1 단말기에 의해 송출된다. 제1 BLE 신호는 제1 단말기의 생성 요청에 따라 서버에 의해 생성된 BLE 토큰에 기반한 것일 수 있다. In step S110, the server broadcasts the first BLE signal through the first client app. The first BLE signal is transmitted by the first terminal. The first BLE signal may be based on a BLE token generated by the server according to the creation request of the first terminal.
단계(S120)에서 서버는 제2 클라이언트 앱을 통해 제2 BLE 신호를 브로드캐스팅한다. 제2 BLE 신호는 제2 단말기에 의해 송출된다. 제2 BLE 신호는 제2 단말기의 생성 요청에 따라 서버에 의해 생성된 BLE 토큰에 기반한 것일 수 있다. 단계(S110) 및 단계(S120)에 적용될 수 있는 BLE 토큰 생성 과정에 대해서는 후술한다. In step S120, the server broadcasts a second BLE signal through the second client app. The second BLE signal is transmitted by the second terminal. The second BLE signal may be based on a BLE token generated by the server according to the creation request of the second terminal. The BLE token generation process applicable to steps S110 and S120 will be described later.
단계(S130)에서 서버는 제1 BLE 신호 및 제2 BLE 신호 중 적어도 하나를 인식한 제2 클라이언트 앱으로부터 BLE 인식 신호를 전달받는다. BLE 인식 신호를 전달하는 주체는 제2 단말기일 수 있다. In step S130, the server receives a BLE recognition signal from the second client app that recognizes at least one of the first BLE signal and the second BLE signal. The subject transmitting the BLE recognition signal may be the second terminal.
BLE 인식 신호는 제1 BLE 신호 및 제2 BLE 신호 중 적어도 하나를 포함할 수 있다. 제2 클라이언트 앱이 브로드캐스팅되는 제1 BLE 신호를 인식한 경우에는 제1 BLE 신호를 포함하는 BLE 인식 신호를 전달받는다. 제2 클라이언트 앱이 브로드캐스팅되는 제2 BLE 신호를 인식한 경우에는 제2 BLE 신호를 포함하는 BLE 인식 신호를 전달받는다. 제2 클라이언트 앱이 브로드캐스팅되는 제1 BLE 신호와 제2 BLE 신호를 모두 인식한 경우에는 제1 BLE 신호 및 제2 BLE 신호를 모두 포함하는 BLE 인식 신호를 전달받는다. 이는 신호를 전달해오는 제2 클라이언트 앱이 어디에 위치하는지에 관한 중요한 정보를 제공한다. The BLE recognition signal may include at least one of a first BLE signal and a second BLE signal. When the second client app recognizes the first BLE signal being broadcast, it receives a BLE recognition signal including the first BLE signal. When the second client app recognizes the broadcasted second BLE signal, it receives a BLE recognition signal including the second BLE signal. When the second client app recognizes both the first and second BLE signals being broadcast, it receives a BLE recognition signal including both the first BLE signal and the second BLE signal. This provides important information about where the second client app passing the signal is located.
단계(S140)에서 서버는 단계(S130)에서 전달받은 BLE 인식 신호를 수집하고, 수집된 신호를 복호화하여 위치관련-로데이터 DB를 구성한다. In step S140, the server collects the BLE recognition signal received in step S130, decodes the collected signal, and constructs a location-related raw data DB.
위치관련-로데이터 DB는 기본적으로 제2 클라이언트 앱별 매핑되는 제1 클라이언트 앱에 관한 정보를 포함한다. 이는 제2 클라이언트 앱이 제1 클라이언트 앱과 BLE 통신 가능 거리에 위치함을 의미한다. The location-related-raw data DB basically includes information about the first client app that is mapped to each second client app. This means that the second client app is located within a BLE communication distance from the first client app.
이를 위해, 위치관련-로데이터 DB는 유저 그룹 데이터와, 기준 가맹점 매핑 데이터를 포함한다. 또한 일 실시예에 따르면 위치관련-로데이터 DB는 클라이언트 매핑 데이터를 더 포함할 수도 있다. 위치관련-로데이터 DB의 상세한 구성은 후술한다. For this purpose, the location-related raw data DB includes user group data and standard affiliated store mapping data. Additionally, according to one embodiment, the location-related-raw data DB may further include client mapping data. The detailed configuration of the location-related-raw data DB will be described later.
단계(S150)에서 서버는 단계(S140)에서 구성된 위치관련-로데이터 DB를 분석하여 제1 BLE 신호 정보가 포함된 BLE 인식 신호를 전달한 제2 클라이언트 앱에 대해 소정의 구역에 위치하는 것으로 판단한다. 이때, 소정의 구역은 가맹점을 기준으로 하는 상권일 수 있다. 즉, 소정의 구역은 제1 클라이언트 앱에 로그인된 가맹점 주소 정보를 기초로 하는 가상의 상권에 해당할 수 있다. In step S150, the server analyzes the location-related raw data DB configured in step S140 and determines that the second client app that transmitted the BLE recognition signal including the first BLE signal information is located in a predetermined area. . At this time, the predetermined area may be a commercial district based on affiliated stores. That is, the predetermined area may correspond to a virtual commercial area based on the address information of the affiliated store logged into the first client app.
이로써, 서버는 제2 클라이언트 앱, 즉, 제2 단말기가 현재 어떠한 제1 클라이언트 앱, 즉, 제1 단말기 근처에 위치하는지를 판단할 수 있다. 제1 클라이언트 앱은 가맹점 앱인 바, 매장 주소 정보를 알 수 있으며, 따라서, 제2 클라이언트 앱이 어떠한 매장 주소 인근에 위치하는지를 판단할 수 있다. Accordingly, the server can determine which first client app, that is, the second terminal, is currently located near the first terminal. Since the first client app is an affiliated store app, it can know store address information, and thus can determine which store address the second client app is located near.
이하, 도 3을 참조하여, 다수의 제2 클라이언트 앱들이 존재하는 상황에 대해서 보다 상세히 살펴본다. Hereinafter, with reference to FIG. 3, we will look at the situation in which multiple second client apps exist in more detail.
도 3은 일 실시예에 따른 서버에 의해 유저 그룹 데이터와, 기준 가맹점 매핑 데이터가 구성되는 동작에 관한 블록도를 도시한다. Figure 3 shows a block diagram of an operation in which user group data and reference affiliated store mapping data are configured by a server according to an embodiment.
도면에 도시된 바와 같이 1개의 제1 클라이언트 앱(OWNER-Client APP)과, 3개의 제2 클라이언트 앱들(USER-Client APP(1), USER-Client APP(2), USER-Client APP(3))이 존재한다. 3개의 제2 클라이언트 앱들을 순서대로 제2-1 클라이언트 앱(USER-Client APP(1)), 제2-2 클라이언트 앱(USER-Client APP(2)), 제2-3 클라이언트 앱(USER-Client APP(3))이라 한다. 그리고, 제1 클라이언트 앱과 제2 클라이언트 앱을 총칭하여 간단히 클라이언트 앱으로 참조한다. As shown in the figure, one first client app (OWNER-Client APP) and three second client apps (USER-Client APP (1), USER-Client APP (2), USER-Client APP (3) ) exists. The three second client apps are, in order, 2-1 client app (USER-Client APP(1)), 2-2 client app (USER-Client APP(2)), and 2-3 client app (USER-Client APP(2)). It is called Client APP(3)). Additionally, the first client app and the second client app are collectively referred to simply as the client app.
클라이언트 앱들은 브로드캐스팅을 한다. 즉, 클라이언트 앱들은 어드버타이저(Advertiser)로서 BLE 신호를 발산할 수 있다. Client apps broadcast. In other words, client apps can emit BLE signals as advertisers.
이때, 3개의 제2 클라이언트 앱들은 브로드캐스팅뿐만 아니라 옵저버(Observer)로서 BLE 신호를 수신할 수도 있다. 따라서, 도면에 도시된 바와 같이, 제2-1 클라이언트 앱은 제2-2 클라이언트 앱과 제2-3 클라이언트 앱에 의해 브로드캐스팅되는 BLE 신호를 수신할 수 있고(S1), 제1 BLE 신호 및 제2 BLE 신호 중 적어도 하나를 인식하게 된 바, BLE 인식 신호를 서버(Server)로 전달할 수 있다(S4), At this time, the three second client apps can not only broadcast but also receive the BLE signal as an observer. Therefore, as shown in the figure, the 2-1 client app can receive the BLE signal broadcast by the 2-2 client app and the 2-3 client app (S1), and the first BLE signal and Since at least one of the second BLE signals is recognized, the BLE recognition signal can be transmitted to the server (S4),
이때 제2-1 클라이언트 앱이 제1 클라이언트 앱에 의해 브로드캐스팅되는 BLE 신호를 수신하지 않은 반면, 제2-3 클라이언트 앱은 제2-1 클라이언트 앱과 제2-2 클라이언트 앱에 의해 브로드캐스팅되는 BLE 신호를 수신할 수 있고(S3), 제1 BLE 신호 및 제2 BLE 신호 중 적어도 하나를 인식하게 된 바, BLE 인식 신호를 서버(Server)로 전달할 수 있다(S4), At this time, while the 2-1 client app did not receive the BLE signal broadcast by the first client app, the 2-3 client app did not receive the BLE signal broadcast by the 2-1 client app and the 2-2 client app. A BLE signal can be received (S3), and at least one of the first BLE signal and the second BLE signal has been recognized, so the BLE recognition signal can be transmitted to the server (S4).
대조적으로, 제2-2 클라이언트 앱은 제2-1 클라이언트 앱과 제2-3 클라이언트 앱에 의해 브로드캐스팅되는 BLE 신호를 수신하였으나(S2) 서버로 BLE 인식 신호를 전달하지 않는 비교예가 함께 도시된다. In contrast, a comparative example in which the 2-2 client app receives the BLE signal broadcast by the 2-1 client app and the 2-3 client app (S2) but does not transmit the BLE recognition signal to the server is also shown. .
상술한 과정을 통해 서버(Server)는 제2-1 클라이언트 앱 및 제2-3 클라이언트 앱으로부터 전달된 BLE 인식 신호를 수신하고(S5), 데이터 분석/처리/저장 과정을 수행하여(S6) 위치관련-로데이터 DB를 구성한다. 데이터 분석/처리/저장 과정(S6)은 BLE 토큰에 해당되는 user_account_id 추출/저장 과정, 유저 그룹 DB 생성 과정, 매장 정보 매핑 과정을 포함할 수 있다. 이로써, 위치관련-로데이터 DB가 구성될 수 있다. Through the above-described process, the server receives the BLE recognition signal transmitted from the 2-1 client app and the 2-3 client app (S5), performs a data analysis/processing/storage process (S6), and locates the Construct a related-raw data DB. The data analysis/processing/storage process (S6) may include a user_account_id extraction/storage process corresponding to the BLE token, a user group DB creation process, and a store information mapping process. In this way, a location-related-raw data DB can be constructed.
도 4는 일 실시예에 따른 서버에 의해 구성된 위치관련-로데이터 DB의 일 구현예를 도시한다. 도면에 도시된 바와 같이, 위치관련-로데이터 DB는 크게 유저 그룹 데이터와 기준 가맹점 매핑 데이터로 구성될 수 있다. Figure 4 shows an implementation example of a location-related-raw data DB constructed by a server according to an embodiment. As shown in the figure, the location-related raw data DB can largely be composed of user group data and standard affiliated store mapping data.
도면에 도시된 바와 같이, 유저 그룹 데이터는 옵저버 BLE 토큰 정보, 어드버타이저 BLE 토큰 정보, 가입자 ID 정보 및 갱신 일시 정보를 포함할 수 있다. As shown in the figure, user group data may include observer BLE token information, advertiser BLE token information, subscriber ID information, and update date and time information.
예를 들어, 옵저버 BLE 토큰 정보(Observer (BLE 토큰))는 제2 애플리케이션 앱(즉, 사용자)를 식별할 수 있도록 한다. 도 3에서 상술한 실시예에서 옵저버로서 기능한 제2-3 애플리케이션 앱을 식별할 수 있도록 한다. 어드버타이저 BLE 토큰 정보(Advertiser (BLE 토큰))는 해당 제2 애플리케이션 앱에 대한 어드버타이저 주체를 식별할 수 있도록 한다. 도 3에서 상술한 실시예에서 제2-3 애플리케이션 앱에 대해 어드버타이저 주체로서 기능한 제2-1 애플리케이션 앱, 제2-2 애플리케이션 앱 및 제1 애플리케이션 앱을 식별할 수 있도록 한다. 가입자 ID 정보(user_account_id)는 해당 제2 애플리케이션 앱에 대한 사용자 ID를 식별할 수 있도록 한다. 가입자 ID 정보는 후술하는 바와 같이 클라이언트-서버간 토큰 생성 API를 통해 부여될 수 있다. 갱신 일시 정보(업데이트 일시)는 이러한 유저 그룹 데이터의 생성 시점을 식별할 수 있도록 한다. For example, Observer BLE token information (Observer (BLE token)) allows identifying a second application app (i.e., user). In the embodiment described above in FIG. 3, the second-third application app that functions as an observer can be identified. Advertiser BLE token information (Advertiser (BLE token)) allows identifying the advertiser subject for the corresponding second application app. In the embodiment described above in FIG. 3, the 2-1 application app, the 2-2 application app, and the first application app that functioned as advertisers for the 2-3 application app can be identified. Subscriber ID information (user_account_id) allows identifying the user ID for the corresponding second application app. Subscriber ID information can be provided through a client-server token creation API, as described later. Update date information (update date) allows identification of the creation time of such user group data.
기준 가맹점 매핑 데이터는 어드버타이저 BLE 토큰 정보, 가맹점 ID 정보, 가맹점 주소 정보, 가맹점 위치 정보 및 갱신 일시 정보를 포함할 수 있다. The standard affiliated store mapping data may include advertiser BLE token information, affiliated store ID information, affiliated store address information, affiliated store location information, and update date and time information.
예를 들어, 어드버타이저 BLE 토큰 정보(Advertiser (BLE 토큰))는 해당 제2 애플리케이션 앱에 대한 어드버타이저 주체들 중 제1 애플리케이션 앱(즉, 가맹점주)을 식별할 수 있도록 한다. 도 3에서 상술한 실시예에서 제2-3 애플리케이션 앱에 대해 어드버타이저 주체로서 기능한 제2-1 애플리케이션 앱, 제2-2 애플리케이션 앱 및 제1 애플리케이션 앱 중 제1 애플리케이션 앱을 식별할 수 있도록 한다. 이는 상술한 유저 그룹 데이터의 어드버타이저 BLE 토큰 정보와 대비되는 부분이다. 즉, 유저에 대해 매핑된 가맹점주에 관한 정보를 포함한다. 상술한 유저 그룹 데이터의 어드버타이저 BLE 토큰 정보가 제1 애플리케이션 앱 또는 제2 애플리케이션 구분 없이 모든 어드버타이저 주체들에 관한 정보를 포함함에 비해, 기준 가맹점 매핑 데이터의 어드버타이저 BLE 토큰 정보는 매핑된 어드버타이저 주체에 관한 정보만을 포함하는 것이다. 이에 전자의 어드버타이저 BLE 토큰 정보와 대비하여, 후자의 어드버타이저 BLE 토큰 정보를 매핑된 어드버타이저 BLE 토큰 정보로 참조할 수 있다. 가맹점 ID 정보(가맹점 ID)는 해당 제1 애플리케이션 앱에 대한 가맹점 ID를 식별할 수 있도록 한다. 가맹점 주소 정보(가맹점 주소)는 해당 제1 애플리케이션 앱에 대한 가맹점 주소를 식별할 수 있도록 한다. 가맹점 위치 정보(위도, 경도)는 해당 제1 애플리케이션 앱에 대한 가맹점 주소를 식별할 수 있도록 한다. 갱신 일시 정보(업데이트 일시)는 이러한 기준 가맹점 매핑 데이터의 생성 시점을 식별할 수 있도록 한다.For example, Advertiser BLE token information (Advertiser (BLE token)) allows identifying the first application app (i.e., merchant) among the advertisers for the second application app. In the embodiment described above in FIG. 3, the first application app can be identified among the 2-1 application app, the 2-2 application app, and the first application app that functioned as an advertiser subject for the 2-3 application app. make it possible This is in contrast to the advertiser BLE token information in the user group data described above. In other words, it contains information about the affiliated store owner mapped to the user. While the advertiser BLE token information in the above-described user group data includes information about all advertiser entities without distinction as a first application app or a second application, the advertiser BLE token in the reference merchant mapping data The information includes only information about the mapped advertiser entity. Accordingly, compared to the former advertiser BLE token information, the latter advertiser BLE token information can be referred to as mapped advertiser BLE token information. The affiliated store ID information (affiliated store ID) allows the affiliated store ID for the corresponding first application app to be identified. The affiliated store address information (affiliated store address) allows the affiliated store address for the corresponding first application app to be identified. Merchant location information (latitude, longitude) allows the merchant address for the corresponding first application app to be identified. Update date information (update date) allows identification of the generation time of this standard affiliated store mapping data.
따라서, 서버는 위치관련-로데이터 DB를 분석하여, 제1 애플리케이션 앱의 신호가 포함된 옵저버, 즉, 도 3에서 상술한 실시예에서 제2-3 애플리케이션 앱이 해당 상권 내에 있다고 파악할 수 있다. 이때, 제1 애플리케이션 앱에 로그인된 매장 주소 정보 활용할 수 있다. Accordingly, the server may analyze the location-related-raw data DB and determine that the observer containing the signal of the first application app, that is, the second-third application app in the embodiment described above in FIG. 3, is within the corresponding commercial area. At this time, store address information logged into the first application app can be used.
한편, 서버는 위치관련-로데이터 DB로부터 제2 애플리케이션 앱의 위치를 파악함에 있어서, 별도의 로직을 적용하여 위치 파악의 정확도를 높일 수 있다. Meanwhile, when determining the location of the second application app from the location-related raw data DB, the server can apply separate logic to increase the accuracy of location determination.
별도의 로직은 일 실시예에 따르면, 매핑된 어드버타이저 BLE 토큰 정보의 유효 시점 내지는 유효 개수를 설정할 수 있다. 즉, 유효 시점을 만족하는 매핑된 어드버타이저 BLE 토큰 정보를 갖는 옵저버 BLE 토큰 정보에 상응하는 제2 클라이언트 앱에 대해서만 소정의 구역에 위치하는 것으로 필터링할 수 있다. 또는 유효 개수를 만족하는 매핑된 어드버타이저 BLE 토큰 정보를 갖는 옵저버 BLE 토큰 정보에 상응하는 제2 클라이언트 앱에 대해서만 소정의 구역에 위치하는 것으로 필터링할 수 있다. According to one embodiment, separate logic may set the validity time or valid number of mapped advertiser BLE token information. That is, only the second client app corresponding to the observer BLE token information with the mapped advertiser BLE token information that satisfies the validity point can be filtered as being located in a predetermined area. Alternatively, only the second client app corresponding to the observer BLE token information with the mapped advertiser BLE token information that satisfies the valid number can be filtered as being located in a predetermined area.
유효 시점(A)은 일례로 10분 이내로 설정될 수 있다. 이는 10분 이내로 생성/저장된 단말기 데이터만을 매핑된 주소의 상권에 존재한다고 보도록 한다. 유효 개수(B)는 일례로 2회로 설정될 수 있다. 이는 2회 동일 상권의 어드버타이저에 의해 신호가 잡힌 단말기 데이터만을 매핑된 주소의 상권에 존재한다고 보도록 한다. 이때, 유효 시점(A)과 유효 개수(B)의 구체적인 숫자는 서버에 의해 가변적으로 설정 가능하다. 이는 상권에 확실하게 현재 존재하는 유저만을 타겟으로 하는 파생 서비스를 가능하게 한다(상권에 확실하게 현재 존재하는 유저만을 타겟으로 광고메시지를 보내고자 할 때, 현재 시간 기준 10분 이내의 데이터, 및 2회 이상 동일 상권에 속한 옵저버를 추출해서 메시지 발송이 가능한 것과 같이).The effective time point (A) may be set to within 10 minutes, for example. This means that only terminal data created/saved within 10 minutes is considered to exist in the commercial area of the mapped address. The effective number (B) may be set to 2 times, for example. This means that only terminal data that has been signaled twice by an advertiser in the same commercial area is considered to exist in the commercial area of the mapped address. At this time, the specific numbers of validity point (A) and validity number (B) can be variably set by the server. This enables a derivative service that targets only users who clearly currently exist in the commercial area (when you want to send an advertising message targeting only users who clearly currently exist in the commercial area, data within 10 minutes of the current time, and 2 (such as being able to extract observers belonging to the same commercial area more than once and send a message).
다른 실시예에 따르면, 위치관련-로데이터 DB는 기준 클라이언트 매핑 데이터를 더 포함할 수 있다. 기준 클라이언트 매핑 데이터는 상술한 기준 가맹점 매핑 데이터와 대체로 유사하므로 차이점을 위주로 설명한다. According to another embodiment, the location-related-raw data DB may further include reference client mapping data. Since the standard client mapping data is generally similar to the standard affiliated store mapping data described above, the differences will be mainly explained.
도 4에서 상술한 기준 가맹점 매핑 데이터는 유저에 대해 직접 매핑된 가맹점주에 관한 정보를 보여주는 것이다. 이에 비해, 기준 클라이언트 매핑 데이터는 유저에 대해 간접 매핑된 가맹점주에 관한 정보를 보여준다. 즉, 직접 가맹점이 매핑되지는 못하였으나 중간 매개체를 통해 간접적으로 가맹점이 매핑되는 것으로 볼 수 있는 구현 예에 관한다. The standard affiliated store mapping data described above in FIG. 4 shows information about affiliated store owners directly mapped to users. In comparison, standard client mapping data shows information about affiliated store owners indirectly mapped to users. In other words, it relates to an implementation example in which an affiliated store has not been mapped directly, but can be seen as an affiliated store being mapped indirectly through an intermediary.
도 5는 이러한 기준 클라이언트 매핑 데이터의 구현 가능성을 모식적으로 나타내는 도면이다. 가맹점주용 클라이언트 앱(FA)이 사용자용 클라이언트 앱(UA3)과 직접 BLE 통신이 불가능한 거리일지라도 사용자용 클라이언트 앱(UA1)을 중간 매개체로 활용하여 사용자용 클라이언트 앱(UA3) 역시 가맹점주용 클라이언트 앱(FA) 근처에 있다고 판단할 수 있다. 이는 가맹점주용 클라이언트 앱(FA)을 중심으로 하는 상권에 사용자용 클라이언트 앱(UA1)뿐만 아니라 사용자용 클라이언트 앱(UA3)도 위치하고 있는 것으로 판단할 수 있도록 한다. Figure 5 is a diagram schematically showing the possibility of implementing such standard client mapping data. Even if the distance between the franchisee client app (FA) and the user client app (UA3) is such that direct BLE communication is impossible, the user client app (UA3) can also communicate with the franchisee client app (FA) by using the user client app (UA1) as an intermediary. ) can be judged to be nearby. This allows it to be determined that not only the client app for users (UA1) but also the client app for users (UA3) is located in a commercial area centered around the client app for franchisees (FA).
즉, 앞서 상술한 기준 가맹점 매핑 데이터는, 유저 그룹 데이터의 어드버타이저 BLE 토큰 정보에 포함된 제1 BLE 신호 정보에 대응하는 어드버타이저 BLE 토큰 정보(매핑된 어드버타이저 BLE 토큰 정보)를 포함하고, 상술한 기준 클라이언트 매핑 데이터는, 유저 그룹 데이터의 어드버타이저 BLE 토큰 정보에 포함된 제2 BLE 신호 정보에 대응하는 어드버타이저 BLE 토큰 정보(간접 매핑된 어드버타이저 BLE 토큰 정보)를 포함하는 것으로 볼 수 있다. That is, the reference affiliated store mapping data described above is advertiser BLE token information (mapped advertiser BLE token information) corresponding to the first BLE signal information included in the advertiser BLE token information of the user group data. ), and the above-mentioned reference client mapping data is advertiser BLE token information (indirectly mapped advertiser) corresponding to the second BLE signal information included in the advertiser BLE token information of the user group data It can be seen as including BLE token information).
이러한 기준 클라이언트 매핑 데이터를 이용하면, 서버는 매핑된 어드버타이저 BLE 토큰 정보를 갖지 않더라도, 간접 매핑된 어드버타이저 BLE 토큰 정보를 갖는 옵저버 BLE 토큰 정보에 상응하는 제2 클라이언트 앱에 대해 소정의 구역에 위치하는 것으로 판단할 수 있게 된다. Using this reference client mapping data, the server, even if it does not have mapped advertiser BLE token information, makes a predetermined request for the second client app corresponding to the observer BLE token information with indirectly mapped advertiser BLE token information. It can be determined that it is located in the area of .
도 6은 일 실시예에 따른 BLE 토큰 발급 및 갱신 과정을 상세하게 도시하는 블록도이다. 도면에 도시된 바와 같이, 제1 클라이언트 앱(OWNER-Client APP)과 제2 클라이언트 앱(USER-Client APP)은 토큰 생성 API를 통해 서버(Server)에 의해 생성된 BLE 토큰을 수신할 수 있다. 제1 클라이언트 앱과 제2 클라이언트 앱을 총칭하여 간단히 클라이언트 앱으로 참조한다.Figure 6 is a block diagram illustrating in detail the BLE token issuance and renewal process according to an embodiment. As shown in the figure, the first client app (OWNER-Client APP) and the second client app (USER-Client APP) can receive the BLE token generated by the server through the token creation API. The first client app and the second client app are collectively referred to simply as client apps.
상세하게, 클라이언트 앱은 토큰 생성 API를 통해 토큰 생성을 서버로 요청한다(S11). 토큰 생성 API가 게이트웨이를 지날 때, 게이트웨이는 UAAT(User Account Access Token)에 맞는 user_account_id를 요청 헤더(Request header)에 추가하여 서버로 전달한다(S12, S13). user_account_id는 상술한 가입자 ID 정보에 대응하며, 가입자 ID 정보가 이러한 토큰 생성 API를 통한 클라이언트-서버간 동작에서 부여됨을 주목한다. In detail, the client app requests token creation to the server through the token creation API (S11). When the token creation API passes through the gateway, the gateway adds user_account_id matching the UAAT (User Account Access Token) to the request header and transmits it to the server (S12, S13). User_account_id corresponds to the subscriber ID information described above, and note that subscriber ID information is provided in the client-server operation through this token creation API.
그러면 서버(Server)는 요청을 분석하고(S14), UAAT에 해당되는 BLE 토큰을 생성 및 저장한다(S15, S16). 토큰은 제1 클라이언트 앱과 제2 클라이언트 앱을 구별할 수 있는 구분자를 포함할 수 있다. 또한 제1 클라이언트 앱의 토큰으로 Partner_ID를 찾을 수 있도록 토큰이 생성될 수 있다. Partner_ID는 상술한 가맹점 ID 정보에 대응한다. 저장 과정은 UAAT / user_account_id / BLE 토큰을 모두 저장하는 방식으로 수행될 수 있다. Then, the server analyzes the request (S14) and generates and stores a BLE token corresponding to the UAAT (S15, S16). The token may include a separator that can distinguish the first client app from the second client app. Additionally, a token may be generated so that Partner_ID can be found with the token of the first client app. Partner_ID corresponds to the affiliated store ID information described above. The storage process can be performed by storing all UAAT / user_account_id / BLE tokens.
이후 서버는 토큰 생성 API를 통해 클라이언트 앱으로 응답한다(S17, S18, S19). Afterwards, the server responds to the client app through the token creation API (S17, S18, S19).
이는 개인정보 활용 없이, 익명성을 보장하기 위해, BLE 토큰 관련 일정한 주기마다 특정되는 유니크값을 활용한 단말기들간 인식 과정을 가능하게 한다. 예를 들어, 1개월마다 클라이언트 앱에서 서버로 BLE 토큰 생성 요청을 하고 서버에서 응답할 수 있다. 이때, 서버에서 클라이언트로 전달되는 토큰에는 개인을 식별할 수 있는 정보가 전혀 포함되어 있지 않음으로 인해 익명성을 보장할 수 있다. 또한, 익명성을 보장함과 더불어 보안 강화를 위해서 1개월 단위로 주기적으로 토큰을 재생성하면서 유효기간이 끝난 토큰은 폐기할 수 있다. This enables a recognition process between terminals using unique values specified at regular intervals related to BLE tokens to ensure anonymity without using personal information. For example, every month, a client app can request a BLE token creation from the server and the server can respond. At this time, anonymity can be guaranteed because the token transmitted from the server to the client does not contain any personally identifiable information. In addition, to ensure anonymity and strengthen security, tokens can be periodically regenerated on a monthly basis and tokens whose validity period has expired can be discarded.
상술한 실시예에 따른 위치관련 정보 확인 방법은 수많은 파생 서비스에 활용될 수 있다. 특히 서버가 상술한 바와 같이 간편결제 서버로서 가맹점주용 클라이언트 앱과 사용자용 클라이언트 앱을 모두 서비스할 때에는, 가맹점주에게는 자신의 매장이 속한 상권 내에 어떤 유저가 얼마나 유입되고 있는지 통계 데이터를 제공할 수 있고(어떤 성별, 나이대, 구매력을 가진 유저가 상권에 방문하고 있는지 등), 사용자에게는 특정 상권에 방문 중인/방문했던 사용자 대상으로 정보성 또는 광고성 메시지를 발송할 수 있도록 한다(판교 지역에 방문 하셨네요! 판교 지역에선 다음과 같은 프로모션이 진행 중이에요. 확인해 보세요 등과 같이). 이는 상권 기준 정밀 타겟팅 서비스를 가능하게 한다. The method for verifying location-related information according to the above-described embodiment can be utilized in numerous derivative services. In particular, when the server serves both a client app for franchise owners and a client app for users as a simple payment server as described above, statistical data can be provided to franchise owners about which users are flowing into the commercial district to which their store belongs. (What gender, age group, purchasing power are the users visiting the commercial district, etc.), and allows users to send informational or advertising messages to users who are visiting/have visited a specific commercial district (You've visited the Pangyo area! Pangyo Check out the following promotions in your area: This enables precise targeting services based on commercial areas.
도 7은 일 실시예에 따른 서비스 가입자들에 대한 위치관련 정보 확인 서버의 하드웨어 구현의 예를 도시한 도면이다. 일 실시예에 따른 서비스 가입자들에 대한 위치관련 정보 확인 서버(1000)는 통신부(1010), 프로세서(1020), 및 메모리(1030)를 포함할 수 있다.FIG. 7 is a diagram illustrating an example of hardware implementation of a server for confirming location-related information for service subscribers according to an embodiment. The location-related information confirmation server 1000 for service subscribers according to one embodiment may include a communication unit 1010, a processor 1020, and a memory 1030.
통신부(1010)는 제1 클라이언트 앱이 설치된 다수의 제1 단말기들와, 제2 클라이언트 앱이 설치된 다수의 제2 단말기들와 네트워크를 통해 연결되어 통신할 수 있다. 각 단말기들이 수집한 BLE 토큰을 이동통신망을 통해 수신할 수 있다. The communication unit 1010 may be connected to and communicate with a plurality of first terminals on which the first client app is installed and a plurality of second terminals on which the second client app is installed through a network. BLE tokens collected by each terminal can be received through the mobile communication network.
프로세서(1020)는 제1 클라이언트 앱을 통해 브로드캐스팅된 제1 BLE 신호 및 제2 클라이언트 앱을 통해 브로드캐스팅된 제2 BLE 신호 중 적어도 하나를 인식한 제2 클라이언트 앱으로부터 BLE 인식 신호를 전달받아 수집하고, 수집된 신호를 복호화하여 위치관련-로데이터 DB를 구성하며, 위치관련-로데이터 DB를 분석하여 제1 BLE 신호 정보가 포함된 BLE 인식 신호를 전달한 제2 클라이언트 앱에 대해 소정의 구역에 위치하는 것으로 판단할 수 있다. 다만, 프로세서(1020)의 동작을 이로 한정하는 것은 아니고, 도 1 내지 도 6에서 설명된 동작들을 수행할 수도 있다.The processor 1020 receives and collects a BLE recognition signal from a second client app that recognizes at least one of the first BLE signal broadcast through the first client app and the second BLE signal broadcast through the second client app. The collected signals are decoded to construct a location-related raw data DB, and the location-related-raw data DB is analyzed to determine a location in a predetermined area for the second client app that delivered the BLE recognition signal containing the first BLE signal information. It can be judged by its location. However, the operation of the processor 1020 is not limited to this, and the operations described in FIGS. 1 to 6 may be performed.
메모리(1030)는 위치관련-로데이트 DB를 저장할 수 있다. 예를 들어, 유저 그룹 데이터, 기준 가맹점 매핑 데이터, 기준 클라이언트 매핑 데이터 등을 저장할 수 있다. 메모리(1030)는 일 실시예에 따른 서비스 가입자들에 대한 위치관련 정보 확인 방법을 수행하기 위해 요구되는 데이터를 임시적으로 또는 영구적으로 저장할 수 있다. 예를 들어, 메모리(1030)는 BLE 인식 신호, 복호화 알고리즘, 설정된 유효 시점/개수 등을 저장할 수 있다.The memory 1030 can store a location-related-rodate DB. For example, user group data, standard affiliated store mapping data, standard client mapping data, etc. can be stored. The memory 1030 may temporarily or permanently store data required to perform a method of verifying location-related information for service subscribers according to an embodiment. For example, the memory 1030 may store a BLE recognition signal, decoding algorithm, and set valid time/number.
지금까지 설명된 본 발명의 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.Embodiments of the present invention described so far may be implemented with hardware components, software components, and/or a combination of hardware components and software components. For example, the devices, methods, and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, and a field programmable gate (FPGA). It may be implemented using a general-purpose computer or a special-purpose computer, such as an array, programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and software applications running on the operating system. Additionally, a processing device may access, store, manipulate, process, and generate data in response to the execution of software. For ease of understanding, a single processing device may be described as being used; however, those skilled in the art will understand that a processing device includes multiple processing elements and/or multiple types of processing elements. It can be seen that it may include. For example, a processing device may include multiple processors or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are possible.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of these, which may configure a processing unit to operate as desired, or may be processed independently or collectively. You can command the device. Software and/or data may be used on any type of machine, component, physical device, virtual equipment, computer storage medium or device to be interpreted by or to provide instructions or data to a processing device. , or may be permanently or temporarily embodied in a transmitted signal wave. Software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on a computer-readable recording medium.
또한 본 발명의 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 일 실시예들의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Additionally, embodiments of the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., singly or in combination. Program instructions recorded on the medium may be specially designed and constructed for the present invention or may be known and usable by those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -Includes optical media (magneto-optical) and hardware devices configured to store and execute program instructions such as ROM, RAM, flash memory, etc. Examples of program instructions include machine language code, such as that produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The hardware device described above may be configured to operate as at least one software module to perform the operations of the embodiments of the present invention, and vice versa.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.As described above, the present invention has been described with specific details such as specific components and limited embodiments and drawings, but this is only provided to facilitate a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , those skilled in the art can make various modifications and variations from this description. Accordingly, the spirit of the present invention should not be limited to the described embodiments, and the scope of the patent claims described later as well as all things that are equivalent or equivalent to the scope of this patent claim shall fall within the scope of the spirit of the present invention. .
100, 1000 : 서비스 가입자들에 대한 위치관련 정보 확인 서버
10 : 제1 단말기
20 : 제2 단말기
1010 : 통신부
1020 : 프로세서
1030 : 메모리 100, 1000: Server to check location-related information for service subscribers
10: first terminal
20: second terminal
1010: Ministry of Communications
1020: Processor
1030: memory
Claims (12)
상기 서버는 제1 클라이언트 앱이 설치된 다수의 제1 단말기들와, 제2 클라이언트 앱이 설치된 다수의 제2 단말기들와 네트워크를 통해 연결되되,
제1 클라이언트 앱을 통해 제1 BLE 신호를 브로드캐스팅하는 단계;
제2 클라이언트 앱을 통해 제2 BLE 신호를 브로드캐스팅하는 단계;
상기 제1 BLE 신호 및 제2 BLE 신호 중 적어도 하나를 인식한 제2 클라이언트 앱으로부터 BLE 인식 신호를 전달받는 단계;
상기 전달받은 BLE 인식 신호를 수집하고, 수집된 신호를 복호화하여 위치관련-로데이터 DB를 구성하는 단계; 및
상기 위치관련-로데이터 DB를 분석하여 상기 제1 BLE 신호 정보가 포함된 상기 BLE 인식 신호를 전달한 제2 클라이언트 앱에 대해 소정의 구역에 위치하는 것으로 판단하는 단계;를 포함하되,
상기 위치관련-로데이터 DB는
옵저버 BLE 토큰 정보, 어드버타이저 BLE 토큰 정보, 가입자 ID 정보 및 갱신 일시 정보 중 하나 이상을 포함하는 유저 그룹 데이터와,
상기 유저 그룹 데이터의 상기 어드버타이저 BLE 토큰 정보에 포함된 상기 제1 BLE 신호 정보에 대응하는 어드버타이저 BLE 토큰 정보(매핑된 어드버타이저 BLE 토큰 정보), 가맹점 ID 정보, 가맹점 주소 정보, 가맹점 위치 정보 및 갱신 일시 정보 중 하나 이상을 포함하는 기준 가맹점 매핑 데이터를 포함하며,
상기 위치관련-로데이터 DB는
상기 유저 그룹 데이터의 상기 어드버타이저 BLE 토큰 정보에 포함된 상기 제2 BLE 신호 정보에 대응하는 어드버타이저 BLE 토큰 정보(간접 매핑된 어드버타이저 BLE 토큰 정보)를 포함하는 기준 클라이언트 매핑 데이터를 더 포함하는, 방법.As a method of checking location-related information about service subscribers of a server,
The server is connected through a network to a plurality of first terminals on which a first client app is installed and a plurality of second terminals on which a second client app is installed,
Broadcasting a first BLE signal through a first client app;
Broadcasting a second BLE signal through a second client app;
Receiving a BLE recognition signal from a second client app that recognizes at least one of the first BLE signal and the second BLE signal;
Collecting the received BLE recognition signal, decoding the collected signal, and constructing a location-related raw data DB; and
Analyzing the location-related-raw data DB to determine that the second client app that transmitted the BLE recognition signal including the first BLE signal information is located in a predetermined area,
The location-related raw data DB is
User group data including one or more of observer BLE token information, advertiser BLE token information, subscriber ID information, and renewal date and time information,
Advertiser BLE token information (mapped advertiser BLE token information), affiliated store ID information, and affiliated store address corresponding to the first BLE signal information included in the advertiser BLE token information of the user group data Contains reference merchant mapping data including one or more of information, merchant location information, and renewal date and time information;
The location-related raw data DB is
Reference client mapping including advertiser BLE token information (indirectly mapped advertiser BLE token information) corresponding to the second BLE signal information included in the advertiser BLE token information of the user group data How to include more data.
상기 소정의 구역은 상기 제1 클라이언트 앱에 로그인된 가맹점 주소 정보를 기초로 하는 가상의 상권에 해당하는, 방법.According to paragraph 1,
The method wherein the predetermined area corresponds to a virtual commercial area based on merchant address information logged in to the first client app.
상기 판단하는 단계는
상기 매핑된 어드버타이저 BLE 토큰 정보를 갖는 옵저버 BLE 토큰 정보에 상응하는 제2 클라이언트 앱에 대해 상기 소정의 구역에 위치하는 것으로 판단하는, 방법.According to paragraph 1,
The above judgment step is
A method for determining that a second client app corresponding to observer BLE token information with the mapped advertiser BLE token information is located in the predetermined area.
상기 판단하는 단계는,
상기 매핑된 어드버타이저 BLE 토큰 정보의 유효 시점을 설정하는 단계; 및
상기 유효 시점을 만족하는 상기 매핑된 어드버타이저 BLE 토큰 정보를 갖는 옵저버 BLE 토큰 정보에 상응하는 제2 클라이언트 앱에 대해서만 상기 소정의 구역에 위치하는 것으로 필터링하는 단계;를 포함하는, 방법.According to clause 4,
The above judgment step is,
Setting a validity point of the mapped advertiser BLE token information; and
A method including; filtering only the second client app corresponding to the observer BLE token information having the mapped advertiser BLE token information that satisfies the validity point as being located in the predetermined area.
상기 판단하는 단계는,
상기 매핑된 어드버타이저 BLE 토큰 정보의 유효 개수를 설정하는 단계; 및
상기 유효 개수를 만족하는 상기 매핑된 어드버타이저 BLE 토큰 정보를 갖는 옵저버 BLE 토큰 정보에 상응하는 제2 클라이언트 앱에 대해서만 상기 소정의 구역에 위치하는 것으로 필터링하는 단계;를 포함하는, 방법.According to clause 5,
The above judgment step is,
Setting a valid number of the mapped advertiser BLE token information; and
A method comprising: filtering only the second client app corresponding to the observer BLE token information having the mapped advertiser BLE token information that satisfies the valid number as being located in the predetermined area.
상기 판단하는 단계는
상기 매핑된 어드버타이저 BLE 토큰 정보를 갖지 않더라도, 상기 간접 매핑된 어드버타이저 BLE 토큰 정보를 갖는 옵저버 BLE 토큰 정보에 상응하는 제2 클라이언트 앱에 대해 상기 소정의 구역에 위치하는 것으로 판단하는, 방법.According to paragraph 1,
The above judgment step is
Even if it does not have the mapped advertiser BLE token information, it is determined to be located in the predetermined area for the second client app corresponding to the observer BLE token information with the indirectly mapped advertiser BLE token information. , method.
상기 제2 BLE 신호는,
기설정된 주기에 따라 제2 클라이언트 앱으로부터 수신한 BLE 토큰 생성 요청에 응답하여 생성한 BLE 토큰에 기초하여 브로드캐스팅되고, 유효기간이 끝난 토큰은 폐기되는, 방법.According to paragraph 1,
The second BLE signal is,
A method that is broadcast based on a BLE token generated in response to a BLE token creation request received from a second client app according to a preset cycle, and tokens whose validity period has expired are discarded.
상기 BLE 토큰 생성 요청과 그 응답은 클라이언트-서버간 토큰 생성 API를 통해 이루어지며,
상기 토큰 생성 API가 게이트웨이를 지날 때 가입자 ID 정보가 상기 BLE 토큰 생성 요청에 추가되는, 방법.According to clause 9,
The BLE token creation request and its response are made through the client-server token creation API,
Subscriber ID information is added to the BLE token creation request when the token creation API passes through a gateway.
상기 서버는 제1 클라이언트 앱이 설치된 다수의 제1 단말기들와, 제2 클라이언트 앱이 설치된 다수의 제2 단말기들와 네트워크를 통해 연결되되,
제1 클라이언트 앱을 통해 브로드캐스팅된 제1 BLE 신호 및 제2 클라이언트 앱을 통해 브로드캐스팅된 제2 BLE 신호 중 적어도 하나를 인식한 제2 클라이언트 앱으로부터 BLE 인식 신호를 전달받아 수집하고, 수집된 신호를 복호화하여 위치관련-로데이터 DB를 구성하며,
상기 위치관련-로데이터 DB를 분석하여 상기 제1 BLE 신호 정보가 포함된 상기 BLE 인식 신호를 전달한 제2 클라이언트 앱에 대해 소정의 구역에 위치하는 것으로 판단하는 프로세서;를 포함하되,
상기 위치관련-로데이터 DB는
옵저버 BLE 토큰 정보, 어드버타이저 BLE 토큰 정보, 가입자 ID 정보 및 갱신 일시 정보 중 하나 이상을 포함하는 유저 그룹 데이터와,
상기 유저 그룹 데이터의 상기 어드버타이저 BLE 토큰 정보에 포함된 상기 제1 BLE 신호 정보에 대응하는 어드버타이저 BLE 토큰 정보(매핑된 어드버타이저 BLE 토큰 정보), 가맹점 ID 정보, 가맹점 주소 정보, 가맹점 위치 정보 및 갱신 일시 정보 중 하나 이상을 포함하는 기준 가맹점 매핑 데이터를 포함하며,
상기 위치관련-로데이터 DB는
상기 유저 그룹 데이터의 상기 어드버타이저 BLE 토큰 정보에 포함된 상기 제2 BLE 신호 정보에 대응하는 어드버타이저 BLE 토큰 정보(간접 매핑된 어드버타이저 BLE 토큰 정보)를 포함하는 기준 클라이언트 매핑 데이터를 더 포함하는, 서버.As a server that verifies location-related information about service subscribers,
The server is connected through a network to a plurality of first terminals on which a first client app is installed and a plurality of second terminals on which a second client app is installed,
Receive and collect a BLE recognition signal from a second client app that recognizes at least one of the first BLE signal broadcast through the first client app and the second BLE signal broadcast through the second client app, and collect the collected signal. Decrypt and construct a location-related raw data DB,
A processor that analyzes the location-related raw data DB and determines that the second client app that transmitted the BLE recognition signal including the first BLE signal information is located in a predetermined area,
The location-related raw data DB is
User group data including one or more of observer BLE token information, advertiser BLE token information, subscriber ID information, and renewal date and time information,
Advertiser BLE token information (mapped advertiser BLE token information), affiliated store ID information, and affiliated store address corresponding to the first BLE signal information included in the advertiser BLE token information of the user group data Contains reference merchant mapping data including one or more of information, merchant location information, and renewal date and time information;
The location-related raw data DB is
Reference client mapping including advertiser BLE token information (indirectly mapped advertiser BLE token information) corresponding to the second BLE signal information included in the advertiser BLE token information of the user group data A server containing more data.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020230174117A KR102682205B1 (en) | 2023-12-05 | 2023-12-05 | Method and server for checking location-related information for service subscribers |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020230174117A KR102682205B1 (en) | 2023-12-05 | 2023-12-05 | Method and server for checking location-related information for service subscribers |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR102682205B1 true KR102682205B1 (en) | 2024-07-04 |
Family
ID=91912795
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020230174117A Active KR102682205B1 (en) | 2023-12-05 | 2023-12-05 | Method and server for checking location-related information for service subscribers |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR102682205B1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20230081096A1 (en) * | 2020-03-05 | 2023-03-16 | Sato Holdings Kabushiki Kaisha | Information processing device, information processing system, computer-readable storage medium, and information processing method |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20170115727A (en) * | 2016-04-08 | 2017-10-18 | 삼성전자주식회사 | Apparatus and method for processing location information of terminal operating in beacon |
| KR20180010434A (en) * | 2016-07-21 | 2018-01-31 | (주)인프라칩 | System for Tracking a Patient Movements and its Contact in Hospital based Internet of Things and Controlling Method for the Same |
| KR20180067784A (en) | 2016-12-12 | 2018-06-21 | 서원대학교산학협력단 | Method for reconizing a position using low energy bluetooth and appartus for supporting the same |
| KR20200046942A (en) * | 2018-10-26 | 2020-05-07 | 삼성에스디에스 주식회사 | Method for authenticating legacy service based on token and platform service server supporting the same |
-
2023
- 2023-12-05 KR KR1020230174117A patent/KR102682205B1/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20170115727A (en) * | 2016-04-08 | 2017-10-18 | 삼성전자주식회사 | Apparatus and method for processing location information of terminal operating in beacon |
| KR20180010434A (en) * | 2016-07-21 | 2018-01-31 | (주)인프라칩 | System for Tracking a Patient Movements and its Contact in Hospital based Internet of Things and Controlling Method for the Same |
| KR20180067784A (en) | 2016-12-12 | 2018-06-21 | 서원대학교산학협력단 | Method for reconizing a position using low energy bluetooth and appartus for supporting the same |
| KR20200046942A (en) * | 2018-10-26 | 2020-05-07 | 삼성에스디에스 주식회사 | Method for authenticating legacy service based on token and platform service server supporting the same |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20230081096A1 (en) * | 2020-03-05 | 2023-03-16 | Sato Holdings Kabushiki Kaisha | Information processing device, information processing system, computer-readable storage medium, and information processing method |
| US12253618B2 (en) * | 2020-03-05 | 2025-03-18 | Sato Holdings Kabushiki Kaisha | Information processing device, information processing system, computer-readable storage medium, and information processing method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR101686982B1 (en) | Re-programmable secure cryptographic device | |
| CN112567365B (en) | System and method for user authentication based on multiple devices | |
| US11004044B2 (en) | Method for paying cost of IoT device based on blockchain, and server, service providing device, and digital wallet using the same | |
| CN110097360B (en) | Secure payment transaction using a rotary application transaction counter | |
| US20150161603A1 (en) | Determining Merchant Identity for Received Merchant Identifiers | |
| US20150317622A1 (en) | Mobile payments | |
| US20170178417A1 (en) | System for monitoring and enforcement of an automated fee payment | |
| CN113015992A (en) | Cloud token provisioning of multiple tokens | |
| KR20200137154A (en) | Advertisement system and advertisement providing method based on blockchain platform | |
| KR102682205B1 (en) | Method and server for checking location-related information for service subscribers | |
| US20170270511A1 (en) | System and method for management of payee information | |
| KR20180122358A (en) | Systems and methods for correlating various location data for data security | |
| CN106488399A (en) | The determination method and device of point-of-sale terminal POS location | |
| CN108280648B (en) | Transaction processing method and server | |
| KR102146356B1 (en) | System and method for collecting a point of interest, apparatus and computer readable medium having computer program recorded therefor | |
| KR101680728B1 (en) | Apparatus to manage becaon devices | |
| US20200349559A1 (en) | Masking a primary account number between a party and a service provider | |
| KR20250090261A (en) | Method and system for authenticatiing user and transaction among smart phone users in same place using authentication beacon | |
| KR102107454B1 (en) | System for multiplication of financial payment networks, method for financial services using the same and computer program for the same | |
| CN111052639B (en) | Audio-Based Service Set Identifier | |
| KR102509634B1 (en) | Blockchain decentralized identity based integrated authentication payment terminal, platform system capable of selective push notification and control method thereof | |
| US20140229247A1 (en) | Global transit card service | |
| KR102413534B1 (en) | Method and system for mobile payment including check of validity based on geographic location | |
| KR101785169B1 (en) | Beacon data aggregation and management platform | |
| KR20170111526A (en) | A method of processing card information for preventing re-use of card information based on a shared encryption key, an appratus thereof and a method for operating financial server |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20231205 |
|
| PA0201 | Request for examination |
Patent event code: PA02011R01I Patent event date: 20231205 Comment text: Patent Application |
|
| PA0302 | Request for accelerated examination |
Patent event date: 20231207 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination |
|
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20240401 Patent event code: PE09021S01D |
|
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20240701 |
|
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20240702 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20240702 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration |