FastAPI app that pulls interval usage from Sungrow iSolarCloud (OAuth2), caches AER Consumer Data Right electricity plan data, and compares actual metered usage against every available plan to estimate real annual cost (TOU, tiered feed-in, and flat tariffs). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
34 lines
1.2 KiB
Text
34 lines
1.2 KiB
Text
# Copy to .env and fill in. See SETUP.md for how to get iSolarCloud credentials.
|
|
|
|
DB_PATH=power_compare.db
|
|
|
|
# --- iSolarCloud (leave USE_MOCK_ISOLARCLOUD=true until these are set up) ---
|
|
USE_MOCK_ISOLARCLOUD=true
|
|
ISOLARCLOUD_AUTH_MODE=oauth2
|
|
ISOLARCLOUD_REGION=australia
|
|
ISOLARCLOUD_PLANT_ID=
|
|
|
|
# -- oauth2 mode (recommended -- see SETUP.md for why v1 login is unreliable) --
|
|
ISOLARCLOUD_APP_KEY=
|
|
ISOLARCLOUD_APP_SECRET=
|
|
ISOLARCLOUD_OAUTH_APP_ID=
|
|
ISOLARCLOUD_OAUTH_REDIRECT_URI=https://localhost:8000/isolarcloud/callback
|
|
|
|
# -- v1 mode (username/password login -- kept for reference, uncomment ISOLARCLOUD_AUTH_MODE=v1 to use) --
|
|
# ISOLARCLOUD_USERNAME=
|
|
# ISOLARCLOUD_PASSWORD=
|
|
# Only needed if your developer portal application was issued an RSA
|
|
# public key (Settings -> Open API) -- paste it exactly as given,
|
|
# including the BEGIN/END lines, wrapped in quotes so the newlines survive:
|
|
# ISOLARCLOUD_RSA_PUBLIC_KEY="-----BEGIN PUBLIC KEY-----
|
|
# MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...
|
|
# -----END PUBLIC KEY-----"
|
|
# ISOLARCLOUD_RSA_PUBLIC_KEY=
|
|
|
|
# --- Household / AER plan scoping ---
|
|
DISTRIBUTOR=Energex
|
|
POSTCODE=
|
|
|
|
# --- Scheduler cadence ---
|
|
ISOLARCLOUD_POLL_INTERVAL_MINUTES=10
|
|
AER_REFRESH_INTERVAL_HOURS=24
|