# dumon-geolocation Implement manager GNSS, Wi‑Fi RTT, IMU, Kalman fusion, event emitter ## Install ```bash npm install dumon-geolocation npx cap sync ``` ## API * [`startPositioning()`](#startpositioning) * [`stopPositioning()`](#stoppositioning) * [`getLatestPosition()`](#getlatestposition) * [`addListener('onPositionUpdate', ...)`](#addlisteneronpositionupdate-) * [Interfaces](#interfaces) ### startPositioning() ```typescript startPositioning() => Promise ``` -------------------- ### stopPositioning() ```typescript stopPositioning() => Promise ``` -------------------- ### getLatestPosition() ```typescript getLatestPosition() => Promise ``` **Returns:** Promise<PositioningData> -------------------- ### addListener('onPositionUpdate', ...) ```typescript addListener(eventName: 'onPositionUpdate', listenerFunc: (data: PositioningData) => void) => PluginListenerHandle ``` | Param | Type | | ------------------ | ------------------------------------------------------------------------------ | | **`eventName`** | 'onPositionUpdate' | | **`listenerFunc`** | (data: PositioningData) => void | **Returns:** PluginListenerHandle -------------------- ### Interfaces #### PositioningData | Prop | Type | | --------------- | ----------------------------------------------------------- | | **`source`** | 'GNSS' \| 'WIFI' \| 'FUSED' \| 'MOCK' | | **`timestamp`** | number | | **`latitude`** | number | | **`longitude`** | number | | **`accuracy`** | number | | **`gnssData`** | SatelliteStatus | | **`wifiData`** | WifiAp[] | | **`imuData`** | ImuData | #### SatelliteStatus | Prop | Type | | ------------------------- | --------------------------------------- | | **`satellitesInView`** | number | | **`usedInFix`** | number | | **`constellationCounts`** | { [key: string]: number; } | #### WifiAp | Prop | Type | | -------------- | ------------------- | | **`ssid`** | string | | **`bssid`** | string | | **`rssi`** | number | | **`distance`** | number | #### ImuData | Prop | Type | | ------------------ | ------------------- | | **`accelX`** | number | | **`accelY`** | number | | **`accelZ`** | number | | **`gyroX`** | number | | **`gyroY`** | number | | **`gyroZ`** | number | | **`speed`** | number | | **`acceleration`** | number | | **`directionRad`** | number | #### PluginListenerHandle | Prop | Type | | ------------ | ----------------------------------------- | | **`remove`** | () => Promise<void> |