KR20120113242A - 위치 결정 하드웨어에 독립적으로 모바일 디바이스들의 위치를 결정하는 방법 및 시스템 - Google Patents

위치 결정 하드웨어에 독립적으로 모바일 디바이스들의 위치를 결정하는 방법 및 시스템 Download PDF

Info

Publication number
KR20120113242A
KR20120113242A KR1020127020011A KR20127020011A KR20120113242A KR 20120113242 A KR20120113242 A KR 20120113242A KR 1020127020011 A KR1020127020011 A KR 1020127020011A KR 20127020011 A KR20127020011 A KR 20127020011A KR 20120113242 A KR20120113242 A KR 20120113242A
Authority
KR
South Korea
Prior art keywords
location
mobile device
mobile devices
mobile
location information
Prior art date
Application number
KR1020127020011A
Other languages
English (en)
Inventor
브루스 케이 잭슨
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20120113242A publication Critical patent/KR20120113242A/ko

Links

Images

Classifications

    • 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
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-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/0284Relative positioning
    • G01S5/0289Relative positioning of multiple transceivers, e.g. in ad hoc networks
    • 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/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

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)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)
  • Telephone Function (AREA)

Abstract

구현들은 모바일 디바이스의 위치를 결정하기 위한 시스템 및 방법에 관한 것이다. 모바일 디바이스는 식별 정보를 위한 서비스 범위 내에 타 모바일 디바이스들에 질의할 수 있고 식별 정보를 원격 서버에 그 안에 저장을 위해 전송할 수 있다. 원격 서버 (115) 는 식별 정보에 대응하는 타 모바일 디바이스들로부터 위치 정보를 수신할 수 있다. 상기 모바일 디바이스는 원격 서버에 위치 질의를 전송할 수 있고, 이 원격 서버는 타 모바일 디바이스들의 식별 및/또는 위치 정보에 기초하여 모바일 디바이스의 위치를 결정 또는 계산할 수 있다. 원격 서버는 연관된 모바일 애플리케이션들에서의 사용을 위해 모바일 디바이스에 모바일 디바이스의 위치를 제공할 수 있다.

Description

