# dumon-geolocation Plugin Capacitor Android untuk positioning real-time berbasis GNSS multi-konstelasi, Wi-Fi RTT/RSSI, dan IMU (Accelerometer + Gyroscope), dilengkapi dengan sensor fusion (Kalman Filter) dan deteksi lokasi palsu. ## ๐Ÿ“ฆ Install ```bash npm install dumon-geolocation npx cap sync ``` ## ๐Ÿš€ API ### ๐Ÿ“ก startPositioning() ```ts startPositioning() => Promise ``` Memulai pengambilan data posisi secara real-time dari GNSS, Wi-Fi, dan IMU. --- ### ๐Ÿ›‘ stopPositioning() ```ts stopPositioning() => Promise ``` Menghentikan semua sensor dan positioning. --- ### ๐Ÿ“ getLatestPosition() ```ts getLatestPosition() => Promise ``` Mengembalikan data posisi terkini yang telah difusi. --- ### ๐Ÿ”„ addListener('onPositionUpdate', ...) ```ts addListener(eventName: 'onPositionUpdate', listenerFunc: (data: PositioningData) => void): PluginListenerHandle ``` Listener untuk update posisi secara berkala (real-time). --- ## ๐Ÿงพ Interfaces ### PositioningData ```ts interface PositioningData { source: 'GNSS' | 'WIFI' | 'FUSED' | 'MOCK'; latitude: number; longitude: number; accuracy: number; speed: number; acceleration: number; directionRad: number; timestamp: number; isMocked: boolean; // Optional raw sensor data (available internally) // imuData?: ImuData; // gnssData?: SatelliteStatus; // wifiData?: WifiAp[]; } ``` ### ImuData ```ts interface ImuData { accelX: number; accelY: number; accelZ: number; gyroX: number; gyroY: number; gyroZ: number; speed: number; acceleration: number; directionRad: number; } ``` ### SatelliteStatus ```ts interface SatelliteStatus { satellitesInView: number; usedInFix: number; constellationCounts: { [key: string]: number }; } ``` ### WifiAp ```ts interface WifiAp { ssid: string; bssid: string; rssi: number; distance?: number; } ``` ### PluginListenerHandle ```ts interface PluginListenerHandle { remove: () => Promise; } ``` --- ## โ„น๏ธ Catatan - Plugin hanya mendukung platform Android saat ini. - Ideal digunakan bersama dengan plugin `Geolocation` bawaan Capacitor untuk fallback atau perbandingan. - Sensor fusion berbasis Kalman Filter (versi sederhana). - `directionRad` merujuk arah dalam radian relatif terhadap utara (azimuth). - Output `isMocked` berguna untuk deteksi lokasi palsu. --- Lisensi: MIT โ€“ Dibuat oleh Tim Dumon