Rest_command

Bonjour !
Voilà je voudrais faire un get vers un serveur et lire la réponse qui est retourné. Malheureusement le get se fait bien mais je ne sais pas comment lire la réponse ! Voici le script qui est déclenché

rest_command:
  testreponse:
    url:https://testreponse.php


alias: reponse api
description: ""
trigger:
  - platform: time_pattern
    minutes: /01
action:
  - service: rest_command.testreponse
    data: {}
  - delay: "00:00:05"
  - service: persistent_notification.create
    data:
      title: Réponse de l'API
      message: "{{ 'response') }}"

Voilà la page php qui retourne une réponse 

<?php


$response = array(
    'message' => 'Salut, ça va ?'
);


$json_response = json_encode($response);


header('Content-Type: application/json');

// Retourne la réponse JSON
echo $json_response;
?>

Voilà si c’est possible de m’aider :crossed_fingers::grin:merci

Hello,

Est ce que ça ne serait pas plus simple de faire un sensor avec Restful : RESTful - Home Assistant

Et ensuite, d’interroger l’état de ce sensor ?

2 « J'aime »

Merci pour ta réponse j’ai vue cette Doc toute à l’heure , j’ai essayé de comprendre mais :sweat_smile:
Tu peux m’expliquer en quoi sa consiste ? Désoler peut être avec ton explication ça va passer merci bien

@titoumimi à raison je pense qu’il serait plus simple comme cela.
Cela dit, je pense aussi que ta méthode devrait être possible sans sensor.
Il me semble que tu devrais attribué un nom de variable à la réponse obtenue par ta commande rest.
Dans ta tuile ‹ appeler le service « rest_command.testelephone » sur › tu devrais cocher la case « variable de réponse » et la nommée
Ensuite utiliser cette variable dans ta notification

Cela donnerais quelque cose comme cela dans la tuile du service rest

service: rest_command.testreponse
data: {}
response_variable: valeur_reponse

et quelque chose dans le genre dans la tuile de notification

service: persistent_notification.create
data:
  title: Réponse de l'API
  message: "\"{{ valeur_reponse }}\""

Peux tu essayer et nous dire ce que tu obtiens ?

J’ai un résultat concluant en essayant chez moi. J’espère que ca fonctionnera pour toi :wink:

Je te préparerai un exemple demain matin, ça va être l’heure du dodo là :yum:

Salut

ça permet ce créer un capteur avec les données retourner par la requête.

Exemple:

- resource_template: https://particulier.edf.fr/services/rest/referentiel/searchTempoStore?dateRelevant={{now().strftime("%Y-%m-%d")}}
  scan_interval: 3600
  sensor:
    - name: "Tempo Demain"
      value_template: "{{ value_json['couleurJourJ1']|regex_replace(find='^TEMPO_', replace='') }}"
    - name: "Tempo Aujourd'hui"
      value_template: "{{ value_json['couleurJourJ']|regex_replace(find='^TEMPO_', replace='') }}"


image

Cet exemple va créer 2 capteurs à partir du json renvoyé par l’API de EDF.

1 « J'aime »

A super merci beaucoup pour vos réponse super claire ! Du coup j’avais pas vue la case pour la variable ! Avec ton exemple ça fonctionne ! Et concernant l’autres façon je comprends mieux du coup ça permet de checker des datas et des les stocker en quelques sorte c’est bien ça ? Merci encore :grin::+1: genial

2 « J'aime »

oui voila, tu vas créer un sensor qui va checker toutes les XX secondes (scan_interval) et enregistrer la réponse en tant que valeurs ou attributs selon comment tu le configure.

Pense à noté le sujet comme résolu et bon automation à toi avec tout ça en plus :wink:

1 « J'aime »

Merci encor pour votre aide a tous ! Et votre réactivité vous êtes top

1 « J'aime »