Température de mon kodi

Bonjour,

je souhaiterais mesurer la température de mon kodi,
en utilisant une commande ssh

j’ai jouté ce code dans mon configuration.yaml

# Rpi Kodi Stanzetta CPU temp
sensor rpi:
  - platform: command_line
    name: Température CPU kodi
    command: 'ssh root@192.168.20.19 cat/sys/class/thermal/thermal_zone0/temp'
    unit_of_measurement: "°C"
    scan_interval: 120
    value_template: '{{ value | multiply(0.001) | round(2) }}'

j’ai trouvé cela sur le net,
j’ai copié ma clé publique sur le kodi pour ne plus avoir de demande de mot de passe,
jusque la ça fonctionne bien
si je tape ma cpmmande en direct termonal
j’ai bien ma température
mais dans le log de hass, j’ai :

Logger: homeassistant.components.command_line
Source: components / command_line / init.py:41
Integration: command_line

alors pourquoi cela ne marcherait pas ?
une idée ?

merci d’avance,
Stéphane

Bonjour,

Je pense que le souci vient de l’indentation de l’ajout de ton sensor dans ton fichier de configuration.

SI tu as deja des sensor de déclarer dans ton fichier, essaie ceci

  - platform: command_line
    name: Température CPU kodi
    command: 'ssh root@192.168.20.19 cat  / sys / class / thermal / thermal_zone0 / temp' #command: temp.sh
    unit_of_measurement: "°C"
    scan_interval: 120
    value_template: '{{ value | multiply(0.001) | round(2) }}'

ah oui désolé mais je n’ai pas de problème d’indentation,
sinon j’aurais une erreur de fichier yaml
c’est juste une erreur de copier-coller dans le site, désolé
c’est comme les espaces entre les / dans ma commande, c’est que le site me disais que je ne pouvais pas mettre de liens ?

j’ai vérifié, j’ai bien la bonne indentation
c’est corrigé !!

Ok.
Et donc ca fonctionne ou non ton sensor?

As tu fais tes echanges de clé entre ton HASS et ton KODI ?

Non,
ça ne fonctionne pas, j’ai l’erreur décrite ci dessus en boucle,
oui j’ai bien copié ma clé publique du hass.io sur kodi
et en ligne de commande manuelle, j’ai bien ma température

As tu essaye en modifiant ta ligne de commande du sensor en appelant un fichier shell sur ton kodi ?

fichier sur kodi : temp_kodi.sh

cat /sys/class/thermal/thermal_zone0/temp

De :

A

command: ssh root@192.168.20.19  '/chemin/temp_kodi.sh'

eh bien non,
j’ai toujours la même erreur
Command failed: ssh root@192.168.20.19 /storage/sh/temper.sh

alors que ma commande manuelle fonctionne bien
faut il mettre des guillemets et apostrophes ?

j’avais essayé avec et sans sur la première forme mais sans plus de succès

je viens d’essayer avec :
ssh root@192.168.20.19 ‹ /storage/sh/temper.sh ›

et même constat
Command failed: ssh root@192.168.20.19 ‹ /storage/sh/temper.sh ›

J’ai rien sous la main. As tu essaye avec shell_command ,?.
Ça se tente

Tu as jeté un œil à tes droits?
Tout ce qui part de hass doit être avec le user homeassistant je pense

Bon en progrès recherche.
Regarde ca

Aussi

en regardant dans le log ‹ superviseur ›
j’ai cela comme erreur

2020-09-19 06:39:28 ERROR (SyncWorker_19) [homeassistant.components.command_line] Command failed: ssh root@192.168.20.19 ‹ /storage/sh/temper.sh ›
Host key verification failed.

c’est bien un Host key verification failed. qui me pose problème

la je viens d’essayer la commande :
ssh -i /root/.ssh/id_rsa -o StrictHostKeyChecking=no root@192.168.20.19 /storage/sh/temper.sh

qui fonctionne aussi très bien en terminal

Bonsoir,

Ah oui donc c’est bien une key qui gene, certainement du au user utilisé depuis hassio.

Faut que je retrouve mais je crois avoir lu quelque chose a ce sujet où la key était mise dans le dossier /config/.ssh
Ce qui pourrait peut être t’avancer un peu :slight_smile:

Ola,

Et comme ca avec un « -q »

 platform: command_line
    name: 'Archive Disk 0'
    scan_interval: 300
    command: ssh -i /config/.ssh/id_rsa -o StrictHostKeyChecking=no -q root@192.168.12.161 smartctl -A /dev/ada0 | grep -i Temperature_Celsius | awk '{print $10}'    
    unit_of_measurement: '°C'

/root est écrase ou remonte a chaque démarrage ou chaque upgrade.

Essaie /config/.ssh/id_rsa.

Et en régénèrant une clé as tu essayé ? Vu le message d’erreur :slight_smile:

Hop hop.

Avec cette syntaxe peut etre :slight_smile:
Non testé :grinning::grinning:

GENIAL CA MARCHE
:blush:

1 « J'aime »

alors je vais mettre la procédure complète pour ceux que cela pourrait intéresser…

on crée une clé d’authentification sur le terminal interne du homeassistant

$ ssh-keygen -t rsa

ensuite il faut déposer les 3 fichiers créés dans le dossier du homeassistant

/config/.ssh

créer un dossier .ssh sur le kodi ou ordi de destination (dans le dossier utilisateur utilisé pour le login)
sur kodi c’est le root donc :
/storage/.ssh
sur un autre linux ce sera dans le dossier de l’utilisateur ex:
/home/stephane/.ssh

copier sa clé publique sur le kodi (ou tout autre linux) sur lequel on va envoyer la commande :
cat .ssh/id_rsa.pub | ssh root@192.168.20.19 'cat >> .ssh/authorized_keys'

reste a mettre dans le configuration.yaml la commande :

sensor rpi:

  • platform: command_line
    name: Température CPU kodi
    command: ssh -i /config/.ssh/id_rsa -o StrictHostKeyChecking=no -q root@192.168.20.19 cat /sys/class/thermal/thermal_zone0/temp
    unit_of_measurement: « °C »
    scan_interval: 120
    value_template: ‹ {{ value | multiply(0.001) | round(2) }} ›

redémarrer homeassistant
et apprecier

encore merci a toi pepite
:grinning:

1 « J'aime »

Salut @steph96

Parfait, well done !! A toi le monitoring de KODI !!
On sait maintenant récupérer des infos sur un autre serveur. Au top « command_line » !!

Merci pour le partage :wink:

un ssh-copy-id aurait certainement fonctionné.

Merci encore