Skip to main content

Capital ship movement early warning plugin for AllianceAuth

Project description

aa-captrack

AllianceAuth plugin for tracking and alerting on capital ship activity (and other configured ship groups) across characters/accounts, with an operational dashboard, snoozing, and Discord notifications.

Version: v1.1.0
Status: Stable
Compatibility: AllianceAuth v5.0.0+ | AllianceAuth-corptools v3.0.0+


What's new in v1.1.0 (highlights)

  • AllianceAuth v5.0.0 compatibility
    • Full support for AllianceAuth v5.0.0 and Django 5.2
    • Updated hook patterns for AA v5 compatibility
  • AllianceAuth-corptools v3.0.0 support
    • Compatible with Corptools v3.0.0 stable release
    • Fully tested with eve_sde backed schema
  • Production-ready
    • All beta features now stable
    • Corptools 3.x integration fully validated
    • SDE-backed region selection mature

Overview

aa-captrack monitors capital ship activity (and other configured ship groups) using Corptools asset/audit data, presenting:

  • Real-time dashboard visibility grouped by main
  • Threshold-based alerting (per ship class/group)
  • Discord webhook notifications (critical and standard)
  • Per-pilot snoozing + Snooze All
  • Clean separation between Critical, Alerting, and Informational states

The plugin prioritises operational clarity and avoids unnecessary alert noise.


Capital Tracking Logic

Ship Class Behavior
Titans Always alerting
Supercarriers Always alerting
Dreadnoughts Alert when ≥ threshold (default: 5) under same main
Lancer Dreads Alert when ≥ threshold
Carriers Alert when ≥ threshold
Force Auxiliaries Alert when ≥ threshold
Capital Industrials Tracked only (no alerts)

Threshold logic is applied consistently across:

  • Dashboard
  • Discord alerts
  • Background tasks

Notes:

  • “Capital Industrials” are tracked for visibility but do not generate alerts by default.
  • Group IDs and thresholds are configurable in Admin.

Dashboard

  • Collapsible cards with rotating chevrons
  • Card header shows:
    • Main (character) name
    • Corporation name + logo
    • Alliance name + logo (if present)
    • Audit button (Corptools audit link)
    • Snooze All controls
    • Status badge (Critical/Alerting/Info)
  • Clear separation of:
    • Critical
    • Alerting
    • Informational
  • Optional display of unclassified ships
  • Configurable refresh interval
  • Optional remembered collapse state per user

Audit button format

Audit link for a main character uses Corptools’ route format:

/audit/r/<main_character_id>/account/overview

Example:

/audit/r/2114270226/account/overview


Snoozing

  • Snoozing is per pilot (by design)
  • Supports multiple durations (e.g. 1h / 6h / 24h)
  • ∞ (Infinite) snooze supported (until cleared)
  • Snooze All applies a duration to all pilots listed in the card
  • Snoozed pilots are excluded from:
    • Dashboard alerts
    • Discord notifications

Discord Integration

  • Alerts include only alerting ships
  • Separate webhooks for:
    • Critical alerts
    • Standard alerts
  • Optional mention support:
    • Role mention: <@&ROLE_ID>
    • User mention: <@USER_ID>
  • Uses allowed_mentions to ensure only configured mentions are allowed (prevents accidental @everyone/@here).

Permissions

Permission Description
captrack.basic_access View dashboard
captrack.admin_access Configure settings

Installation

Requirements

  • AllianceAuth: 5.0.0+
  • Django: 5.2+
  • Corptools: 3.0.0+
  • Database: MySQL/MariaDB recommended

If you are running Corptools 3.x, you also need the SDE stack working:

  • eve_sde installed and in INSTALLED_APPS
  • modeltranslation installed and first in INSTALLED_APPS
  • SDE data synced using: python manage.py esde_load_sde

Install the plugin

pip install aa-captrack

Add to INSTALLED_APPS

INSTALLED_APPS += [
    "captrack",
]

