Home Assistant & Volvo
Here’s a neat little trick for those of you using Home Assistant while also driving a Volvo.
To get your Volvo driving data (fuel level, battery state, …) into Home Assistant, there’s the excellent volvo2mqtt addon.
One little annoyance is that every time it starts up, you will receive an e-mail from Volvo with a two-factor authentication code, which you then have to enter in Home Assistant.
Fortunately, there’s a solution for that, you can automate this using the built-in imap support of Home Assistant, with an automation such as this one:
alias: Volvo OTP
description: ""
trigger:
- platform: event
event_type: imap_content
event_data:
initial: true
sender: [email protected]
subject: Your Volvo ID Verification code
condition: []
action:
- service: mqtt.publish
metadata: {}
data:
topic: volvoAAOS2mqtt/otp_code
payload: >-
{{ trigger.event.data['text'] | regex_findall_index(find='Your Volvo ID verification code is:\s+(\d+)', index=0) }}
- service: imap.delete
data:
entry: "{{ trigger.event.data['entry_id'] }}"
uid: "{{ trigger.event.data['uid'] }}"
mode: single
This will post the OTP code to the right location and then delete the message from your inbox (if you’re using Google Mail, that means archiving it).