Initial commit: AIS vessel position tracking microservice

Go service that connects to aisstream.io websocket, filtered by MMSIs
from track_devices table. Writes positions to aisstream_pos (24h TTL)
and upserts latest position per vessel to aisstream_last. Reloads
MMSI list every 5 minutes to pick up changes.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
evmo 2026-04-27 01:40:50 +00:00
commit 966ca73b9b
6 changed files with 402 additions and 0 deletions

8
go.mod Normal file
View file

@ -0,0 +1,8 @@
module aisstream
go 1.22
require (
github.com/gorilla/websocket v1.5.3
github.com/lib/pq v1.10.9
)