위치 결정 하드웨어에 독립적으로 모바일 디바이스들의 위치를 결정하는 방법 및 시스템{SYSTEMS AND METHODS FOR DETERMINING THE LOCATION OF MOBILE DEVICES INDEPENDENT OF LOCATION FIXING HARDWARE}
본 개시는 일반적으로 모바일 디바이스의 위치를 결정하는 방법 및 장치에 관한 것이고, 더 상세하게는 모바일 디바이스들에 존재하는 위치 결정 하드웨어에 독립적으로 모바일 디바이스들에 위치 서비스들을 제공하는 기법 및 플랫폼에 관한 것이다.
셀룰러 텔레폰 기술은 오늘날 사회에서 우세한 통신 방식이 되었다. 셀룰러 텔레폰들은 셀룰러 텔레폰 사용자를 위한 폭넓게 다양한 특징들을 포함하는 정도까지 진보하였다. 하나의 그러한 특징은 셀룰러 텔레폰들을 위한 위치 결정이다. 현재, 많은 타입의 셀룰러 텔레폰들은 GPS (Global Positioning System) 과 같은 위치 결정 하드웨어 (location fixing hardware) 를 포함한다. 결과적으로, 셀룰러 텔레폰들의 비용은 진보 특징들의 포함에 기인하여 상승하였다. 셀룰러 텔레폰들은, 위치 결정 (location fixing) 을 지원하기 위하여, GPS 수신기 및 소프트웨어와 같은 하드웨어를 포함하도록 제조되는 것이 요구된다.
또한, 셀룰러 텔레폰들은 위치를 결정하는 능력에 있어서 제한될 수도 있다. 예를 들면, GPS 가능 텔레폰들은 GPS 신호를 수신하기 위하여, 하늘의 차단되지 않은 조망을 가질 것이 요구된다. 그래서, 종종 GPS 가능 텔레폰들은 실내에 있거나 또는 나무에 의해 막혀진 경우 텔레폰의 위치를 결정할 수 없게될 것이다. 따라서, 모바일 디바이스들에 비용 효율적이고 유연한 위치 서비스들 제공하는 방법 및 시스템들이 필요하다.
요약
그러한 양태들의 기본적인 이해를 제공하기 위하여 하나 이상의 양태들의 간략한 요약이 다음에 제공된다. 이 요약은 모든 고려되는 양태들의 광범위한 개관이 아니고, 모든 양태들의 핵심적인 또는 임계적인 엘리먼트들을 식별하지도 않고 임의의 또는 모든 양태들의 범위를 기술하지도 않도록 의도된다. 그의 유일한 목적은 하나 이상의 양태들의 몇몇 개념들을 간략화된 형태로 나중에 제시되는 더 상세한 설명의 서두로서 제공하는 것이다.
하나 이상의 구현들에 따르면, 위치 서비스를 가능하게 하기 위한 시스템은 서버를 포함한다. 서버는 모바일 디바이스들의 세트를 위한 위치 정보의 레코드를 유지하도록 구성될 수 있다. 각 모바일 디바이스를 위한 위치 정보는 각 모바일 디바이스의 식별과 연관된다. 서버는 모바일 디바이스로부터 위치에 대한 요청을 수신하도록 구성될 수 있다. 그 요청은 모바일 디바이스의 부근 내의 타 모바일 디바이스들을 위한 식별들의 세트를 포함한다. 서버는 수신된 식별들의 세트와 연관된, 레코드로부터, 이용가능한 위치 정보를 이용하여 모바일 디바이스의 위치를 결정하도록 구성되고, 모바일 디바이스에 결정된 위치를 제공하도록 구성된다.
또한, 하나 이상의 구현들에 따르면, 위치 서비스를 가능하게 하는 방법은 모바일 디바이스들의 세트를 위한 위치 정보의 레코드를 유지하는 것을 포함할 수 있다. 각 모바일 디바이스를 위한 위치 정보는 각 모바일 디바이스의 식별과 연관된다. 방법은 모바일 디바이스로부터 위치에 대한 요청을 수신하는 것을 더 포함할 수 있다. 그 요청은 모바일 디바이스의 부근 내의 타 모바일 디바이스들을 위한 식별들의 세트를 포함한다. 방법은 수신된 식별들의 세트와 연관된, 레코드로부터, 이용가능한 위치 정보를 이용하여 모바일 디바이스의 위치를 결정하는 것과, 모바일 디바이스에 결정된 위치를 제공하는 것을 더 포함할 수 있다.
또한, 하나 이상의 구현들에 따르면, 위치 서비스를 가능하게 하기 위한 시스템은 모바일 디바이스들의 세트를 위한 위치 정보의 레코드를 유지하기 위한 수단을 포함할 수 있다. 각 모바일 디바이스를 위한 위치 정보는 각 모바일 디바이스의 식별과 연관된다. 시스템은 또한 모바일 디바이스로부터 위치에 대한 요청을 수신하기 위한 수단 및 모바일 디바이스에 위치를 제공하기 위한 수단을 포함할 수 있다. 그 요청은 모바일 디바이스의 부근 내의 타 모바일 디바이스들을 위한 식별들의 세트를 포함한다. 시스템은 또한 수신된 식별들의 세트와 연관된, 레코드로부터, 이용가능한 위치 정보를 이용하여 모바일 디바이스의 위치를 결정하기 위한 수단을 포함할 수 있다.
또한, 하나 이상의 구현들에 따르면, 컴퓨터 프로그램 제품은 컴퓨터에 의해 실행될 때 컴퓨터가 위치 서비스들을 수행하게 하는 명령들을 저장하는 컴퓨터 판독가능 매체를 포함할 수 있다. 명령들은 컴퓨터로 하여금 모바일 디바이스들의 세트를 위한 위치 정보의 레코드를 유지하게 하기 위한 적어도 하나의 명령을 포함할 수 있다. 각 모바일 디바이스를 위한 위치 정보는 각 모바일 디바이스의 식별과 연관된다. 명령들은 컴퓨터로 하여금 모바일 디바이스로부터 위치에 대한 요청을 수신하게 하기 위한 적어도 하나의 명령을 더 포함할 수 있다. 그 요청은 모바일 디바이스의 부근 내의 타 모바일 디바이스들을 위한 식별들의 세트를 포함한다. 명령들은 컴퓨터로 하여금 수신된 식별들의 세트와 연관된, 레코드로부터, 이용가능한 위치 정보를 이용하여 모바일 디바이스의 위치를 결정하게 하기 위한 적어도 하나의 명령 및 컴퓨터로 하여금 모바일 디바이스에 결정된 위치를 제공하게 하기 위한 적어도 하나의 명령을 더 포함할 수 있다.
또한, 하나 이상의 구현들에 따르면, 모바일 디바이스는 서버에 대한 무선 인터페이스, 자기 구성 무선 네트워크 인터페이스 (self-configuring wireless network interface), 및 그 무선 인터페이스 및 그 자기 구성 무선 네트워크 인터페이스와 통신하는 프로세서를 포함할 수 있다. 프로세서는 모바일 디바이스의 부근내에 타 모바일 디바이스들의 세트를, 자기 구성 무선 네트워크 인터페이스를 통해, 식별하는 것을 포함하는 프로세싱을 개시하도록 구성될 수 있다. 프로세서는 또한 타 모바일 디바이스들의 세트의 식별들에 기초하여, 모바일 디바이스의 위치를, 무선 인터페이스를 통해 서버로부터, 요청하는 것을 포함하는 프로세싱을 개시하도록 구성될 수 있다. 프로세서는 모바일 디바이스의 위치를, 무선 인터페이스를 통해 서버로부터, 수신하는 것을 포함하는 프로세싱을 개시하도록 구성될 수 있다.
또한, 하나 이상의 구현들에 따르면, 위치 결정 하드웨어에 독립적으로 모바일 디바이스에 있어서 위치를 결정하는 방법은 모바일 디바이스의 부근 내의 타 모바일 디바이스들의 세트를 식별하는 것을 포함할 수 있다. 그 방법은, 타 모바일 디바이스들의 세트의 식별들에 기초하여 모바일 디바이스의 위치를, 서버로부터, 요청하는 것과 모바일 디바이스의 위치를, 서버로부터 수신하는 것을 더 포함할 수 있다.
또한, 하나 이상의 구현들에 따르면, 위치 서비스들을 가능하게 하기 위한 시스템은 모바일 디바이스들의 세트를 위한 위치 정보의 레코드를 유지하기 위한 수단을 포함할 수 있다. 각 모바일 디바이스를 위한 위치 정보는 각 모바일 디바이스의 식별과 연관된다. 시스템은 모바일 디바이스로부터 위치에 대한 요청을 수신하기 위한 수단 및 모바일 디바이스에 위치를 제공하기 위한 수단을 더 포함할 수 있다. 그 요청은 모바일 디바이스의 부근 내의 타 모바일 디바이스들을 위한 식별들의 세트를 포함한다. 시스템은 수신된 식별들의 세트와 연관된, 레코드로부터, 이용가능한 위치 정보를 이용하여 위치를 결정하기 위한 수단을 더 포함할 수 있다.
또한, 하나 이상의 구현들에 따르면, 컴퓨터 프로그램 제품은 모바일 디바이스에 의해 실행될 때 모바일 디바이스로 하여금 위치 결정 하드웨어에 독립적으로 위치를 결정하게 하는 명령들을 저장하는 컴퓨터 판독가능 매체를 포함할 수 있다. 명령들은 모바일 디바이스로 하여금 모바일 디바이스의 부근 내의 타 모바일 디바이스들의 세트를 식별하게 하기 위한 적어도 하나의 명령을 포함할 수 있다. 명령들은 또한 모바일 디바이스로 하여금 타 모바일 디바이스들의 세트의 식별들에 기초하여 모바일 디바이스의 위치를, 서버로부터, 요청하게 하기 위한 적어도 하나의 명령을 포함할 수 있다. 명령들은 또한 모바일 디바이스로 하여금 모바일 디바이스의 위치를, 서버로부터, 수신하게 하기 위한 적어도 하나의 명령을 포함할 수 있다.
본원에 포함되고 본 명세서의 일부를 구성하는 첨부 도면들은 본 교시의 양태들을 예시하고, 상세한 설명과 함께, 본 교시의 원리들을 설명하는 역할을 한다. 도면들에서:
도 1은 본 개시의 하나 이상의 양태들과 부합하는, 위치 서비스 시스템의 후위 (back-end) 에 있는 원격 서버와 하나 이상의 모바일 디바이스들을 포함하는 위치 서비스 시스템을 예시한다;
도 2는 본 교시의 하나 이상의 양태들에 따라, 위치 결정 하드웨어 없이 위치를 결정하도록 구성된 모바일 디바이스의 예시적인 구성을 예시한다;
도 3은 본 교시의 하나 이상의 양태들과 부합하는, 원격 서버에 위치 정보를 제공할 수 있는 타 모바일 디바이스들의 예시적인 구성을 예시한다;
도 4는 본 교시의 하나 이상의 양태들과 부합하는, 위치 서비스 시스템의 후위 예시적인 구성을 예시한다;
도 5a - 도 5c는 본 교시의 하나의 구현에 따라, 모바일 디바이스의 위치를 결정하기 위하여 원격 서버와 통신하는 모바일 디바이스에 의해 수행되는 프로세싱의 플로우차트들을 예시한다;
도 6은 본 교시의 하나의 구현에 따라, 타 모바일 디바이스들의 위치 정보를 결정하기 위해 원격 서버에 의해 수행되는 프로세싱의 플로우차트를 예시한다.
상세한 설명
이제 첨부 도면에 예시된 예로서, 본 개시의 구현들을 상세히 설명한다. 가능한 경우는 언제나, 동일 참조 부호들이 동일 또는 유사 부분들을 지칭하기 위해 도면들 전체에 걸쳐 사용될 것이다.
다음 설명에서는, 그의 일부를 형성하며, 실시될 수도 있는 특정 구현들이 예시로서 도시된 첨부 도면들을 참조한다. 이들 구현들은 당업자가 이들 구현들을 실시하는 것을 가능하게 하기 위하여 충분히 상세하게 설명되며, 타 구현들이 이용될 수도 있고 본 교시의 범위를 이탈하지 않으면서 변경들이 이루어질 수도 있음이 이해되야 한다. 그러므로, 다음 설명은 단순히 예시적이다.
본 교시의 하나 이상의 양태들은, 위치 결정 하드웨어가 없을 수도 있는 모바일 디바이스에 위치 서비스를 제공하기 위한 시스템 및 방법에 관한 것이다. 보다 상세하게는, 모바일 디바이스는 모바일 디바이스의 부근 내의 타 모바일 디바이스들을 식별하고 원격 서버로부터 위치를 요청하도록 구성될 수도 있다. 모바일 디바이스는 자기 구성 네트워크 인터페이스, 예를 들면, Bluetooth® 네트워크 인터페이스를 통해, 타 모바일 디바이스들을 검색하도록 구성될 수 있다. 일단 식별되면, 모바일 디바이스는 무선 인터페이스를 통해 원격 서버에 타 모바일 디바이스들의, 검색에서 획득된 식별 정보를 송신하도록 구성될 수 있다. 예를 들면, 식별 정보는 타 모바일 디바이스들의 네트워크 인터페이스 식별자, 이를테면 Bluetooth® 디바이스 식별자일 수 있다. 원격 서버는 위치를 정하는 것이 가능한 타 모바일 디바이스들의 식별 정보, 예를 들면 네트워크 인터페이스 식별자들과 연관된, 위치 검출 리소스들로 가능하게 된, 타 모바일 디바이스들의 위치 정보의 레코드를 유지하도록 구성될 수 있다. 모바일 디바이스로부터 식별 정보를 수신하는 것에 응답하여, 원격 서버는 모바일 디바이스에 의해 송신된 식별 정보와 연관된 이용가능한 위치 정보를 취출 (retrieve) 하고 타 모바일 디바이스들의 이용가능한 위치 정보에 기초하여 모바일 디바이스에 대해 위치를 결정하도록 구성될 수 있다. 원격 서버는 무선 인터페이스를 통해 모바일 디바이스에 결정된 위치를 송신하도록 구성될 수 있다.
종속된 상세한 설명에서 "예시적" 이라는 용어는 예, 실례, 또는 예시의 역할을 하는 것을 의미하는 것으로 여기에서 사용된다. "예시적" 으로서 여기에 설명된 임의의 양태 또는 설계는 반드시 다른 양태 또는 설계보다 바람직하거나 또는 유리한 것으로 해석될 필요는 없다. 오히려, 예시적이라는 용어의 사용은 구체적인 방식으로 개념들을 제시하도록 의도된다.
또한, 용어 "또는" 은 배타적 "또는" 이 아닌 포괄적 "또는" 을 의미하도록 의도되었다. 즉, 달리 명시되지 않거나, 또는 문맥으로부터 명확하지 않으면, "X는 A 또는 B를 이용한다" 라는 구절은 자연의 포괄적 순열들 중 임의의 것을 의미하도록 의도된다. 즉, "X는 A 또는 B를 이용한다" 라는 구절은 다음의 실례들 중 임의의 것에 의해 만족된다: X는 A를 이용한다; X는 B를 이용한다; 또는 X는 A 및 B 양쪽 모두를 이용한다. 또한, 본원 및 부속 청구항들에 사용된 정관사 "a" 및 "an" 은 일반적으로, 달리 명시되지 않거나, 문맥으로부터 단수 형태를 가리키는 것이 명확하지 않으면, "하나 이상" 을 의미하는 것으로 해석되야 한다.
또한, 다양한 양태들 또는 특징들이 다수의 디바이스들, 컴포넌트들, 모듈들 및 그 밖에 이와 유사한 것들을 포함할 수도 있는 시스템들의 면에서 제시될 것이다. 다양한 시스템들은 추가 디바이스들, 컴포넌트들, 모듈들 등을 포함할 수도 있고/있거나 도면과 관련하여 논의된 디바이스들, 컴포넌트들, 모듈들 등의 전부를 포함하는 것은 아닐 수도 있다는 것이 이해되고 인식되야 한다. 이들 접근법들의 조합이 또한 사용될 수도 있다.
하나 이상의 양태들에서, 그리고 예를 들면 도 1에 도시된 바처럼, 시스템 (100) 은, 위치 결정 하드웨어를 포함하지 않을 수도 있는 모바일 디바이스 (105) 에 위치 서비스들을 제공할 수 있다. 모바일 디바이스 (105) 의 사용 동안, 도 1에 일반적으로 도시된 바처럼, 하나 이상의 구현들에 따라, 모바일 디바이스 (105) 의 위치가 결정될 수 있다. 예를 들면, 모바일 디바이스 (105) 의 사용자는 예를 들면 모바일 디바이스 (105) 상에서 실행되는 하나 이상의 애플리케이션들 (예를 들면, 맵핑 애플리케이션들) 을 이용하는 것에 의해, 모바일 디바이스 (105) 의 위치를 알기 원할 수 있다. 이를 달성하기 위하여, 모바일 디바이스 (105) 는 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 과 통신하는 것과 원격 서버 (115) 에 의해 유지되는 하나 이상의 타 모바일 디바이스들 (110) 의 위치 정보에 기초하여 모바일 디바이스 (105) 의 위치를 결정하기 위하여 원격 서버 (115) 와 통신하는 것에 의해 모바일 디바이스 (105) 의 위치를 결정할 수 있다.
하나 이상의 구현들에 따르면, 모바일 디바이스는 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 을 식별하도록 구성될 수 있다. 모바일 디바이스 (105) 는 자기 구성 네트워크 인터페이스를 통해, 타 모바일 디바이스들 (110) 을 검색하도록 구성될 수 있다. 예를 들면, 모바일 디바이스 (105) 및 하나 이상의 타 모바일 디바이스들 (110) 은 자기 구성 네트워크 인터페이스, 이를테면 Bluetooth® 네트워크 인터페이스를 통해 통신하도록 구성될 수 있다. 모바일 디바이스 (105) 는 자기 구성 네트워크 신호의 범위 (125) 내에 임의의 타 모바일 디바이스들 (110) 에 조회 요청 (120) 을 브로드캐스트 (broadcast) 하도록 구성될 수 있다. 조회 요청 (120) 은 타 모바일 디바이스들 (110) 로부터 응답을 요청 또는 개시하도록 구성될 수 있다. 응답하여, 자기 구성 네트워크 인터페이스를 포함하는 타 모바일 디바이스들 (110) 은 조회 요청 (120) 에 응답 (130) 을 송신하도록 구성될 수 있다. 응답 (130) 은 타 모바일 디바이스들 (110) 을 식별하는 정보를 포함하도록 구성될 수 있다. 예를 들면, 자기 구성 네트워크 인터페이스를 포함하는 타 모바일 디바이스들 (110) 의 각각은 그의 구체적인 자기 구성 네트워크 인터페이스의 네트워크 인터페이스 식별자들, 이를테면 Bluetooth® 디바이스 식별자로 응답할 수 있다.
하나 이상의 구현들에 따르면, 모바일 디바이스 (105) 및 타 모바일 디바이스 (110) 는 임의의 타입의 모바일 및/또는 포터블 전자 디바이스일 수 있다. 모바일 디바이스 (105) 및 타 모바일 디바이스들 (110) 의 예들은 셀룰러 텔레폰 ("셀 폰"), 개인 휴대 정보 단말기 (PDA), 스마트 셀룰러 텔레폰 ("스마트 폰"), 랩톱 컴퓨터, 태블릿 컴퓨터, 디지털 미디어 디바이스, GPS 디바이스 및 그 밖에 이와 유사한 것을 포함할 수 있다. 통신하기 위하여, 모바일 디바이스 (105) 및 하나 이상의 타 모바일 디바이스들 (110) 은 자기 구성 네트워크 인터페이스를 통해 통신하는데 필요한 하드웨어, 소프트웨어, 및 그의 조합들을 포함하도록 구성될 수 있다. 예를 들면, 모바일 디바이스 (105) 및 하나 이상의 타 모바일 디바이스들 (110) 은 Bluetooth® 하드웨어, 소프트웨어 및 이의 조합을 포함하도록 구성될 수 있다.
하나 이상의 구현들에 따르면, 하나 이상의 타 모바일 디바이스들 (110) 은 타 모바일 디바이스들 (110) 의 위치, 포지션, 방위 (orientation), 이동 등을 검출하는 능력을 포함할 수 있다. 타 모바일 디바이스들 (110) 의 위치 또는 포지션의 검출은, 예를 들면, 다양한 포지셔닝 서비스들, 이를테면 GPS (Global Positioning System), A-GPS (Assisted GPS), 등록된 셀룰러 텔레폰에 대한 셀룰러 텔레폰 기지국 삼각측량 또는 삼변측량에 기초한 기지국 삼각측량 또는 삼변측량, 유럽 갈릴레오 포지션 시스템 (European Galileo position system), 또는 타 포지셔닝 또는 위치 서비스들 또는 기법들을 이용하여 수행될 수 있다. 타 모바일 디바이스들 (110) 의 위치의 검출 및 식별은, 예를 들면, 타 모바일 디바이스들 (110) 에 통합되는 다양한 하드웨어, 소프트웨어 및 이의 조합, 예를 들면 GPS 유닛, 가속도계, 자이로스코프 및/또는 타 방위 및 이동 검출 서비스 또는 기법들을 이용하여 수행될 수 있다.
하나 이상의 구현들에 따라, 모바일 디바이스 (105) 및 타 모바일 디바이스들 (110) 의 통합의 면에서, 자기 구성 네트워크 및 위치 검출을 통한 통신은 San Diego, California의 Qualcomm Incorporated으로부터 이용가능한 BREW® API를 이용하여 수행 또는 강화될 수 있다. Sun Microsystems으로부터의 Java Platform, Micro Edition (Java ME™), Symbian Ltd.로부터의 Symbian™ OS, Adobe Systems으로부터의 Flash Lite™, Microsoft Corporation로부터의 Windows Mobile™, Apple Inc.로부터의 iPhone™ OS, Open Handset Alliance로부터의 Android™ 또는 그 밖에 이와 유사한 것하에서 실행가능한 API들 및 서비스들과 같은, 다른 통신 및 위치 검출 API들 또는 서비스들이, 모바일 디바이스 (105) 및 타 모바일 디바이스들 (110) 에서 통신 및 위치 검출을 통합하기 위하여 사용될 수 있다.
하나 이상의 구현들에 따르면, 일단 식별되고 나면, 모바일 디바이스 (105) 는 원격 서버 (115) 에 위치 요청 (135) 을 송신하도록 구성될 수 있다. 위치 요청 (135) 은 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 에 기초하여 모바일 디바이스 (105) 를 위한 위치를 요청하도록 구성될 수 있다. 위치 요청 (135) 은 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 을 식별하는 정보를 포함할 수 있다. 예를 들면, 모바일 디바이스 (105) 는 위치 요청 (135) 에서 원격 서버 (115) 에, 네트워크 인터페이스 식별자들, 이를테면 Bluetooth® 디바이스 식별자들을 송신하도록 구성될 수 있다.
하나 이상의 구현들에 따르면, 도 1에 도시된 바처럼, 모바일 디바이스 (105) 는 무선 인터페이스를 통해 원격 서버 (115) 와 통신하도록 구성될 수 있다. 예를 들면, 하나 이상의 구현들에서, 모바일 디바이스 (105) 는 무선 접속 (145) 과 시스템 (100) 내에서 동작하는 하나 이상의 무선 서버들 (155) 에 의해 지원되는 하나 이상의 기지국들 (150) 을 통해 무선 서비스 제공자 (140) 와 통신할 수 있다. 무선 서비스 제공자 (140) 는 차례로, 예를 들면, 사용자 관련 가입, 구성 (configuration), 포지셔닝 및 다른 정보 (미도시) 를 저장한 사용자 데이터 베이스를 포함하는 리소스들의 세트와 통신할 수 있다. 무선 접속 (145) 은 모바일 디바이스 (105) 및 무선 서비스 제공자 (140) 와 호환가능한 임의의 타입의 무선 프로토콜 또는 표준, 예를 들면, 임의의 버전의 GSM (Global System for Mobile communication), IEEE 802.16 표준 (WiMAX), 또는 IEEE 802.11 표준 (Wi-Fi) 에 따라 구성될 수 있다.
하나 이상의 구현들에 따르면, 원격 서버 (115) 는, 유선 전기 링크들 (예를 들면, T1 또는 T3 라인), 무선 링크들, 광학 링크들, 또는 다른 모드들의 통신적인 연결을 포함할 수 있는, 하나 이상의 통신 접속들 (160) 을 통해 무선 서비스 제공자 (140) 에 연결될 수 있다. 무선 서비스 제공자 (140) 는 셀룰러 텔레포니 또는 다른 디지털 통신 서비스를, 모바일 디바이스 (105) 및 타 모바일 디바이스들 (110) 과 같은 전자 디바이스들의 사용자들에게 제공할 수 있다. 예를 들면, 무선 서비스 제공자 (140) 는 셀룰러 텔레폰 서비스 제공자 (이를테면 Sprint Nextel Corporation), PCS (personal communications services) 제공자, 또는 타 무선 서비스들의 제공자일 수 있다. 무선 서비스 제공자 (140) 는 하나 이상의 무선 서버들 (155) 및 기지국들 (150) 의 네트워크를 포함할 수 있다. 모바일 디바이스 (105) 및 타 모바일 디바이스들 (110) 은 무선 접속 (145) 상에서 다중계층 (예를들면, 클라이언트-서버) 소프트웨어 아키텍처를 이용하여 무선 서비스 제공자 (140) 의 무선 서버들 (155) 과, 기지국 (150) 을 통해, 통신할 수 있다. 그러므로, 모바일 디바이스 (105) 및 타 모바일 디바이스들 (110) 은 무선 서비스 제공자 (140) 를 통해 원격 서버 (115) 와 통신할 수 있고 원격 서버 (115) 는 무선 서비스 제공자 (140) 를 통해 모바일 디바이스 (105) 에, 위치 정보와 같은, 적절한 정보 콘텐츠를 전달할 수 있다.
하나 이상의 구현들에 따르면, 모바일 디바이스 (105) 는 원격 서버 (115) 및 무선 접속 (145) 과 호환가능한 임의의 종래 포맷 또는 프로토콜에서 원격 서버 (115) 에, 식별 정보 예를 들면 자기 구성 네트워크 식별자들을 포함하는 위치 요청 (135) 을 송신하도록 구성될 수 있다. 위치 요청 (135) 은, 예를 들면, e-mail (electronic mail), MMS (multimedia messaging service), EMS (enhanced messaging service), SMS (short messaging service), WAP 푸시 (push), 애플리케이션 푸시 (예를 들면, 푸시 레지스트리), 표준 형태의 텔레포니, 또는 표준 인터넷 프로토콜들 이를테면 TCP (Transmission Control Protocol), IP, UDP (User Datagram Protocol), HTTP (hypertext transfer protocol), 및 FTP (File Transfer Protocol) 와 같은 통신 프로토콜을 통해 원격 서버 (115) 에 통신될 수 있다.
하나 이상의 구현들에 따르면, 원격 서버 (115) 는 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 의 식별 정보를 포함하는 위치 요청 (135) 에 기초하여 모바일 디바이스 (105) 에 대한 위치를 결정하도록 구성되고 모바일 디바이스 (105) 에 결정된 위치를 제공하도록 구성될 수 있다. 원격 서버 (115) 는 LAN (local area network), 인트라넷, 또는 인터넷과 같은 하나 이상의 통신 네트워크를 가로질러 접속들 (180) 에 의해 연결될 수 있는, 하나 이상의 서버들 (165 및 170) 을 포함할 수 있다. 예를 들면, 원격 서버 (115) 는 위치 요청 (135) 을 수신하기 위해 무선 서비스 제공자 (140) 및/또는 모바일 디바이스와의 통신을 처리하거나 또는 모바일 디바이스 (105) 의 위치에 대한 액세스를 제공하는 하나 이상의 메시징 서버들 (165) 을 포함할 수 있다.
하나 이상의 구현들에 따르면, 원격 서버 (115) 는 위치 서비스 서버 (170) 를 포함하도록 구성될 수 있다. 위치 서비스 서버 (170) 는 위치 요청 (135) 을 수신하도록 구성되고 모바일 디바이스 (105) 의 위치를 결정하도록 구성될 수 있다. 하나의 구현에서, 메시징 서버 (165), 위치 서비스 서버 (170) 및 리포지터리 (175) 는 상이한 물리적 위치들에 존재하고 접속들 (180) 을 통해 통신적으로 연결될 수 있다. 예를 들면, 메시징 서버 (165) 는 무선 서비스 제공자 (140) 를 또한 관리하는 셀룰러 텔레폰 회사에 의해 관리되는 위치에서 물리적으로 존재할 수 있다. 위치 서비스 서버 (170) 및 리포지터리 (175) 는 상이한 위치, 제공자 또는 소스에서 물리적으로 존재할 수 있다. 당업자는 메시징 서버 (165), 위치 서비스 서버 (170) 및 리포지터리 (175) 가 임의의 위치에 존재할 수 있다는 것을 깨닫을 것이다. 마찬가지로, 무선 서버 (155) 들, 메시징 서버 (165), 위치 서비스 서버 (170) 및 리포지터리 (175) 중 어느 것도 단일 서버에서 구현될 수 있다.
하나 이상의 구현들에 따르면, 위치 서비스 서버 (170) 는 무선 서비스 제공자 (140) 및 메시징 서버 (165) 를 통해 위치 요청 (135) 을 수신하도록 구성될 수 있다. 위치 서비스 서버 (170) 은 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 의 식별 정보에 기초하여 모바일 디바이스 (105) 의 위치를 결정하도록 구성될 수 있다. 위치 서비스 서버 (170) 는 리포지터리 (175) 에서, 위치 레코드 (185) 를 유지하도록 구성될 수 있다. 위치 레코드 (185) 는 위치 결정 리소스들을 포함하는 타 모바일 디바이스들 (110) 의 위치 정보와 연관된 타 모바일 디바이스들 (110) 의 식별 정보를 포함하도록 구성될 수 있다.
하나 이상의 구현들에 따르면, 위치 요청 (135) 이 수신되고 나면, 위치 서비스 서버 (170) 는 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 의 식별 정보, 예를 들면 네트워크 디바이스 식별자들을 식별하기 위하여 위치 요청 (135) 을 조사하도록 구성될 수 있다. 식별되고 나면, 위치 서비스 서버 (170) 는 모바일 디바이스 (105) 의 부근 내의 하나 이상의 타 모바일 디바이스들 (110) 과 연관된 위치 정보를 위해 위치 레코드 (185) 를 검색하도록 구성될 수 있고, 위치 레코드 (185) 로부터 임의의 이용가능한 위치 정보를 취출하도록 구성될 수도 있다.
하나 이상의 구현들에 따르면, 위치 서비스 서버 (170) 는, 위치 결정 리소스들을 포함하는, 하나 이상의 타 모바일 디바이스들 (110) 의 취출된 위치 정보에 기초하여 모바일 디바이스 (105) 에 대한 위치를 결정하도록 구성될 수 있다. 위치 서비스 서버 (170) 는, 위치 정보가 취출된 타 모바일 디바이스들 (110) 의 수에 따라 임의의 수의 프로세스들 및 알고리즘들을 이용하여 위치를 결정하도록 구성될 수 있다. 예를 들면, 위치 서비스 서버 (170) 가 단 하나의 타 모바일 디바이스 (110) 에 대해 위치 정보를 식별하면, 위치 서비스 서버 (170) 는 모바일 디바이스 (105) 의 위치를 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 의 위치인 것으로 결정하도록 구성될 수 있다.
하나 이상의 구현들에 따르면, 위치 서비스 서버 (170) 가 모바일 디바이스 (105) 의 부근 내의 하나 보다 많은 타 모바일 디바이스 (110) 에 대한 위치 정보를 식별하면, 위치 서비스 서버 (170) 는 타 모바일 디바이스들 (110) 중 하나의 취출된 위치 정보를 선택하는 것에 의해 모바일 디바이스 (105) 의 위치를 결정하거나 또는 위치 정보를 조합하여 모바일 디바이스 (105) 의 위치를 결정할 수 있다. 예를 들면, 위치 서비스 서버 (170) 는, 모바일 디바이스 (170) 의 위치를 결정하기 위하여 취출된 위치 정보를 평균화, 모바일 디바이스 (105) 의 위치를 결정하기 위하여 타 모바일 디바이스들 (110) 중 하나로부터 가장 최근에 수신된 취출 위치 정보를 선택, 및/또는 모바일 디바이스 (105) 의 위치를 결정하기 위하여 타 모바일 디바이스들 (110) 중 하나와 연관된 수신 위치 정보를 무작위 선택하도록 구성될 수 있다. 당업자는 위치 서비스 서버 (170) 는 취출된 위치 정보에 기초하여 모바일 디바이스 (105) 의 위치를 결정하기 위하여 임의의 프로세스 또는 알고리즘을 이용할 수 있다는 것을 깨닫을 것이다.
하나 이상의 구현들에 따르면, 모바일 디바이스 (105) 의 위치가 일단 식별되고 나면, 원격 서버 (115) 는 모바일 디바이스 (105) 에 결정된 위치를 제공하도록 구성될 수 있다. 원격 서버 (115) 는 무선 서비스 제공자 (140) 를 통해 모바일 디바이스 (105) 에, 결정된 위치를 포함하는, 위치 응답 (190) 을 통신하도록 구성될 수 있다. 위치 응답 (190) 은, 예를 들면, e-mail (electronic mail), MMS (multimedia messaging service), EMS (enhanced messaging service), SMS (short messaging service), WAP 푸시 (push), 애플리케이션 푸시 (예를 들면, 푸시 레지스트리), 표준 형태의 텔레포니, 또는 표준 인터넷 프로토콜들 이를테면 TCP (Transmission Control Protocol), IP, UDP (User Datagram Protocol), HTTP (hypertext transfer protocol), 및 FTP (File Transfer Protocol) 와 같은 통신 프로토콜을 통해 모바일 디바이스 (105) 에 통신될 수 있다.
하나 이상의 구현들에 따르면, 위치 서비스를 제공하기 위하여, 원격 서버 (115) 는, 위치 결정 하드웨어를 갖는 타 모바일 디바이스들 (110) 로부터 위치 정보를 획득하도록 구성될 수 있다. 원격 서버 (115) 는 위치 정보를 위해 타 모바일 디바이스들 (110) 에 질의하도록 구성될 수 있다. 마찬가지로, 하나 이상의 타 모바일 디바이스들 (110) 은, 원격 서버 (115) 에 위치 정보를 제공하도록 구성될 수 있다. 어느 한쪽의 경우에, 하나 이상의 타 모바일 디바이스들 (110) 로부터의 위치 정보는 무선 접속 (145) 상에서 무선 서비스 제공자 (140) 를 통해 원격 서버 (115) 에 통신될 수 있다. 위치 정보는, 예를 들면, e-mail (electronic mail), MMS (multimedia messaging service), EMS (enhanced messaging service), SMS (short messaging service), WAP 푸시 (push), 애플리케이션 푸시 (예를 들면, 푸시 레지스트리), 표준 형태의 텔레포니, 또는 표준 인터넷 프로토콜들 이를테면 TCP (Transmission Control Protocol), IP, UDP (User Datagram Protocol), HTTP (hypertext transfer protocol), 및 FTP (File Transfer Protocol) 와 같은 통신 프로토콜을 통해 원격 서버 (115) 에 통신될 수 있다.
하나 이상의 구현들에 따르면, 위치 정보가 일단 수신되고 나면, 원격 서버 (115) 는 위치 레코드 (185) 에 수신된 위치 정보를 저장하도록 구성될 수 있다. 원격 서버 (115) 는 주기적으로 또는 임의의 수의 이벤트들의 발생시 위치 정보를 획득하도록 구성될 수 있다.
이제 도 2를 참조하여, 본 교시의 하나 이상의 구현들과 부합하는 모바일 디바이스 (105) 의 예시적인 구성을 예시한다. (도 1에 도시된 바와 같은) 모바일 디바이스 (105) 는 (예를 들면, 모바일 호 개시 또는 다른 핸드쉐이크, 핸드쉐이크 응답, 모바일 어플리케이션 데이터 전송, 데이터 이벤트, 데이터 이벤트 응답, 핸드쉐이크 종결 등등에 속하는) 신호를 수신하는 적어도 하나의 안테나 (202) (예를 들면, 입력 인터페이스를 포함하는 송신 수신기 또는 그러한 수신기들의 그룹) 및, 수신된 신호에 대해 액션 (action) (예를 들면, 필터, 증폭, 하향 변환 등) 을 실행하는 수신기 (204) 를 포함한다. 예를 들면, 안테나 (202) 는 핸드쉐이크 요청, 데이터 이벤트 요청 등에 대한 응답을 송신 또는 수신할 수 있다. 안테나 (202) 및 수신기 (204) 는 또한 수신된 신호들을 복조하고 이들을 프로세싱을 위한 프로세서 (208) 에 제공할 수 있는 복조기 (206) 와 연결될 수 있다. 프로세서 (208) 는 모바일 디바이스 (105) 의 안테나 (202) 및/또는 사용자 입력 인터페이스 (미도시) 에 의해 수신된 정보를 분석 및/또는 변조기 (216) 를 통하여 송신기 (218) 에 의한 송신을 위해 정보를 생성할 수 있다. 프로세서 (208) 는 무선 접속 (145) 상에서 무선 서비스 제공자 (140) 와 통신하기 위하여 안테나 (202), 수신기 (204), 송신기 (218) 및 변조기 (216) 를 이용할 수 있다.
하나 이상의 구현들에서, 모바일 디바이스 (105) 는 부가적으로, 프로세서 (208) 에 동작적으로 연결되고, 실행될 명령들과 송신, 수신, 프로세싱되는 등의 데이터를 저장할 수 있는, 하나 이상의 컴퓨터 판독가능 저장 매체를 포함하는, 메모리 (210) 를 포함할 수 있다. 모바일 디바이스 (105) 는 컴퓨터 판독가능 데이터 (예를 들면, 디바이스 (105) 의 위치, 및 그 밖에 이와 유사한 것) 및 컴퓨터 실행가능 소프트웨어 명령들 (예를 들면, 위치 API 드라이버 (220), 런타임 환경 (212), 애플리케이션들의 세트 (214), 및 그 밖에 이와 유사한 것) 을 저장하기 위한 메모리 (210) 를 포함할 수 있다. 메모리 (210) 는 솔리드 스테이트 메모리 (예를 들면, 읽기 전용 메모리, 액덤 액세스 메모리, 플래시 메모리, 및 그 밖에 이와 유사한 것), 마그네틱 하드 메모리, 광학 판독가능 매체 이를테면 CD (compact disc), 또는 DVD (digital video disc) 및 그 밖에 이와 유사한 것 중 하나 이상을 포함할 수 있다.
구현들에서, 모바일 디바이스 (105) 는 메모리 (210) 에 저장된 소프트웨어 명령들을 실행하기 위하여 프로세서 (208) 를 이용할 수 있다. 예를 들면, 프로세서 (208) 는 런타임 환경 (212) 이를테면, Qualcomm Incorporated으로부터의 BREW®, Sun Microsystems으로부터의 Java ME™, Symbian Ltd.으로부터의 Symbian™ OS, Adobe Systems으로부터의 Flash Lite™, Microsoft Corporation으로부터의 Windows Mobile™, Apple Inc.으로부터의 iPhone™ OS, Open Handset Alliance으로부터의 Android™, 또는 그 밖에 이와 유사한 것 및 애플리케이션들의 세트 (214) 또는 다른 소프트웨어, 모듈, 애플리케이션, 로직, 코드 또는 그 밖에 이와 유사한 것을 실행할 수 있다.
하나 이상의 구현들에서, 위치 API 드라이버 (220) 는 위와 아래에서 논의된 바와 같은 위치 서비스들의 기능을 제공하도록 구성될 수 있다. 위치 API 드라이버 (220) 는 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 을 식별하기 위하여 프로세서 (208) 및 자기 구성 네트워크 인터페이스 (230) 와 통신하는데 필요한 로직, 커맨드, 및 명령을 포함하도록 구성될 수 있다. 마찬가지로, 일단 식별되고 나면, 위치 API 드라이버 (220) 는 모바일 디바이스 (105) 의 위치를 획득하기 위하여 프로세서 (208), 변조기 (216), 복조기 (206), 송신기 (218), 수신기 (204) 및 안테나 (202) 를 이용하여 원격 서버 (115) 와 통신하는데 필요한 로직, 커맨드, 및 명령들을 포함하도록 구성될 수 있다.
하나 이상의 구현들에서, 위치 API 드라이버 (220) 는 메모리 (210) 에 저장될 수 있고 프로세서 (208) 에 의해 실행될 수 있는 애플리케이션 프로그램 또는 드라이버로서 구현될 수 있다. 예를 들면, 위치 API 드라이버 (220) 는 모바일 디바이스 (105) 의 사용자가 모바일 디바이스 (105) 의 위치를 요청하는 것을 허용하는 독립형 (stand-alone) 애플리케이션 프로그램으로서 구현될 수 있다. 그래서, 위치 API 드라이버 (220) 는 사용자가 위치 API 드라이버 (105) 와 상호작용하는 것을 허용하는 GUI (graphical user interface) 들을 생성할 수 있다. 마찬가지로, 위치 API 드라이버 (220) 는 애플리케이션들의 세트 (214) 에 의해 액세스될 수 있는 디바이스 또는 소프트웨어 드라이버로서 구현될 수 있다. 그래서, 모바일 디바이스 (105) 의 위치를 필요로 할 때, 애플리케이션들의 세트 (214) 는 모바일 디바이스 (105) 의 위치를 결정하는 프로세스를 개시하기 위하여 위치 API 드라이버 (220) 와 통신할 수 있다. 위치 API 드라이버 (220) 는 모바일 디바이스 (105) 와 호환성있는 임의의 타입의 프로그래밍 언어로 작성될 수 있다.
하나 이상의 구현들에서, 모바일 디바이스 (105) 는 자기 구성 네트워크 인터페이스 (230) 를 포함하도록 구성될 수 있다. 자기 구성 네트워크 인터페이스 (230) 는 모바일 디바이스 (105) 가 타 디바이스들, 이를테면 타 모바일 디바이스들 (110) 과, 자기 구성 네트워크 상에서 통신하는 것을 허용하도록 구성될 수 있다. 예시된 바처럼, 자기 구성 네트워크 인터페이스 (230) 는 안테나 (232), 무선 주파수 ("RF") 유닛 (234), 및 기저대역 유닛 (236) 을 포함할 수 있다. 구현들에서, 안테나 (232), RF 유닛 (234), 및 기저대역 유닛 (236) 의 각각은 임의의 데이터 통신 시스템들 및 프로토콜들을 통해 서로 신호들 및 데이터들을 통신 및 송신할 수 있다.
기저대역 유닛 (236) 은 타 모바일 디바이스 (110) 의 식별에 대한 요청과 같은, 프로세서 (208) 로부터의 송신 데이터를 수신하도록 구성될 수 있다. 기저대역 유닛 (236) 은 프로세서 (208) 로부터 수신된 송신 데이터를 RF 유닛 (234) 으로 전송될 수 있는 기저대역 신호로 변환할 수 있다. 수신시, RF 유닛 (234) 은 설정 진동 주파수 (set oscillation frequency) 에 따라, Bluetooth® 무선 통신들에서 사용되는것과 같은 RF 송신 데이터로 기저대역 신호를 변환할 수 있다. RF 유닛 (234) 은 RF 송신 데이터를 안테나 (232) 에 전송할 수 있고, 안테나 (232) 는 RF 송신 데이터를 의도된 수신자, 이를테면 하나 이상의 타 모바일 디바이스들 (110) 에 송신할 수 있다.
하나 이상의 타 모바일 디바이스들 (110) 은 식별 정보에 대한 요청의 형태와 같은 RF 송신 데이터를 수신할 수 있다. 하나 이상의 타 모바일 디바이스들 (110) 은 개별 식별 정보, 예를 들면, 네트워크 인터페이스 식별자들을 취출할 수 있고, 안테나 (232) 에 의해 수신될 식별 정보를 모바일 디바이스 (105) 에 전송할 수 있다. 안테나 (232) 는 RF 유닛 (234) 에 수신된 식별 정보를 송신할 수 있다. 수신시, RF 유닛 (234) 은 설정 진동 주파수에 따라, 식별 정보를 기저대역 신호로 하향 변환할 수 있다. RF 유닛 (234) 은 또한 기저대역 유닛 (236) 으로 기저대역 신호를 출력할 수 있고, 기저대역 유닛 (236) 은 기저대역 신호를 모바일 디바이스 (105) 에 의한 사용을 위한 신호로 변환할 수 있다. 기저대역 유닛 (236) 은 여기에 기재된 하나 이상의 구현들에 따라 프로세싱을 위해 프로세서 (208) 에 신호를 전송할 수 있다.
하나 이상의 구현들에서, 예를 들면, 자기 구성 네트워크 인터페이스 (230) 는 Bluetooth® 네트워크를 통해 타 디바이스들과 통신할 수 있는 Bluetooth® 네트워크 인터페이스일 수 있다. 이 예에서, 기저대역 유닛 (236), RF 유닛 (234), 및 안테나 (232) 는 프로세서 (208) 로부터 신호들을 수신하고, 신호들을 Bluetooth® 무선 신호들로 변환하고, Bluetooth® 네트워크 인터페이스를 포함하는 타 디바이스들로 Bluetooth® 무선 신호들을 송신하도록 구성될 수 있다. 이 예에서, 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 을 식별하기 위하여, 위치 API 드라이버 (220) 는 자기 구성 네트워크 인터페이스 (230) 에 명령하여 조회 절차를 수행하게함으로써 모바일 디바이스 (105) 의 부근 내에 있고 Bluetooth® 네트워크 인터페이스를 포함하는 타 모바일 디바이스들을 식별할 수 있다. 자기 구성 네트워크 인터페이스 (230) 는 Bluetooth® 조회 요청을 타 모바일 디바이스들 (110) 에 송신할 수 있고 Bluetooth® 네트워크 인터페이스를 포함하는 타 모바일 디바이스들 (110) 로부터 고유의 Bluetooth® 디바이스 식별자를 수신할 수 있다.
하나 이상의 구현들에서, 타 모바일 디바이스들 (110) 의 식별 정보가 일단 수신되고 나면, 위치 API 드라이버 (220) 는 원격 서버 (115) 에의 송신에 대한 위치 요청 (135) 을 생성하도록 구성될 수 있다. 위치 API 드라이버 (220) 는 변조기 (216), 송신기 (218) 및 안테나 (202) 를 이용하여 무선 접속 (145) 상에서 송신을 위해 프로세서에 위치 요청 (135) 을 보낼 수 있다. 마찬가지로, 위치 API 드라이버 (220) 는 원격 서버 (115) 로부터 위치 응답 (190) 을 수신하고 애플리케이션의 세트 (214) 및/또는 사용자에게 위치를 제공하기 위해 임의의 다른 프로세싱을 수행하도록 구성될 수 있다.
이제 도 3을 참조하여, 본 교시의 하나 이상의 구현들과 부합하는 타 모바일 디바이스들 (110) 중 하나의 예시적인 구성을 예시한다. (도 1에 도시된 바와 같은) 타 모바일 디바이스들 (110) 중 하나는 (예를 들면, 모바일 호 개시 또는 다른 핸드쉐이크, 핸드쉐이크 응답, 모바일 어플리케이션 데이터 전송, 데이터 이벤트, 데이터 이벤트 응답, 핸드쉐이크 종결 등등에 속하는) 신호를 수신하는 적어도 하나의 안테나 (302) (예를 들면, 입력 인터페이스를 포함하는 송신 수신기 또는 그러한 수신기들의 그룹), 및 수신된 신호에 대해 액션 (action) (예를 들면, 필터, 증폭, 하향 변환 등) 을 수행하는 수신기 (304) 를 포함한다. 예를 들면, 안테나 (302) 는 핸드쉐이크 요청, 데이터 이벤트 요청 등에 대한 응답을 송신 또는 수신할 수 있다. 안테나 (302) 및 수신기 (304) 는 또한 수신된 신호들을 복조하고 이들을 프로세싱을 위한 프로세서 (308) 에 제공할 수 있는 복조기 (306) 와 연결될 수 있다. 프로세서 (308) 는 타 모바일 디바이스들 (110) 중 하나의 안테나 (302) 및/또는 사용자 입력 인터페이스 (미도시) 에 의해 수신된 정보를 분석 및/또는 변조기 (316) 를 통하여 송신기 (318) 에 의한 송신을 위해 정보를 생성할 수 있다. 프로세서 (308) 는 무선 접속 (145) 상에서 무선 서비스 제공자 (140) 와 통신하기 위하여 안테나 (302), 수신기 (304), 송신기 (318) 및 변조기 (316) 를 이용할 수 있다.
하나 이상의 구현들에서, 타 모바일 디바이스들 (110) 중 하나는 부가적으로, 프로세서 (308) 에 동작적으로 연결되고, 실행될 명령들과 송신, 수신, 프로세싱되는 등의 데이터를 저장할 수 있는, 하나 이상의 컴퓨터 판독가능 매체를 포함하는, 메모리 (310) 를 포함할 수 있다. 타 모바일 디바이스들 (110) 중 하나는 컴퓨터 판독가능 데이터 (예를 들면, 디바이스 (110) 의 위치, 및 그 밖에 이와 유사한 것) 및 컴퓨터 실행가능 소프트웨어 명령들 (예를 들면, 런타임 환경 (312), 애플리케이션들의 세트 (314), 위치 서비스 애플리케이션 (320) 및 그 밖에 이와 유사한 것) 을 저장하기 위한 메모리 (310) 를 포함할 수 있다. 메모리 (310) 는 솔리드 스테이트 메모리 (예를 들면, 읽기 전용 메모리, 액덤 액세스 메모리, 플래시 메모리, 및 그 밖에 이와 유사한 것), 마그네틱 하드 메모리, 광학 판독가능 매체 이를테면 CD (compact disc), 또는 DVD (digital video disc) 및 그 밖에 이와 유사한 것 중 하나 이상을 포함할 수 있다.
하나 이상의 구현들에서, 타 모바일 디바이스들 (110) 중 하나는 메모리 (310) 에 저장된 소프트웨어 명령들을 실행하기 위하여 프로세서 (308) 를 이용할 수 있다. 예를 들면, 프로세서 (308) 는 런타임 환경 (312) 이를테면, BREW®, Sun Microsystems으로부터의 Java ME™, Symbian Ltd.으로부터의 Symbian™ OS, Adobe Systems으로부터의 Flash Lite™, Microsoft Corporation으로부터의 Windows Mobile™, Apple Inc.으로부터의 iPhone™ OS, Open Handset Alliance으로부터의 Android™, 또는 그 밖에 이와 유사한 것 및 애플리케이션들의 세트 (314) 또는 다른 소프트웨어, 모듈, 애플리케이션, 로직, 코드 또는 그 밖에 이와 유사한 것을 실행할 수 있다.
하나 이상의 구현들에서, 타 모바일 디바이스들 (110) 중 하나는 자기 구성 네트워크 인터페이스 (330) 를 포함하도록 구성될 수 있다. 자기 구성 네트워크 인터페이스 (330) 는 타 모바일 디바이스들 (110) 중 하나가 타 디바이스들, 이를테면 모바일 디바이스 (105) 와, 자기 구성 네트워크 상에서 통신하는 것을 허용하도록 구성될 수 있다. 예시된 바처럼, 자기 구성 네트워크 인터페이스 (330) 는 안테나 (332), RF 유닛 (334), 및 기저대역 유닛 (336) 을 포함할 수 있다. 하나 이상의 구현들에서, 안테나 (332), RF 유닛 (334), 및 기저대역 유닛 (336) 의 각각은 임의의 데이터 통신 시스템들 및 프로토콜들을 통해 서로 통신하고 신호들 및 데이터들을 송신할 수 있다.
안테나 (332) 는 모바일 디바이스 (105) 와 같은 타 컴포넌트들로부터, 식별 요청과 같은 데이터를 수신하고 수신된 데이터를 RF 유닛 (334) 으로 송신하도록 구성될 수 있다. 수신시, RF 유닛 (334) 은 설정 진동 주파수에 따라, 수신된 데이터를 기저대역 신호로 하향 변환할 수 있다. RF 유닛 (334) 은 또한 기저대역 유닛 (336) 으로 기저대역 신호를 출력할 수 있고, 기저대역 유닛 (336) 은 기저대역 신호를 디지털 신호로 변환할 수 있다. 기저대역 유닛 (336) 은 디지털 신호를 프로세서 (308) 에 전송할 수 있고, 프로세서 (308) 는 여기에 기재된 하나 이상의 구현들에 따라, 네트워크 디바이스 식별자들와 같은, 식별 정보를 취출하기 위해 단계들을 수행할 수 있다. 마찬가지로, 자기 구성 네트워크 인터페이스 (330) 는 자기 구성 네트워크 인터페이스 (330) 의 네트워크 디바이스 식별자들을 로컬에 저장하고 및 요청시 네트워크 디바이스 식별자들을 취출할 수 있다.
기저대역 유닛 (336) 은 타 모바일 디바이스들 (110) 중 하나의 취출된 식별 정보와 같은, 프로세서 (308) 로부터 (또는 로컬에서 취출된) 데이터를 수신하도록 구성될 수 있다. 기저대역 유닛 (336) 은 RF 유닛 (334) 으로 전송될 수 있는 기저대역 신호로 수신된 데이터를 변환할 수 있다. 수신시, RF 유닛 (334) 은 설정 진동 주파수에 따라, Bluetooth® 무선 통신들에서 사용되는것과 같은 RF 송신 데이터로 기저대역 신호를 변환할 수 있다. RF 유닛 (334) 은 RF 송신 데이터를 안테나 (332) 에 전송할 수 있고, 안테나 (332) 는 RF 송신 데이터, 이를테면 취출된 네트워크 디바이스 식별자들을, 의도된 수신자, 이를테면 모바일 디바이스 (105) 에 송신할 수 있다.
하나 이상의 구현들에서, 예를 들면, 자기 구성 네트워크 인터페이스 (330) 는 Bluetooth® 네트워크를 통해 타 디바이스들과 통신할 수 있는 Bluetooth® 네트워크 인터페이스일 수 있다. 이 예에서, 기저대역 유닛 (336), RF 유닛 (334), 및 안테나 (332) 는 프로세서 (308) 로부터 신호들을 수신하고, 신호들을 Bluetooth® 무선 신호들로 변환하고, Bluetooth® 네트워크 인터페이스를 포함하는 타 디바이스들로 Bluetooth® 무선 신호들을 송신하도록 구성될 수 있다. 이 예에서, 자기 구성 네트워크 인터페이스 (330) 는 모바일 디바이스 (105) 로부터 Bluetooth® 조회 요청을 수신할 수 있고 타 모바일 디바이스들 (110) 로부터 모바일 디바이스 (105) 의 자기 구성 네트워크 인터페이스 (230) 로 고유의 Bluetooth® 디바이스 식별자를 송신할 수 있다.
하나 이상의 구현들에 따르면, 타 모바일 디바이스들 (110) 중 하나는 하나 이상의 센서들 (340) 을 포함하도록 구성될 수 있다. 하나 이상의 센서들 (340) 은, 예를 들면 GPS 유닛 (342) 및 가속도계/자이로스코프 (344) 를 사용하는 것에 의해, 타 모바일 디바이스들 (110) 중 하나의 위치, 포지션, 방위, 이동 및 그 밖에 이와 유사한 것을 검출하도록 구성될 수 있다. GPS 유닛 (342) 은 당해 기술 분야에서 알려진 것처럼 GPS 데이터를 수신하도록 구성될 수 있고, 가속도계/자이로스코프 (344) 는 위치의 계산에서 사용된 이동 데이터를 수집하도록 구성될 수 있다. 하나 이상의 센서들 (340) 은 여기에 기재된 하나 이상의 구현들에 따라 프로세싱 또는 송신을 위해 프로세서 (308) 에 임의의 위치 관련 데이터 또는 계산들을 통신하도록 구성될 수 있다.
하나 이상의 구현들에서, 위치 서비스 애플리케이션 (320) 은, 여기에 기재된 위치 서비스들을 구현하기 위하여 타 모바일 디바이스들 (110) 중 하나의 위치 정보 및 타 모바일 디바이스들 (110) 중 하나의 식별을 원격 서버 (115) 에 제공하도록 구성될 수 있다. 위치 서비스 애플리케이션 (320) 은, 타 모바일 디바이스들 (110) 중 하나의 위치 정보를 결정하기 위하여 센서들 (340) 과 통신하고, 식별된 정보를 결정하기 위하여, 필요한 경우, 자기 구성 네트워크 인터페이스 (330) 와 통신하고, 무선 접속 (145) 을 통해 원격 서버 (115) 에 결정된 위치 정보 및 식별 정보를 제공하는데 필요한 로직, 커맨드, 및 명령들을 포함하도록 구성될 수 있다. 위치 서비스 애플리케이션 (320) 은 메모리 (310) 에 저장될 수 있고 프로세서 (308) 에 의해 실행될 수 있는 애플리케이션 프로그램으로서 구현될 수 있다. 위치 서비스 애플리케이션 (320) 은 타 모바일 디바이스들 (110) 중 하나와 호환성있는 임의의 타입의 프로그래밍 언어로 작성될 수 있다.
하나의 구현에서, 위치 서비스 애플리케이션 (320) 은, 임의의 수의 이벤트들의 발생시에, 또는 그 자신의 위치에서 주기적으로 또는 원격 서버 (115) 로부터, 요청시 위치 정보와 식별 정보를 제공하도록 구성될 수 있다.
이제 도 4를 참조하여, 본 교시의 하나 이상의 구현들과 부합하는, 무선 서버들 (155) 을 포함하는, 원격 서버 (115) 와 무선 서버 제공자 (140) 사이의 통신의 예시적인 구성을 예시한다. 하나 이상의 구현들에서, 무선 서버들 (155) 은 수신 안테나들 (402) 을 통해 하나 이상의 모바일 디바이스들 (예를 들면, 도 1에 도시된 바와 같은 모바일 디바이스 (105) 및 타 모바일 디바이스들 (110)) 로부터 하나 이상의 신호들을 수신하는 수신기 (406) 및 송신 안테나들 (404) 을 통해 모바일 디바이스들에 변조기 (416) 에 의해 변조된 하나 이상의 신호들을 송신하는 송신기 (418) 를 포함할 수 있다. 수신기 (406) 는 수신 안테나들 (402) 로부터 정보를 수신할 수 있고 또한 미수신 또는 해독할 수 없는 데이터 패킷에 관련된 피드백 데이터를 수신하는 신호 수신자 (미도시) 를 포함할 수 있다. 또한, 수신기 (406) 는 수신된 정보를 복조하는 복조기 (408) 와 동작적으로 연관된다. 프로세서 (410) 는 복조기 (408) 에 의해 제공된 복조된 심볼들 및 정보를 분석할 수 있다.
프로세서 (410) 는 또한 모바일 디바이스들, 무선 서버들 (155) 및/또는 원격 서버 (115) 사이의 원격 통신에 참여 및/또는 용이하게 하는 하나 이상의 애플리케이션들 (414) 을 저장할 수 있는 메모리 (412) 에 연결된다. 가령, 애플리케이션들 (414) 은 핸드쉐이크를 개시하고 (예를 들면, 진단 정보, 데이터 분석 및 기타 등등에 관련된) 데이터 이벤트 요청들을 모바일 디바이스들 상에서 동작하는 수신자 애플리케이션에 전송하도록 구성된 1차 애플리케이션 (primary application) 을 포함할 수 있다. 다르게는, 애플리케이션들 (414) 은 핸드쉐이크 요청을 수신하고 모바일 디바이스들 상에서 개시 애플리케이션을 인증할 수 있는 2차 애플리케이션을 포함할 수 있다. 애플리케이션들 (414) 은 애플리케이션들 (414) 을 모바일 디바이스들 상에서 대응하는 애플리케이션으로 또는 그 반대로 식별하는 식별자들, 또는 특정 라운트 트립 통신을 식별하는 그러한 식별자들의 증분을 생성 및/또는 검증하기 위한 규칙들을 더 포함할 수 있다. 또한, 규칙들은 비승인 송신을 재송신하고, 핸드쉐이크 요청 및/또는 응답들을 재개시하고, 핸드쉐이크를 종결하는 등을 위한 정책들을 지정할 수 있다. 결과적으로, 애플리케이션들 (414) 은 모바일 디바이스들 상에 상주하는 하나 이상의 애플리케이션들 (예를 들면, 도 2 및 도 3에 도시된 바처럼 애플리케이션들의 세트 (214, 314), 위치 API 드라이버 (220), 및 위치 서비스 애플리케이션 (320)) 과 모바일 통신에 참여할수 있다.
하나 이상의 구현들에서, 원격 서버 (115) 는, 여기에 기재된 바처럼 기능 구현들을 가능하게 하기 위하여 모바일 디바이스들 (예를 들면, 모바일 디바이스 (105) 및 타 모바일 디바이스들 (110)) 및 무선 서버들 (155) 과 함께 동작할 수 있다. 원격 서버 (115) 는 모바일 디바이스들 및/또는 무선 서버들 (155) 과 통신을 다루기 위하여 그리고 위치 요청 (135) 에 응답하여 모바일 디바이스들에 정보 콘텐츠를 전달하거나 정보 콘텐츠에 대한 액세스를 제공하기 위하여 메시징 서버 (165) 를 포함할 수 있다. 예를 들면, 메시징 서버 (165) 는 위치 요청 (135) 을 수신하고 그 다음 위치 요청 (135) 을 위치 서비스 서버 (170) 에 송신할 수 있다. 다른 예를 들면, 메시징 서버 (165) 는, 위치 요청 (135) 에 응답하여 위치 서비스 서버 (170) 에 의해 생성된 모바일 디바이스 (105) 의 위치 관련 정보를 포함할 수 있는 위치를 수신할 수 있고, 그 다음 모바일 디바이스 (105) 로의 송신을 위해 무선 서버들 (155) 에 위치 응답 (190) 을 송신할 수 있다.
메시징 서버 (165) 는 또한 서버들 (155) 을 통해 타 모바일 디바이스들 (110) 로부터 위치 정보를 수신하도록 구성될 수 있다. 예를 들면, 타 모바일 디바이스들 (110) 은 자동적으로 또는 간격을 두거나 또는 원격 서버 (115) 로부터의 질의 (query) 에 응답하여 위치 정보를 제공할 수 있다. 무선 서버들 (155) 은 타 모바일 디바이스들 (110) 로부터 위치 정보를 수신하고 위치 정보를 메시징 서버 (165) 에 송신할 수 있다.
원격 서버 (115) 는 또한, 예를 들면, 모바일 디바이스들 (예를 들면, 모바일 디바이스 (105) 및 타 모바일 디바이스들 (110)) 의 식별 및/또는 위치 정보와 같은 위치 정보를 저장, 색인 (index) 및 제공하기 위해 위치 서비스 서버 (170) 를 포함하거나 위치 서비스 서버 (170) 와 통신할 수 있다. 위치 서비스 서버 (170) 는, 예를 들면, 메시징 서버 (165) 를 통해 모바일 디바이스 (105) 에 의해 제출된 위치 요청 (135) 에 응답하여 적절한 위치 정보를 제공할 수 있다.
하나 이상의 구현들에서, 위치 서비스 서버 (170) 는 프로세서 (420) 및 메모리 (422) 를 포함할 수 있는데, 그 메모리 (422) 는 프로세서 (420) 에 동작적으로 연결되고, 실행될 명령들과 송신, 수신, 프로세싱되는 등의 데이터를 저장할 수 있는, 하나 이상의 컴퓨터 판독가능 매체를 포함할 수 있다. 메모리 (422) 는 솔리드 스테이트 메모리, 마그네틱 하드 메모리, 광학 판독가능 매체 이를테면 CD, 또는 DVD 및 그 밖에 이와 유사한 것 중 하나 이상을 포함할 수 있다. 거기에 저장된 명령들은 시스템 (100) 의 다른 컴포넌트들과 함께, 위치 요청 (135) 에 기초하여 적절한 위치 정보를 검색 및 제공하도록 프로세서 (420) 를 구성하기 위해 실행된다. 예를 들면, 메모리 (422) 는 검색 엔진 (426) 및 위치 서비스 애플리케이션 (424) 을 위한 명령들을 저장할 수 있다. 위치 서비스 서버 (170) 는 또한 연관된 위치 레코드 (185) 를 저장할 수 있는 리포지터리 (175) 에 연결될 수 있다.
하나 이상의 구현들에서, 위치 레코드 (185) 는 모바일 디바이스들 (예를 들면, 타 모바일 디바이스들 (110)) 의 위치 및/또는 식별 정보를 저장할 수 있다. 위치 레코드 (185) 는 타 모바일 디바이스들 (110) 의 위치 정보와 연관된 타 모바일 디바이스 (110) 의 식별 정보 (예를 들면, 네트워크 디바이스 식별자들) 을 저장하는 임의의 타입의 검색가능한 데이터 구조로서 구현될 수 있다. 위치 서비스 애플리케이션 (424) 은, 메모리 (422) 에 저장될 수 있고 프로세서 (420) 에 의해 실행될 수 있는 애플리케이션 프로그램으로서 구현될 수 있다. 위치 서비스 애플리케이션 (424) 은, 위치 요청들 (135) 을 수신하고, 모바일 디바이스 (105) 에 대한 위치를 결정하고, 위치 응답 (190) 을 모바일 디바이스 (105) 에 제공하는데 필요한 로직, 커맨드, 및 명령들을 포함하도록 구성될 수 있다. 위치 서비스 애플리케이션 (424) 은 위치 서비스 서버 (170) 와 호환성있는 임의의 타입의 프로그래밍 언어로 작성될 수 있다.
검색 엔진 (426) 은 모바일 디바이스 (105) 로부터의 위치 요청 (135) 에 응답하여 적절한 위치 정보를 찾아내고 취출하도록 구성될 수 있다. 검색 엔진 (426) 은 메모리 (422) 에 저장될 수 있고 프로세서 (420) 에 의해 실행될 수 있는, 위치 서비스 애플리케이션 (424) 에 통합되든 또는 분리되든지 간에, 애플리케이션 프로그램으로서 구현될 수 있다. 검색 엔진 (426) 은 위치 레코드들 (185) 을 검색하는데 필요한 로직, 커맨드, 및 명령들을 포함하도록 구성될 수 있다. 검색 엔진은 위치 서비스 서버 (170) 와 호환성있는 임의의 타입의 프로그래밍 언어로 작성될 수 있다.
도시된 구현에서, 예를 들면, 위치 질의를 수신하기 전에, 위치 서비스 서버 (170) 는 리포지터리 (175), 연관된 위치 레코드 (185) 및/또는 위치 서비스 서버 (170) 에 연결된 다른 컴퓨터 판독가능 데이터 스토리지의 크롤 (crawl) 을 수행하여 거기에 저장된 정보 콘텐츠를 찾아내고 색인할 수 있다. 따라서, 검색 엔진 (426) 은 위치 요청 (135) 에 응답하여 색인에 액세스하는 것에 의해 적절한 위치 정보를 찾아낼 수 있다.
하나 이상의 구현들에서, 위치 요청 (135) 이 수신되고 나면, 위치 서비스 애플리케이션 (424) 은 위치 요청 (135) 을 분석 (parse) 하고 위치 요청 (135) 에 포함된 타 모바일 디바이스들 (110) 의 식별 정보를 결정하도록 구성될 수 있다. 위치 서비스 애플리케이션 (424) 은 검색 엔진 (426) 에 타 모바일 디바이스들 (110) 의 식별 정보를 전달하도록 구성될 수 있다. 검색 엔진 (426) 은 타 모바일 디바이스들 (110) 의 식별과 연관된 위치 정보를 결정하고 임의의 위치 정보를 취출하기 위하여 위치 레코드 (185) 를 검색하도록 구성될 수 있다. 검색 엔진 (426) 은 위치 서비스 애플리케이션 (424) 에 위치 정보를 리턴 (return) 하도록 구성될 수 있다.
하나 이상의 구현들에서, 위치 서비스 애플리케이션 (424) 은 모바일 디바이스 (105) 에 어떤 위치 정보를 전달할지 및/또는 위치 정보 및 통신 프로토콜의 형태와 같은 정보 콘텐츠를 어떻게 전달할지 등을 결정하도록 구성될 수 있다. 위치 서비스 애플리케이션 (424) 은 타 모바일 디바이스들 (110) 중 하나 이상의 취출된 위치 정보에 기초하여 모바일 디바이스 (105) 에 대한 위치를 결정하도록 구성될 수 있다. 위치 서비스 애플리케이션 (424) 은, 위치 정보가 취출된 타 모바일 디바이스들 (110) 의 수에 따라 임의의 수의 프로세스들 및 알고리즘들을 이용하여 위치를 결정하도록 구성될 수 있다. 예를 들면, 위치 서비스 애플리케이션 (424) 이 단 하나의 타 모바일 디바이스 (110) 에 대해 위치 정보를 식별하면, 위치 서비스 애플리케이션 (424) 은 모바일 디바이스 (105) 의 위치를 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 의 위치인 것으로 결정하도록 구성될 수 있다. 위치 서비스 애플리케이션 (424) 이 모바일 디바이스 (105) 의 부근 내의 하나 보다 많은 타 모바일 디바이스 (110) 에 대한 위치 정보를 식별하면, 위치 서비스 애플리케이션 (424) 은 타 모바일 디바이스들 (110) 중 하나의 취출된 위치 정보를 선택하는 것에 의해 모바일 디바이스 (105) 의 위치를 결정하거나 위치 정보를 조합하여 모바일 디바이스 (105) 의 위치를 결정하도록 구성될 수 있다. 예를 들면, 위치 서비스 애플리케이션 (424) 은, 모바일 디바이스 (170) 의 위치를 결정하기 위하여 취출된 위치 정보를 평균화, 모바일 디바이스 (105) 의 위치를 결정하기 위하여 타 모바일 디바이스들 (110) 중 하나로부터 가장 최근에 수신된 취출 위치 정보를 선택, 및/또는 모바일 디바이스 (105) 의 위치를 결정하기 위하여 타 모바일 디바이스들 (110) 중 하나와 연관된 수신 위치 정보를 무작위 선택하도록 구성될 수 있다. 당업자는 위치 서비스 애플리케이션 (424) 은 취출된 위치 정보에 기초하여 모바일 디바이스 (105) 의 위치를 결정하기 위하여 임의의 프로세스 또는 알고리즘을 이용할 수 있다는 것을 깨닫게 될 것이다.
하나 이상의 구현들에서, 위치 서비스 애플리케이션 (424) 은 타 모바일 디바이스들 (110) 로부터 위치 정보를 획득하고 위치 레코드 (185) 에 위치 정보를 저장하도록 구성될 수 있다. 그래서, 위치 서비스 애플리케이션 (424) 은, 타 모바일 디바이스들 (110) 의 위치 정보 및 식별 정보를 획득하기 위하여 타 모바일 디바이스들 (110) 중 하나 이상의 위치 서비스 애플리케이션 (320) 과 통신하고, 위치 레코드 (185) 에 획득된 위치 정보 및 식별 정보를 저장하는데 필요한 로직, 커맨드, 및 명령들을 포함하도록 구성될 수 있다.
도 5a 내지 도 5c는 본 교시의 하나 이상의 구현들에 따라, (도 1 및 도 4에 도시된 바처럼) 원격 서버 (115) 로부터 위치 서비스를 요청하기 위해 (도 1 및 도 2에 도시된 바처럼) 모바일 디바이스 (105) 에 의해 수행될 수 있는 프로세싱의 플로우차트를 예시한다. 도 5a에 예시된 바처럼, 510에서, 모바일 디바이스 (105) 는 모바일 디바이스 (105) 에 대한 위치의 결정을 개시할 수 있다. 모바일 디바이스 (105) 는 임의의 수의 이벤트들의 발생시 결정을 개시할 수 있다. 예를 들면, 애플리케이션들의 세트 (214) 중 하나 이상은 모바일 디바이스 (105) 의 위치를 획득할 수 있고, 위치를 결정하기 위하여 위치 API 드라이버 (220) 를 이용할 수 있다. 또한, 모바일 디바이스 (105) 의 사용자는 모바일 디바이스 (105) 의 위치를 알기를 원하고, 위치를 결정하기 위하여 위치 API 드라이버 (220) 를 이용할 수 있다.
다음으로, 515에서, 모바일 디바이스 (105) 는 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 을 식별할 수 있다. 예를 들면, 모바일 디바이스 (105) 및 하나 이상의 타 모바일 디바이스들 (110) 은 자기 구성 네트워크 인터페이스, 이를테면 Bluetooth® 네트워크 인터페이스를 통해 통신하도록 구성될 수 있다. 모바일 디바이스 (105) 는 자기 구성 네트워크 신호의 범위 (125) 내에 임의의 타 모바일 디바이스들 (110) 에 조회 요청 (120) 을 브로드캐스트 (broadcast) 하도록 구성될 수 있다. 조회 요청 (120) 은, Bluetooth® 조회 요청과 같은, 타 모바일 디바이스들 (110) 로부터 응답을 요청 또는 개시하도록 구성될 수 있다.
520에서, 모바일 디바이스 (105) 는 타 모바일 디바이스들 (110) 의 식별을 수신할 수 있다. 예를 들면, 자기 구성 네트워크 인터페이스를 포함하는 타 모바일 디바이스들 (110) 은 조회 요청 (120) 에 대한 응답 (130) 을 송신하도록 구성될 수 있다. 응답 (130) 은 타 모바일 디바이스들 (110) 을 식별하는 정보를 포함하도록 구성될 수 있다. 예를 들면, 자기 구성 네트워크 인터페이스를 포함하는 타 모바일 디바이스들 (110) 의 각각은 그의 구체적인 자기 구성 네트워크 인터페이스의 네트워크 디바이스 식별자들, 이를테면 Bluetooth® 디바이스 식별자로 응답할 수 있다. 525에서, 모바일 디바이스 (105) 는 타 모바일 디바이스들 (110) 의 식별 정보를 원격 서버 (115) 에 제공할 수 있다. 예를 들면, 모바일 디바이스 (105) 는 무선 서비스 제공자 (140) 를 통해 원격 서버 (115) 와 통신할 수 있다.
도 5b에 예시된 바처럼, 530에서, 원격 서버 (115) 는 모바일 디바이스 (105) 로부터 타 모바일 디바이스들 (110) 의 식별 정보를 수신할 수 있다. 예를 들면, 원격 서버 (115) 는 위치 요청 (135) 을 수신하기 위해 무선 서비스 제공자 (140) 및/또는 모바일 디바이스 (105) 와의 통신을 처리하기 위해 메시징 서버 (165) 를 포함할 수 있다.
535에서, 원격 서버 (115) 는 타 모바일 디바이스들 (110) 과 연관된 위치 정보에 기초하여 모바일 디바이스 (105) 의 위치를 결정할 수 있다. 예를 들면, 원격 서버 (115) 의 위치 서비스 서버 (170) 는 모바일 디바이스 (105) 의 부근 내의 타 모바일 디바이스들 (110) 과 연관된 위치 정보를 위해 리포지터리 (175) 에서 위치 레코드 (185) 를 검색하도록 구성될 수 있고, 위치 레코드 (185) 로부터 임의의 이용가능한 위치 정보를 취출하도록 구성될 수 있다. 또한, 위치 서비스 서버 (170) 는 여기에 포함된 구현들에서 설명된 프로세스 또는 알고리즘들에 따라 모바일 디바이스 (105) 의 위치를 결정할 수 있다.
540에서, 원격 서버 (115) 는 모바일 디바이스들 (105) 에 위치를 제공할 수 있다. 예를 들면, 원격 서버 (115) 는 무선 서비스 제공자 (140) 를 통해 모바일 디바이스 (105) 에, 결정된 위치를 포함하는, 위치 응답 (190) 을 통신하도록 구성될 수 있다.
도 5c에 예시된 바처럼, 545에서, 모바일 디바이스 (105) 는 원격 서버 (115) 로부터 위치를 수신할 수 있다. 예를 들면, 모바일 디바이스 (105) 는 무선 서비스 제공자 (140) 를 통해 원격 서버 (115) 로부터 위치 응답 (190) 을 수신할 수 있다. 550에서, 모바일 디바이스 (105) 는 수신된 위치를 이용할 수 있다. 예를 들면, 모바일 디바이스 (105) 에서 애플리케이션들의 세트 (214) 중 하나는, 여기에 기재된 구현들에 따라, 애플리케이션들의 세트 (214) 중 하나의 기능과 함께 수신된 위치를 이용할 수 있다.
도 6은 본 교시의 하나 이상의 구현들에 따라, (도 1 및 도 3에 도시된 바처럼) 타 모바일 디바이스들 (110) 의 위치 및/또는 식별 기능에 응답하여 (도 1 및 도 4에 도시된 바처럼) 원격 서버 (115) 에 의해 수행될 수 있는 프로세싱의 플로우차트를 예시한다. 610에서, 원격 서버 (115) 는 타 모바일 디바이스들 (110) 과 통신을 개시할 수 있다. 원격 서버 (115) 는 임의의 수의 이벤트들의 발생시 통신을 개시할 수 있다. 예를 들면, 원격 서버 (115) 는 무선 서비스 제공자 (140) 를 통해 위치 및/또는 식별 정보를 위해 하나 이상의 타 모바일 디바이스들 (110) 을 주기적으로 또는 연속적으로 폴링 (polling) 할 수 있다. 또한, 하나 이상의 타 모바일 디바이스들 (110) 은 무선 서비스 제공자 (140) 를 통해 원격 서버 (115) 에 위치 및/또는 식별 정보를 주기적으로 또는 연속적으로 푸시 (push) 할 수 있다.
615에서, 원격 서버 (115) 는 하나 이상의 타 모바일 디바이스들 (110) 로부터 식별 및/또는 위치 정보를 수신할 수 있다. 예를 들면, 개시된 통신에 응답하여, 하나 이상의 타 모바일 디바이스들 (110) 은 무선 서비스 제공자 (140) 를 통해 원격 서버 (115) 의 위치 서비스 서버 (170) 에 식별 및/또는 위치 정보를 전송할 수 있다. 620에서, 원격 서버 (115) 는 타 모바일 디바이스들 (110) 의 식별과 연관된 위치 정보를 저장할 수 있다. 예를 들면, 위치 서비스 서버 (170) 는 타 모바일 디바이스들 (110) 로부터 수신된 위치 레코드 (185) 를, 리포지터리 (175) 에서, 유지하도록 구성될 수 있다. 위치 레코드 (185) 는 타 모바일 디바이스들 (110) 의 식별 정보와 연관된 수신된 위치 데이터를 포함할 수 있다. 625에서, 원격 서버 (115) 는 타 모바일 디바이스들 (110) 로부터 업데이트된 위치 정보를 수신할 수 있다. 예를 들면, 타 모바일 디바이스들 (110) 과의 주기적인, 수동적인 및/또는 자동적인 통신의 결과로서, 위치 서비스 서버 (170) 는 타 모바일 디바이스들 (110) 의 업데이트된 위치 정보에 대응하는 정보를 수신하고, 리포지터리 (175) 의 위치 레코드 (185) 에 식별 정보에 기초하여 업데이트된 위치 정보를 저장할 수 있다.
여기에 기재된 구현들이 실시형태들이 소프트웨어, 펌웨어, 미들웨어 또는 마이크로코드, 및/또는 프로그램 코드 또는 코드 세그먼트로 구현될 때, 이들은 컴퓨터 판독가능 저장 매체, 이를테면 저장 컴포넌트에 저장될 수 있다. 코드 세그먼트는 프로시저, 함수, 서브프로그램, 프로그램, 루틴, 서브루틴, 모듈, 소프트웨어 패키지, 클래스를 표시하거나, 또는 명령들, 데이터 구조들 또는 프로그램 세그먼트들의 임의의 조합을 표시할 수 있다. 코드 세그먼트는 정보, 데이터, 아규먼트 (argument), 파라미터, 또는 메모리 콘텐츠를 전달 및/또는 수신하여 다른 코드 세그먼트 또는 하드웨어 회로에 연결될 수 있다. 정보, 아규먼트, 파라미터, 데이터 등은 메모리 공유, 메시지 전달 (message passing), 토큰 전달 (token passing), 네트워크 송신 등을 포함하는 임의의 적합한 수단을 사용하여 전달, 포워딩, 또는 송신될 수 있다. 소프트웨어 구현을 위해, 여기에 설명된 기법들은 여기에 설명된 기능들을 수행하는 모듈 (예를 들면, 프로시저, 함수 기타 등등) 으로 구현될 수 있다. 소트프웨어 코드는 메모리 유닛에 저장되고 프로세서에 의해 실행될 수 있다. 메모리 유닛은 프로세서 내에서 또는 프로세서 외부에서 구현될 수 있는데, 이 경우에 그것은 당해 기술 분야에서 공지된 바와 같은 다양한 수단을 통해 프로세서에 통신적으로 연결될 수 있다.
이전의 설명은 예시적이고, 구성 및 구현에서의 변화가 당업자에게 떠오를 수도 있다. 가령, 여기에 개시된 구현들과 관련하여 설명된 다양한 예시적인 로직, 로지컬 블록, 모듈, 및 회로는 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 집적 회로 (ASIC), 필드 프로그래밍가능 게이트 어레이 (FPGA) 또는 다른 프로그래밍가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트 또는 여기에 설명된 기능을 수행하도록 설계된 이들의 임의의 조합으로 구현 또는 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 다르게는, 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 또한, 프로세서는 컴퓨팅 디바이스들의 조합, 예를 들어, DSP 와 마이크로프로세서의 조합, 복수의 마이크로프로세서, DSP 코어와 결합한 하나 이상의 마이크로프로세서, 또는 임의의 다른 이러한 구성으로서 구현될 수도 있다.
하나 이상의 예시적 구현들에서, 설명된 기능은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어 구현을 위해, 여기에 설명된 기법들은 여기에 설명된 기능들을 수행하는 모듈 (예를 들면, 프로시저, 함수 기타 등등) 으로 구현될 수 있다. 소트프웨어 코드는 메모리 유닛에 저장되고 프로세서에 의해 실행될 수 있다. 메모리 유닛은 프로세서 내에서 또는 프로세서 외부에서 구현될 수 있는데, 이 경우에 그것은 당해 기술 분야에서 공지된 바와 같은 다양한 수단을 통해 프로세서에 통신적으로 연결될 수 있다. 소프트웨어로 구현되면, 그 기능들은 컴퓨터 판독가능 매체 상의 하나 이상의 명령 또는 코드로서 저장되거나 송신될 수도 있다. 컴퓨터 판독가능 매체는, 유형의 컴퓨터 저장 매체 및 일 장소로부터 다른 장소로의 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하는 통신 매체 양쪽 모두를 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 이용가능한 유형의 매체일 수도 있다. 비한정적 예로서, 이러한 유형의 컴퓨터 판독가능 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장, 마그네틱 디스크 저장 또는 다른 마그네틱 저장 디바이스들, 또는 명령 또는 데이터 구조의 형태로 원하는 프로그램 코드를 반송 또는 저장하는데 사용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 접속이 컴퓨터 판독가능 매체로 적절히 명칭된다. 예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 연선 (twisted pair), 디지털 가입자 라인 (DSL), 또는 적외선, 라디오, 및 마이크로파와 같은 무선 기술을 사용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신되면, 그 동축 케이블, 광섬유 케이블, 연선, DSL, 또는 적외선, 라디오, 및 마이크로파와 같은 무선 기술은 매체의 정의 내에 포함된다. 여기에 설명된 바처럼, 디스크 (disk) 및 디스크 (disc) 는 CD, 레이저 디스크, 광 디스크, DVD, 플로피 디스크 및 블루-레이 디스크를 포함하며, 여기서, 디스크 (disk) 는 일반적으로 데이터를 자기적으로 재생하지만, 디스크 (disc) 는 레이저를 이용하여 광학적으로 데이터를 재생한다. 또한, 상기의 조합은 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
여기에 개시된 구현들과 관련하여 설명된 방법 또는 알고리즘의 단계는 하드웨어로 직접, 프로세서에 의해 실행되는 소프트웨어 모듈로, 또는 그들의 조합으로 구현될 수도 있다. 비록 본 방법은 예들에 의해 설명되었지만, 본 방법의 단계들은 예시된 것과 상이한 순서로 또는 동시에 수행될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM, EPROM, EEPROM, 레지스터, 하드디스크, 착탈형 디스크, CD-ROM, 또는 당업계에 공지된 임의의 다른 형태의 컴퓨터 판독가능 저장 매체에 상주할 수도 있다. 예시적 저장 매체는 프로세서가 저장 매체로부터 정보를 판독할 수 있고 저장 매체에 정보를 기입할 수 있도록 프로세서에 연결된다. 다르게는, 저장 매체는 프로세서에 통합될 수도 있다. 프로세서 및 저장 매체는 ASIC 에 상주할 수도 있다. ASIC는 모바일 디바이스에 상주할 수도 있다. 다르게는, 프로세서 및 저장 매체는 모바일 디바이스에서 이산 컴포넌트로서 상주할 수도 있다. 단수형 또는 통합형으로 설명된 다른 리소스들이 구현들에서, 복수형 또는 분산형일 수 있고 다수 또는 분산형으로 설명된 리소스들은 구현들에서 결합될 수 있다. 따라서 본 교시의 범위는 다음의 청구항들에 의해서만 제한되도록 의도된다.

