Pollens custom component sensor

Pour la jauge, je préfère une présentation des valeurs avec l’aiguille au milieu de la zone comme ça:

image

type: gauge
entity: sensor.aqi_pollens_statut
needle: true
min: -0.5
max: 3.5
segments:
  - from: -0.5
    color: '#43a047'
  - from: 0.5
    color: '#63d087'
  - from: 1.5
    color: '#ff781f'
  - from: 2.5
    color: '#ff2200'
unit: Sévérité
name: Pollens
2 « J'aime »

J’adore @FillR2 !!! Adopté !!!
Voici comme promis également une version qui prends en compte le département pour le blueprint alerte

Blueprint
blueprint:
  name: Liste tous les pollens en mode alerte
  description: Check des differents sensors dédiés au monitoring des pollens
  domain: automation
  input:
    time:
      name: Lancer la vérification à
      description: La vérification est lancée à un moment spécifié
      default: '10:00:00'
      selector:
        time: {}
    threshold:
      name: Niveau d'alerte
      description: Selection du niveau min d'alerte pollen
      default: 2
      selector:
        number:
          min: 0
          max: 3
          unit_of_measurement: ""
          mode: slider
          step: 1
    dpt:
      name: Département monitoré
      description: 'Entrer le dpt concerné'
      default: 0
      selector:
        number:
          min: 01
          max: 99
          mode: box
          step: 1
    actions:
      name: Actions
      description: Que faut il faire ? mettre {{pollens}} et il sera remplacé par les agents allergènes
      selector:
        action: {}
#  source_url: pas de depo .....
variables:
  dpt: !input dpt
  threshold: !input threshold
  pollens: |-
    {% set result = namespace(sensors=[]) %}
    {% for state in states.sensor -%}
      {%- if state.entity_id | regex_match('sensor.pollens_'+ dpt|string + '_',ignorecase=False) -%}
        {% if state.entity_id != 'sensor.pollens_'+ dpt|string + '_risklevel' %}
          {%- set valeur = states(state.entity_id)|float|round -%}
            {%- if valeur > 0 %}
              {%- set ic = ' 🌿' %}
                {%- if state_attr(state.entity_id,'icon') == 'mdi:tree' %}
                  {%- set ic = ' 🌳 ' %}
                {%- endif %}
              {%- set result.sensors = result.sensors + [ ic ~ state_attr(state.entity_id,'pollen_name') ~ ' (*' ~ state.state ~ '*)'] %}
            {%- endif %}
          {%- endif %}
      {%- endif -%}
    {%- endfor %}
    Le niveau d'alerte est de {{ states('sensor.pollens_'+ dpt|string + '_risklevel') }} et voici les valeurs actives :
    {{result.sensors|join(',\n')}}

trigger:
  - platform: time
    at: !input time
condition:
  - "{{ pollens != '' and (dpt | int > 0) }}"
action:
  - choose: []
    default: !input actions
mode: single
2 « J'aime »

Bonjour @FillR2

Je peux regarder, mais faire si possible une demande via le Github cela me permet de suivre et documenter les modifications.
https://github.com/chris60600/pollens-home-assistant

2 « J'aime »

Hello
Tu as regardé l’option utility_meter ? cela pourrait répondre à ton besoin ?

Non; je ne souhaite pas créér un nouveau sensor, je veux juste dire que les sensors numériques sont définis en mode caractère

1 « J'aime »

Quelqu’un sait comment récuperé l’entités (elevé, nul,etc…) pour l’envoyer sur une notif télégram.
J’ai pas réussi :confused:

As-tu progressé sur cette carte? J’ai l’impression que ça couvrirait pas mal de besoins.

Peut être comme suggéré par Pulpy-Luke ça mériterait un post dédié car le sujet est plus large que les pollens et cette carte risque d’intéresser du monde…

Je me mets ça de coté car je pense bien utiliser ta présentation qui a l’avantage de ne pas créer une entité par type de pollen…

Merci du partage !

Bonsoir,
voila ce que j’ai finalement réussit à faire:

pour que tout fonctionne il faut:

un input_select.departement qui contient les dpts que vous souhaitez monitorer:

Pour la gauge, j’ai créé un sensor qui me donne la valeur du dpt choisi via le input_select

sensor
# Pollen Risque
      - name: pollens du dpt
        unique_id: pollens_dpt_risks
        state: >
          {% set dpt = states('input_select.departement')|string %}
          {% if dpt == '' %}
            {% set dpt = '91' %}
          {% endif %}
          {% set sensordpt = 'sensor.pollens_'+ dpt + '_risklevel' %}
          {% set riskdptvalue = states(sensordpt) %}
          {{ riskdptvalue }}
        icon: mdi:alert-decagram-outline
        attributes:
          dpt: >
            {% set dpt = states('input_select.departement')|string %}
            {{ dpt }}

et enfin les

