diff --git a/src/CHANGELOG.md b/src/CHANGELOG.md index 655cf89..d6f9a68 100644 --- a/src/CHANGELOG.md +++ b/src/CHANGELOG.md @@ -1,3 +1,8 @@ +## v1.9.5 +### 🚀 Features: + +- Added "retain" states to survive HA reboot + ## v1.9.4 ### 🐛 Bug Fixes: diff --git a/src/config.yaml b/src/config.yaml index 9f652dd..3395c96 100644 --- a/src/config.yaml +++ b/src/config.yaml @@ -1,6 +1,6 @@ name: "Volvo2Mqtt" description: "Volvo AAOS MQTT bridge" -version: "1.9.4" +version: "1.9.5" slug: "volvo2mqtt" init: false url: "https://github.com/Dielee/volvo2mqtt" diff --git a/src/const.py b/src/const.py index 71569a5..ecb3942 100644 --- a/src/const.py +++ b/src/const.py @@ -1,6 +1,6 @@ from config import settings -VERSION = "v1.9.4" +VERSION = "v1.9.5" OAUTH_TOKEN_URL = "https://volvoid.eu.volvocars.com/as/token.oauth2" OAUTH_AUTH_URL = "https://volvoid.eu.volvocars.com/as/authorization.oauth2" diff --git a/src/mqtt.py b/src/mqtt.py index 9e80e18..4caf217 100644 --- a/src/mqtt.py +++ b/src/mqtt.py @@ -316,7 +316,8 @@ def update_car_data(force_update=False, overwrite={}): elif entity["id"] == "warnings": mqtt_client.publish( f"homeassistant/{entity['domain']}/{vin}_{entity['id']}/attributes", - json.dumps(state) + json.dumps(state), + retain=True ) if state: state = sum(value == "FAILURE" for value in state.values()) @@ -330,7 +331,8 @@ def update_car_data(force_update=False, overwrite={}): if state or state == 0: mqtt_client.publish( topic, - json.dumps(state) if isinstance(state, dict) or isinstance(state, list) else state + json.dumps(state) if isinstance(state, dict) or isinstance(state, list) else state, + retain=True ) update_ha_device(entity, vin, state) @@ -441,11 +443,11 @@ def create_ha_devices(): def send_heartbeat(): - mqtt_client.publish(availability_topic, "online") + mqtt_client.publish(availability_topic, "online", retain=True) def send_offline(): - mqtt_client.publish(availability_topic, "offline") + mqtt_client.publish(availability_topic, "offline", retain=True) def delete_old_entities():