New script blueprint to calculate user name from user ID
This commit is contained in:
parent
d6110e77b6
commit
29226c41ab
|
@ -0,0 +1,45 @@
|
|||
blueprint:
|
||||
name: Convert User ID to User Name
|
||||
description: >-
|
||||
A script that determines the user name for a provided user ID.
|
||||
domain: script
|
||||
source_url: https://github.com/nwithan8/configs/blob/master/home_assistant/blueprints/scripts/convert_user_id_to_user_name.yaml
|
||||
input:
|
||||
store_in:
|
||||
description: The text input entity to store the result in
|
||||
name: Where to store result
|
||||
selector:
|
||||
target:
|
||||
entity:
|
||||
domain: input_text
|
||||
fields:
|
||||
user_id:
|
||||
description: The ID of the user
|
||||
example: abcdef123456
|
||||
name: User ID
|
||||
required: true
|
||||
selector:
|
||||
text:
|
||||
variables:
|
||||
store_in: !input 'store_in'
|
||||
user_name: >
|
||||
{% set user = None %}
|
||||
|
||||
{% set matching_users = (states.person |
|
||||
selectattr('attributes.user_id','==', user_id) | list) %}
|
||||
|
||||
{% if matching_users | length > 0 %}
|
||||
{% set user = matching_users | first %}
|
||||
{% else %}
|
||||
{% set user = "system" %}
|
||||
{% endif %}
|
||||
|
||||
{{ "System" if user == "system" else state_attr(user.entity_id,
|
||||
"friendly_name") }}
|
||||
sequence:
|
||||
- alias: Store calculated user name in text entity
|
||||
service: input_text.set_value
|
||||
data:
|
||||
value: "{{ user_name }}"
|
||||
target:
|
||||
entity_id: "{{ store_in.entity_id }}"
|
Loading…
Reference in New Issue