Salut la commu,
Je me tourne vers vous car là je suis à court d’idée, pourtant ce que je cherche ne me semble pas complexe.
Mon problème
J’essaie d’adapter le magnifique travail d’AmoebeLabs et notamment sa card Météo (Sake 1)
Jusque là, 0 problème, je veux juste remplacer la qualité de l’air par l’indicateur d’alerte météo France.
Mon problème (simple), je veux que mon icone (statique) d’alerte prenne la couleur de l’alerte.
Le code de mon icone
type: icon
id: 2
position:
cx: 50
cy: 40
icon_size: 12
entity_index: 3
icon: 'mdi:alert-octagon-outline'
styles:
icon:
opacity: 0.6
fill: >
[[[
if (entity.state == 2)
return '#FDD74B';
else
return '#FE6A69';
]]]
Ce qui me rend fou c’est que si je mets une valeur statique genre
fill: '#FDD74B'
L’icône s’affiche de la bonne couleur mais dès que je veux mettre une condition, l’icône reprend sa couleur de base.
J’avoue ne pas capter la différence entre le « > » ou « | » quand on met du code. J’ai essayé tout ce qui pouvait me passer par la tête et mes recherches :
- utiliser {% if state(…)… %}),
- utiliser des simples quotes, double quotes pour les résultats,
- créer mon code avec le Modèle de démonstration de l’outil de développement
- utiliser les codes rgb / nom de couleurs
- …
Bien sûr j’ai parcouru la doc HA, la doc SAK, je passe certainement à côté de l’info mais là je sature.
J’ai aussi parcouru le forum traitant de ce sujet et essayant d’adapter les solutions apportées, mais rien n’y fait, c’est comme si la configuration n’acceptait pas mon if.
L’icone est intégré dans une card custom dont je mets le code si cela peut aider
Code de la carte
- type: 'custom:swiss-army-knife-card'
entities:
- entity: sensor.06_weather_alert #Index 54
attribute: Vagues-submersion
icon: 'mdi:waves-arrow-up'
aspectratio: 2/2.3
disable_card: false
dev:
debug: false
layout:
styles:
card:
toolsets:
filter: url(#nm-1)
toolsets:
# ==============================================================================
- toolset: card-title
position:
cx: 5
cy: 5
tools:
# Area
- type: area
id: 10
position:
cx: 50
cy: 50
entity_index: 0
styles:
area:
font-size: 12em
font-weight: 400
text-anchor: start
alignment-baseline: hanging
fill: var(--primary-text-color)
letter-spacing: 0em
opacity: 1
# weather type description
- type: state
id: 3
position:
cx: 50
cy: 70
entity_index: 7
styles:
state:
font-size: 10em
font-weight: 400
text-anchor: start
font-style: italic
# uom:
# alignment-baseline: central
- toolset: alertmeteo
position:
cx: 173.5
cy: 60
tools:
- type: 'circle'
id: 0
position:
cx: 50
cy: 50
radius: 22
styles:
circle:
opacity: 1
fill: var(--primary-background-color)
- type: 'segarc'
id: 1
entity_index: 2
position:
cx: 50
cy: 50
start_angle: 1
end_angle: 361
width: 2
radius: 20
scale:
min: 1
max: 5
width: 2
offset: -1
show:
scale: true
style: 'colorstops'
segments:
colorstops:
gap: 1
colors:
1: '#A8E05F'
2: '#FDD74B'
3: '#FE9B57'
4: '#FE6A69'
styles:
foreground:
fill: var(--theme-gradient-color-01)
background:
fill: var(--cs-theme-default-darken-15)
filter: url(#is-1)
####################
# Exclamation point
####################
- type: icon
id: 2
position:
cx: 50
cy: 40
icon_size: 12
entity_index: 2
icon: 'mdi:alert-octagon-outline'
styles:
icon:
opacity: 0.6
fill: >
[[[
if (entity.state == 2)
return '#FDD74B';
else
return #FE6A69;
]]]
- type: icon
id: 3
position:
cx: 50
cy: 55
icon_size: 12
entity_index: 54
styles:
icon:
filter: url(#is-1)
opacity: 0.6
Merci pour les courageux !
Ma configuration
System Information
version | core-2022.11.4 |
---|---|
installation_type | Home Assistant Supervised |
dev | false |
hassio | true |
docker | true |
user | root |
virtualenv | false |
python_version | 3.10.7 |
os_name | Linux |
os_version | 5.10.103-v7l+ |
arch | armv7l |
timezone | Europe/Paris |
config_dir | /config |
Home Assistant Community Store
GitHub API | ok |
---|---|
GitHub Content | ok |
GitHub Web | ok |
GitHub API Calls Remaining | 4898 |
Installed Version | 1.28.4 |
Stage | running |
Available Repositories | 1226 |
Downloaded Repositories | 16 |
Home Assistant Cloud
logged_in | true |
---|---|
subscription_expiration | 13 décembre 2022 à 01:00 |
relayer_connected | true |
remote_enabled | true |
remote_connected | true |
alexa_enabled | false |
google_enabled | false |
remote_server | eu-central-1-2.ui.nabu.casa |
can_reach_cert_server | ok |
can_reach_cloud_auth | ok |
can_reach_cloud | ok |
Home Assistant Supervisor
host_os | Raspbian GNU/Linux 10 (buster) |
---|---|
update_channel | stable |
supervisor_version | supervisor-2022.11.2 |
agent_version | null |
docker_version | 20.10.13 |
disk_total | 117.1 GB |
disk_used | 10.0 GB |
healthy | true |
supported | failed to load: Unsupported |
supervisor_api | ok |
version_api | ok |
installed_addons | Home Assistant Google Drive Backup (0.109.2), File editor (5.4.2), Node-RED (13.5.3), Mosquitto broker (6.1.3), MariaDB (2.5.1), Grafana (8.1.0), Zigbee2MQTT (1.28.4-1), InfluxDB (4.5.0), Samba share (10.0.0), Terminal & SSH (9.6.1) |
Dashboards
dashboards | 4 |
---|---|
resources | 14 |
views | 27 |
mode | storage |
Recorder
oldest_recorder_run | 27 novembre 2022 à 17:20 |
---|---|
current_recorder_run | 6 décembre 2022 à 11:36 |
estimated_db_size | 360.45 MiB |
database_engine | sqlite |
database_version | 3.38.5 |