Claims (48)

  1. 위치 서비스를 가능하게 하기 위한 시스템으로서,
    서버를 포함하고,
    상기 서버는,
    모바일 디바이스들의 세트에 대한 위치 정보의 레코드를 유지하고, 각 모바일 디바이스에 대한 상기 위치 정보는 각 모바일 디바이스의 식별과 연관되며;
    모바일 디바이스로부터 위치에 대한 요청을 수신하고, 상기 요청은 상기 모바일 디바이스의 부근 내의 타 모바일 디바이스들을 위한 식별들의 세트를 포함하며;
    수신된 상기 식별들의 세트와 연관된, 상기 레코드로부터, 이용가능한 위치 정보를 이용하여 상기 모바일 디바이스의 위치를 결정하고;
    결정된 상기 위치를 상기 모바일 디바이스에 제공하도록 구성되는, 위치 서비스를 가능하게 하기 위한 시스템.
  2. 제 1 항에 있어서,
    상기 서버는 또한,
    상기 모바일 디바이스들의 세트로부터 상기 위치 정보를 수신하고;
    상기 위치 정보가 수신된 시간과 각 모바일 디바이스의 식별과 연관된 각 모바일 디바이스의 상기 위치 정보를, 상기 레코드에서, 저장하도록 구성된, 위치 서비스를 가능하게 하기 위한 시스템.
  3. 제 2 항에 있어서,
    상기 모바일 디바이스들의 세트로부터 상기 위치 정보가 주기적으로 수신되는, 위치 서비스를 가능하게 하기 위한 시스템.
  4. 제 1 항에 있어서,
    상기 위치를 결정하는 것은,
    상기 위치를 결정하기 위하여 상기 이용가능한 위치 정보를 평균화하는 것, 상기 결정된 위치로서 상기 모바일 디바이스들의 세트에서 하나의 모바일 디바이스와 연관된 가장 최근에 수신된 상기 이용가능한 위치 정보를 선택하는 것, 또는 상기 결정된 위치로서 상기 모바일 디바이스들의 세트에서 하나의 모바일 디바이스와 연관된 상기 이용가능한 위치 정보를 무작위로 선택하는 것 중 하나를 포함하는, 위치 서비스를 가능하게 하기 위한 시스템.
  5. 제 1 항에 있어서,
    상기 식별은 자기 구성 네트워크 디바이스 식별자를 포함하는, 위치 서비스를 가능하게 하기 위한 시스템.
  6. 제 1 항에 있어서,
    상기 위치 정보는 GPS (Global Positioning System) 위치 픽스, A-GPS (Assisted Global Positioning System) 위치 픽스, 갈릴레오 시스템 위치 픽스, 또는 타워 삼변측량 (tower Trilateration) 픽스 중 하나를 포함하는, 위치 서비스를 가능하게 하기 위한 시스템.
  7. 위치 서비스를 가능하게 하는 방법으로서,
    모바일 디바이스들의 세트에 대한 위치 정보의 레코드를 유지하는 단계로서, 각 모바일 디바이스에 대한 상기 위치 정보는 각 모바일 디바이스의 식별과 연관되는, 상기 위치 정보의 레코드를 유지하는 단계;
    모바일 디바이스로부터 위치에 대한 요청을 수신하는 단계로서, 상기 요청은 상기 모바일 디바이스의 부근 내의 타 모바일 디바이스들을 위한 식별들의 세트를 포함하는, 상기 위치에 대한 요청을 수신하는 단계;
    수신된 상기 식별들의 세트와 연관된, 상기 레코드로부터, 이용가능한 위치 정보를 이용하여 상기 모바일 디바이스의 위치를 결정하는 단계; 및
    결정된 상기 위치를 상기 모바일 디바이스에 제공하는 단계를 포함하는, 위치 서비스를 가능하게 하는 방법.
  8. 제 7 항에 있어서,
    상기 위치 서비스를 가능하게 하는 방법은,
    상기 모바일 디바이스들의 세트로부터 상기 위치 정보를 수신하는 단계; 및
    상기 위치 정보가 수신된 시간과 각 모바일 디바이스의 식별과 연관된 각 모바일 디바이스의 상기 위치 정보를, 상기 레코드에서, 저장하는 단계를 더 포함하는, 위치 서비스를 가능하게 하는 방법.
  9. 제 8 항에 있어서,
    상기 모바일 디바이스들의 세트로부터 상기 위치 정보가 주기적으로 수신되는, 위치 서비스를 가능하게 하는 방법.
  10. 제 7 항에 있어서,
    상기 위치를 결정하는 단계는,
    상기 위치를 결정하기 위하여 상기 이용가능한 위치 정보를 평균화하는 단계, 상기 결정된 위치로서 상기 모바일 디바이스들의 세트에서 하나의 모바일 디바이스와 연관된 가장 최근에 수신된 상기 이용가능한 위치 정보를 선택하는 단계, 또는 상기 결정된 위치로서 상기 모바일 디바이스들의 세트에서 하나의 모바일 디바이스와 연관된 상기 이용가능한 위치 정보를 무작위로 선택하는 단계 중 하나를 포함하는, 위치 서비스를 가능하게 하는 방법.
  11. 제 7 항에 있어서,
    상기 식별은 자기 구성 네트워크 디바이스 식별자를 포함하는, 위치 서비스를 가능하게 하는 방법.
  12. 제 7 항에 있어서,
    상기 위치 정보는 GPS (Global Positioning System) 위치 픽스, A-GPS (Assisted Global Positioning System) 위치 픽스, 갈릴레오 시스템 위치 픽스, 또는 타워 삼변측량 (tower Trilateration) 픽스 중 하나를 포함하는, 위치 서비스를 가능하게 하는 방법.
  13. 위치 서비스를 가능하게 하기 위한 시스템으로서,
    모바일 디바이스들의 세트에 대한 위치 정보의 레코드를 유지하기 위한 수단으로서, 각 모바일 디바이스에 대한 상기 위치 정보는 각 모바일 디바이스의 식별과 연관되는, 상기 위치 정보의 레코드를 유지하기 위한 수단;
    모바일 디바이스로부터 위치에 대한 요청을 수신하기 위한 수단 및 상기 위치를 상기 모바일 디바이스에 제공하기 위한 수단으로서, 상기 요청은 상기 모바일 디바이스의 부근 내의 타 모바일 디바이스들을 위한 식별들의 세트를 포함하는, 상기 위치에 대한 요청을 수신하기 위한 수단 및 상기 위치를 상기 모바일 디바이스에 제공하기 위한 수단; 및
    수신된 상기 식별들의 세트와 연관된, 상기 레코드로부터, 이용가능한 위치 정보를 이용하여 상기 모바일 디바이스의 위치를 결정하기 위한 수단을 포함하는, 위치 서비스를 가능하게 하기 위한 시스템.
  14. 제 13 항에 있어서,
    상기 요청을 수신하기 위한 수단은 또한 상기 모바일 디바이스들의 세트로부터 상기 위치 정보를 수신하도록 구성되고;
    상기 레코드를 유지하기 위한 수단은 또한, 상기 위치 정보가 수신된 시간과 각 모바일 디바이스의 식별과 연관된 각 모바일 디바이스의 상기 위치 정보를, 상기 레코드에서, 저장하도록 구성된, 위치 서비스를 가능하게 하기 위한 시스템.
  15. 제 14 항에 있어서,
    상기 모바일 디바이스들의 세트로부터 상기 위치 정보가 주기적으로 수신되는, 위치 서비스를 가능하게 하기 위한 시스템.
  16. 제 13 항에 있어서,
    상기 위치를 결정하는 것은,
    상기 위치를 결정하기 위하여 상기 이용가능한 위치 정보를 평균화하는 것, 상기 결정된 위치로서 상기 모바일 디바이스들의 세트에서 하나의 모바일 디바이스와 연관된 가장 최근에 수신된 상기 이용가능한 위치 정보를 선택하는 것, 또는 상기 결정된 위치로서 상기 모바일 디바이스들의 세트에서 하나의 모바일 디바이스와 연관된 상기 이용가능한 위치 정보를 무작위로 선택하는 것 중 하나를 포함하는, 위치 서비스를 가능하게 하기 위한 시스템.
  17. 제 13 항에 있어서,
    상기 식별은 자기 구성 네트워크 디바이스 식별자를 포함하는, 위치 서비스를 가능하게 하기 위한 시스템.
  18. 제 13 항에 있어서,
    상기 위치 정보는 GPS (Global Positioning System) 위치 픽스, A-GPS (Assisted Global Positioning System) 위치 픽스, 갈릴레오 시스템 위치 픽스, 또는 타워 삼변측량 (tower Trilateration) 픽스 중 하나를 포함하는, 위치 서비스를 가능하게 하기 위한 시스템.
  19. 컴퓨터에 의해 실행될 때 상기 컴퓨터로 하여금 위치 서비스들을 수행하게 하는 명령들을 저장하는 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품으로서,
    상기 컴퓨터 판독가능 매체는,
    상기 컴퓨터로 하여금 모바일 디바이스들의 세트에 대한 위치 정보의 레코드를 유지하게 하기 위한 적어도 하나의 명령으로서, 각 모바일 디바이스에 대한 상기 위치 정보는 각 모바일 디바이스의 식별과 연관되는, 상기 위치 정보의 레코드를 유지하게 하기 위한 적어도 하나의 명령;
    상기 컴퓨터로 하여금 모바일 디바이스로부터 위치에 대한 요청을 수신하게 하기 위한 적어도 하나의 명령으로서, 상기 요청은 상기 모바일 디바이스의 부근 내의 타 모바일 디바이스들을 위한 식별들의 세트를 포함하는, 상기 위치에 대한 요청을 수신하게 하기 위한 적어도 하나의 명령;
    수신된 상기 식별들의 세트와 연관된, 상기 레코드로부터, 이용가능한 위치 정보를 이용하여 상기 모바일 디바이스의 위치를 상기 컴퓨터로 하여금 결정하게 하기 위한 적어도 하나의 명령; 및
    상기 컴퓨터로 하여금 상기 모바일 디바이스에 결정된 상기 위치를 제공하게 하기 위한 적어도 하나의 명령을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  20. 제 19 항에 있어서,
    상기 컴퓨터로 하여금 상기 모바일 디바이스들의 세트로부터 상기 위치 정보를 수신하게 하기 위한 적어도 하나의 명령;
    상기 컴퓨터로 하여금 상기 위치 정보가 수신된 시간과 각 모바일 디바이스의 식별과 연관된 각 모바일 디바이스의 상기 위치 정보를, 상기 레코드에서, 저장하게 하기 위한 적어도 하나의 명령을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  21. 제 20 항에 있어서,
    상기 모바일 디바이스들의 세트로부터 상기 위치 정보가 주기적으로 수신되는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  22. 제 19 항에 있어서,
    상기 위치를 상기 컴퓨터로 하여금 결정하게 하기 위한 적어도 하나의 명령은,
    상기 위치를 결정하기 위하여 상기 컴퓨터로 하여금 상기 이용가능한 위치 정보를 평균화하게 하기 위한 적어도 하나의 명령, 상기 컴퓨터로 하여금 상기 결정된 위치로서 상기 모바일 디바이스들의 세트에서 하나의 모바일 디바이스와 연관된 가장 최근에 수신된 상기 이용가능한 위치 정보를 선택하게 하기 위한 적어도 하나의 명령, 또는 상기 결정된 위치로서 상기 모바일 디바이스들의 세트에서 하나의 모바일 디바이스와 연관된 상기 이용가능한 위치 정보를 상기 컴퓨터로 하여금 무작위로 선택하게 하기 위한 적어도 하나의 명령 중 하나를 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  23. 제 19 항에 있어서,
    상기 식별은 자기 구성 네트워크 디바이스 식별자를 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  24. 제 19 항에 있어서,
    상기 위치 정보는 GPS (Global Positioning System) 위치 픽스, A-GPS (Assisted Global Positioning System) 위치 픽스, 갈릴레오 시스템 위치 픽스, 또는 타워 삼변측량 (tower Trilateration) 픽스 중 하나를 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  25. 모바일 디바이스로서,
    서버에 대한 무선 인터페이스;
    자기 구성 무선 네트워크 인터페이스; 및
    상기 무선 인터페이스 및 상기 자기 구성 무선 네트워크 인터페이스와 통신하는 프로세서를 포함하고,
    상기 프로세서는,
    상기 자기 구성 무선 네트워크 인터페이스를 통해 상기 모바일 디바이스의 부근내에 타 모바일 디바이스들의 세트를 식별하는 것;
    상기 타 모바일 디바이스들의 세트의 식별들에 기초하여, 상기 모바일 디바이스의 위치를, 상기 무선 인터페이스를 통해 상기 서버로부터, 요청하는 것; 및
    상기 모바일 디바이스의 위치를, 상기 무선 인터페이스를 통해 상기 서버로부터, 수신하는 것을 포함하는 프로세싱을 개시하도록 구성되는, 모바일 디바이스.
  26. 제 25 항에 있어서,
    상기 타 모바일 디바이스들의 세트를 식별하는 것은,
    상기 모바일 디바이스의 부근내에 타 모바일 디바이스들에 조회 요청을, 상기 자기 구성 무선 네트워크 인터페이스를 통해, 브로드캐스팅하는 것;
    상기 타 모바일 디바이스들의 세트로부터의 응답을, 상기 자기 구성 무선 네트워크 인터페이스를 통해, 수신하는 것을 포함하고,
    상기 응답은 상기 타 모바일 디바이스들의 세트의 식별들을 포함하는, 모바일 디바이스.
  27. 제 26 항에 있어서,
    상기 식별들은 자기 구성 네트워크 디바이스 식별자들을 포함하는, 모바일 디바이스.
  28. 제 25 항에 있어서,
    상기 프로세서는 또한,
    상기 위치를 요청하는 상기 모바일 디바이스의 컴포넌트에 상기 위치를 제공하는 것을 포함하는 프로세싱을 개시하도록 구성되는, 모바일 디바이스.
  29. 제 25 항에 있어서,
    상기 위치를 저장하기 위한, 상기 프로세서와 통신하는 메모리를 더 포함하는, 모바일 디바이스.
  30. 제 25 항에 있어서,
    상기 위치는 상기 타 모바일 디바이스들의 세트의 GPS (Global Positioning System) 위치 픽스, 상기 타 모바일 디바이스들의 세트의 A-GPS (Assisted Global Positioning System) 위치 픽스, 갈릴레오 시스템 위치 픽스, 또는 상기 타 모바일 디바이스들의 세트의 타워 삼변측량 (tower Trilateration) 픽스 중 적어도 하나에 기초하는, 모바일 디바이스.
  31. 위치 결정 하드웨어에 독립적으로 모바일 디바이스에서 위치를 결정하는 방법으로서,
    상기 모바일 디바이스의 부근 내의 타 모바일 디바이스들의 세트를 식별하는 단계;
    상기 타 모바일 디바이스들의 세트의 식별들에 기초하여, 상기 모바일 디바이스의 위치를, 서버로부터, 요청하는 단계; 및
    상기 모바일 디바이스의 위치를, 상기 서버로부터, 수신하는 단계를 포함하는, 모바일 디바이스에서 위치를 결정하는 방법.
  32. 제 31 항에 있어서,
    상기 타 모바일 디바이스들의 세트를 식별하는 단계는,
    상기 모바일 디바이스의 부근내에 타 모바일 디바이스들에 조회 요청을 브로드캐스팅하는 단계;
    상기 타 모바일 디바이스들의 세트로부터의 응답을 수신하는 단계를 포함하고,
    상기 응답은 상기 타 모바일 디바이스들의 세트의 식별들을 포함하는, 모바일 디바이스에서 위치를 결정하는 방법.
  33. 제 32 항에 있어서,
    상기 식별들은 자기 구성 네트워크 디바이스 식별자들을 포함하는, 모바일 디바이스에서 위치를 결정하는 방법.
  34. 제 31 항에 있어서,
    상기 모바일 디바이스에서 위치를 결정하는 방법은,
    상기 위치를 요청하는 상기 모바일 디바이스의 컴포넌트에 상기 위치를 제공하는 단계를 더 포함하는, 모바일 디바이스에서 위치를 결정하는 방법.
  35. 제 31 항에 있어서,
    상기 모바일 디바이스에서 위치를 결정하는 방법은,
    상기 모바일 디바이스에서 상기 위치를 저장하는 단계를 더 포함하는, 모바일 디바이스에서 위치를 결정하는 방법.
  36. 제 31 항에 있어서,
    상기 위치는 상기 타 모바일 디바이스들의 세트의 GPS (Global Positioning System) 위치 픽스, 상기 타 모바일 디바이스들의 세트의 A-GPS (Assisted Global Positioning System) 위치 픽스, 갈릴레오 시스템 위치 픽스, 또는 상기 타 모바일 디바이스들의 세트의 타워 삼변측량 (tower Trilateration) 픽스 중 적어도 하나에 기초하는, 모바일 디바이스에서 위치를 결정하는 방법.
  37. 위치 결정 하드웨어에 독립적으로 모바일 디바이스에서 위치를 결정하기 위한 시스템으로서,
    상기 모바일 디바이스의 부근 내의 타 모바일 디바이스들의 세트를 식별하기 위한 수단;
    상기 타 모바일 디바이스들의 세트의 식별들에 기초하여, 상기 모바일 디바이스의 위치를, 서버로부터, 요청하기 위한 수단; 및
    상기 모바일 디바이스의 위치를, 상기 서버로부터, 수신하기 위한 수단을 포함하는, 모바일 디바이스에서 위치를 결정하기 위한 시스템.
  38. 제 37 항에 있어서,
    상기 타 모바일 디바이스들의 세트를 식별하기 위한 수단은,
    상기 모바일 디바이스의 부근내에 타 모바일 디바이스들에 조회 요청을 브로드캐스트하고;
    상기 타 모바일 디바이스들의 세트로부터의 응답을 수신하도록 구성되고,
    상기 응답은 상기 타 모바일 디바이스들의 세트의 식별들을 포함하는, 모바일 디바이스에서 위치를 결정하기 위한 시스템.
  39. 제 38 항에 있어서,
    상기 식별들은 자기 구성 네트워크 디바이스 식별자들을 포함하는, 모바일 디바이스에서 위치를 결정하기 위한 시스템.
  40. 제 37 항에 있어서,
    상기 위치를 요청하는 상기 모바일 디바이스의 컴포넌트에 상기 위치를 제공하기 위한 수단을 더 포함하는, 모바일 디바이스에서 위치를 결정하기 위한 시스템.
  41. 제 37 항에 있어서,
    상기 모바일 디바이스에서 상기 위치를 저장하기 위한 수단을 더 포함하는, 모바일 디바이스에서 위치를 결정하기 위한 시스템.
  42. 제 37 항에 있어서,
    상기 위치는 상기 타 모바일 디바이스들의 세트의 GPS (Global Positioning System) 위치 픽스, 상기 타 모바일 디바이스들의 세트의 A-GPS (Assisted Global Positioning System) 위치 픽스, 갈릴레오 시스템 위치 픽스, 또는 상기 타 모바일 디바이스들의 세트의 타워 삼변측량 (tower Trilateration) 픽스 중 적어도 하나에 기초하는, 모바일 디바이스에서 위치를 결정하기 위한 시스템.
  43. 모바일 디바이스에 의해 실행될 때 상기 모바일 디바이스로 하여금 위치 결정 하드웨어에 독립적으로 위치를 결정하게 하는 명령들을 저장하는 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품으로서,
    상기 컴퓨터 판독가능 매체는,
    상기 모바일 디바이스로 하여금 상기 모바일 디바이스의 부근 내의 타 모바일 디바이스들의 세트를 식별하게 하기 위한 적어도 하나의 명령;
    상기 모바일 디바이스로 하여금 상기 타 모바일 디바이스들의 세트의 식별들에 기초하여 상기 모바일 디바이스의 위치를, 서버로부터, 요청하게 하기 위한 적어도 하나의 명령; 및
    상기 모바일 디바이스로 하여금 상기 모바일 디바이스의 위치를, 상기 서버로부터, 수신하게 하기 위한 적어도 하나의 명령을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  44. 제 43 항에 있어서,
    상기 모바일 디바이스로 하여금 상기 타 모바일 디바이스들의 세트를 식별하게 하기 위한 적어도 하나의 명령은,
    상기 모바일 디바이스로 하여금 상기 모바일 디바이스의 부근 내의 타 모바일 디바이스들에 조회 요청을 브로드캐스트하게 하기 위한 적어도 하나의 명령; 및
    상기 타 모바일 디바이스들의 세트로부터의 응답을 상기 모바일 디바이스로 하여금 수신하게 하기 위한 적어도 하나의 명령을 포함하고,
    상기 응답은 상기 타 모바일 디바이스들의 세트의 식별들을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  45. 제 44 항에 있어서,
    상기 식별들은 자기 구성 네트워크 디바이스 식별자들을 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  46. 제 43 항에 있어서,
    상기 모바일 디바이스로 하여금 상기 위치를 요청하는 상기 모바일 디바이스의 컴포넌트에 상기 위치를 제공하게 하기 위한 적어도 하나의 명령을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  47. 제 43 항에 있어서,
    상기 모바일 디바이스로 하여금 상기 모바일 디바이스에 상기 위치를 저장하게 하기 위한 적어도 하나의 명령을 더 포함하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
  48. 제 43 항에 있어서,
    상기 위치는 상기 타 모바일 디바이스들의 세트의 GPS (Global Positioning System) 위치 픽스, 상기 타 모바일 디바이스들의 세트의 A-GPS (Assisted Global Positioning System) 위치 픽스, 갈릴레오 시스템 위치 픽스, 또는 상기 타 모바일 디바이스들의 세트의 타워 삼변측량 (tower Trilateration) 픽스 중 적어도 하나에 기초하는, 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품.