If you are on Corptools 3.x + eve_sde:

  • Ensure modeltranslation is first in INSTALLED_APPS
  • Ensure eve_sde is present in INSTALLED_APPS

Migrate + collect static

python manage.py migrate captrack
python manage.py collectstatic --noinput

Restart services

Restart AllianceAuth web and celery services.


Configuration

Configuration is managed via the AllianceAuth Admin Panel:

Admin → Captrack → CapTrack Settings

Only one settings row is expected.

Configurable options include

  • Enabled / disabled state
  • Tracked group IDs
  • Industrial group IDs
  • Alert thresholds per ship class/group
  • Discord webhook URLs (critical + standard)
  • Discord mention configuration (role IDs and/or user IDs)
  • Dashboard behavior options
  • Snooze durations / visibility preferences

Background tasks

CapTrack uses periodic tasks to refresh/watch data and drive alerts.
In v1.0.9b4, watchlist refresh was updated to handle Corptools 3.x task changes (celery-once signature validation, task name changes, and b7 single-character asset refresh).


Compatibility

AllianceAuth / Corptools

  • AllianceAuth: 4.x (4.13+)
  • Corptools: 3.0.0b7 (target), other 3.x betas may work

SDE / eve_sde

If you use Corptools 3.x (SDE-backed), ensure:

  1. eve_sde and modeltranslation are installed
  2. modeltranslation is first in INSTALLED_APPS
  3. Run and schedule SDE sync:
python manage.py esde_load_sde

Corptools migrations may refuse to apply if eve_sde data is stale (>24h).

CapTrack’s Blacklisted Regions feature also uses eve_sde.Region, so SDE data must be present for region search/autocomplete.


Versioning policy

  • v1.0.9b4: Beta/pre-release focusing on Corptools 3.x + SDE migration + region blacklist fixes
  • Future versions will:
    • Avoid destructive migrations where possible
    • Prefer additive schema changes
    • Be tested against existing installs

Screenshots

Screenshots are placeholders and may change as the UI evolves.

Dashboard — Overview

Dashboard Overview

Displays all tracked capital activity grouped by main character, with clear visual separation between critical, alerting, and informational states.


Dashboard — Collapsed / Expanded States

Dashboard Collapsed

Cards can be collapsed to reduce noise. Collapse state can optionally be remembered per user.


Dashboard — Snoozed Pilots

Dashboard Snoozed

Pilots can be snoozed individually to suppress alerts and notifications for a configurable duration.


Admin — CapTrack Settings

Admin Settings

All configuration is managed through a single settings entry in the AllianceAuth admin panel.


Discord — Critical Alert Example

Discord Critical Alert

Critical alerts (Titans, Supercarriers) are always sent immediately.


License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aa_captrack-1.1.0.tar.gz (785.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aa_captrack-1.1.0-py3-none-any.whl (42.6 kB view details)

Uploaded Python 3

File details

Details for the file aa_captrack-1.1.0.tar.gz.

File metadata

  • Download URL: aa_captrack-1.1.0.tar.gz
  • Upload date:
  • Size: 785.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for aa_captrack-1.1.0.tar.gz
Algorithm Hash digest
SHA256 37e70d5a6e3242c12455f712dd5414b12474e553c185085ffe7106f9713f4016
MD5 d8deef84f59478618d6815a26dbad55a
BLAKE2b-256 485bd993fb703b0c0595ca2e5a5963a16e999b835486be00ffc47df1be8f7aee

See more details on using hashes here.

File details

Details for the file aa_captrack-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: aa_captrack-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 42.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for aa_captrack-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 76abefbe38d6fb05f96df12512cef15a80ce1b16e195d24c1a0b8f688f23e202
MD5 13c5923b4083fe2f94a2cfc8fcffc35c
BLAKE2b-256 a7d08d86e6a8d6973b906d8997ba028c1ab2eaea5c60b7a600aa067e3705f4cd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page