Comment recharger une intégration (HACS) via une automatisation?

Bonjour,
Voilà, j’ai une automatisation qui m’envoie tous les matins une notification sur mobile pour le jour TEMPO du jour et du lendemain.

Mais voilà, il arrive très souvent que les couleurs ne soient pas dispo…
Des fois c’est que RTE n’a pas encore mis à jour à 6h et quelques, mais souvent c’est l’intégration qu’il faut recharger pour que les couleurs soient dispo dans la foulée.

Du coup, comment je peux intégrer à mon automatisation le rechargement de l’intégration RTE afin d’éliminer ce souci ?

Merci d’avance :slight_smile:

Tu peux juste via un service « Reloader » toutes les intégrations, tu ne peux pas en recharger qu’une seule malheureusement et encore pas sûr que cela s’applique aux intégrations non officielles…

Salut,

Une autre solution c’est de trigger l’automatisation sur le changement de couleur (du jour et/ou du lendemain)

Salut,
j’utilisais avant ce service pour recharger une intégration. Dans mon cas c’étais pour Tuya.
Le switch switch.lampe_du_pc_switch_1 est une entité qui fait parti de l’intégration Tuya ( l’officielle de HA ).
Avec le service homeassistant.reload_config_entry

service: homeassistant.reload_config_entry
data: {}
target:
  entity_id: switch.lampe_du_pc_switch_1

Pour toi, avec une entité de l’intégration RTE devrais fonctionner.

@vincen
Recharger toutes les intégrations, c’est un peu overkill :sweat_smile:

@Pulpy-Luke
Le souci avec cela, c’est que ça peut faire attendre pas mal de temps.
Et si j’ai mis cette notif, c’est que je sais que HA peut avoir l’info avant EDT ou HelloWatt.

@WarC0zes
J’avais vu ceci lors de mes essais, mais via un appareil, ça me fait une erreur…

Du coup, j’ai retenté avec des entités après avoir lu ton message. Et ça semble fonctionner, je n’ai plus d’erreurs.
Je verrais demain matin et les prochains jours :slight_smile:

Merci :slight_smile:

Ta besoin que d’une entité qui appartient a l’intégration RTE. Comme sa recharge l’intégration RTE, toutes les entités de l’intégration sont recharger.
Pas besoin de mettre toutes les entités dans l’appel du service.

Bonjour
@WarC0zes
Ok merci pour la précision, je ne savais pas.

En tout cas ça ne semble pas avoir fonctionné :

Alors que maintenant c’est ok :

Je pense qu’il faudrait revoir mon automatisation.

Est-il possible de faire ceci :

À 6:30 ,
Si la couleur de demain est inconnue ,
Alors : on recharge l’intégration
Fin si
On lance la notification.

Oui, tout est possible :stuck_out_tongue:

exemple

description: ""
mode: single
trigger:
  - platform: time
    at: "06:30:00"
condition:
  - condition: state
    entity_id: light.0x00158d0007b044d2  #change par ton entité RTE
    state: unknown
action:
  - service: homeassistant.reload_config_entry
    target:
      entity_id: scene.diy1_mute_ampli  #change par ton entité RTE

@WarC0zes merci :pray:t2:
Cependant comment ajouter une notification après le test de si l’entité est en unknown et son potentiel rechargement ?

Déclencheur : heure 6:30

Test : si entité rte unknown alors recharger entité // fin du test

Action : envoyer une notification
description: ""
mode: single
trigger:
  - platform: time
    at: "06:30:00"
condition:
  - condition: state
    entity_id: light.0x00158d0007b044d2  #change par ton entité RTE
    state: unknown
action:
  - service: homeassistant.reload_config_entry
    target:
      entity_id: scene.diy1_mute_ampli  #change par ton entité RTE

Rajoute dans action , après l’appelle du service homeassistant.reload_config_entry, une notification.

description: ""
mode: single
trigger:
  - platform: time
    at: "06:30:00"
condition:
  - condition: state
    entity_id: light.0x00158d0007b044d2  #change par ton entité RTE
    state: unknown
action:
  - service: homeassistant.reload_config_entry
    target:
      entity_id: scene.diy1_mute_ampli  #change par ton entité RTE
  - service: notify.mobile_app_m2101k9g
    data:
      title: RTE rechargement
      message: L'intégration RTE a été recharger !

@WarC0zes
Merci :slight_smile:
Du coup il me faudra une autre automatisation, car là elle ne va envoyer une notification que si l’entité n’est pas dispo, c’est ça ?

Moi j’aurais aimé que l’automatisation envoie quoiqu’il arrive une notification de la couleur du lendemain et qu’en plus elle relance l’intégration si jamais la valeur est en unknown.

C’est un embryon d’automatisation pour faire le reboot de ton entité RTE si la couleur n’est pas dispo.

Moi j’avais utilisé ce code pour redémarrer l’integration ALEXA quand j’avais des bugs (désactivé depuis…)

alias: reboot auto Echo
description: ""
trigger:
  - platform: time_pattern
    minutes: "30"
condition: []
action:
  - service: homeassistant.reload_config_entry
    data: {}
    target:
      device_id:
        - ff7850ca51e970ebe07319bf0c925f9f
        - 8c87c46acd32b22a507892999915b462
        - c809a7cad42216ae09d8878851afeb4f
        - 66b87a60352ec6a0fd0a59580a051ba8
        - e362a1de27047b3bdaba4040d96e86e4
        - 23af9d7b0b2aac966682129f060cf3c5
mode: single

Via le mode UI si tu cherches les device, il te les met en clair:

A toi de trouver le device correspondant à ton intégration RTE…

Et concernant ça:

Il faut faire:
Declencheur : heure 6h30
Conditions : rien
Action:

  • Si entité rte unknown
  • alors:
    • recharger integration rte
    • attendre xx s (le temps que l’entité se charge et les valeurs se mettent à jour)
  • envoyer notification couleur du lendemain (dans tous les cas)
1 « J'aime »

Salut

Chez moi, cette intégration fonctionne bien.
J’ai regardé le code de l’intégration. A partir de 06h (environ), il y a une vérification toutes les 15 minutes, jusque la couleur du lendemain soit disponible.

Au lieu de trouver un contournement, tu devrais regarder les logs. Tu as potentiellement un bug (dans l’intégration ou HA), et ouvrir une issue et en faire profiter tout le monde.

Et il est déjà arrivé que l’information arrive plus tard (vers 15h) dû à un problème chez RTE.

2 « J'aime »

Ha, je vais aller voir le log, encore faut-il que je le trouve.
Et du coup, faudrait que je voir mon automatisation autrement…

Mais comment avoir la notification de la couleur du jour et du lendemain tous les jours, même si la couleur ne change pas, sans chercher à recharger l’intégration puisqu’elle va chercher l’info toutes les 15 minutes ?

Dans l’intégration, il y a une vérification jusqu’à 10h40. Car l’attribution de la couleur est officielle à 10h30.
Donc je te suggère de faire une automatisation à 10h45 avec la couleur.

2 « J'aime »

Mais j’aime bien avoir ma notif au réveil ou peu de temps après :sweat_smile:

Moi je ne l’ai qu’à 20h car c’est l’heure a laquelle le linky se met à jour…

Plains toi à la RTE ! :rofl:
Tu peux toujours faire une automatisation à 07h. Mais ça peut changer.

1 « J'aime »

Bonjour à tous,
Je pense avoir trouvé une solution en combinant vos propositions.
Voilà le code de mon automatisation.
Reste à voir demain matin ce que ça donnera.
Ce matin, les deux couleurs étaient en indispo à 6h20. Après rechargement manuel de RTE Tempo, elles sont apparues.
Je me dis que si le rechargement les fait revenir, c’est qu’il faut recharger RTE Tempo avant d’envoyer une notification.

alias: "RTE Tempo : Notification & Rechargement"
description: ""
trigger:
  - platform: time
    at: "06:30:00"
  - platform: time
    at: "11:10:00"
action:
  - if:
      - condition: or
        conditions:
          - condition: state
            entity_id: sensor.rte_tempo_couleur_actuelle
            state: inconnu
          - condition: state
            entity_id: sensor.rte_tempo_couleur_actuelle
            state: unavailable
          - condition: state
            entity_id: sensor.rte_tempo_prochaine_couleur
            state: inconnu
          - condition: state
            entity_id: sensor.rte_tempo_prochaine_couleur
            state: unavailable
    then:
      - service: homeassistant.reload_config_entry
        metadata: {}
        data: {}
        target:
          entity_id: sensor.rte_tempo_couleur_actuelle
      - service: notify.notify
        data:
          message: Rechargement de l'entité RTE Tempo fait.
          title: 🌀 Rechargement RTE Tempo
  - service: notify.notify
    data:
      message: >-
        La couleur du jour est {{ states('sensor.rte_tempo_couleur_actuelle') }}
        {{ states('sensor.rte_tempo_couleur_actuelle_visuel') }}, demain sera un
        jour {{ states('sensor.rte_tempo_prochaine_couleur') }} {{
        states('sensor.rte_tempo_prochaine_couleur_visuel') }}
      title: ⚡️ C'est l'heure du tempo
      data:
        url: >-
          https://particulier.edf.fr/fr/accueil/gestion-contrat/options/tempo.html#/
        clickAction: >-
          https://particulier.edf.fr/fr/accueil/gestion-contrat/options/tempo.html#/
mode: single

Dites-moi ce que vous en pensez ^^
Et je vous dirais demain ce que ça aura donné.

Logique, c’est pas ce que tu fesait alors.
En premier recharger l’intégration pour actualisé les couleurs
En deuxième , envoyer les notifications

J’ajouterais un délai de 5-10s entre le rechargement de l’intégration et la notification des couleurs, pour être sur que ca bien recharger et actualiser les infirmations.

action:
  - if:
      - condition: or
        conditions:
          - condition: state
            entity_id: sensor.rte_tempo_couleur_actuelle
            state: inconnu
          - condition: state
            entity_id: sensor.rte_tempo_couleur_actuelle
            state: unavailable
          - condition: state
            entity_id: sensor.rte_tempo_prochaine_couleur
            state: inconnu
          - condition: state
            entity_id: sensor.rte_tempo_prochaine_couleur
            state: unavailable
    then:
      - service: homeassistant.reload_config_entry
        metadata: {}
        data: {}
        target:
          entity_id: sensor.rte_tempo_couleur_actuelle
      - service: notify.notify
        data:
          message: Rechargement de l'entité RTE Tempo fait.
          title: 🌀 Rechargement RTE Tempo
  - delay:
      hours: 0
      minutes: 0
      seconds: 10
      milliseconds: 0
  - service: notify.notify
    data:
      message: >-

Peu être changer , inconnu par unknown >> state: inconnu