Rework image creation

This commit is contained in:
linus
2024-10-28 07:26:02 +01:00
parent 75db5da324
commit d3d511477b
4 changed files with 23 additions and 32 deletions
+5
View File
@@ -1,3 +1,8 @@
## v1.10.5
### 🐛 Bug Fixes:
- Fix interior and exterior images if more than one car is in use
## v1.10.4 ## v1.10.4
### 🐛 Bug Fixes: ### 🐛 Bug Fixes:
+1 -1
View File
@@ -1,6 +1,6 @@
name: "Volvo2Mqtt" name: "Volvo2Mqtt"
description: "Volvo AAOS MQTT bridge" description: "Volvo AAOS MQTT bridge"
version: "1.10.4" version: "1.10.5"
slug: "volvo2mqtt" slug: "volvo2mqtt"
init: false init: false
url: "https://github.com/Dielee/volvo2mqtt" url: "https://github.com/Dielee/volvo2mqtt"
+1 -1
View File
@@ -1,6 +1,6 @@
from config import settings from config import settings
VERSION = "v1.10.4" VERSION = "v1.10.5"
OAUTH_TOKEN_URL = "https://volvoid.eu.volvocars.com/as/token.oauth2" OAUTH_TOKEN_URL = "https://volvoid.eu.volvocars.com/as/token.oauth2"
OAUTH_AUTH_URL = "https://volvoid.eu.volvocars.com/as/authorization.oauth2" OAUTH_AUTH_URL = "https://volvoid.eu.volvocars.com/as/authorization.oauth2"
+16 -30
View File
@@ -108,37 +108,23 @@ def send_car_images(vin, data, device):
"sec-ch-ua-platform": "\"Windows\"", "sec-fetch-dest": "document", "Accept-Encoding": "gzip, deflate, br, zstd", "sec-ch-ua-platform": "\"Windows\"", "sec-fetch-dest": "document", "Accept-Encoding": "gzip, deflate, br, zstd",
"sec-fetch-mode": "navigate", "sec-fetch-site": "none", "sec-fetch-user": "?1", "upgrade-insecure-requests": "1"} "sec-fetch-mode": "navigate", "sec-fetch-site": "none", "sec-fetch-user": "?1", "upgrade-insecure-requests": "1"}
# Post exterior image # Post Images
if entity["id"] == "exterior_image": if not os.path.exists(f'{entity["id"]}_{vin}.png'):
if not os.path.exists("exterior_image.png"): data_path = "exteriorImageUrl" if entity["id"] == "exterior_image" else "internalImageUrl"
response = requests.get(data["images"]["exteriorImageUrl"], headers=headers) response = requests.get(data["images"][data_path], headers=headers)
if response.status_code == 200: if response.status_code == 200:
with open("exterior_image.png", 'wb') as image: with open(f'{entity["id"]}_{vin}.png', 'wb') as image:
image.write(response.content) image.write(response.content)
else:
logging.warning("Error getting car images: " + str(response.status_code) + " Message: " + response.text)
if os.path.exists("exterior_image.png"): if os.path.exists(f'{entity["id"]}_{vin}.png'):
ext_image = open("exterior_image.png", mode="rb").read() ext_image = open(f'{entity["id"]}_{vin}.png', mode="rb").read()
mqtt_client.publish( mqtt_client.publish(
image_topic, image_topic,
ext_image, ext_image,
retain=True retain=True
) )
if entity["id"] == "interior_image":
# Post interior Image
if not os.path.exists("interior_image.png"):
response = requests.get(data["images"]["internalImageUrl"], headers=headers)
if response.status_code == 200:
with open("interior_image.png", 'wb') as image:
image.write(response.content)
if os.path.exists("interior_image.png"):
int_image = open("interior_image.png", mode="rb").read()
mqtt_client.publish(
image_topic,
int_image,
retain=True
)
def on_connect(client, userdata, flags, rc): def on_connect(client, userdata, flags, rc):