delphiki / hass-pronote

Pronote integration for Home Assistant
64 stars 11 forks source link

[IMP] Add event new_evaluations #48

Closed yleroux closed 1 year ago

yleroux commented 1 year ago

Bonjour,

Ne sachant pas comment tester, je propose ma PR, hélas, sans être sûr que cela fonctionne mais j'ai repris la méthode des events pour les autres données. Mon fils en 6e n'a pas de note mais des évaluations et donc j'espère que cela fonctionnera.

Merci pour ce module en tout cas et en espérant que ma maigre contribuation fonctionne :)

GaPhi commented 1 year ago

Pourquoi ne pas le faire directement dans HA ?

variables:
  delta: |-
    {%- set ns = namespace(new=[], changed=[], exists=false) -%}
    {%- for to_entry in grades.to_state.attributes.grades -%}
      {%- set ns.exists = false -%}
      {%- for from_entry in grades.from_state.attributes.grades -%}
        {%- if to_entry.subject == from_entry.subject and
            to_entry.date == from_entry.date -%}
          {%- set ns.exists = true -%}
          {%- if to_entry.grade_out_of != from_entry.grade_out_of or
              to_entry.coefficient != from_entry.coefficient or
              to_entry.class_average != from_entry.class_average or
              to_entry.min != from_entry.min or
              to_entry.max != from_entry.max -%}
            {%- set ns.changed = ns.changed + [{"from":from_entry, "to":to_entry}] -%}
          {%- endif -%}
          {%- break -%}
        {%- endif -%}
      {%- endfor -%}
      {%- if not ns.exists -%}
        {%- set ns.new = ns.new + [to_entry] -%}
      {%- endif -%}
    {%- endfor -%}
    {{ { 'new': ns.new, 'changed': ns.changed } }}
yleroux commented 1 year ago

Ne fonctionne pas :(

yleroux commented 1 year ago

@GaPhi je ne connais pas le système de variables dans HA. Je débute. Je vais regarder cela. Merci

delphiki commented 1 year ago

Ça peut effectivement être fait dans HA, mais j'ai fait un système assez générique pour le gérer dans l'intégration, ce qui permet d'uniformiser le comportement.

Je rajouterai les évaluations dans une future màj :+1: