fix(doorman): HA Jinja has no split filter — method-call parsing [#345]

Live webhook test caught it: TemplateRuntimeError 'No filter named
split'. enabled_ids/holder rebuilt with row.split('|') method calls
in a namespace loop.

https://projects.knownelement.com/issues/345
This commit is contained in:
2026-09-03 06:11:26 -05:00
parent 908c14d8e4
commit 85fdd1aa5e
+10 -5
View File
@@ -100,13 +100,18 @@ automation:
known_ids: >-
{{ all_csv.split(',') | map('trim') | select('match', '^\d+$') | list }}
enabled_ids: >-
{{ enabled_csv.split(',') | map('trim')
| select('match', '^\d+\|') | map('split', '|') | map('first')
| list }}
{% set ns = namespace(ids=[]) %}
{% for row in enabled_csv.split(',') %}
{% set parts = row.split('|') %}
{% if parts | length == 2 %}
{% set ns.ids = ns.ids + [parts[0] | trim] %}
{% endif %}
{% endfor %}
{{ ns.ids }}
holder: >-
{% set hit = enabled_csv.split(',') | map('trim')
{% set hits = enabled_csv.split(',') | map('trim')
| select('search', '^' ~ badge_id ~ '\|') | list %}
{{ (hit[0].split('|')[1] if hit else 'UNKNOWN') }}
{{ hits[0].split('|')[1] | trim if hits else 'UNKNOWN' }}
is_known: "{{ badge_id in known_ids }}"
is_enabled: "{{ badge_id in enabled_ids }}"
- action: input_text.set_value