Kyar
Août 18, 2023, 11:43
182
Salut @Guizmos , j’ai voulue copier ta carte mais je n’ai que la premiere carte Download qui s’affiche, je ne peux pas défiler comme si les autres n’existaient pas.
J’ai copié collé tes templates et sensor, j’ai bien installé la swipe-card.
Il y’a d’autres choses à faire avant ?
Salut
Hum bizarre. Tu as testé la swipe-card indépendamment ? J’ai l’impression que ton problème vient de la…
Kyar
Août 18, 2023, 1:07
184
Il y’a tellement de ligne et avec les copier coller j’ai l’impression qu’il y’a des décalages, comment tu te retrouves la dedans toi ? Je peux pas copier à la suite de mon code
Balance ton code complet pour que je regarde
Kyar
Août 23, 2023, 6:24
186
Finalement j’ai opté pour le mettre dans une autre vue, plus simple à gérer.
J’ai fais la mise à jour de HA et maintenant speedtest ne marche plus, j’imagine que je ne suis pas le seul ?
Bonjour,
pas de soucis de mon coté en 2023.8.3.
Regarde dans les logs l’erreur pour le speedtest.
roumano
Septembre 5, 2023, 2:36
188
J’ai une question relative a speedtest :
chez moi, sur tout les serveurs que je peut lister via speedtest --servers
, ils sont tous en erreur avec :
[error] Error: [0] Timeout occurred in connect.
[error] Latency test failed
Je pense que je suis bloquer par mon firewall mais j’arrive pas a trouver de quel port (et en tcp ou udp), le service speedtest a besoin.
Herbs
Septembre 5, 2023, 4:01
189
Salut @roumano
La doc :
Et vu sur d’autres forum, faudrait déjà ouvrir 8080/tcp et udp en sortie, pour voir.
Perso en entrée j’ai que le 443, le port de wireguard d’ouvert, et ça passe.
Sinon jouer du netstat pour voir.
1 « J'aime »
roumano
Septembre 5, 2023, 4:30
190
Merci, au top (j’avais pas trouver cette doc), je confirme qu’avec le 8080 en tcp et udp ça fonctionne
2 « J'aime »
Hello,
je viens de finir l’intégration merci à tous pour votre aide grâce aux échanges
j’ai une question cependant sur le scan_interval…il ne le prends pas en compte et il ne pas semblé avoir vu des échanges là-dessus. A moins de passer par une automation, je ne vois pas.
le paramètre est-il utile?
Salut,
J’ai un scan_interval: 3600 , sa actualise bien toutes les heures.
Ta bien un scan_interval:
en option pour les command_line.
merci pour ton retour je constate bien que pour toi le paramètre est fonctionnel.
Je vais vérifier s’il n’y a pas un problème de version
Bonjour,
J’ai un souci avec cette intégration : mes sensor upload et download sont en unknown depuis pas mal de temps, et en me penchant sur le code, je ne voie pas ce qui cloche :
speedtest_cli_download:
friendly_name: 'SpeedTest CLI Download'
unique_id: speedtest_cli_download
# icon: mdi:speedometer
unit_of_measurement: Mbit/s
# state_class: measurement
value_template: >-
{%- set download = ((states('sensor.speedtest_cli_data') | from_json).download * 8 / 1000 / 1000) | round(2) -%}
{% if download | float > 1000 %}
{{ (download | int / 1000) | round(2) | replace('.',',') }} Gb/s
{% else %}
{{ download | replace('.',',') }} Mb/s
{% endif %}
speedtest_cli_upload:
friendly_name: 'SpeedTest CLI Upload'
unique_id: speedtest_cli_upload
# icon: mdi:speedometer
unit_of_measurement: Mbit/s
# state_class: measurement
value_template: >-
{%- set upload = ((states('sensor.speedtest_cli_data') | from_json).upload * 8 / 1000 / 1000) | round(2) -%}
{% if upload | float > 1000 %}
{{ (upload | int / 1000) | round(2) | replace('.',',') }} Gb/s
{% else %}
{{ upload | replace('.',',') }} Mb/s
{% endif %}
comme vous pouvez le voir, le sensor speedtest cli data est actualisé, j’ai bien le ping également d’actualisé mais les 2 sensor upload et download eux non.
une idée d’où peut venir le problème ?
Update : Résolu : les ‹ unit_of_measurement: Mbit/s › dans le template des sensor faisait doublon avec le code dans le command_line, en les mettant en commentaire, cela fonctionne bien de nouveau.
1 « J'aime »
Je n’arrivais pas à faire fonctionner correctement l’intégration officielle de speedtest, merci @WarC0zes pour cette solution et ce tuto au top !
FROlCi
Novembre 4, 2023, 4:29
196
Bsoir,
En petit cadeau voici ma version adaptée d’une très belle carte glannée sur les forums:
Carte
type: custom:stack-in-card
cards:
- type: custom:layout-card
layout_type: grid
layout:
width: 100%
grid-template-columns: 20% 50% 30%
grid-template-rows: auto
cards: null
- type: custom:layout-card
layout_type: grid
card_mod:
style: |
ha-card {
background: none !important;
border: none;
}
cards:
- type: custom:mushroom-chips-card
chips:
- type: template
entity: sensor.speedtest_cli_download
card_mod:
style: |
ha-card {
background: none !important;
border: none;
}
icon: mdi:speedometer
icon_color: blue
content: Speedtest
tap_action:
action: call-service
service: homeassistant.update_entity
service_data:
entity_id: sensor.speedtest_cli_data
- type: template
card_mod:
style: |
ha-card {
background: none !important;
border: none;
}
entity: sensor.speedtest_cli_ping
icon: null
icon_color: deep-orange
content: '{{states(''sensor.speedtest_server_name'')}}'
- type: template
card_mod:
style: |
ha-card {
background: none !important;
border: none;
}
entity: sensor.speedtest_cli_ping
icon: null
icon_color: deep-orange
content: >-
maj il y a
{{relative_time(states.sensor.speedtest_cli_data.last_updated)}}
alignment: left
- square: false
columns: 3
type: grid
cards:
- type: custom:stack-in-card
card_mod:
style: |
ha-card {
background: none !important;
border: none;
}
cards:
- type: custom:apexcharts-card
card_mod:
style: |
ha-card {
background: none !important;
border: none;
}
chart_type: radialBar
series:
- entity: sensor.speedtest_cli_download
color: rgb(255, 87, 34)
max: 1000
show:
legend_value: false
apex_config:
plotOptions:
radialBar:
offsetY: 0
startAngle: -108
endAngle: 108
hollow:
size: 80%
dataLabels:
name:
show: false
value:
show: false
track:
strokeWidth: 70%
margin: 0
fill:
type: gradient
gradient:
shade: light
type: horizontal
shadeIntensity: 0.3
inverseColors: false
opacityFrom: 1
opacityTo: 1
stops:
- 0
- 50
- 55
- 90
legend:
show: false
chart:
height: 130
- type: custom:mushroom-entity-card
entity: sensor.speedtest_cli_download
primary_info: state
secondary_info: name
name: Download
icon_color: deep-orange
layout: vertical
card_mod:
style: |
ha-card {
background: none !important;
border: none;
margin-top: -65px;
width: auto%;
margin-left: auto;
margin-right: auto;
--card-primary-font-size: 12px;
--card-secondary-font-size: 10px;
}
- type: custom:stack-in-card
card_mod:
style: |
ha-card {
background: none !important;
border: none;
}
cards:
- type: custom:mushroom-template-card
primary: '{{ states(entity)}} ms'
secondary: ping
icon: mdi:wan
entity: sensor.speedtest_cli_ping
icon_color: |-
{% set temp = states(entity) |float %}
{% if temp < 10 %}
light-green
{% elif temp < 15 %}
blue
{% elif temp < 20 %}
teal
{% elif temp < 30 %}
orange
{% else %}
red
{% endif %}
layout: vertical
badge_icon: ' mdi:traffic-light'
badge_color: |-
{% set temp = states(entity) |float %}
{% if temp < 10 %}
light-green
{% elif temp < 15 %}
orange
{% elif temp < 20 %}
red
{% endif %}
- type: custom:stack-in-card
card_mod:
style: |
ha-card {
background: none !important;
border: none;
}
cards:
- type: custom:apexcharts-card
card_mod:
style: |
ha-card {
background: none !important;
border: none;
}
chart_type: radialBar
series:
- entity: sensor.speedtest_cli_upload
color: rgb(33, 150, 243)
max: 500
show:
legend_value: false
apex_config:
plotOptions:
radialBar:
offsetY: 0
startAngle: -108
endAngle: 108
hollow:
size: 80%
dataLabels:
name:
show: false
value:
show: false
track:
strokeWidth: 70%
margin: 0
fill:
type: gradient
gradient:
shade: light
type: horizontal
shadeIntensity: 0.3
inverseColors: false
opacityFrom: 1
opacityTo: 1
stops:
- 0
- 40
- 50
- 60
legend:
show: false
chart:
height: 130
- type: custom:mushroom-entity-card
entity: sensor.speedtest_cli_upload
primary_info: state
secondary_info: name
name: Upload
icon_color: blue
layout: vertical
card_mod:
style: |
ha-card {
margin-top: -65px;
width: auto;
margin-left: auto;
margin-right: auto;
--card-primary-font-size: 12px;
--card-secondary-font-size: 10px;
background: none !important;
border: none;
}
- type: custom:fold-entity-row
card_mod:
style: |
ha-card {
background: none;
border: none;
}
head:
type: custom:mushroom-template-card
label: padding
secondary: détails
tap_action: none
multiline_secondary: true
card_mod:
style: |
ha-card {
margin-left: 350px;
background: none;
border: none;
}
padding: 0
entities:
- type: custom:stack-in-card
card_mod:
style: |
ha-card {
background: none;
border: none;
}
cards:
- type: custom:mini-graph-card
entities:
- entity: sensor.speedtest_cli_download
line_color: deep-orange
y_axis: primary
- entity: sensor.speedtest_cli_upload
show_adaptive_color: true
y_axis: primary
- color: rgba(0,0,255,1)
entity: binary_sensor.night_reworked
name: Nuit
show_line: false
y_axis: secondary
hours_to_show: 24
points_per_hour: 4
line_width: 1
font_size: 50
animate: true
show:
name: false
icon: false
state: false
legend: true
fill: fade
state_map:
- label: Day
value: 'off'
- label: Night
value: 'on'
card_mod:
style: |
ha-card {
background: none;
border: none;
}
card_mod:
style: |
ha-card {
background: none;
margin: -5px -5px -5px;
border: none;
}
Mes Sensors
template:
- sensor:
#Speedtest Sensors
- name: "SpeedTest CLI Ping"
unique_id: speedtest_cli_ping
icon: mdi:speedometer
unit_of_measurement: ms
state_class: measurement
state: "{{ (states('sensor.speedtest_cli_data') | from_json).ping | round(2) }}"
- name: "SpeedTest CLI Download"
unique_id: speedtest_cli_download
icon: mdi:speedometer
unit_of_measurement: Mbit/s
state_class: measurement
state: "{{ ((states('sensor.speedtest_cli_data') | from_json).download * 8 / 1000 / 1000) | round(2) }}"
- name: "SpeedTest CLI Upload"
unique_id: speedtest_cli_upload
icon: mdi:speedometer
unit_of_measurement: Mbit/s
state_class: measurement
state: "{{ ((states('sensor.speedtest_cli_data') | from_json).upload * 8 / 1000 / 1000) | round(2) }}"
- name: Speedtest ISP
unique_id: Speedtest_ISP
state: '{{ ((states("sensor.speedtest_cli_data") | from_json).isp) }}'
- name: Speedtest Server Name
unique_id: Speedtest_Server_Name
state: '{{ ((states("sensor.speedtest_cli_data") | from_json).server_name) }}'
- name: Speedtest Server Host
unique_id: Speedtest_Server_Host
state: '{{ ((states("sensor.speedtest_cli_data") | from_json).server_host) }}'
- name: Speedtest URL
unique_id: Speedtest_url
state: '{{ ((states("sensor.speedtest_cli_data") | from_json).url) }}'
- name: Speedtest location
unique_id: Speedtest_location
state: '{{ ((states("sensor.speedtest_cli_data") | from_json).location) }}'
Il faudra avoir installé fold-entity-row GitHub - thomasloven/lovelace-fold-entity-row: 🔹 A foldable row for entities card, containing other rows avant
et en cerise sur le gateau ; tu peux créer ce sensor:
binary_sensor:
#pour la connection internet
- platform: ping
name: internet_reachable
host: 8.8.8.8
scan_interval: 15
pour afficher cette carte:
il faudra installer depuis HACS la carte uptime-card → GitHub - dylandoamaral/uptime-card: Minimalistic uptime card for Home Assistant Lovelace UI
Carte
type: custom:uptime-card
entity: binary_sensor.internet_reachable
hours_to_show: 48
title_adaptive_color: true
status_adaptive_color: true
icon: mdi:web
update_interval: 30
severity: 10
icon_adaptive_color: true
tooltip_adaptive_color: true
alias:
ok: Connecté
ko: Déconnecté
title_template: Connection Internet
bar:
height: 38
init: {}
color: {}
show:
header: true
title: true
icon: true
status: true
timeline: true
footer: true
average: true
tooltip:
hour24: true
tap_action: {}
alignment:
icon_first: false
blink:
speed: 1
clip: {}
*Tout ce qui est au dessus n’est que ma réutilisation du travail d’autres donc les merci sont pour toutes celles zé ceusses qui ont produit tout cela ^^
Bonjour
Depuis quelques jours (sans doute avec la mise à jour de décembre), l’intégration CLI Speedtest ne fonctionne plus.
Dans les fichiers journaux voici ce que j’ai
Logger: homeassistant.helpers.event
Source: helpers/template.py:571
First occurred: 12:19:05 (3 occurrences)
Last logged: 12:19:05
Error while processing template: Template<template=({{ (states(‹ sensor.speedtest_cli_data ›) | from_json).ping | round(2) }}) renders=2>
Error while processing template: Template<template=({{ ((states(‹ sensor.speedtest_cli_data ›) | from_json).download * 8 / 1000 / 1000) | round(2) }}) renders=2>
Error while processing template: Template<template=({{ ((states(‹ sensor.speedtest_cli_data ›) | from_json).upload * 8 / 1000 / 1000) | round(2) }}) renders=2>
Traceback (most recent call last):
File « /usr/src/homeassistant/homeassistant/helpers/template.py », line 569, in async_render
render_result = _render_with_context(self.template, compiled, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File « /usr/src/homeassistant/homeassistant/helpers/template.py », line 2247, in _render_with_context
return template.render(**kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File « /usr/local/lib/python3.11/site-packages/jinja2/environment.py », line 1301, in render
self.environment.handle_exception()
File « /usr/local/lib/python3.11/site-packages/jinja2/environment.py », line 936, in handle_exception
raise rewrite_traceback_stack(source=source)
File « », line 1, in top-level template code
File « /usr/src/homeassistant/homeassistant/helpers/template.py », line 2102, in from_json
return json_loads(value)
^^^^^^^^^^^^^^^^^
File « /usr/src/homeassistant/homeassistant/util/json.py », line 43, in json_loads
return orjson.loads(__obj) # type:ignore[no-any-return]
^^^^^^^^^^^^^^^^^^^
orjson.JSONDecodeError: unexpected character: line 1 column 1 (char 0)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File « /usr/src/homeassistant/homeassistant/helpers/template.py », line 695, in async_render_to_info
render_info._result = self.async_render(
^^^^^^^^^^^^^^^^^^
File « /usr/src/homeassistant/homeassistant/helpers/template.py », line 571, in async_render
raise TemplateError(err) from err
homeassistant.exceptions.TemplateError: JSONDecodeError: unexpected character: line 1 column 1 (char 0)
Suis-je le seul ?
Non pareillement et l’intégration Speedtest ne fonctionne pas non plus chez moi… J’ai toujours cette foutue erreur
500 Internal Server Error Server got itself in trouble
Bonjour,
aucun soucis de mon coté en 2023.12.1
Comment faire pour savoir d’où vient l’erreur ?
quand j’ai eu des soucis, je fesais un test du terminal, qui te donne une erreur plus precise.
Soit que le serveur est HS ou existe plus ( quand tu utilise un serveur précis ), soit que ta trop fait de demande et faut attendre ou que la license a expirer …
fais un test dans le terminal avec:
./speedtest