Trying to do some IMAP email parsing

So I am following along with the docs for IMAP, and literally using the code provided in the example for extracting kWh:
IMAP - Home Assistant

But yet get an error on their code…and not sure why:

Their code does not have any comma there…but here is my code:

template:
  - trigger:
     - trigger: event
       event_type: "imap_content"
       id: "custom_event"
       event_data:
         sender: "specific@emailaddress in my designated folder"
    sensor:
      - name: "Yesterday Energy Use"
        unit_of_measurement: "kWh"
        state: >
        {{ trigger.event.data["text"]
          | regex_findall_index("\*Yesterday's Energy Use:\* ([0-9]+) kWh") }}
      - name: "Yesterday Cost"
        unit_of_measurement: "$"
        state: >
          {{ trigger.event.data["text"]
            | regex_findall_index("\*Yesterday\n\nEnergy usage: (\d+) kWh") }}
      - name: "Billing Cycle Total"
        unit_of_measurement: "$"
        state: >
          {{ trigger.event.data["text"]
            | regex_findall_index("\*Last \d+ Days\n\nEnergy usage: (\d+) kWh") }}

Any ideas?

I know sometimes it complains that the template is in the same column as state:
Try and indent the template a step or more.

Ok, I think i got it…

I needed to push over the {{ trigger.event.data[“text”] line…it was directly under the state.

1 Like

Yeah… That was what I said

1 Like