Skip to content

An app for Eve Online allowing corporations and alliances to receive notifications relating to their structures and sovereignty.

License

Notifications You must be signed in to change notification settings

bravecollective/eve-watchman

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Eve Watchman

Eve Watchman is a web app for Eve Online allowing corporations and alliances to receive notifications relating to their structures and sovereignty. It includes a GUI allowing for the management of notifications at the corporation and alliance levels, and can send notifications to both Discord and Slack through their respective Webhook functionalities.

This Branch is a rewrite of the application using a new custom framework. Versions prior to Firetower - 0 - 0 cannot be upgraded to this version while still retaining data!

Current Version: Radar – 0 – 0

Requirements

The core of this framework requires the following:

  • Apache ≥ 2.4
    • The DocumentRoot config option to set /public
    • The FallbackResource config option set to /index.php
  • PHP ≥ 8.0
  • An SQL Server
    • If you are using MySQL, the Authentication Method MUST be the Legacy Version. PDO does not support the use of caching_sha2_password Authentication.
  • A Registered Eve Online Application.
  • [When Using The Neucore Authentication Method] A Neucore Application
    • The application needs the app-chars and app-groups roles added, along with any groups that you want to be able to set access roles for.
    • NOTE: It is not currently recommended to use this authentication method, as access is tied to the corporation / alliance of the logged-in character. An update to make this authentication method viable is planned for the future.

Web App Setup

  • Rename the Configuration File in /config/config.ini.dist to /config/config.ini and setup as needed.
    • If you need to move this file you'll need to change the path it's accessed from in /config/config.php

Relay Setup

  • After setting up the /config/config.ini file and accessing the webserver at least once, you can run /scripts/Python/run.py as a cronjob to begin relaying notifications.
    • It's recommended to run this script once a minute, or at an even higher frequency if you have the capability.

To Deploy the Relay on a Separate Server

In the event that it's not easy to deploy the entire app to one server, the Python-Based Relay can be transferred to another server by following the instructions below:

  • Make sure to copy the /config/config.ini file somewhere python can access it.
  • Move the /scripts/Python/ folder to wherever you'll be running it from.
  • In /Relay/main.py change the CONFIG_PATH_OVERRIDE variable to an absolute path where your copy of config.ini is being stored.

Using Environment Variables Instead of a Config File

  • You can find environment variable keys associated with each config value in the comments of /config/config.ini.dist.
  • Some variables are required, some have defaults, and some are only needed in specific circumstances. These are listed in the comments of the file.
  • The web app and relay each only support either Environment Variables or a Config File, not both.
    • The Config File always takes priority. To use Environment Variables, delete /config/config.ini if it exists.

Supported Notifications

The following notifications are supported and configured according to the following categories:

Upwell Attack/Reinforcement Events

  • StructureDestroyed
  • StructureLostArmor
  • StructureLostShields
  • StructureUnderAttack

Upwell Management Events

  • StructureAnchoring
  • StructureFuelAlert
  • StructureOnline
  • StructureUnanchoring
  • StructureServicesOffline
  • StructureWentHighPower
  • StructureWentLowPower
  • StructureImpendingAbandonmentAssetsAtRisk
  • StructuresReinforcementChanged
  • OwnershipTransferred

Moon Detonations

  • MoonminingAutomaticFracture
  • MoonminingLaserFired

Moon Management

  • MoonminingExtractionCancelled
  • MoonminingExtractionFinished
  • MoonminingExtractionStarted

Sovereignty Attacks/Reinforcement

  • EntosisCaptureStarted
  • SovCommandNodeEventStarted
  • SovStructureReinforced
  • SovStructureDestroyed

Sovereignty Management

  • SovAllClaimAquiredMsg
  • SovAllClaimLostMsg
  • SovStructureSelfDestructRequested
  • SovStructureSelfDestructFinished
  • SovStructureSelfDestructCancel

Skyhook Events

  • SkyhookOnline
  • SkyhookLostShields
  • SkyhookUnderAttack
  • SkyhookDeployed

Skyhook Events (TEMP)

  • (Skyhook Online) - unknown notification type (281)
  • (Skyhook Reinforced) - unknown notification type (282)
  • (Skyhook Under Attack) - unknown notification type (283)
  • (Skyhook Anchoring) - unknown notification type (285)

Customs Office Events

  • OrbitalAttacked
  • OrbitalReinforced

POS Attack Events

  • TowerAlertMsg

POS Management Events

  • TowerResourceAlertMsg
  • AllAnchoringMsg

Corporation Management Events

  • CorpTaxChangeMsg
  • CorpNewCEOMsg
  • CorpVoteCEORevokedMsg

Shareholder Events

  • CorpVoteMsg
  • CorpNewsMsg

Credits

About

An app for Eve Online allowing corporations and alliances to receive notifications relating to their structures and sovereignty.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 66.7%
  • Python 25.7%
  • JavaScript 7.6%