KR1020127020011A 2009-12-31 2010-12-23 위치 결정 하드웨어에 독립적으로 모바일 디바이스들의 위치를 결정하는 방법 및 시스템 KR20120113242A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/651,004 2009-12-31
US12/651,004 US8798644B2 (en) 2009-12-31 2009-12-31 Systems and methods for determining the location of mobile devices independent of location fixing hardware

Publications (1)

Publication Number Publication Date
KR20120113242A true KR20120113242A (ko) 2012-10-12

Family

ID=43711083

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127020011A KR20120113242A (ko) 2009-12-31 2010-12-23 위치 결정 하드웨어에 독립적으로 모바일 디바이스들의 위치를 결정하는 방법 및 시스템

Country Status (6)

Country Link
US (1) US8798644B2 (ko)
EP (1) EP2520125A1 (ko)
JP (1) JP2013516842A (ko)
KR (1) KR20120113242A (ko)
CN (1) CN102687572A (ko)
WO (1) WO2011082099A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160132045A (ko) * 2015-03-31 2016-11-16 바이두 온라인 네트웍 테크놀러지 (베이징) 캄파니 리미티드 전자기기 또는 애플리케이션 기반의 위치 결정 방법 및 장치

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101174209B1 (ko) * 2010-06-18 2012-08-14 엔에이치엔(주) 단말의 위치를 획득하는 방법 및 시스템
JP2012142794A (ja) * 2010-12-28 2012-07-26 Fujitsu Ltd サービス提供方法、情報処理装置及びプログラム
EP2664201A1 (en) * 2011-01-13 2013-11-20 Panasonic Corporation Method for determination of wireless terminals positions and associated system and apparatus thereof
WO2013048389A1 (en) * 2011-09-28 2013-04-04 Intel Corporation Techniques for dynamic enpoint secure location awareness
DE102011054509A1 (de) * 2011-10-14 2013-04-18 Deutsche Telekom Ag Verfahren und Vorrichtung zur Kontrolle einer Mobilfunkschnittstelle auf mobilen Endgeräten
US10136391B2 (en) * 2012-01-05 2018-11-20 Tara Chand Singhal System and method to enhance battery life in cell phone devices
EP2637381B1 (en) * 2012-03-09 2019-07-31 Alcatel Lucent Method of filtering applications
US9338153B2 (en) * 2012-04-11 2016-05-10 Telecommunication Systems, Inc. Secure distribution of non-privileged authentication credentials
US8639266B2 (en) 2012-04-18 2014-01-28 Google Inc. Using peer devices to locate a mobile device
EP2885949B1 (en) * 2012-08-15 2020-05-13 Telefonaktiebolaget LM Ericsson (publ) Methods and apparatus for determining relationships in heterogeneous networks
DE102012112974A1 (de) * 2012-12-21 2014-06-26 Bdt Media Automation Gmbh Verfahren und Vorrichtung zur automatischen Adressierung und Erkennung räumlicher Nachbarschaftsbeziehungen in modularen Systemen zur Objektübergabe
US9143920B2 (en) * 2013-06-06 2015-09-22 Qualcomm Incorporated Fine grain position data collection
CN104244174B (zh) * 2013-06-13 2018-10-26 阿里巴巴集团控股有限公司 终端的地理位置信息的获取方法和服务器
US9426622B2 (en) * 2014-12-22 2016-08-23 Verizon Patent And Licensing Inc. Determination of a location of a device based on information that identifies locations of other devices
US10024951B2 (en) * 2014-12-31 2018-07-17 Qualcomm Incorporated Crowdsourcing network synchronization status
US10187747B1 (en) 2018-06-26 2019-01-22 Uber Technologies, Inc. Location search using dynamic regions generated based on service data
US11924804B2 (en) 2020-07-27 2024-03-05 Qualcomm Incorporated User equipment positioning estimate for specified time
US20220038854A1 (en) * 2020-07-28 2022-02-03 Vonage Business Inc. Systems and methods for obtaining location data for mobile computing devices

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0102813D0 (en) * 2001-02-05 2001-03-21 Nokia Mobile Phones Ltd Exchange of information in Bluetooth
US6778818B1 (en) * 2001-06-18 2004-08-17 At&T Corp. Enhanced 911 system for providing witness identification in a wireless communication system
JP2004221991A (ja) 2003-01-15 2004-08-05 Mitsubishi Electric Corp 位置検知装置及び位置検知システム及び位置検知方法及び位置検知プログラム
DE10345511B4 (de) 2003-09-30 2005-11-17 Siemens Ag Verfahren zur Ermittlung der Ortsposition mindestens eines mobilen Funkkommunikationsgeräts, zugehöriges Funkkommunikationsgerät sowie Funkkommunikationssystem
KR100976109B1 (ko) * 2003-11-26 2010-08-16 퀄컴 인코포레이티드 네트워크 정보를 이용하여 이동국의 위치 추정을 계산하는방법 및 장치
US7308273B2 (en) 2004-06-14 2007-12-11 Nokia Corporation Method for determining a location
JP2006013670A (ja) 2004-06-23 2006-01-12 Matsushita Electric Ind Co Ltd 車載情報通信システム
US7536188B1 (en) * 2004-09-01 2009-05-19 Avaya Inc. Communication device locating system
CA2630636A1 (en) 2005-11-23 2007-05-31 Skyhook Wireless, Inc. Location toolbar for internet search and communication
US7471954B2 (en) 2006-02-24 2008-12-30 Skyhook Wireless, Inc. Methods and systems for estimating a user position in a WLAN positioning system based on user assigned access point locations
US7595754B2 (en) 2007-12-24 2009-09-29 Qualcomm Incorporated Methods, systems and apparatus for integrated wireless device location determination
ES2326774B1 (es) 2008-03-19 2010-07-14 Neomedia Wireless, S.L. Metodo de localizacion de vehiculos basado en infraestructuras wifi.
US8094067B2 (en) * 2008-08-12 2012-01-10 Broadcom Corporation Method and system for determining a position of a mobile communication device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160132045A (ko) * 2015-03-31 2016-11-16 바이두 온라인 네트웍 테크놀러지 (베이징) 캄파니 리미티드 전자기기 또는 애플리케이션 기반의 위치 결정 방법 및 장치

