AllianceAuth Market Management Tool
Project description
Market Manager for Alliance Auth
Market Manager and Market Browser plugin for Alliance Auth.
Inspired by EveMarketer, Fuzzworks Market and all those that came before them
Features
-
Market Browser
- Item Search with Autocomplete
- Buy/Sell Orders
- Item Statistics (WIP)
- Order highlighting on Corporation and User ownership of Orders
-
Fetching Public Orders by configurable Regions
-
Fetching Character Orders from provided Tokens
- Will append EveCharacter (and more) details to orders gathered from other means
-
Fetching Corporation Orders from provided Tokens
- Will append EveCorporation (and more) details to orders gathered from other means
- Minor sanity checking to check for ingame Roles before hitting market ESI to reduce errors from tokens with no access to data.
-
Fetching Structure market orders, for configured Tokens.
- Requires mapping tokens to their allowed Structures and/or Corporation's Structures. Since CCP does not allow us to know what markets we can see
- Failing to resolve will disable the token mapping to avoid error-bans.
-
WIP Structure ID Resolver
- Resolves Stations via Django-EveUniverse EveEntity resolver
- Resolves Citadels internally
- Fetches Corporation Citadels from Corporation Tokens loaded with the appropriate EVE Roles ("Station_Manager")
- get_universe_structures_structure_id requires docking ACL Access. As there is no way to tell who has docking (even the owner corporation is not a guarantee),
-
Will detect and use any tokens loaded by other means, if you request the scopes as part of a wider scoped app (Such as an Audit tool etc.)
Planned Features
- Configurable Alerts
- Quantity and/or Price Orders.
- Item Statistics, Currently only Volume is calculated, welcoming advice on Medians and Percentiles in Django
- Manually defining Tokens that are on ACLs for use in pulling structures from the get_universe_structures_structure_id endpoint which wont require Station_Manager.
Installation
Step 1 - Django Eve Universe
Market Manager is an App for Alliance Auth, Please make sure you have this installed. Market Manager is not a standalone Django Application
Market Manager needs the app django-eveuniverse to function. Please make sure it is installed before continuing.
Step 2 - Install app
pip install aa-market-manager
Step 3 - Configure Auth settings
Configure your Auth settings (local.py
) as follows:
- Add
'marketmanager'
toINSTALLED_APPS
- Add below lines to your settings file:
## Settings for AA-MarketManager
# Market Orders
CELERYBEAT_SCHEDULE['marketmanager_fetch_public_market_orders'] = {
'task': 'marketmanager.tasks.fetch_public_market_orders',
'schedule': crontab(minute=0, hour='*/3'),
}
CELERYBEAT_SCHEDULE['marketmanager_fetch_all_character_orders'] = {
'task': 'marketmanager.tasks.fetch_all_character_orders',
'schedule': crontab(minute=0, hour='*/3'),
}
CELERYBEAT_SCHEDULE['marketmanager_fetch_all_corporation_orders'] = {
'task': 'marketmanager.tasks.fetch_all_corporation_orders',
'schedule': crontab(minute=0, hour='*/3'),
}
CELERYBEAT_SCHEDULE['marketmanager_fetch_all_structure_orders'] = {
'task': 'marketmanager.tasks.fetch_all_structure_orders',
'schedule': crontab(minute=0, hour='*/3'),
}
# Structure Information
CELERYBEAT_SCHEDULE['marketmanager_fetch_public_structures'] = {
'task': 'marketmanager.tasks.fetch_public_structures',
'schedule': crontab(minute=0, hour=0, day_of_week=3),
}
CELERYBEAT_SCHEDULE['marketmanager_update_private_structures'] = {
'task': 'marketmanager.tasks.fetch_public_structures',
'schedule': crontab(minute=0, hour=0, day_of_week=3),
}
CELERYBEAT_SCHEDULE['marketmanager_fetch_all_corporations_structures'] = {
'task': 'marketmanager.tasks.fetch_all_corporations_structures',
'schedule': crontab(minute=0, hour='*/3'),
}
Step 4 - Maintain Alliance Auth
- Run migrations
python manage.py migrate
- Gather your staticfiles
python manage.py collectstatic
- Restart your project
supervisorctl restart myauth:
Step 5 (Optional) - Pre-Load Django-EveUniverse
This is less required the more you have used eveuniverse in the past
python manage.py eveuniverse_load_data map
This will load Regions, Constellations and Solar Systemspython manage.py eveuniverse_load_data ships
This will load Ships, which are nearly universally on the marketpython manage.py marketmanager_preload_common_eve_types
This will preload a series of evetypes using Groups and Categories I've analyzed to be popular on the market.
Step 5 - Configure Further
In the Admin interface, visit marketmanager > config > add
or <AUTH-URL>/admin/marketmanager/config/add/
Select the Regions you would like to pull Public Market Data for.
Contributing
Make sure you have signed the License Agreement by logging in at https://developers.eveonline.com before submitting any pull requests. All bug fixes or features must not include extra superfluous formatting changes.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for aa-market-manager-0.3.0a0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 19c7dd5e17b203b60396b165ec86850945b1abcd3305eb765b50a0161c16c3bb |
|
MD5 | 35f6895f40cab4b959bc650b455b5381 |
|
BLAKE2b-256 | 4919506846a10f9fe18329a8864e854cc3fa2a63fab927ac9dd4c299bf2e052b |
Hashes for aa_market_manager-0.3.0a0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e303574572afac5d6bb8614180a1cfe4334e0261f3b31fa979eb2e8aafcc55c7 |
|
MD5 | 2284d119ea12b66f4f66b9bd398f6155 |
|
BLAKE2b-256 | f6306578a15f9ec54632ff616e807d0c80abd63a9aaf02019d83e59648de78d6 |