cartes
type: vertical-stack
cards:
  - type: custom:mushroom-select-card
    entity: input_select.departement
    name: Sélection du dpt
    icon: mdi:city-variant-outline
    secondary_info: last-updated
    layout: horizontal
    fill_container: true
  - type: gauge
    entity: sensor.pollens_dpt_risks
    needle: true
    min: -0.5
    max: 3.5
    segments:
      - from: -0.5
        color: '#43a047'
      - from: 0.5
        color: '#63d087'
      - from: 1.5
        color: '#ff781f'
      - from: 2.5
        color: '#ff2200'
    name: Sévérité en cours
    severity:
      green: 0
      yellow: 0
      red: 0
  - type: custom:auto-entities
    filter:
      include: null
      template: |
        {%  set ALTNAME = 'd'-%} 
         {% set dpt = states('input_select.departement')  %}
         {% set search_string = 'sensor.pollens_'+ dpt|string + '_' %}
        {% set xclude_string = 'sensor.pollens_'+ dpt|string + '_risklevel' %}
        {% for state in states.sensor -%}
          {%- if state.entity_id | regex_match(search_string,ignorecase=False) -%}
            {%- if state.entity_id != xclude_string -%}
               {%- set NAME = state_attr(state.entity_id,"pollen_name") -%}
                {{
                  { 'entity': state.entity_id,
                    'name': NAME
                  } }},
             {%- endif -%} 
          {%- endif -%}
        {%- endfor %}
      exclude:
        - state: <1
    sort:
      numeric: true
      reverse: true
      method: state
    card:
      type: custom:bar-card
      title: Allergènes en alerte
      min: -0.5
      max: 3.5
      severity:
        - color: '#43a047'
          from: -0.5
          to: 0.5
          hide: true
        - color: orange
          from: 0.5
          to: 1.5
        - color: '#ff781f'
          from: 1.5
          to: 2.5
        - color: '#ff2200'
          from: 2.5
          to: 3.5
      target: '0.5'
      columns: '2'
      animation:
        speed: '1'
    show_empty: false

1 « J'aime »

Hello, C’est un sensor ou un template sensor que tu as créé?

sensor:
# Pollen Risque
  - name: pollens du dpt
    unique_id: pollens_dpt_risks
    state: >
      {% set dpt = states('input_select.departement')|string %}
      {% if dpt == '' %}
        {% set dpt = '91' %}
      {% endif %}
      {% set sensordpt = 'sensor.pollens_'+ dpt + '_risklevel' %}
      {% set riskdptvalue = states(sensordpt) %}
      {{ riskdptvalue }}
    icon: mdi:alert-decagram-outline
    attributes:
      dpt: >
        {% set dpt = states('input_select.departement')|string %}
        {{ dpt }}

Ne fonctionne pas :

Invalid config for [sensor]: required key not provided @ data['platform']. Got None. (See ?, line ?). 

celui là je l’ai mis dans la section template de mon configuration.yaml

Bonjour a tous,

Pour information j’ai une version qui devrait sortir bientôt qui intègre la demande de @FillR2 pour mettre les sensors en AQI et en « vrai » numérique.

3 « J'aime »

Ca fonctionne, merci :+1:

Bonjour,
Bon, ça marche pas…
J’ai bien mis les paramètres dans le fichier sensors.yaml (qui est un lien include dans le fichier configuration - et ça fonctionne avec d’autres sensors)

# Pollens
  - platform: pollens
    location: "64"
    timeout: 60

Mais après redémarrage, je n’ai toujours pas d’entité sensor.pollens
Qu’ai je oublié ?

Tu est sur que ca fonctionne toujours en YAML ?

Citation
L’intégration des pollens est maintenant disponible dans le menu d’intégration
L’ancienne configuration de la plate-forme Pollens doit être supprimée du configuration.yaml fichier

Suite à ta remarque, j’ai neutralisé les lignes pollen dans le fichier sensors.yaml mais je n’ai pas de menu de configuration.
J’ai simplement
image
dans la partie intégration de HACS.
Mais je suis incapable de paramétrer quoi que ce soit… car je n’ai pas de sensor qui remonte (j’ai vérifié dans les entités)

Parce que tu n’as fait que la moitié de l’installation. Une fois que tu l’as installé via HACS (et redémarré HA), tu dois intégrer l’application via HA (/Paramètres/Intégration). Tu tapes pollen dans le champ de recherche, et là tu configures. Tu devrais avoir tous les sensors ensuite.

image

1 « J'aime »

J’avance, mais je bute encore sur des points.
@FROlCi je ne réussis pas à créer l’entité « input_select.departement » ; en fait quand je suis sur l’onglet entité des paramètres je ne vois pas comment en ajouter un.

Salut,

En fait un « input_select » est une variable que tu dois crée de ton côté dans HA, cela ne fait pas partie de l’intégration en elle même.

Menu/Parametres/Appareils et Services/Entrées/Créer une entrée/Liste deroulante

C’est l’équivalent de ce qui est décrit dans la doc HA :

2 « J'aime »

Dernière ligne droite :


Selon moi, dans la partie du code de la carte, l’entity devrait plutôt être dpt_risklevel pour la gauge, non ?
Mais de toute façon il y a un problème car le n° du département n’est pas récupéré.
Je ne comprends pas pourquoi ça fonctionne chez @FROlCi et pas chez moi avec le même code.