
Security News
MCP Community Begins Work on Official MCP Metaregistry
The MCP community is launching an official registry to standardize AI tool discovery and let agents dynamically find and install MCP servers.
mobile-locator
Advanced tools
Get geolocation from cell tower information.
Currently, the following APIs are implemented:
cellocation
: Cellocation.com API (China)gpsspg
: GPSspg.com API (China)google
: Google Geolocation APIhaoservice
: HaoService.com API (China)mozilla
: Mozilla Geolocation APImylnikov
: Mylnikov Geolocation APIopencellid
: OpenCellID APIunwiredlabs
: UnwiredLabs Location APIyandex
: Yandex Geolocation API (Russian)Create the location engine by given name and options.
Name | Options |
---|---|
cellocation | system (optional): Coordinate system: wgs84 (Default), gcj02 , bd09 . |
google | key : Google API key |
gpsspg | key : GPSspg API key, oid : GPSspg OID,system (optional): Coordinate system: 0 :wgs84_(Default)_; 1 :gcj02; 2 :bd09; 3 :QQ Maps; 4 :MapBar |
haoservice | key : HaoService API key, system (optional): Coordinate system: 0 : gcj02; 1 :bd09; 2 :wgs84_(Default)_ |
mozilla | key : Mozilla API key |
mylnikov | data (optional): open : Use open source data. |
opencellid | key : OpenCellID API key |
unwiredlabs | token : UnwiredLabs Location API token |
yandex | key : Yandex API key |
Besides the above engine-specific options, more general options are also available:
verbose
: Print more debug information if verbose
is true
;timeout
: Set the timeout value in milliseconds. There is no timeout by default.The returned value is a locate()
function, which will be described in the next section.
info
should contain cell information, including mnc
, mcc
, lac
and cid
.
The function will return a promise, which will return the location
from given geolocation service.
location
is an object contains following properties:
Property | Description |
---|---|
longitude | Longitude |
latitude | Latitude |
accuracy | The accuracy range of the given position |
address (optional) | For some API, this property contains the human readable address line. |
const api = require('mobile-locator');
const locate = api('google', { key: YOUR_GOOGLE_API_KEY });
locate({ mcc: 460, mnc: 0, lac: 4219, cid: 20925 })
.then(location => console.log(JSON.stringify(location, null, 2)));
The output would be:
{
longitude: 116.46679499999998,
latitude: 39.9910226,
accuracy: 606
}
Usage
$ mobile-locator -h
Usage: mobile-locator [options]
Locate geolocation information based on Cell base station data
Options:
-h, --help output usage information
-V, --version output the version number
-c, --cell <cell> Cell tower base station information in format "MCC,MNC,LAC,CID". "-c 460,0,4219,20925"
-e, --engine <engine> Geolocation service engine. {cellocation, google, gpsspg, haoservice, mozilla, mylnikov, opencellid, unwiredlabs, yandex}. Default: google
-a, --arguments <arguments> Arguments for geolocation engine. e.g. "key:XXX,oid:123".
-m, --map <map> Map service. {google, bing, openstreetmap, google.cn, bing.cn, baidu}.
-v, --verbose Verbose output.
Examples:
$ mobile-locator -a "key:XXX" -c 460,0,4219,20925
$ mobile-locator -e cellocation -a "system:bd09" -m baidu -c 460,0,4219,20925
By default, the Google Geolocation engine will be used.
$ mobile-locator -a "key:GOOGLE_API_KEY" -c 460,0,4219,20925
{"longitude":116.46679499999998,"latitude":39.9910226,"accuracy":606}
With verbose option:
$ mobile-locator -a "key:AIzaSyAL2sfTLqUv9Rb3ercbtuu__PG2pS_4eDo" -c 460,0,4219,20925 -v
Geolocation engine: "google"
Cell: {"mcc":"460","mnc":"0","lac":"4219","cid":"20925"}
Location: {"longitude":116.46679499999998,"latitude":39.9910226,"accuracy":606}
More complex example:
cellocation
engine;bd09
coordinate system;$ mobile-locator -e cellocation -a 'system:bd09' -m baidu -v -c 460,0,4219,20925
Geolocation engine: "cellocation"
Cell: {"mcc":"460","mnc":"0","lac":"4219","cid":"20925"}
Location: {"longitude":"116.479653","latitude":"39.997967","accuracy":"100","address":"北京市朝阳区望京街道望京园402号楼;广顺南大街与阜安西路路口东北109米"}
Map url: http://api.map.baidu.com/marker?location=39.997967,116.479653&title=_&content=北京市朝阳区望京街道望京园402号楼;广顺南大街与阜安西路路口东北109米&output=html&autoOpen=true
FAQs
Locate geolocation information based on Cell base station data
The npm package mobile-locator receives a total of 69 weekly downloads. As such, mobile-locator popularity was classified as not popular.
We found that mobile-locator demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
The MCP community is launching an official registry to standardize AI tool discovery and let agents dynamically find and install MCP servers.
Research
Security News
Socket uncovers an npm Trojan stealing crypto wallets and BullX credentials via obfuscated code and Telegram exfiltration.
Research
Security News
Malicious npm packages posing as developer tools target macOS Cursor IDE users, stealing credentials and modifying files to gain persistent backdoor access.