feat: add ship tools

Add vessels_in_area, find_vessel and get_vessel_track over the live
vessel source, and a ships section in situation_brief. Without an AIS
key the source's own message reaches clients as an unavailable feed.
This commit is contained in:
Sameh Khamis committed 2026-10-01 12:32:09 -07:00
1 parent 0a74e36ce8
commit e6cbcc31ad
10 files changed
+393 -5

No files matched your search

+5
View File
@@ -18,6 +18,7 @@ import { createTransitSource } from '../../src/layers/transit/source.js';
import { createApplicationRequestServices } from '../../src/services/requests.js';
import {
createAdsbLolSource,
createAisStreamSource,
createOpenSkySource,
} from '../../src/sources/live/standalone.js';
import {
@@ -55,6 +56,10 @@ export function createLocalToolServices(options = {}) {
launches: createLaunchSource({ fetchImpl }),
aircraft: createOpenSkySource({ fetchImpl }),
military: createAdsbLolSource({ fetchImpl }),
vessels: createAisStreamSource({
fetchImpl,
origin: () => new URL(options.apiBase ?? DEFAULT_API_BASE).origin,
}),
satellites: createSatelliteSource({ fetchImpl }),
cctv: createCctvSource({ fetchImpl }),
radio: createRadioSource({ fetchImpl }),