From ebede3d56bcbd07d667b60d33a534b03d10d4557 Mon Sep 17 00:00:00 2001 From: SMKRV Date: Sat, 23 Nov 2024 23:42:33 +0300 Subject: [PATCH] Release v2.0.0 --- custom_components/ha_text_ai/__init__.py | 9 +++++---- custom_components/ha_text_ai/config_flow.py | 5 ++--- custom_components/ha_text_ai/const.py | 2 +- custom_components/ha_text_ai/coordinator.py | 5 +++-- custom_components/ha_text_ai/sensor.py | 21 +++------------------ 5 files changed, 14 insertions(+), 28 deletions(-) diff --git a/custom_components/ha_text_ai/__init__.py b/custom_components/ha_text_ai/__init__.py index 9e24069..f9a36f2 100644 --- a/custom_components/ha_text_ai/__init__.py +++ b/custom_components/ha_text_ai/__init__.py @@ -4,17 +4,18 @@ from __future__ import annotations import logging import os import shutil -import voluptuous as vol -from typing import Any, Dict, Optional from datetime import datetime +from typing import Any, Dict, Optional + +import voluptuous as vol +from async_timeout import timeout from homeassistant.config_entries import ConfigEntry from homeassistant.const import CONF_API_KEY, CONF_NAME from homeassistant.core import HomeAssistant, ServiceCall, callback from homeassistant.exceptions import ConfigEntryNotReady, HomeAssistantError -from homeassistant.helpers import config_validation as cv, entity_platform +from homeassistant.helpers import config_validation as cv from homeassistant.helpers import aiohttp_client -from async_timeout import timeout from .coordinator import HATextAICoordinator from .const import ( diff --git a/custom_components/ha_text_ai/config_flow.py b/custom_components/ha_text_ai/config_flow.py index 61d4f45..9eb7576 100644 --- a/custom_components/ha_text_ai/config_flow.py +++ b/custom_components/ha_text_ai/config_flow.py @@ -1,8 +1,8 @@ """Config flow for HA text AI integration.""" +import logging from typing import Any, Dict, Optional -import voluptuous as vol -import aiohttp +import voluptuous as vol from homeassistant import config_entries from homeassistant.const import CONF_API_KEY from homeassistant.core import callback @@ -33,7 +33,6 @@ from .const import ( MIN_REQUEST_INTERVAL, ) -import logging _LOGGER = logging.getLogger(__name__) class HATextAIConfigFlow(config_entries.ConfigFlow, domain=DOMAIN): diff --git a/custom_components/ha_text_ai/const.py b/custom_components/ha_text_ai/const.py index 1b8217e..505d0f8 100644 --- a/custom_components/ha_text_ai/const.py +++ b/custom_components/ha_text_ai/const.py @@ -2,7 +2,7 @@ from typing import Final import voluptuous as vol from homeassistant.const import Platform, CONF_API_KEY # Добавлен CONF_API_KEY -from homeassistant.helpers import config_validation as cv +from homeassistant.helpers import config_validation as cv # Domain and platforms DOMAIN: Final = "ha_text_ai" diff --git a/custom_components/ha_text_ai/coordinator.py b/custom_components/ha_text_ai/coordinator.py index 2675b16..99cf0bf 100644 --- a/custom_components/ha_text_ai/coordinator.py +++ b/custom_components/ha_text_ai/coordinator.py @@ -2,12 +2,13 @@ import logging import asyncio from datetime import timedelta, datetime -from typing import Any, Dict, Optional +from typing import Any, Dict, Optional, List from homeassistant.core import HomeAssistant from homeassistant.helpers.update_coordinator import DataUpdateCoordinator from homeassistant.exceptions import HomeAssistantError -from openai import AsyncOpenAI, APIError, RateLimitError +import httpx +from openai import AsyncOpenAI, APIError, AuthenticationError, RateLimitError from anthropic import AsyncAnthropic from .const import ( diff --git a/custom_components/ha_text_ai/sensor.py b/custom_components/ha_text_ai/sensor.py index 71ad7d8..56758f4 100644 --- a/custom_components/ha_text_ai/sensor.py +++ b/custom_components/ha_text_ai/sensor.py @@ -1,19 +1,14 @@ """Sensor platform for HA text AI.""" -from datetime import datetime import logging -from typing import Any, Dict, Optional +from typing import Any, Dict -from homeassistant.components.sensor import ( - SensorEntity, - SensorStateClass, - SensorDeviceClass, -) +from homeassistant.components.sensor import SensorEntity from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant +from homeassistant.helpers.device_registry import DeviceInfo from homeassistant.helpers.entity_platform import AddEntitiesCallback from homeassistant.helpers.typing import StateType from homeassistant.helpers.update_coordinator import CoordinatorEntity -from homeassistant.helpers.device_registry import DeviceInfo from homeassistant.util import dt as dt_util from homeassistant.util import slugify @@ -22,21 +17,11 @@ from .const import ( CONF_API_PROVIDER, ATTR_QUESTION, ATTR_RESPONSE, - ATTR_LAST_UPDATED, ATTR_MODEL, - ATTR_TEMPERATURE, - ATTR_MAX_TOKENS, ATTR_TOTAL_RESPONSES, - ATTR_SYSTEM_PROMPT, - ATTR_QUEUE_SIZE, ATTR_API_STATUS, ATTR_ERROR_COUNT, ATTR_LAST_ERROR, - ATTR_RESPONSE_TIME, - ATTR_API_VERSION, - ATTR_ENDPOINT_STATUS, - ATTR_REQUEST_COUNT, - ATTR_TOKENS_USED, ENTITY_ICON, ENTITY_ICON_ERROR, ENTITY_ICON_PROCESSING,