From ad0b8932d5a641dd9bc3688f9a72d19a9ce45b69 Mon Sep 17 00:00:00 2001 From: Stanislav Kirillov Date: Wed, 15 Jun 2022 21:46:08 +0300 Subject: [PATCH] Fix end_timestamp format - url quoting needed --- homeassistant_api/rawapi.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/homeassistant_api/rawapi.py b/homeassistant_api/rawapi.py index 3eb68818..f3f0d841 100644 --- a/homeassistant_api/rawapi.py +++ b/homeassistant_api/rawapi.py @@ -4,6 +4,7 @@ from datetime import datetime from posixpath import join from typing import Dict, Optional, Tuple, Union +from urllib.parse import quote as url_quote from .const import DATE_FMT from .models import Entity @@ -114,7 +115,7 @@ def prepare_get_entity_histories_params( if entities is not None: params["filter_entity_id"] = ",".join([ent.entity_id for ent in entities]) if end_timestamp is not None: - params["end_time"] = end_timestamp.strftime(DATE_FMT) + params["end_time"] = url_quote(end_timestamp.strftime(DATE_FMT)) if minimal_state_data: params["minimal_response"] = None if significant_changes_only: @@ -143,7 +144,7 @@ def prepare_get_logbook_entry_params( params.update(entity=filter_entity.entity_id) if end_timestamp is not None: if isinstance(end_timestamp, datetime): - end_timestamp = end_timestamp.strftime(DATE_FMT) + end_timestamp = url_quote(end_timestamp.strftime(DATE_FMT)) params.update(end_time=end_timestamp) if start_timestamp is not None: if isinstance(start_timestamp, datetime):