mirror of
https://github.com/home-assistant/core.git
synced 2025-04-25 01:38:02 +00:00

Co-authored-by: Brett Adams <Bre77@users.noreply.github.com> Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> Co-authored-by: JEMcats <hurst-status09@icloud.com> Co-authored-by: JEMcats <jakobmattheis@icloud.com>
78 lines
1.8 KiB
Python
78 lines
1.8 KiB
Python
"""Constants used by Tesla Fleet integration."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from enum import StrEnum
|
|
import logging
|
|
|
|
from tesla_fleet_api.const import Scope
|
|
|
|
DOMAIN = "tesla_fleet"
|
|
|
|
CONF_REFRESH_TOKEN = "refresh_token"
|
|
|
|
LOGGER = logging.getLogger(__package__)
|
|
|
|
CLIENT_ID = "71b813eb-4a2e-483a-b831-4dec5cb9bf0d"
|
|
AUTHORIZE_URL = "https://auth.tesla.com/oauth2/v3/authorize"
|
|
TOKEN_URL = "https://auth.tesla.com/oauth2/v3/token"
|
|
|
|
SCOPES = [
|
|
Scope.OPENID,
|
|
Scope.OFFLINE_ACCESS,
|
|
Scope.VEHICLE_DEVICE_DATA,
|
|
Scope.VEHICLE_LOCATION,
|
|
Scope.VEHICLE_CMDS,
|
|
Scope.VEHICLE_CHARGING_CMDS,
|
|
Scope.ENERGY_DEVICE_DATA,
|
|
Scope.ENERGY_CMDS,
|
|
]
|
|
|
|
MODELS = {
|
|
"S": "Model S",
|
|
"3": "Model 3",
|
|
"X": "Model X",
|
|
"Y": "Model Y",
|
|
"C": "Cybertruck",
|
|
"T": "Tesla Semi",
|
|
}
|
|
|
|
ENERGY_HISTORY_FIELDS = [
|
|
"solar_energy_exported",
|
|
"generator_energy_exported",
|
|
"grid_energy_imported",
|
|
"grid_services_energy_imported",
|
|
"grid_services_energy_exported",
|
|
"grid_energy_exported_from_solar",
|
|
"grid_energy_exported_from_generator",
|
|
"grid_energy_exported_from_battery",
|
|
"battery_energy_exported",
|
|
"battery_energy_imported_from_grid",
|
|
"battery_energy_imported_from_solar",
|
|
"battery_energy_imported_from_generator",
|
|
"consumer_energy_imported_from_grid",
|
|
"consumer_energy_imported_from_solar",
|
|
"consumer_energy_imported_from_battery",
|
|
"consumer_energy_imported_from_generator",
|
|
"total_home_usage",
|
|
"total_battery_charge",
|
|
"total_battery_discharge",
|
|
"total_solar_generation",
|
|
"total_grid_energy_exported",
|
|
]
|
|
|
|
|
|
class TeslaFleetState(StrEnum):
|
|
"""Teslemetry Vehicle States."""
|
|
|
|
ONLINE = "online"
|
|
ASLEEP = "asleep"
|
|
OFFLINE = "offline"
|
|
|
|
|
|
class TeslaFleetClimateSide(StrEnum):
|
|
"""Tesla Fleet Climate Keeper Modes."""
|
|
|
|
DRIVER = "driver_temp"
|
|
PASSENGER = "passenger_temp"
|