KR20230080757A - 근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법 및 이를 위한 시스템 - Google Patents

근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법 및 이를 위한 시스템 Download PDF

Info

Publication number
KR20230080757A
KR20230080757A KR1020210168205A KR20210168205A KR20230080757A KR 20230080757 A KR20230080757 A KR 20230080757A KR 1020210168205 A KR1020210168205 A KR 1020210168205A KR 20210168205 A KR20210168205 A KR 20210168205A KR 20230080757 A KR20230080757 A KR 20230080757A
Authority
KR
South Korea
Prior art keywords
packet
user
information
proximity
uuid
Prior art date
Application number
KR1020210168205A
Other languages
English (en)
Other versions
KR102632854B1 (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 KR1020210168205A priority Critical patent/KR102632854B1/ko
Publication of KR20230080757A publication Critical patent/KR20230080757A/ko
Priority to KR1020240013789A priority patent/KR20240018551A/ko
Application granted granted Critical
Publication of KR102632854B1 publication Critical patent/KR102632854B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
    • H04W4/21Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel for social networking applications
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO 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
    • G01S11/00Systems for determining distance or velocity not using reflection or reradiation
    • G01S11/02Systems for determining distance or velocity not using reflection or reradiation using radio waves
    • G01S11/06Systems for determining distance or velocity not using reflection or reradiation using radio waves using intensity measurements
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO 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
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/75Indicating network or usage conditions on the user display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 근거리 통신망을 활용한 근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법 및 시스템에 관한 것이다.

Description

근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법 및 이를 위한 시스템{METHOD AND SYSTEM FOR IMPROVING DEVICE DETECTION RATE IN PROXIMITY USER NETWORKING}
본 발명은 근거리 통신망을 활용한 근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법 및 시스템에 관한 것이다.
지난 십수년 간 스마트폰의 대중화, 그리고 네트워크 인프라 강화가 이루어져 왔으며, 이제는 이러한 하드웨어 및 인프라를 이용한 다양한 종류의 콘텐츠들이 쏟아져 나오고 있다. 현재 출시되고 있는 다양한 콘텐츠들 중에는 사람들 간의 만남을 유도하는 어플리케이션들도 상당히 많은데, 이들 어플리케이션들 대부분은 서로에 대한 정보가 매우 제한적으로만 이루어져 있는 상태에서 소위 블라인드 미팅과 유사한 형태의 만남이 이루어질 수 있도록 연결시켜 주는 것들이다.
그러나 이러한 블라인드 미팅 어플리케이션, 소위 데이팅 어플리케이션이라 불리는 콘텐츠들은 사용자들의 정보 노출이 최소한으로만 이루어진다는 점에서 범죄에 악용될 소지가 있으며, 또한 상호 간 연결 고리 없이 전혀 모르는 사람들끼리의 네트워킹을 무리하게 성사시키려는 시도를 한다는 점에서 결과적으로 사람과 사람 간의 네트워킹이 제대로 이루어지지 못하는 결과를 초래할 가능성도 매우 높다 할 것이다.
본 발명은 앞서 설명한 것과 같은 종래 어플리케이션의 네트워킹 방식 및 효과의 한계에 착안하여 제안된 것으로, 사용자 주변을 지나는 타 사용자의 정보들을 서비스 서버가 기록해 두고, 그러한 정보를 사용자에게 제공토록 함으로써 주변에서 자주 마주치던 사람, 동일한 영역 상에서 활동을 같이하고 있는 사람들끼리의 네트워킹이 쉽게 이루어질 수 있는 환경을 구현하고자 한 것이다.
또한 본 발명은 근접 사용자 네트워킹 시 동일한 값의 UUID를 중복적으로 애드 패킷의 브로드캐스팅에 사용함으로써 발생할 수 있는 문제, 특히 어플리케이션의 백그라운드 알림이 정상적으로 발생되지 않는 문제점을 해결하기 위해 종래와는 차별화 된 방법 및 시스템을 제공하고자 한다.
본 발명은 이와 같은 문제점에 착안하여 도출된 것으로, 이상에서 살핀 기술적 문제점을 해소시킬 수 있음은 물론, 본 기술분야에서 통상의 지식을 가진 자가 용이하게 발명할 수 없는 추가적인 기술요소들을 제공하기 위해 발명되었다.
한국등록특허공보 제10-2138647호 (2020.07.22 등록)
본 발명은 특정 사용자 디바이스의 주변을 지나는 다른 사용자 디바이스들에 대한 기록이 서비스 서버 측에 기록되도록 함으로써 추후 상기 특정 사용자가 자신의 주변으로 어떤 사용자들이 지나쳤는지 또는 존재했었는지를 알 수 있게 하는 것을 목적으로 한다.
또한 본 발명은 서비스 서버가 위와 같은 근접 사용자 정보를 상기 특정 사용자에게 제공하게 함으로써 상기 특정 사용자와 그 주변을 지나치던 근접 사용자 간에 시공간적 공통성을 기반으로 한 네트워킹이 이루어질 수 있게 하는 것을 목적으로 한다.
또한 본 발명은 단순히 근접성 여부만을 따지는 것이 아니라 주변에 다른 사용자가 얼마나 근접해 있는지, 다시 말해 근접 거리를 추정함으로써 근접 사용자들 중에서도 더 가까운 근접 사용자를 구분할 수 있게 함으로써 보다 더 수월한 네트워킹이 이루어질 수 있게 하는 것을 목적으로 한다.
또한 본 발명은 복수 개의 UUID값, 그 중에서도 특히 다른 애드 패킷 브로드캐스팅 시 소진되지 않은, 또는 다른 애드 패킷에 사용된 지 오랜 시간이 흐른 UUID를 사용함으로써 UUID 중복에 따른 디바이스 감지 실패의 확률을 줄이는 것을 목적으로 한다.
한편, 본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
위와 같은 문제점을 해결하기 위하여, 본 발명에 따른 근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법은, 제2 사용자 디바이스로부터 제2 애드 패킷이 수신되면, 제1 사용자 디바이스에 설치된 어플리케이션이, 상기 제1 애드 패킷 내 포함된 UUID값을 획득하는 단계; 상기 어플리케이션이, 상기 획득한 UUID값을 소진 UUID값으로 기록하는 단계; 및 상기 어플리케이션이, 상기 소진 UUID값으로 기록된 UUID값을 제외한 다른 UUID값을 이용하여 애드 패킷을 생성하는 단계;를 포함할 수 있다.
또한, 상기 방법은 상기 어플리케이션이, 상기 제1 사용자 디바이스의 근거리 통신망으로부터 벗어나는 사용자 디바이스를 모니터링하는 단계; 및 상기 어플리케이션이, 상기 근거리 통신망으로부터 벗어난 사용자 디바이스에 대응되는 UUID값을 가용 UUID값으로 갱신하는 단계;를 더 포함할 수 있다.
또한 상기 방법에 있어서 상기 UUID값은 서로 다른 값을 가지는 16개까지 활용 가능한 것을 특징으로 할 수 있다.
또한 상기 방법에 있어서 상기 어플리케이션에 의해 생성되는 애드 패킷은, 대화방, 커뮤니티, 또는 사용자의 근접 존재를 타 사용자 디바이스에 알리기 위한 것을 특징으로 할 수 있다.
또한 상기 방법에 있어서 가용 UUID값이 존재하지 않는 경우, 상기 어플리케이션이 소진 UUID값들 중 하나를 랜덤으로 선택하여 애드 패킷을 생성하는 것을 특징으로 할 수 있다.
본 발명에 따르면 사용자들 간에는 시공간적 공통성을 기반으로 서로 네트워킹을 할 수 있는 환경이 마련되는 효과가 있다.
특히 본 발명에 따르면 시간적, 공간적으로 상당 부분의 공통성을 확인한 뒤 상호 간의 교류가 가능하게도 구현될 수 있으므로 종래 신상이나 연락처를 모르는 상태에서의 블라인드 네트워킹에 비하여 안전성이 높은 효과가 있다.
또한 본 발명에 따르면 근접성뿐만 아니라 근접 정도까지 거리값으로 추정이 가능하게 함으로써 사용자가 네트워킹 시 참고할 수 있게 하는 효과가 있다.
또한 본 발명에 따르면 복수의 디바이스들이 같은 근거리 통신망 내에서 애드 패킷을 수신하게 되더라도, 특히 어플리케이션이 백그라운드에서 구동 중인 상황에서 알림이 정상적으로 발생될 수 있게 하는 효과가 있다.
한편, 본 발명에 의한 효과는 이상에서 언급한 것들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명에 따른 근접 사용자 네트워킹 서비스가 제공되는 기본 환경을 시스템적으로 도시한 것이다.
도 2는 본 발명에 따른 제1 실시예를 도시한 것이다.
도 3은 서비스 서버 상에서 기록되는 근접 사용자 정보들을 예시적으로 나타낸 것이다.
도 4는 본 발명에 따른 제2 실시예를 도시한 것이다.
도 5는 호스트 디바이스 주변으로 게스트 디바이스가 지나갈 때의 상황을 간략히 도시한 것이다.
도 6은 호스트 디바이스 주변에 존재하였던 근접 사용자들에 대한 근접 사용자 정보를 예시적으로 나타낸 것이다.
도 7은 호스트 디바이스가 서비스 서버 측으로 암호화 된 절대위치 정보를 공유하는 모습을 도시한 것이다.
도 8은 앞선 도 6의 근접 사용자 정보에 위치정보가 더 표시된 모습을 도시한 것이다.
도 9는 앞선 도 6의 근접 사용자 정보에 근접거리정보가 더 표시된 모습을 도시한 것이다.
도 10은 호스트 디바이스로 제공되는 근접 사용자 정보의 일 예시를 도시한 것이다.
도 11 및 도 12는 근접 사용자 네트워킹 서비스를 제공할 때에 발생할 수 있는 문제점 및 이를 해결하기 위한 방법을 설명하기 위한 것이다.
본 발명의 목적과 기술적 구성 및 그에 따른 작용 효과에 관한 자세한 사항은 본 발명의 명세서에 첨부된 도면에 의거한 이하의 상세한 설명에 의해 보다 명확하게 이해될 것이다. 첨부된 도면을 참조하여 본 발명에 따른 실시예를 상세하게 설명한다.
본 명세서에서 개시되는 실시예들은 본 발명의 범위를 한정하는 것으로 해석되거나 이용되지 않는다. 또한 본 발명의 상세한 설명에 기재된 임의의 실시예들은 본 발명을 보다 쉽게 이해하기 위한 예시적인 것이며 본 발명의 범위가 실시예들로 한정되는 것을 의도하지 않는다.
도면에 표시되고 아래에 설명되는 기능 블록들은 가능한 구현의 예들일 뿐이다. 다른 구현들에서는 상세한 설명의 사상 및 범위를 벗어나지 않는 범위에서 다른 기능 블록들이 사용될 수 있다. 또한, 본 발명의 하나 이상의 기능 블록이 개별 블록들로 표시되지만, 본 발명의 기능 블록들 중 하나 이상은 동일 기능을 실행하는 다양한 하드웨어 및 소프트웨어 구성들의 조합일 수 있다.
또한, 어떤 구성요소들을 포함한다는 표현은 “개방형”의 표현으로서 해당 구성요소들이 존재하는 것을 단순히 지칭할 뿐이며, 추가적인 구성요소들을 배제하는 것으로 이해되어서는 안 된다.
나아가 어떤 구성요소가 다른 구성요소에 “연결되어” 있다거나 “접속되어” 있다고 언급될 때에는, 그 다른 구성요소에 직접적으로 연결 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 한다.
먼저 도 1은 본 발명에 따른 근접 사용자 네트워킹 서비스가 제공될 수 있는 기본 환경을 시스템적으로 도시한 것이다. 도 1에 따르면, 전체 시스템은 호스트 디바이스로 정의될 수 있는 제1 사용자 디바이스(100), 근접 사용자 네트워킹 서비스를 제공하는 서비스 서버(200), 그리고 상기 제1 사용자 디바이스(100)의 주변에 근접 존재하는 제2 사용자 디바이스(300A, B)를 포함할 수 있다. 참고로 본 상세한 설명에서는 제1 사용자 디바이스를 호스트 디바이스로, 그리고 그 외의 사용자 디바이스들은 게스트 디바이스로 칭하기도 할 것임을 미리 밝힌다.
도 1을 기준으로 하는 대표적인 예시 상황을 들면 다음과 같다. 제1 사용자 디바이스(100)는 커뮤니티, 즉 일종의 채팅방을 개설한 채 근거리 네트워크(예. 블루투스 네트워크)를 이용하여 주변으로 애드 패킷을 브로드캐스팅 하는 구성일 수 있다. 즉, 제1 사용자 디바이스(100)는 자신이 호스트로서 채팅방을 만들어 둔 채 주변 근거리 네트워크 내 연결 가능한 타 사용자 디바이스들로 위 채팅방 또는 사용자 자신을 알리기 위한 패킷들(애드 패킷들)을 브로드캐스트 함으로써 타 사용자들이 이를 수신할 수 있게 하는 것을 목적으로 하여 구동된다.
한편, 제2 사용자 디바이스(300A, B)들은 앞선 제1 사용자 디바이스(100)로부터 애드 패킷을 수신하고, 설정에 따라 상기 애드 패킷으로부터 획득한 정보들을 기초로 서비스 서버(200)에 해당 근접 상황과 관련된 정보들, 즉 제2 사용자 디바이스(300A, B)가 어느 디바이스로부터 애드 패킷을 수신하였는지, 몇 시에 수신하였는지, 얼마나 오랜 시간 동안 타 사용자 디바이스와 근접해 있었는지 등과 같은 정보들을 전송할 수 있다. 즉, 제2 사용자 디바이스(300A, B)는 제1 사용자 디바이스(100)와 근접해 있는 것들로, 만일 제1 사용자 디바이스(100)로부터 근거리 네트워크를 통해 애드 패킷을 수신하였다면 이를 기초로 하는 근접 상황 정보를 서비스 서버(200)에 전송하여 기록되게끔 하는 구성으로 이해될 수 있다. 한편, 제2 사용자 디바이스들 중에는 사용자가 원하는 경우 상기 제1 사용자 디바이스(100), 즉 호스트 디바이스가 개설한 커뮤니티(채팅방)에 참여할 수도 있게 커뮤니티 참여 요청도 전송 가능할 수 있다.
마지막으로 서비스 서버(200)는 앞서 설명한 것과 같이 제2 사용자 디바이스(300A, B)들로부터 근접 상황 정보를 수신하며, 이들 근접 상황 정보들을 기록해 두는 역할을 한다. 또한, 서비스 서버(200)는 비단 근접 상황 정보들을 단순히 수신 및 기록하는 역할에 그치는 것이 아니라 기록된 근접 상황 정보들로부터 제1 사용자 디바이스(100), 즉 호스트 디바이스의 사용자에게 주변 근접 사용자들 중 네트워킹이 가능할 만한 사용자를 추천해 주는 역할을 수행할 수도 있다.
또한, 상기 서비스 서버(200)는 위에서 언급한 기능 외에 디바이스들로부터 커뮤니티 개설 요청, 즉 채팅방 개설 요청이 수신되었을 때 이에 응답하여 커뮤니티(채팅방)를 개설 및 타 디바이스들 접속이 가능하게 유지하는 역할을 더 수행할 수 있다. 이 때, 타 디바이스들은 서비스 서버(200)에 연결될 때에 근거리 네트워크가 아니라 광역 네트워크(LTE 등)를 통하여 연결될 수 있다.
또한 본 발명에 따른 서비스 서버(200)는 SNS서버와의 연동을 통해서도 각 사용자들을 커뮤니티에 참여시키거나 또는 데이터 내지 정보를 공유 가능하도록 구현될 수 있다. 즉, 본 발명에 따른 서비스 서버(200)를 통해 기존에 가입이 되어 있지 않은 소위 비회원들은 타 SNS서비스의 로그인 정보를 활용하여 본 발명에 따른 서비스를 이용하도록 할 수 있으며, 나아가 타 SNS서비스를 통하여 공유되고 있던 파일들은 서비스 서버를 통해 각 커뮤니티에도 공유될 수 있도록 구현될 수 있다.
한편, 도 1에 도시되어 있는 각 구성들은 아래와 같은 하드웨어적 특징을 가질 수 있다. 먼저 디바이스(이 때 디바이스란 호스트 디바이스, 그리고 호스트 디바이스 주변의 게스트 디바이스들을 포함함)와 관련하여, 본 상세한 설명에서 언급되는 디바이스는 사용자가 보유하거나 소지하고 다니는 장치를 일컫는 것으로, 여기에는 스마트폰, PDA, 태블릿PC 등과 같이 휴대가 가능한 단말기는 물론 홈PC 등과 같은 설치형 단말기도 포함될 수 있다. 이러한 디바이스를 장치의 측면에서 볼 때에, 각 디바이스들은 중앙처리유닛(CPU)과 메모리를 구비하고 있는 것을 전제로 한다. 중앙처리유닛은 컨트롤러(controller), 마이크로 컨트롤러(microcontroller), 마이크로 프로세서(microprocessor), 마이크로 컴퓨터(microcomputer) 등으로도 불릴 수 있다. 또한 중앙처리유닛은 하드웨어(hardware) 또는 펌웨어(firmware), 소프트웨어, 또는 이들의 결합에 의해 구현될 수 있는데, 하드웨어를 이용하여 구현하는 경우에는 ASIC(application specific integrated circuit) 또는 DSP(digital signal processor), DSPD(digital signal processing device), PLD(programmable logic device), FPGA(field programmable gate array) 등으로, 펌웨어나 소프트웨어를 이용하여 구현하는 경우에는 위와 같은 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등을 포함하도록 펌웨어나 소프트웨어가 구성될 수 있다. 또한, 메모리는 ROM(Read Only Memory), RAM(Random Access Memory), EPROM(Erasable Programmable Read Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래쉬(flash) 메모리, SRAM(Static RAM), HDD(Hard Disk Drive), SSD(Solid State Drive) 등으로 구현될 수 있다.
참고로, 본 상세한 설명에서는 발명의 이해를 돕기 위하여 디바이스가 스마트폰, 또는 태블릿PC인 경우를 상정하여 설명하기로 한다. 이 경우, 상기 디바이스는 디스플레이 및 터치 감응형 표면을 포함할 수 있으며, 나아가 부수적으로 물리적 키보드, 마우스 및/또는 조이스틱과 같은 하나 이상의 다른 물리적 사용자 입력용 수단이 더 연결될 수도 있다. 또한 상기 디바이스는 소리나 음성을 감지하고 녹음할 수 있는 수단을 더 포함할 수도 있다. 한편, 디바이스 상에서 실행되는 다양한 어플리케이션들은, 옵션적으로, 터치 감응형 표면과 같은 적어도 하나의 보편적인 물리적 사용자 입력용 수단을 사용할 수 있다. 터치 감응형 표면의 하나 이상의 기능뿐만 아니라 단말기 상에 표시되는 대응하는 정보는 하나의 어플리케이션으로부터 다음 어플리케이션으로 그리고/또는 개별 어플리케이션 내에서 옵션적으로 조정되거나 변경될 수 있다. 이러한 방식으로, 디바이스의 (터치 감응형 표면과 같은) 보편적인 물리적 아키텍처는, 옵션적으로, 사용자에게 직관적이고 명료한 사용자 인터페이스들을 이용하여 다양한 어플리케이션들을 지원할 수 있다.
한편, 서비스 서버(200)는 본 발명에 따른 방법을 실제로 구현하기 위한 프로그램, 즉 명령어들의 집합을 제공하는 구성이며, 나아가 복수의 단말기들로부터 수신되는 각종 데이터를 처리 또는 저장하는 구성에 해당한다. 서비스 서버의 형태는, 어느 특정 운영자가 관리하는 적어도 하나의 서버용 PC일 수 있으며, 또는 타 업체에서 제공하는 클라우드 서버의 형태, 즉 운영자가 회원가입하여 사용할 수 있는 클라우드 서버의 형태일 수도 있다. 특히 서비스 서버가 서버용 PC로 구현된 경우, 해당 서비스 서버는 중앙처리유닛 및 메모리를 포함할 수 있으며, 이에 대해서는 앞선 디바이스의 설명 과정에서 자세히 언급하였으므로 여기서는 설명을 생략하기로 한다.
도 2는 본 발명의 제1 실시예에 따른 근접 사용자 네트워킹 서비스 제공 방법을 도시한 것이다.
도 2를 참고할 때, 제1 실시예는 가장 먼저 호스트 디바이스(100)가 임의의 게스트 디바이스(300)로 애드 패킷을 브로드캐스팅 하는 단계(S101)로부터 시작될 수 있다. 애드 패킷이란 디바이스가 근거리 네트워크, 예를 들어 블루투스 네트워크를 통해 외부로 전파를 시키기 위해 생성된 데이터 패킷으로 이해될 수 있다. 애드 패킷에는 상기 서비스 서버(200)에 의해 제공되는 서비스를 식별하기 위한 식별자인 UUID가 포함될 수 있으며, 여기에 더하여 앞서 사용자에 의해 개설된 커뮤니티(채팅방)를 식별하기 위한 커뮤니티 식별자, 또는 해당 사용자를 식별하기 위한 사용자 식별자를 더 포함할 수 있다. 즉, 상기 애드 패킷에는 기본적으로 본 발명에 따른 서비스 서버(200)에 의해 제공되는 서비스를 식별하기 위한 식별자, 그리고 채팅방이나 사용자를 식별할 수 있는 식별자가 포함될 수 있으며, 이러한 애드 패킷은 임의의 게스트 디바이스들로 홍보의 용도로 브로드캐스팅 될 수 있다.
한편, 상기 애드 패킷에는 부가적으로 커뮤니티에 참여시키고자 하는 게스트 디바이스의 수를 제어하기 위한 카운팅 값(TTL), 또는 호스트 디바이스(100)로부터 직접 발신된 애드 패킷인지 여부를 식별하기 위한 다이렉트 필드(Direct field)가 더 포함될 수 있다.
카운팅 값과 관련하여, 카운팅 값(TTL)은 게스트의 수를 제한하기 위한 값으로, 호스트 디바이스(100)로부터 브로드캐스팅 된 카운팅 값이 n일 때에 이를 수신한 디바이스들은 카운팅 값을 1만큼 줄여 다시 타 디바이스들로 브로드캐스팅을 하게 될 것이며, 최종적으로 카운팅 값이 0일 경우에는 더 이상 브로드캐스팅이 되지 않도록 할 수 있다. 한편, 바람직하게는 상기 카운팅 값은 63의 최고값을 가질 수 있다.
다이렉트 필드와 관련하여, 본 발명에서는 카운팅 값을 이용하여 블루투스 메쉬 네트워크를 통한 연쇄적인 브로드캐스팅이 가능한데, 경우에 따라서는 임의의 게스트 디바이스, 다시 말해 임의의 노드들 중에서 어떤 노드들이 호스트 디바이스(100)로부터 직접 애드 패킷을 수신하였는지를 확인할 필요가 있을 수 있다. 다이렉트 필드는 호스트 디바이스(100)가 발송하는 애드 패킷에서는 트루(true) 값으로 설정되어 있을 것이나, 이를 수신한 게스트 디바이스들은 다이렉트 필드의 값을 폴스(false)로 바꾸어 브로드캐스팅을 하게 할 수 있다. 이 경우 오직 호스트 디바이스(100)로부터 애드 패킷을 직접 수신한 노드들만 다이렉트 필드로 트루(true) 값을 가지게 될 것이므로, 호스트 디바이스(100)와 가장 인접한 게스트 디바이스들을 구분할 수 있다. 또한, 경우에 따라 상기 다이렉트 필드가 트루인 애드 패킷을 수신한 디바이스들은 일정 거리 내, 예를 들어 약 40미터(이는 설계자 의도에 따라 조절 가능한 값임) 이내에 존재하는 것들이라고 추정도 가능하게 함으로써 근접 디바이스들 대상으로 다양한 부가 서비스를 제공하거나 또 다른 부가 정보를 제공할 수 있게 할 수 있다.
S101 단계 후, 게스트 디바이스(300)는 앞서 수신한 애드 패킷 내 포함된 정보들 중 일부를 참고하여 애드 패킷 수신과 관련된 상황정보를 생성하고 이를 서비스 서버(200) 측으로 업로드(S102) 할 수 있다. 본 상세한 설명에서는 위 상황정보를 근접상황정보라 칭하기로 한다. 근접상황정보에는 게스트 디바이스가 호스트 디바이스로부터 애드 패킷을 수신할 때의 여러 파라미터들이 포함될 수 있다. 근접상황정보에는 예를 들어 상기 호스트 디바이스로부터 애드 패킷을 수신한 시각을 기록한 타임스탬프(time stamp) 정보, 또는 상기 호스트 디바이스와 게스트 디바이스 간 유효한 근거리 통신망 내에서 공존한 시간을 기록한 듀레이션(duration) 정보가 포함될 수 있다.
또한, 상기 근접상황정보에는 상기 게스트 디바이스가 호스트 디바이스로부터 애드 패킷을 수신할 때의 수신강도를 기록한 RSSI 정보, 및/또는 기준 거리에서의 측정된 신호의 세기값을 나타내는 Measured Power 정보도 포함될 수 있다.
정리하면, 상기 게스트 디바이스(300)는 호스트 디바이스(100)로부터 수신된 애드 패킷을 기초로 근접상황정보를 생성하고 이를 서비스 서버(200)로 전송하되, 이 때 근접상황정보에는 타임 스탬프 정보, 듀레이션 정보, RSSI 정보, 또는 Measured Power 정보가 포함될 수 있다.
참고로, 따로 언급하지는 않았으나 상기 근접상황정보에 상기 애드 패킷이 어느 디바이스로부터 브로드캐스팅 된 것인지를 식별할 수 있는 식별자, 예를 들어 커뮤니티(채팅방) 식별자, 또는 사용자 식별자가 더 포함될 수 있으며, 여기에 더하여 본 서비스 자체를 식별하기 위한 서비스 식별자가 더 포함될 수 있다.
또한, 참고로 게스트 디바이스(300)는 자체적인 하드웨어적 설정을 통하여, 또는 본 서비스를 이용하기 위해 설치된 어플리케이션에서의 설정을 통하여 외부 디바이스들로부터의 브로드캐스팅 된 애드 패킷을 수신하지 않도록 설정할 수 있다. 또한, 브로드캐스팅 된 애드 패킷을 수신하였다 하더라도 이로부터 굳이 근접상황정보를 생성하여 서비스 서버(200) 측으로 전송하지 않도록 설정할 수도 있다. 다시 말해, 본 서비스는 전적으로 디바이스 사용자의 의사에 따라 애드 패킷을 수신하거나, 근접상황정보를 외부로 전송하는 등의 단계들이 진행되도록 함으로써 사용자들로 하여금 자신의 의사에 반하여 개인정보가 밖으로 유출되는 것을 방지하게 할 수 있다.
한편, 102단계 이후에는 게스트 디바이스(300)가 서비스 서버(200)를 향하여 커뮤니티 참여요청을 전송(S103)함으로써 상기 호스트 디바이스(100)의 사용자에 의해 개설된 커뮤니티(채팅방)에 참여하고 싶다는 의사를 밝힐 수 있다. 본 단계는 상기 게스트 디바이스(300)의 사용자가 원할 때에 선택적으로 이루어질 수 있으며, 예를 들어 게스트 디바이스(300)의 화면에 커뮤니티(채팅방)에 참여하고 싶은지를 묻는 메시지를 표시하고, 사용자로부터 승인의 입력을 수신하였을 때에 본 단계가 진행될 수 있다.
한편, S102단계 또는 S103단계 이후에는 서비스 서버(200)가 앞서 수신한 근접상황정보를 서비스 서버(200) 내 저장공간에, 또는 서비스 서버(200)의 밖에 별도로 마련되어 있는 저장공간에 기록할 수 있다.
도 3은 서비스 서버(200)에 의해 기록되는 근접상황정보의 일 예시를 도시한 것이다. 도 3을 참고할 때, 서비스 서버(200)는 적어도 애드 패킷이 누구로부터 누구에게 전달되었는지(송신자와 수신자가 누구인지), 애드 패킷을 수신한 시각은 언제인지, 송신자와 수신자 사이 애드 패킷을 주고 받는 데에 얼마의 시간이 걸렸는지, 송신자와 수신자가 근거리 네트워크로 연결될 수 있는 같은 공간 내에 얼마나 함께 공존하고 있었는지, 애드 패킷을 수신할 때의 RSSI가 얼마였는지, 또는 수신할 때의 Measured Power가 얼마였는지 등의 정보를 기록할 수 있다.
참고로, 서비스 서버(200)에 의해 기록되는 근접상황정보는 상기 게스트 디바이스(300)가 업로드 한 근접상황정보와 데이터 포맷 등이 달라질 수 있다. 다시 말해, 상기 서비스 서버(200)는 수신한 근접상황정보로부터 필요한 정보들만을 취한 후 새로운 형태의 정보로 가공하여 기록해 둘 수 있다.
마지막으로 서비스 서버(200)는 호스트 디바이스(100)에, 상기 호스트 디바이스(100) 주변으로 어떤 사용자들, 또는 어떤 디바이스들이 근접하여 존재했었는지를 근접자 정보를 송신(S105)함으로써 전달할 수 있다. 근접자 정보는 표의 형태로 이루어질 수 있거나 그 밖에 다양한 인터페이스로 구성될 수 있으며, 이 근접자 정보에는 호스트 디바이스(100)의 주변에 존재하였던 타 사용자들에 대한 정보, 타 사용자 디바이스들이 주변에 존재할 당시의 파라미터가 포함될 수 있다. 이 때 파라미터에는 앞서 설명한 근접상황정보 내 정보들 포함될 수 있으며, 여기에 더 나아가 상기 호스트 디바이스(100)를 기준으로 획득할 수 있는 파라미터들(예. 호스트 디바이스의 시간 별 GPS 정보 등)이 더 포함될 수 있다. 한편, 상기 호스트 디바이스(100)를 기준으로 획득할 수 있는 파라미터들은 상기 서비스 서버(200)로부터 근접자 정보가 수신된 후 호스트 디바이스(100)의 어플리케이션을 통해 화면에 표시될 때에 병합되어 표시될 수도 있다. 예를 들어, 호스트 디바이스(100)가 자체적으로 GPS정보들을 기록 및 저장해 두고 있을 때에, 상기 서비스 서버(200)로부터 근접자 정보가 수신되면, 상기 호스트 디바이스(100)는 상기 근접자 정보에 포함되어 있는 시각 및 시간과 관련된 정보를 참고하여 해당 시간대에서의 GPS정보를 조회할 수 있으며, 조회된 GPS정보와 매핑되는 장소정보를 상기 근접자 정보를 화면에 표시할 시에 같이 표시할 수 있다. 이렇게 함으로써 호스트 디바이스(100)의 사용자는 자신이 언제 어느 장소에서 어떤 근접 사용자들과 같은 공간에 있었는지를 쉽게 알 수 있다.
도 4는 본 발명의 제2 실시예에 따른 근접 사용자 네트워킹 서비스 제공 방법을 도시한 것으로, 제2 실시예에서는 2개의 게스트 디바이스들이 연관되어 있음을 확인할 수 있다.
도 4를 참고할 때, 제2 실시예는 가장 먼저 게스트 디바이스A(300A)가 호스트 디바이스(100)로부터 제1 애드 패킷을 수신하는 단계(S201)로부터 시작될 수 있다. 본 단계는 앞서 제1 실시예에서 설명한 애드 패킷 전송/수신 단계와 실질적으로 동일하며, 애드 패킷 내에 포함되는 정보 역시 실질적으로 동일하므로 여기서는 자세한 설명을 생략한다.
다음으로, 게스트 디바이스A(300A)는 근접상황정보를 생성할 수 있으며, 이를 서비스 서버(200) 측에 전송(업로드; S202)함으로써 서비스 서버(200) 내에 상기 호스트 디바이스(100)와 게스트 디바이스A(300A) 간 근접한 상황과 관련된 파라미터들이 저장되도록 할 수 있다.
또한, 게스트 디바이스A(300A)는 상기 제2 애드 패킷을 생성하고 이를 주변 디바이스들로 브로드캐스팅 할 수 있는데, 게스트 디바이스C(300C)가 위 제2 애드 패킷을 수신할 수 있다. 제2 애드 패킷 내에는 서비스를 식별하기 위한 식별자(UUID), 상기 호스트 디바이스(100)에 의해 개설된 커뮤니티(채팅방)를 식별할 수 있는 커뮤니티 식별자, 상기 게스트 디바이스A(300A)의 사용자나 호스트 디바이스(100)의 사용자 개인을 식별할 수 있는 사용자 식별자, 또는 카운팅 값 중 적어도 하나의 정보들이 포함될 수 있다.
한편, 제2 애드 패킷을 수신한 게스트 디바이스C(300C)는 자체적으로 근접상황정보를 생성한 뒤 이를 서비스 서버(200) 측으로 업로드(S204) 할 수 있으며, 이와 함께 상기 호스트 디바이스(100)가 개설한 커뮤니티(채팅방)로의 참여를 요청(S205)할 수도 있다.
또한, 마지막으로 게스트 디바이스C(300C)는 제3 애드 패킷을 생성하여 또 다른 디바이스들로 브로드캐스팅(S206)을 할 수 있다.
제2 실시예는 제1 실시예와 비교할 때 서비스 서버(200)가 게스트 디바이스C(300C), 즉 호스트 디바이스(100)로부터 직접 애드 패킷을 수신한 디바이스가 아니라 또 다른 디바이스인 게스트 디바이스A(300A)를 거쳐 애드 패킷을 수신한 디바이스로부터 근접상황정보를 수신한다는 점에서 차이가 있다. 즉, 본 발명에 따른 근접 사용자 네트워킹 서비스는 반드시 호스트 디바이스(100)로부터 직접 애드 패킷을 수신한 최근접 사용자들뿐만 아니라, 한 다리를 거쳐 애드 패킷을 수신한 근접 사용자들까지도 호스트 디바이스(100)의 사용자가 확인 가능하게 함으로써 더 넓은 범위에서의 근접 사용자들에 대해서도 네트워킹이 가능하게 할 수 있다.
한편, 임의의 게스트 디바이스가 타 게스트 디바이스로부터 애드 패킷을 수신하였을 때, 이 애드 패킷을 수신할 때의 상황에 대한 파라미터 중 일부 파라미터 값이 거 설정된 범위를 충족시키지 못한 경우에는 서비스 서버(200) 측으로 근접상황정보가 업로드 되지 않게 함으로써 호스트 디바이스(100)로부터 너무 멀리 떨어진 디바이스들에 대해서는 별도로 기록이 남지 않도록 할 수도 있다. 가령, 애드 패킷 내 포함된 카운팅 값은 브로드캐스팅이 반복될수록 그 값이 1씩 떨어지는데, 임의의 디바이스로부터 수신된 애드 패킷 내 카운팅 값이 특정 값(예를 들어 2) 이하인 경우에는 더 이상 서비스 서버(200)로의 근접상황정보 업로드가 이루어지지 않게 하거나, 또는 애드 패킷 수신 시 RSSI 값이 특정 설정값 보다 더 낮은 경우 더 이상 근접상황정보 업로드가 이루어지지 않게 하는 등의 방식으로 그 범위를 제한할 수 있다.
도 5는 호스트 디바이스(100)에 근접해 있는 게스트 디바이스(300)가 호스트 디바이스(100)의 주변 영역을 지나는 모습을 개략적으로 도시한 것이다. 게스트 디바이스(300)와 호스트 디바이스(100)가 서로 주변 영역을 지날 때에, 호스트 디바이스(100) 또는 게스트 디바이스(300)에서는 크게 두 가지 기능이 작동할 수 있는데, 그 중 하나는 주변 영역에 임의의 디바이스가 진입하였는지 또는 이탈하였는지를 확인하는 모니터링(monitoring) 기능, 다른 하나는 주변 영역 내 진입한 게스트 디바이스와 거리가 얼마나 떨어져 있는지를 확인하는 레인징(ranging) 기능이다.
이 중 모니터링 기능은 호스트 디바이스(100) 또는 게스트 디바이스(300)의 백그라운드에서 OS에 의해 실행될 수 있으며, 근거리 네트워크 내에 연결 가능한 디바이스가 존재하는지를 탐색하는 것으로 이해될 수 있다.
한편, 레인징 기능은 호스트 디바이스(100) 또는 게스트 디바이스(300) 내 설치되어 있는 어플리케이션을 통하여 실행될 수 있으며, 근접한 디바이스와의 거리는 각각이 수신한 애드 패킷 내 포함되어 있는 RSSI 및 Measured Power 값으로부터 연산될 수 있다.
예를 들어, 두 디바이스들 간 거리는 다음의 식을 통하여 추정될 수 있다.
Figure pat00001
또 다른 한편, 두 디바이스들 간 거리의 추정은 RSSI와 거리 사이에 사전에 매핑된 데이터를 기초로 이루어질 수 있으며, 예를 들어 RSSI가 a1값일 경우에는 b1미터, a2값일 경우에는 b2미터 … 이와 같이 사전에 측정되었거나 알려져 있는 매핑데이터를 기초로 추정될 수 있다. 이 경우 두 디바이스들 간 거리를 추정하는 데에는 RSSI만 필요하며, Measure Power 값은 필요하지 않을 수 있다.
도 6은 호스트 디바이스(100) 주변에 존재하였던 근접 사용자들에 대한 정보, 즉 근접 사용자 정보가 표시된 일 실시예를 도시한 것이다. 서비스 서버(200)는 데이터베이스화 된 근접상황정보를 기초로 하여 호스트 디바이스(100)에 도 6과 같은 표 또는 이와 상응하는 형태의 정보를 제공할 수 있다. 도 6의 표를 참고할 때, 호스트 디바이스(100)의 주변에는 게스트A 내지 게스트D가 2021년 3월 7일에 존재하였으며, 각 게스트들이 주변에 존재하였던 시간대가 함께 표시되고 있음을 확인할 수 있다. 마찬가지로 게스트A, 게스트B, 및 게스트D가 2021년 3월 8일에 호스트 디바이스(100) 주변에 존재하였음을 알 수 있다.
참고로, 도 6에 도시되어 있는 표는 호스트 디바이스(100) 또는 게스트 디바이스(300)가 레인징 기능 없이 모니터링 기능만을 활용한 것을 전제로 한 것이며, 모니터링 기능만 활용하였으므로 주변의 게스트 디바이스들이 근접 범위에 진입 및 이탈한 시간만 기록되어 있음을 알 수 있다.
한편, 본 발명에 따른 서비스 구현에 있어서는 사용자 디바이스(100) 내에 구비되어 있는 비콘 모듈이 자연스럽게 활용될 수 있는데, 특히 사용자 디바이스(100)가 스마트폰일 경우 OS 상에서 사용자의 위치정보 서비스기능 카테고리에 종속되는 비콘 모듈이 구동될 수 있다. 스마트폰 상에서는 이처럼 비콘 모듈이 활용될 수 있으나, 본 발명에 따른 서비스를 구현함에 있어서는 GPS 절대위치 정보는 활용되지 않도록 할 수도 있다. GPS 절대위치 정보에 대한 보안화 처리는 본 발명에 따른 서비스를 개인정보보호 측면에서 타 서비스와 차별화 할 수 있는 하나의 특징으로 볼 수 있다.
다만, 본 발명에 따른 서비스를 구현함에 있어서는 호스트와 게스트, 또는 사용자 디바이스들끼리의 만남을 기록하거나 표시하고자 할 때에 위치정보를 포함시켜 기록 또는 표시할 필요성도 있을 수 있다. 이 경우 GPS 정보는 사용자 개인이 자신의 정보만을 자신의 사용자 디바이스 상에서만 확인할 수 있게 처리될 수 있다. 즉, GPS 절대위치 정보는 본인의 스마트폰에서만 볼 수 있게 한 것이다. 구체적으로, 호스트 디바이스(100)와 게스트 디바이스(300) 간 근접성을 확인할 때에 상기 호스트 디바이스(100)가 획득한 GPS 절대위치 정보, 또는 게스트 디바이스(300)가 획득한 GPS 절대위치 정보는 서비스 서버(200) 측으로 전송되지 않도록 구현할 수 있으며, 호스트 디바이스(100) 또는 게스트 디바이스(300)와 같은 사용자 디바이스 상에서만 저장되도록 하고, 추후 사용자들에게 어떤 근접 사용자들이 존재했었는지를 표시할 때에만 저장된 GPS 절대위치 정보가 활용되도록 할 수 있다.
다른 한편, 사용자 디바이스 내에 GPS 절대위치 정보를 누적 저장하는 것이 사용자 디바이스 내 저장공간 부족을 야기할 수 있다면, 사용자 디바이스에 의해 획득된 GPS 절대위치 정보를 암호화 하여 서비스 서버(200) 또는 이에 상응하는 다른 구성(예. 별도의 전용 서버)으로 공유시키고, 추후 사용자들에게 근접 사용자들을 표시할 때에만 이 정보를 받아 복호화 시켜 활용하게 할 수도 있다.
이와 같이 GPS 절대위치 정보를 본인 사용자 디바이스 외에 타인이 볼 수 없도록 외부와 공유 자체를 막거나 또는 보안화 처리를 하는 것은 GPS 절대위치 정보를 자신 이외의 누구도 알 수 없게 하고 특히 서비스 서버(200)를 운영하는 서비스 제공자도 알 수 없게 함으로써 기존 GPS 절대위치 정보를 활용하여 서비스를 제공하는 타 서비스 대비 보안성 측면에서의 강점을 가지게 한다.
정리하면, 호스트 디바이스(100)의 사용자 입장에서는 자신의 GPS 절대위치 정보를 기반으로 근접 사용자들과 어느 위치에서 만남이 있었는지를 알 수 있고, 경우에 따라 게스트 디바이스(300)도 상대방의 위치를 간접적으로 인지할 수 있겠으나, 본 발명에 따른 서비스 내지 이를 위한 어플리케이션 상에서는 상대방의 GPS 절대위치 정보를 취득하지 않는다는 점, 또한 자신의 취득한 GPS 절대위치 정보를 외부와 공유하지 않는다는 점에서 개인정보보호 면에서 장점이 있다 할 것이다.
도 7은 호스트 디바이스(100A)가 서비스 서버(200) 측으로 암호화 된 GPS 절대위치 정보를 공유하는 모습을 도시한 것이다. 호스트 디바이스(100A)는 주변의 게스트 디바이스(300)들로 애드 패킷을 브로드캐스팅 할 때에 자신의 절대위치 정보(예. GPS 정보)를 자체적으로 획득 및 저장할 수 있으며, 이렇게 획득된 절대위치 정보는 상기 호스트 디바이스(100A) 상에서 보안키로 인코딩된 뒤 서비스 서버(200) 측에 공유될 수 있다. 이 경우 서비스 서버(200)는 암호화 된 절대위치 정보를 수신하기는 하였으나 이 정보가 어떤 위치 정보를 가지고 있는지에 대해서는 알 수 없으며, 단지 암호화 된 절대위치 정보를 저장하는 역할만 수행하게 된다. 한편, 서비스 서버(200)는 이렇게 저장해 두었던 암호화 된 절대위치 정보를 추후 상기 호스트 디바이스(100A)에 다시 전송해 줌으로써 상기 절대위치 정보가 상기 호스트 디바이스(100A) 상에서 해석되어 활용 가능하게 할 수 있다.
한편, 도 8은 근접 사용자 정보에 위치정보가 더 포함된 표를 도시한 것이다. 호스트 디바이스(100)의 화면에는 도 8에 도시되어 있는 것과 같이 주변에 근접하여 존재하고 있었던 게스트 디바이스들(게스트들), 각 게스트 디바이스들이 근접 존재했던 시간, 그리고 각 게스트 디바이스들이 근접하였을 때 호스트 디바이스(100)가 위치하고 있던 장소(위치정보)가 더 표시될 수 있다. 상기 위치정보는 호스트 디바이스(100)가 자체적으로 기록하고 있던 GPS 정보를 참고한 것일 수 있으며, 또는 상기 위치정보는 서비스 서버(200)로 근접상황정보가 업로드 될 시 게스트 디바이스에 의해 함께 전달된 것일 수 있다.
한편, 호스트 디바이스(100)의 화면에 표시되는 근접 사용자 정보에는 GPS 정보 그 자체가 표시될 수도 있겠으나, GPS 정보는 일반적으로 사람들이 알아보기 어려운 숫자 및 문자로 이루어져 있으므로 GPS 정보 그 자체보다는 해당 위치에 대응되는 주요 랜드마크가 대신 표시되도록 구현할 수도 있다. 도 8에는 이러한 예시들이 도시되어 있는데, 예를 들어 강남역, △△빌딩, □□식당, ○○아파트와 같이 일반 사람들이 알아보기 쉬운 지명, 건물명 등이 대신 표시된 모습이 도시되어 있다. 이러한 랜드마크들은 상기 GPS 정보에 미리 매핑되어 있을 수 있다. 즉, 특정 범위 내에서의 GPS 정보가 수신되었을 시에는 어떤 랜드마크가 표시될 수 있도록 미리 정해져 있을 수 있는 것이다.
다른 한편, 호스트 디바이스(100)의 화면에는 게스트가 근접하여 존재하고 있던 주변 랜드마크 뿐만 아니라, 상기 랜드마크로부터 얼마만큼 거리가 떨어져 있는지, 즉 랜드마크로부터의 거리정보도 함께 표시되도록 구현할 수 있다. 이 때 거리정보는 지도정보 상에서 상기 GPS 정보를 기초로 연산함으로써 구할 수 있으며, GPS 정보의 상대적으로 낮은 정확도를 고려할 때 상기 거리정보는 랜드마크로부터 반경 수십 미터 이내, 반경 수백미터 이내 등과 같이 대략적인 위치만을 쉽게 인지할 수 있도록 10m, 100m 스케일의 단위로 표시되도록 할 수 있다.
도 9는 호스트 디바이스(100) 상에 표시되는 근접 사용자 정보의 또 다른 실시예이며, 여기서는 호스트 디바이스(100)와 게스트 디바이스들 사이에 얼마나 떨어져 있는지에 대한 근접거리정보가 더 표시되는 것을 특징으로 한다. 도 9와 같은 근접 사용자 정보를 제공하기 위해서는 호스트 디바이스(100) 또는 게스트 디바이스(300)의 레인징 기능이 활성화 중일 것을 요하며, 디바이스들 간 근접거리는 앞서 소개한 RSSI 및 Measured Power를 활용한 거리 연산 수식을 통하여 구할 수 있다.
도 10은 호스트 디바이스(100)에 제공되는 근접 사용자 정보의 또 다른 실시예를 도시한 것이며, 여기서는 호스트 디바이스(100) 주변에 존재하던 모든 게스트들을 표시하지 않고 일부 게스트들만 선별하여 표시하는 것을 특징으로 한다.
도 10을 참고할 때, 호스트 디바이스(100)에 표시되는 근접 사용자 정보에는 “근접시간대가 유사한 게스트 목록”, “근접시간이 긴 게스트 목록”, “근접거리가 가까운 게스트 목록” 과 같이 특정 파라미터를 기준으로 관련성이 높은 게스트들 만이 선별되어 포함될 수 있다. 이러한 근접 사용자 선별은 상기 호스트 디바이스(100)가 서비스 서버(200)로부터 수신한 로 데이터(Raw Data)를 기초로 할 수도 있으며, 또는 서비스 서버(200)가 직접 선별한 뒤 그 결과만을 호스트 디바이스(100)로 전송하도록 구현할 수도 있다. 또한, 특정 파라미터를 기준으로 관련성이 높은지 여부는 특정 파라미터 값이 기 설정해 둔 범위의 값에 포함되는지 여부에 따라 결정될 수 있다.
다른 한편, 도 10을 참고할 때 호스트 디바이스(100)에 표시되는 근접 사용자 정보에는 관련성이 높은 게스트 목록뿐만 아니라, 관련성을 나타내는 수치들이 함께 표시될 수 있다. 예를 들어 근접시간대가 유사한 게스트 목록에서는 호스트 디바이스(100)와 게스트 디바이스 간 서로 근접해 있는 시간대가 몇% 중복되는지, 같은 장소에서 만날 확률이 얼마나 높은지 등을 나타내는 수치가 표시될 수 있다. 또한, 근접시간이 유사한 게스트 목록에서는 상호 간 근접해 있는 시간이 평균적으로 몇 분인지, 근접거리가 가까운 게스트 목록에서는 상호 간 근접해 있을 때 평균적으로 얼마만큼의 거리만큼 떨어져 있는지를 수치로 표시함으로써 호스트 디바이스(100)의 사용자가 어느 게스트와 네트워킹 할 것인지를 결정하는 데에 참고하도록 할 수 있다.
이상 도 6 내지 도 10을 참고하여 호스트 디바이스(100)에 표시되는 근접 사용자 정보의 다양한 실시예들을 살펴 보았다.
이하에서는 근접 사용자 네트워킹 서비스를 제공할 때에 발생할 수 있는 문제점, 특히 복수의 디바이스들이 근거리 통신망 내에 모여있을 때 첫 번째 디바이스가 브로드캐스팅 한 애드패킷은 두 번째 디바이스에 닿았을 때 알림을 발생시키지만, 이를 수신한 두 번째 디바이스가 다시 브로드캐스팅 한 애드패킷은 다른 디바이스에 닿았을 때 알림을 발생시키지 않는 문제에 대해 논하기로 하며, 근접 사용자 네트워킹 시 디바이스 감지율을 개선시킬 수 있는 방법 및 시스템에 대해 설명하기로 한다.
도 11은 위에서 언급한 문제점을 이해하기 쉽게 도시한 것으로, 도 11(a)에는 호스트 디바이스(100)가 브로드캐스팅 한 제1 애드 패킷이 게스트 디바이스A(300A) 및 게스트 디바이스B(300B)에 수신되었을 때 게스트 디바이스들에서 알림이 정상적으로 발생되는 모습, 특히 각 게스트 디바이스들에서 어플리케이션이 백그라운드에서 구동 중일 때에 백그라운드 알림이 정상적으로 발생되는 모습을 도시한 것이다.
한편, 도 11(b)에는 도 11(a)의 상황을 전제로 다시 게스트 디바이스A(300A)가 주변 디바이스들로 제2 애드 패킷을 브로드캐스팅 하는 상황을 도시한 것인데, 이 경우에는 제2 애드 패킷을 수신한 디바이스들, 즉 호스트 디바이스(100)와 게스트 디바이스B(300B)에서 백그라운드 알림이 정상적으로 발생되지 않는 문제점이 있다.
도 11(b)에서와 같은 문제점이 생기는 이유는 제1 애드 패킷 내에 포함되어 있는 UUID와 제2 애드 패킷 내에 포함되어 있는 UUID가 동일한 값을 가지기 때문인데, 동일한 UUID의 애드 패킷이 디바이스 상호 간에 송수신 되면 디바이스가 이를 동일한 애드 패킷으로 간주할 수 있어 인식을 못하거나 또는 이전에 수신한 애드 패킷을 어떤 다른 사정에 의해 다시 한번 수신한 걸로 인식할 수 있기 때문에 백그라운드 알림이 정상적으로 발생되지 못하는 것이다.
이와 같은 문제적 상황을 해결하기 위해, 본 발명에서는 근접 사용자 네트워킹 서비스 제공 시 디바이스들로 하여금 애드 패킷을 생성할 시 UUID를 다른 값으로 바꾸어 생성하는 방법을 제안한다. 즉, 일반적으로 하나의 서비스를 식별하기 위해서는 하나의 UUID가 쓰이는데, 본 발명에서는 복수 개의 UUID 값을 하나의 서비스를 식별하기 위한 용도로 지정해 두고, 각 디바이스들이 UUID의 기 사용 여부를 관리하게 함으로써 애드 패킷에 쓰이지 않은, 또는 애드 패킷에 쓰인지 오래 된 UUID값을 사용하게 하는 방법을 제안한다.
예를 들어, t13dddh1-63e4-318d-86ghh-184ege52ss7e가 현재 서비스를 식별하기 위한 UUID라 가정할 때, UUID의 가장 마지막 두 자리 값이 70부터 7d까지, 그리고 7f로 끝나는 UUID 15개 값을 추가적으로 사용함으로써 애드 패킷 내 동일 UUID를 사용함에 따른 위 문제점을 해결할 수 있다. 더 구체적으로, 각 디바이스에 설치되어 있는 어플리케이션에서는 근접 네트워크(블루투스 네트워크) 영역 내에 다른 디바이스가 들어왔는지 혹은 영역 밖으로 나갔는지를 모니터링 할 수 있는데, 다른 디바이스가 근접 네트워크 영역 내에 들어올 때 브로드캐스팅 한 애드 패킷의 UUID, 그리고 영역 밖으로 나간 디바이스가 브로드캐스팅 한 UUID를 어플리케이션이 자체적으로 관리를 하되, 해당 어플리케이션이 브로드캐스팅을 위한 애드 패킷을 생성할 때에는 현재 근접 네트워크 영역 내에 들어와 있는 디바이스가 브로드캐스팅 한 UUID를 제외한 다른 값의 UUID를 활용하게 함으로써 주변의 다른 디바이스들로 브로드캐스팅 하게 되는 애드 패킷이 타 디바이스들에 의해 새로운 UUID로 인식되도록, 그리고 이를 통해 백그라운드 알림이 성공적으로 발생되도록 유도할 수 있다.
한편, 경우에 따라서는 근접 네트워크 영역 내에 들어와 있는 디바이스의 숫자가 많아 가용 UUID가 모두 소진되어 있는 상태가 발생할 수도 있는데, 이 경우 어플리케이션에서는 애드 패킷을 생성할 시 이미 소진되어 있는 UUID들 중 어느 하나의 값을 랜덤하게 선택하여 애드 패킷 내에 포함시키도록 할 수도 있다. 이렇게 여러 개의 UUID값들 중 하나를 랜덤하게 선택하면 그나마 애드 패킷들의 UUID 중복 가능성을 낮춤으로써 다수 디바이스들의 백그라운드 알림을 발생시킬 수 있는 효과가 있다.
도 12는 앞서 언급한 문제점을 해결하기 위한 방법을 순서에 따라 도시한 것으로, 근거리 통신망 내에 들어온 디바이스의 UUID, 그리고 근거리 통신망 바깥으로 벗어난 디바이스의 UUID를 저장해 둠으로써 특정 디바이스가 애드 패킷을 생성할 때에 중복될 가능성이 가장 적은 UUID를 활용하게 하는 것을 특징으로 한다.
도 12를 참고할 때, 가장 먼저 호스트 디바이스(100)는 제1 애드 패킷을 생성(S401)하여 각각 게스트 디바이스A(300A) 및 게스트 디바이스B(300B)에 브로드캐스팅(S402) 할 수 있다. 엄밀하게는 호스트 디바이스(100)가 브로드캐스팅 한 제1 애드 패킷을 각 게스트 디바이스들이 수신하는 형태일 수 있다.
이후, 게스트 디바이스A(300A)는 앞서 수신한 제1 애드 패킷 내 포함된 UUID를 자체 저장수단에 기록(S403)해 둘 수 있다. 즉, 호스트 디바이스(100)가 현재 시점에 제1 애드 패킷을 브로드캐스팅 할 때에 사용한 UUID 값을 기록해 둠으로써 추후 해당 UUID 값은 애드 패킷 생성 시 배제를 시키기 위하여 별도 저장수단에 기록을 해 둘 수 있다. 한편, 이 기록 단계는 게스트 디바이스B(300B)에서도 동일하게 진행될 수 있다.
UUID의 기록 이후, 게스트 디바이스A(300A)는 자체적으로 제2 애드 패킷을 생성할 수 있는데, 이 때 게스트 디바이스A(300A)는 앞서 기록되어 있는 내용을 참고하여 상기 제1 애드 패킷에 사용된 UUID를 제외한 다른 UUID값을 포함시킨 채 제2 애드 패킷을 생성(S404)할 수 있다. 여기서 제 1 애드 패킷의 UUID를 제외한 UUID가 포함된 제 2 애드 패킷을 생성하는 방법으로는 제 1 애드 패킷의 UUID를 제외한 임의의 UUID를 선택하는 방법 이외에도 LRU(Least Recently Used) 방식이 채택될 수 있다. LRU 방식은 교체될 UUID 중 제일 오래된 것이 선택되는 방식을 말하며, 다시 말해 제 1 애드 패킷의 UUID를 제외한 UUID 중 근거리 통신망으로부터 벗어난 디바이스의 애드 패킷에 대응되는 것, 혹은 근거리 통신망 내로 들어온 디바이스의 애드 패킷에 대응되는 것들 중 가장 오랜 시간이 경과된 것이 선택되는 방식이 존재할 수 있다.
다음으로, 게스트 디바이스A(300A)는 제2 애드 패킷을 외부로 브로드캐스팅 하고, 호스트 디바이스(100) 및 게스트 디바이스B(300B)가 이를 수신할 수 있는데, 앞서와 마찬가지로 상기 호스트 디바이스(100) 및 게스트 디바이스B(300B)는 제2 애드 패킷에 포함된 UUID를 호스트 디바이스(100), 게스트 디바이스B(300B)가 자체적으로 구비하고 있는 저장 수단에 기록(S407)해 둘 수 있다. 즉, 제1 애드 패킷에 활용된 UUID에 이어서 제2 애드 패킷에 활용된 UUID까지는 이미 활용이 된 것이므로, 복수 개의 UUID값들 중 위 기록된 것을 제외한 나머지 UUID 값을 이용하여 또 다른 애드 패킷을 생성하기 위해 UUID값들을 관리하는 것이다.
한편, 호스트 디바이스(100) 및 게스트 디바이스B(300B)에서는 중복되지 않는 UUID 값을 가지는 애드 패킷을 수신하였으므로 어플리케이션이 백그라운드 상태에서 구동 중이라 할지라도 성공적으로 백그라운드 알림이 발생될 수 있다.
이상 근접 네트워킹 시 근접 디바이스의 감지율을 향상시킬 수 있는 방법론 및 시스템에 대해 살펴 보았다.
본 발명에 따르는 서비스를 이용하는 사용자로서는 하루, 일주일, 한달 등등 정해진 기간 동안 공간적으로 근접한 공간에 있었던 타 사용자들(게스트들)의 목록을 저장해 둔 채 언제라도 이들 게스트들과 온라인 네트워킹, 또는 오프라인 네트워킹이 가능한 환경을 가질 수 있는 효과가 있다. 이는 상호 간 전혀 알지 못하는 회원들을 임의로 매칭시켜주는 기존의 온라인 채팅 서비스와 차별화된 점으로 볼 수 있다. 특히 다수의 온라인 채팅 서비스의 경우 사용자들이 자발적으로 기입하는 정보들이 대부분 거짓인 경우가 많고 개인정보보호에 위배될 수 있어 각 사용자들에 대한 신원이 불확실함에 따라 악용 사례가 많은 반면, 본 발명에 따른 서비스는 서로 같은 공간에 존재하였던 사람들을 대상으로 임의의 매칭이 이루어질 수 있게 함으로써 위와 같은 문제들을 조금이나마 해소시킬 수 있는 효과가 있다.
또한 본 발명을 활용한 네트워킹 회원들의 확장은 새로이 네트워킹 된 회원들을 중심으로 지속적으로 이루어질 수 있으며, 예를 들어 한 대학에서 서로 만난 적이 있는 친구들이 10명이라고 가정할 때 이 친구들이 다른 학교에 가서 또 다른 10명을 만나면 결과적으로 100명의 친구들과의 네트워킹이 형성될 수도 있다.
또 다른 한편, 서비스 서버(200) 내에서 데이터베이스화 하여 가지고 있게 될 근접상황정보 또는 근접 사용자 정보들은 음성통화, 비디오 채팅, 그룹미팅 환경을 구현하는 데에도 활용될 수 있다. 예를 들어 불특정 다수회원을 대상으로 하는 랜덤 동영상 채팅을 할 수 있는 환경을 구현하는 경우, 불특정 다수회원을 오늘 혹은 최근 만난 자들로 필터링하여 한정한다면 만남의 기억을 기반으로 고품질의 매칭 혹은 미팅 서비스를 제공할 수 있게 될 것이다.
이상 근접 사용자 네트워킹 서비스 제공 방법 및 이를 위한 시스템 에 대해 살펴보았다. 한편, 본 발명은 상술한 특정의 실시예 및 응용예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 구별되어 이해되어서는 안 될 것이다.
100 호스트 디바이스
200 서비스 서버
300 게스트 디바이스

Claims (5)

  1. 근접 사용자 네트워킹 시 디바이스 감지율을 개선시킬 수 있는 방법에 있어서,
    제2 사용자 디바이스로부터 제2 애드 패킷이 수신되면, 제1 사용자 디바이스에 설치된 어플리케이션이, 상기 제1 애드 패킷 내 포함된 UUID값을 획득하는 단계;
    상기 어플리케이션이, 상기 획득한 UUID값을 소진 UUID값으로 기록하는 단계; 및
    상기 어플리케이션이, 상기 소진 UUID값으로 기록된 UUID값을 제외한 다른 UUID값을 이용하여 애드 패킷을 생성하는 단계;
    를 포함하는,
    근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법.
  2. 제1항에 있어서,
    상기 어플리케이션이, 상기 제1 사용자 디바이스의 근거리 통신망으로부터 벗어나는 사용자 디바이스를 모니터링하는 단계; 및
    상기 어플리케이션이, 상기 근거리 통신망으로부터 벗어난 사용자 디바이스에 대응되는 UUID값을 가용 UUID값으로 갱신하는 단계;
    를 더 포함하는,
    근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법.
  3. 제1항에 있어서,
    상기 UUID값은 서로 다른 값을 가지는 16개까지 활용 가능한 것을 특징으로 하는,
    근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법.
  4. 제1항에 있어서,
    상기 어플리케이션에 의해 생성되는 애드 패킷은, 대화방, 커뮤니티, 또는 사용자의 근접 존재를 타 사용자 디바이스에 알리기 위한 것을 특징으로 하는,
    근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법.
  5. 제1항에 있어서,
    가용 UUID값이 존재하지 않는 경우, 상기 어플리케이션이 소진 UUID값들 중 하나를 랜덤으로 선택하여 애드 패킷을 생성하는 것을 특징으로 하는,
    근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법.

KR1020210168205A 2021-11-30 2021-11-30 근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법 및 이를 위한 시스템 KR102632854B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210168205A KR102632854B1 (ko) 2021-11-30 2021-11-30 근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법 및 이를 위한 시스템
KR1020240013789A KR20240018551A (ko) 2021-11-30 2024-01-30 근거리 통신망 내에서의 근접 사용자 네트워킹 환경을 개선시키는 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210168205A KR102632854B1 (ko) 2021-11-30 2021-11-30 근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법 및 이를 위한 시스템

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020240013789A Division KR20240018551A (ko) 2021-11-30 2024-01-30 근거리 통신망 내에서의 근접 사용자 네트워킹 환경을 개선시키는 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20230080757A true KR20230080757A (ko) 2023-06-07
KR102632854B1 KR102632854B1 (ko) 2024-02-06

Family

ID=86760869

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020210168205A KR102632854B1 (ko) 2021-11-30 2021-11-30 근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법 및 이를 위한 시스템
KR1020240013789A KR20240018551A (ko) 2021-11-30 2024-01-30 근거리 통신망 내에서의 근접 사용자 네트워킹 환경을 개선시키는 방법 및 시스템

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020240013789A KR20240018551A (ko) 2021-11-30 2024-01-30 근거리 통신망 내에서의 근접 사용자 네트워킹 환경을 개선시키는 방법 및 시스템

Country Status (1)

Country Link
KR (2) KR102632854B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101267493B1 (ko) * 2011-12-29 2013-05-31 순천향대학교 산학협력단 모바일 애드 혹 네트워크용 아이피 역추적 시스템 및 그 역추적 방법
KR20160028703A (ko) * 2014-09-04 2016-03-14 인포뱅크 주식회사 근거리 무선 통신 장치를 이용한 위치 추적 서비스 제공 방법, 그를 이용한 서버 장치 및 시스템
KR20170059807A (ko) * 2015-11-23 2017-05-31 조수연 위치 정보를 이용한 그룹별 모니터링 시스템 및 그 방법
KR102138647B1 (ko) 2020-04-13 2020-07-28 주식회사 화컴 근거리 브로드캐스팅을 활용한 커뮤니티 서비스 제공 방법 및 이를 위한 시스템
KR102226863B1 (ko) * 2020-06-11 2021-03-11 주식회사 화컴 근거리 브로드캐스팅을 활용한 커뮤니티 서비스 제공 방법 및 이를 위한 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101267493B1 (ko) * 2011-12-29 2013-05-31 순천향대학교 산학협력단 모바일 애드 혹 네트워크용 아이피 역추적 시스템 및 그 역추적 방법
KR20160028703A (ko) * 2014-09-04 2016-03-14 인포뱅크 주식회사 근거리 무선 통신 장치를 이용한 위치 추적 서비스 제공 방법, 그를 이용한 서버 장치 및 시스템
KR20170059807A (ko) * 2015-11-23 2017-05-31 조수연 위치 정보를 이용한 그룹별 모니터링 시스템 및 그 방법
KR102138647B1 (ko) 2020-04-13 2020-07-28 주식회사 화컴 근거리 브로드캐스팅을 활용한 커뮤니티 서비스 제공 방법 및 이를 위한 시스템
KR102226863B1 (ko) * 2020-06-11 2021-03-11 주식회사 화컴 근거리 브로드캐스팅을 활용한 커뮤니티 서비스 제공 방법 및 이를 위한 시스템

Also Published As

Publication number Publication date
KR102632854B1 (ko) 2024-02-06
KR20240018551A (ko) 2024-02-13

Similar Documents

Publication Publication Date Title
US20220020234A1 (en) Methods and systems for access control and awareness management
US11595777B2 (en) Electronic location identification and tracking system with beacon clustering
US10789794B2 (en) Electronic access control and location tracking system
CN103797858B (zh) 用于注册网络信息串的系统和方法
US20190073849A1 (en) Electronic identification, location tracking, communication and notification system with beacon clustering
JP6023718B2 (ja) 仮想空間の生成を含む通信システム及び方法
US20210312733A1 (en) Electronic indentification, location tracking, communication and notification system with beacon clusering
US20210266281A1 (en) Method And Apparatus For Data Sharing
KR102226863B1 (ko) 근거리 브로드캐스팅을 활용한 커뮤니티 서비스 제공 방법 및 이를 위한 시스템
US20220132276A1 (en) Method and system for providing community service using short-range broadcasting
CN106164950A (zh) 对群组的跨客户端订阅
CA3077047A1 (en) Systems and methods for location-based application management
US20240073666A1 (en) Method for providing proximal user networking service by means of near-field communication network, and system therefor
KR20230080757A (ko) 근접 사용자 네트워킹 시 디바이스 감지율을 개선시키는 방법 및 이를 위한 시스템
AU2018101270A4 (en) Incident monitoring method and system
JP2015210784A (ja) Lan接続システム
EP3631706A1 (en) Scheduling system and method
KR20210012628A (ko) 기록매체
KR20130081194A (ko) 전자 장치에서 등록되지 않은 근접 타겟을 검출하는 방법 및 장치

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant