From 5ea045f1cfc35dcddcb74b4855d12b46a010ac56 Mon Sep 17 00:00:00 2001 From: Linus Dietz <45101649+Dielee@users.noreply.github.com> Date: Thu, 22 Jun 2023 13:18:37 +0200 Subject: [PATCH] Add odometer sensor --- src/const.py | 2 ++ src/volvo.py | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/const.py b/src/const.py index 77f7031..1f02251 100644 --- a/src/const.py +++ b/src/const.py @@ -12,6 +12,7 @@ CAR_LOCK_STATE_URL = "https://api.volvocars.com/connected-vehicle/v2/vehicles/{0 CAR_LOCK_URL = "https://api.volvocars.com/connected-vehicle/v2/vehicles/{0}/commands/lock" CAR_UNLOCK_URL = "https://api.volvocars.com/connected-vehicle/v2/vehicles/{0}/commands/unlock" RECHARGE_STATE_URL = "https://api.volvocars.com/energy/v1/vehicles/{0}/recharge-status" +ODOMETER_STATE_URL = "https://api.volvocars.com/connected-vehicle/v1/vehicles/{0}/odometer" charging_system_states = {"CHARGING_SYSTEM_CHARGING": "Charging", "CHARGING_SYSTEM_IDLE": "Idle", "CHARGING_SYSTEM_FAULT": "Fault", "CHARGING_SYSTEM_UNSPECIFIED": "Unspecified"} @@ -22,6 +23,7 @@ supported_sensors = [ {"name": "Estimated Charging Time", "id": "estimated_charging_time", "unit": "minutes", "icon": "timer-sync-outline", "url": RECHARGE_STATE_URL}, {"name": "Charging System Status", "id": "charging_system_status", "icon": "ev-plug-ccs2", "url": RECHARGE_STATE_URL}, {"name": "Estimated Charging Finish Time", "id": "estimated_charging_finish_time", "icon": "timer-sync-outline", "url": RECHARGE_STATE_URL}, + {"name": "Odometer", "id": "odometer", "unit": "km" if settings["babelLocale"] != "en_US" else "mi", "icon": "counter", "url": ODOMETER_STATE_URL}, {"name": "Last Data Update", "id": "last_data_update", "icon": "timer", "url": ""} ] diff --git a/src/volvo.py b/src/volvo.py index f9ce5f4..4b46188 100644 --- a/src/volvo.py +++ b/src/volvo.py @@ -226,5 +226,7 @@ def parse_api_data(data, sensor_id=None): return None elif sensor_id == "lock_status": return data["data"]["carLocked"]["value"] + elif sensor_id == "odometer": + return data["data"]["odometer"]["value"] else: return ""