Esta integración solo admite la API skoda 'antigua' (asociada con la antigua aplicación móvil llamada Skoda Essentials ) y dejará de funcionar cuando Skoda apaga la API antigua. Se anuncia que esto será el 2 de diciembre de 2024, pero esa fecha ya ha cambiado en el pasado.
Si no puede usar la aplicación Skoda Essentials, esta integración no funcionará para usted. Se informa que este es el caso de las nuevas cuentas de Skoda.
El desarrollo en esta integración se ha detenido esencialmente y no se actualizará para admitir la nueva APP/API.
Se está desarrollando una nueva integración para trabajar con la 'nueva' API Skoda (asociada con la nueva aplicación móvil llamada MySkoda ): https://github.com/skodaconnect/homeassistant-myskoda
La nueva integración se desarrolla activamente y solo unos pocos modelos son (parcialmente) compatibles en este momento. Aún así, alentamos mucho a todos a probar la nueva integración y proporcionar comentarios a través de problemas o discordia de Github.
Si es nuevo en el Asistente de Inicio, lea primero la documentación del Asistente de Inicio.
Esta es la bifurcación de Robinostlund/Homeassistant-Volkswagencarnet modificada para admitir Skoda Connect/MySkoda a través de la API de APP nativa (API llama directamente a los servicios de VWG-Connect)
Esta integración para el asistente de inicio obtendrá datos de los servidores Skoda Connect relacionados con su automóvil habilitado para Skoda Connect. Skoda Connect nunca obtiene datos directamente del automóvil, el automóvil envía datos actualizados a servidores VAG en eventos específicos como bloqueo/desbloqueo, eventos de carga, eventos de climatización y cuando el vehículo está estacionado. La integración obtendrá estos datos de los servidores. Cuando las acciones del vehículo fallan o regresan sin respuesta, una actualización de la fuerza podría ayudar. Esto desencadenará una llamada de "despertar" de los servidores VAG al automóvil. SCAN_INTERVAL es la frecuencia con la que la integración debe obtener datos de los servidores, si no hay datos nuevos del automóvil, las entidades no se actualizarán.
Este proyecto contiene el código de componentes personalizados del Asistente de inicio. Depende de https://github.com/skodaconnect/skodaconnect que proporciona la biblioteca de Python que interactúa con la API Skoda.
Esta integración solo funcionará para su automóvil si tiene la funcionalidad Skoda Connect/Myškoda. Los autos que usan otros terceros, aplicaciones móviles semioficiales, como el "Minskoda" de ConnectedCars en Dinamarca, no funcionarán. La biblioteca utilizada para la comunicación API se diseña inversa desde la aplicación MySkoda Android. El soporte inicial se ha agregado para SmartLink y los nuevos autos API de estilo, como el Enyaq IV.
La configuración de privacidad del automóvil debe configurarse para "compartir mi posición" para la funcionalidad completa de esta integración. Sin esta configuración, si se establece para "usar mi posición", los sensores para la posición (rastreador del dispositivo), las solicitudes restantes y el estacionamiento pueden no funcionar de manera confiable o en absoluto. Establecer en una configuración de privacidad aún más estricta limitará aún más la funcionalidad.
Si se encuentra con un problema en el que no se puede configurar la integración o si recibe un error de que hay términos inaceptados o EULA, podría deberse a su plataforma de aplicaciones móviles. La biblioteca subyacente se construye mediante ingeniería inversa del comportamiento de la aplicación Android y, por lo tanto, utiliza las mismas configuraciones de clientes que un dispositivo Android. Si solo usa la aplicación en dispositivos iPhone/iOS, puede causar problemas con esta integración.
Posibles soluciones:
Si esto no funciona para usted y el problema particular que enfrenta, abra un problema y proporcione la descripción del problema lo más detallada posible y los registros de depuración relevantes.
Si tiene instalados HACS (Home Assistant Community Store), simplemente busque Skoda Connect e instálelo directamente desde HACS. HACS realizará un seguimiento de las actualizaciones y puede actualizar Easly a la última versión cuando hay una nueva versión disponible.
Si no lo tiene instalado, échale un vistazo aquí: HACS
Clon o copie el repositorio y copie la carpeta 'HomEassistant-skodaconnect/custom_component/skodaconnect' en '[config dir]/custom_components'. Instale la biblioteca Python requerida con (ajuste para adaptarse a su entorno):
pip install skodaconnect
Para el registro de depuración integral, puede agregar esto a su <config dir>/configuration.yaml
:
logger :
default : info
logs :
skodaconnect.connection : debug
skodaconnect.vehicle : debug
custom_components.skodaconnect : debug
custom_components.skodaconnect.climate : debug
custom_components.skodaconnect.lock : debug
custom_components.skodaconnect.device_tracker : debug
custom_components.skodaconnect.switch : debug
custom_components.skodaconnect.binary_sensor : debug
custom_components.skodaconnect.sensor : debug
skodaconnect.connection: configure el nivel de depuración para la clase de conexión de la biblioteca Skoda Connect. Esto maneja las solicitudes Get/Set para la API
Skodaconnect.Vehicle: establezca el nivel de depuración para la clase de vehículos de la biblioteca Skoda Connect. Un objeto creado para cada vehículo en cuenta y almacena todos los datos.
Skodaconnect.DashBoard: configure el nivel de depuración para la clase de tablero de la biblioteca Skoda Connect. Una clase de envoltura entre el componente y biblioteca Hass.
custom_components.skodaconnect: establecer el nivel de depuración para el componente personalizado. La comunicación entre Hass y Biblioteca.
Custom_Components.skodaconnect.xyz establece el nivel de depuración para los tipos de entidades individuales en el componente personalizado.
Configuración en Configuration.yaml ahora está en desuso y puede interferir con la configuración de la integración. Para configurar la integración, vaya a la configuración en el panel lateral del asistente de inicio y luego seleccione integraciones. Haga clic en el botón "Agregar integración" en la esquina inferior derecha y busque/seleccione Skodaconnect. Siga los pasos e ingrese la información requerida. Debido a cómo se almacenan y manejan los datos en el asistente de origen, habrá una integración por vehículo. Configurar múltiples vehículos agregando la integración varias veces.
Las opciones de integración se pueden cambiar después de la configuración haciendo clic en el texto "Configurar" en la integración. Las opciones disponibles son:
Frecuencia de encuesta El intervalo (en segundos) que los servidores están encuestados para datos actualizados. Varios usuarios han informado que se limitan a la tasa (HTTP 429) cuando usan 60 o más bajos. Se recomienda comenzar con un valor de 120 o 180. Ver #215.
S-Pin el S-Pin para el vehículo. Esto es opcional y solo se necesita para ciertas solicitudes/acciones de vehículos (calentador auxiliar, bloqueo, etc.).
Selección mutable para permitir interacciones con el vehículo, comenzar la climatización, etc.
El registro de depuración de API completo habilita el registro de depuración completo. Esto imprimirá los respuestas completos de API a Homeassistant.log. Solo habilite la solución de problemas, ya que generará muchos registros.
Recursos para monitorear Seleccionar qué recursos desea monitorear para el vehículo.
Conversiones de distancia/unidad Seleccione si desea convertir la distancia/unidades.
En este ejemplo, estamos enviando notificaciones a un dispositivo iOS. La aplicación Android Companion actualmente no admite contenido dinámico en notificaciones (mapas, etc.)
Guardar estas automatizaciones en su archivo de automatización <config dir>/automations.yaml
Primero cree un input_number, a través del editor en Configuration.yaml u otro archivo de configuración incluido, o a través del editor de ayudantes de GUI. Es importante establecer un valor mínimo en 10, máximo a 60 y paso a 10. De lo contrario, la llamada de servicio podría no funcionar.
# configuration.yaml
input_number :
pheater_duration :
name : " Pre-heater duration "
initial : 20
min : 10
max : 60
step : 10
unit_of_measurement : min
Cree la automatización, en YAML o mediante editor GUI. Puede encontrar la ID del dispositivo yendo a Configuración-> Dispositivos y servicios y luego haciendo clic en el dispositivo para el vehículo Skodaconnect. La ID del dispositivo se mostrará en la barra de direcciones del navegador web después de "/config/disposites/dispositivo/". La identificación también se puede encontrar utilizando el editor de servicios GUI bajo las herramientas de desarrollador. Elija uno de los servicios de Skodaconnect y elija su vehículo. Cambie al modo Yaml y copie la ID del dispositivo.
# automations.yaml
- alias : Pre-heater duration
description : " "
trigger :
- platform : state
entity_id : input_number.pheater_duration
condition : []
action :
- service : skodaconnect.set_pheater_duration
data_template :
device_id : <Your Device ID for vehicle>
duration : " {{ (states('input_number.pheater_duration') | float ) | round(0) }} "
mode : single
Gracias a @haraldpaulsen, un sensor estimado de plantilla de tasa de carga basado en la capacidad de la batería y el tiempo reportado restante. Reemplace con el nombre de su vehículo y con capacidad de batería en WH.
template :
- sensor :
- name : " Charge speed guesstimate "
state : >
{% if is_state('switch.skoda_<name>_charging', 'on') %}
{% set battery_capacity = <battery-size-in-kwh> | int %}
{% set charge = { "remaining": states('sensor.skoda_<name>_minimum_charge_level') | int - states('sensor.skoda_<name>_battery_level') | int } %}
{% set timeleft = states('sensor.skoda_<name>_charging_time_left') | int %}
{% set chargeleft = battery_capacity * charge.remaining / 100 %}
{% set chargespeed = chargeleft / (timeleft / 60) %}
{{ chargespeed | round (1) }}
{% else %}
0
{% endif %}
unit_of_measurement : " kW "
state_class : measurement
Nota: Solo disponible para dispositivos iOS ya que Android Companion App no admite esto todavía. Esto podría romperse desde 1.0.30 cuando el dispositivo_tracker cambió el comportamiento.
- id : notify_skoda_position_change
description : Notify when position has been changed
alias : Skoda position changed notification
trigger :
- platform : state
entity_id : device_tracker.kodiaq
condition : template
condition : template
value_template : " {{ trigger.to_state.state != trigger.from_state.state }} "
action :
- service : notify.ios_my_ios_device
data_template :
title : " Kodiaq Position Changed "
message : |
? Skoda Car is now on a new place.
data :
url : /lovelace/car
apns_headers :
' apns-collapse-id ' : ' car_position_state_{{ trigger.entity_id.split(".")[1] }} '
push :
category : map
thread-id : " HA Car Status "
action_data :
latitude : " {{trigger.from_state.attributes.latitude}} "
longitude : " {{trigger.from_state.attributes.longitude}} "
second_latitude : " {{trigger.to_state.attributes.latitude}} "
second_longitude : " {{trigger.to_state.attributes.longitude}} "
shows_traffic : true
- id : ' notify_skoda_car_is_unlocked '
alias : Skoda is at home and unlocked
trigger :
- entity_id : binary_sensor.vw_carid_external_power
platform : state
to : ' on '
for : 00:10:00
condition :
- condition : state
entity_id : lock.kodiaq_door_locked
state : unlocked
- condition : state
entity_id : device_tracker.kodiaq
state : home
- condition : time
after : ' 07:00:00 '
before : ' 21:00:00 '
action :
# Notification via push message to smartphone
- service : notify.device
data :
message : " The car is unlocked! "
target :
- device/my_device
# Notification via smart speaker (kitchen)
- service : media_player.volume_set
data :
entity_id : media_player.kitchen
volume_level : ' 0.6 '
- service : tts.google_translate_say
data :
entity_id : media_player.kitchen
message : " My Lord, the car is unlocked. Please attend this this issue at your earliest inconvenience! "