1.0.1 • Published 8 years ago
mode-s-aircraft-store v1.0.1
mode-s-aircraft-store
A utility library for keeping track of active aircrafts and their position based on their Mode S messages as decoded by mode-s-decoder.
Mode S is an aviation transponder interrogation mode used by Secondary Surveillance Radar (SSR) and Automatic Dependent Surveillance-Broadcast (ADS-B) systems.
For an example of this module in use, see AirplaneJS.
Installation
npm install mode-s-aircraft-store --saveUsage
const AircraftStore = require('mode-s-aircraft-store')
const store = new AircraftStore({
  timeout: 120000 // remove airplane from store if we haven't seen it for 2 minutes
})
// Add a Mode S message to the store.
// `message` is a decoded Mode S message generated by the mode-s-decoder module.
store.addMessage(message)
store.getAircrafts().forEach(function (aircraft) {
  console.log('Aircraft:\n' +
    `  ID: ${aircraft.icao}\n` +
    `  Altitude: ${aircraft.altitude}\n` +
    `  Speed: ${aircraft.speed}\n` +
    `  Heading: ${aircraft.heading}\n` +
    `  Latitude: ${aircraft.lat}\n` +
    `  Longitude: ${aircraft.lng}\n`)
})API
store = new AircraftStore([options])
Initialize an AircraftStore instance.
Arguments:
options- An optional options object
The following options are available:
timeout- The number of milliseconds before an aircraft is removed from the store if no message from it have been seen (default:120000)
store.addMessage(message)
Add a new message to the store.
The message must be a decoded Mode S message received in detect
callback from the
mode-s-decoder module.
aircrafts = store.getAircrafts()
Return an array of aircrafts currently in the store.
Each aircraft have the following properties:
icao- The aircraft ICAO identifiercount- The total number of messages received by this aircraftseen- Timestamp of when the last message of this aircraft was seen (in number of milliseconds elapsed since 1 January 1970 00:00:00 UTC)callsign- The aircraft callsignaltitude- The aircraft altitudeunit- The aircraft altitude unit. UseDecoder.UNIT_FEETandDecoder.UNIT_METERSfrom the mode-s-decoder module to determine the correct typespeed- The aircraft speedheading- The aircraft headinglat- The aircraft latitudelng- The aircraft longitude
License
MIT