Also Published As

Publication number Publication date
EP2520125A1 (en) 2012-11-07
WO2011082099A1 (en) 2011-07-07
CN102687572A (zh) 2012-09-19
JP2013516842A (ja) 2013-05-13
US20110159862A1 (en) 2011-06-30
US8798644B2 (en) 2014-08-05

Similar Documents

Publication Publication Date Title
US8798644B2 (en) Systems and methods for determining the location of mobile devices independent of location fixing hardware
US8527987B2 (en) Method and device for installing applications on NFC-enabled devices
US8478299B2 (en) System and methods for obtaining coarse location for a mobile device
EP3058386B1 (en) Method and apparatus for detecting location changes and monitoring assistance data via scanning
US9288751B2 (en) Use of position data to select wireless access point
JP5271712B2 (ja) 移動体通信装置においてローカライズされた電子フィードを取得する方法及び装置
EP2716019B1 (en) Baseband on-board location monitoring
US8737619B2 (en) Method of triggering location based events in a user equipment
US8634348B2 (en) Method and system for facilitating wireless communication via alternate wireless pathway
US9392572B2 (en) Using location-based request data for identifying beacon locations
US20130290522A1 (en) Engine, System and Method of Locating a Mobile Device and Reporting on Other Devices Proximately Located Thereto
US9973884B2 (en) Device, system and method of controlling access to location sources
US8630231B2 (en) Method and system for facilitating wireless communication via alternate wireless pathway
US20120179737A1 (en) System and method for searching for mobile devices, and for establishing connections and data exchange between the mobile devices
US20090233622A1 (en) System and method for location based exchanges of data facilitating distributed locational applications
US20070115951A1 (en) System and method providing location based wireless resource identification
CN102172049B (zh) 具有位置服务能力的移动接收机
US20110256869A1 (en) Peer-to-peer assisted network search
KR101789628B1 (ko) 정보의 대리 다운로드 또는 업로드를 위한 방법 및 시스템
US8774836B2 (en) Method and system for optimized transfer of location database information
US20160112830A1 (en) Method and Apparatus for Detecting Smartphone Application Users Utilizing Globally Unique Identifiers and Wireless Sensors
WO2015073754A1 (en) Applying crowdsourced sequenced instructions to automatically interact with captive portals of wi-fi networks
CN107950005B (zh) 服务元素主机选择
CN106503023B (zh) 提示附近好友的方法及装置
WO2013192010A2 (en) D-slp service area detection using area id

Legal Events

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