Bonjour,
Mon problème
Mon automation sort le message d’erreur suivant (historique d’exécution) :
Erreur : Failed to process the returned action response data, expected a dictionary, but got <class ‹ int ›>.
Ci-dessous, l’automation ainsi que le script utilisés.
Je cherche à compter via un script le nombre de devices dans un certain état.
Que faut il modifier pour que cela fonctionne?
J’ai regardé dans les divers posts et le problème semble être dans la variable RESULT, j’ai essayé avec « result.value » et « result » sans succès.
Le script m’affiche bien la notification avec le nombre correct de device.
Merci de votre aide.
Alei
*** Automation ****"
alias: Counting statuses and preset_mode
triggers:
- minutes: /5
trigger: time_pattern
actions:
- variables:
result: null
enabled: true
- action: script.count_climate_entities
data:
state: heat
preset_mode: away
response_variable: result
- action: persistent_notification.create
metadata: {}
data:
title: Notification
message: count ok "{{ result.value}}
*** Script ***
description: Count entities climate with specific state and preset_mode
fields:
state:
description: "Status entity (ex: heat)"
example: heat
preset_mode:
description: "Preset_mode (ex: away)"
example: away
sequence:
- variables:
matching_count: |
{{ states.climate
| selectattr('state', 'equalto', state)
| selectattr('attributes.preset_mode', 'equalto', preset_mode)
| list
| count }}
- data:
message: >
Number climate entities having status "{{ state }}" and preset_mode "{{
preset_mode }}" : {{ matching_count }}
title: Result
action: persistent_notification.create
enabled: true
- stop: End
response_variable: matching_count
enabled: true
alias: " count_climate_entities"