J’ai eu un mal fou à trouver la doc API de l’EDRT 3. Je la trouve dans un topic sur ce forum grace au lien de @fgtoul
Avant de migrer sur mon HA de RT2 vers RT3, je dois m’assurer de pouvoir récupérer toutes les valeurs que j’'utilisais via plusieurs mécanismes avec le RT2 (2 API différentes : /user/status.json + /admin/toreSensor.json + intégration RT2 HA).
J’ai donc connecté le RT3 en volant sans rien pour l’instant. Je ne trouve pas ou configurer la téléinfo.
J’ai créé une clé API (Les droits user / observer ne sont pas clairs ou pas documentés). Je suppose que le filtrage par adresse IP nécessite de mettre 255.255.255.0 pou utiliser l’API d RT3 sur tout le sous réseau du LAN. Que veut dire la valeur par défaut 255.255.255.255 ? En réseau cette valeur veut dire qu’on autorise uniquement un /32 donc qu’une seule IP. Cela n’a pas de sens dans ce cadre la. Il m’aurait plutôt pertinent de mettre par défaut une valeur correspondant à l’IP / masque récupérée par le DHCP voir 255.255.255.0 par défaut.
Ensuite quand je tente d’utiliser ça par exemple dans chrome
D’ailleurs si je met une clé API fausse, je n’ai même pas de message unauthorized ou équivalent
PS : La partie SNTP et mise à jour de l’heure semble ne pas fonctionner. Pour que ça fonctionne, il est nécessaire de désactiver SNTP et le réactiver. Bug de jeunesse
Ca venait du champ Vérouillage IP : 255.255.255.255.
Si je met 255.255.255.0, ça fonctionne pas. Je suis obligé de laisser 4x 255.
C’est pas logique car je souhaite autorisé le RT3 sur tout mon LAN. Je pense que c’est un bug
EDIT 1 : J’en profite pour te demande si tu as trouvé le paramétrage de la TIC ? Je n’ai pas trouvé dans les menus
EDIT 2 : Dans ton outil il ne semble pas y avoir les endpoints API Object ED3 pour lire les valeurs instantanées des torres par exemple celles- ci API ED3
En revanche je cherche l’api pour changer l’état d’un relais unique (sans changer l’autre).
la commande suivante permet de changer l’état des relais mais des 2 en meme temps. Je n’ai pas trouvé la solution pour n’en changer qu’un seul. Si je met une chaine vide, ça faut false…
Qu’en dites vous ?
PUTRelay 1 On
IP/api/object/ed3/0?ApiKey=apikey
Cette requête permet d’activer le relais 1 de l’EcoDevice 3.
A noter : la commande agit comme un ON et non comme un OFF.
Pour désactiver le relais, il faut donc transmettre une commande false.
L’état actuel du relais est transmis dans le champ « Relay_state ».
Creer un endpoint complementaire permettant de lire ou écrire un relais à partir de son index. Bien prendre en compte également le fait qu’On peut avoir un X8R (ce qui est mon cas)
Peut etre plus simple mais moins propre, modifier la définition json pour accepter une 3eme valeur autre que true / false, qui permet de ne pas modifier l’Etat d’Un relais.
J’avais oublié dans l’outil l’objet ED3, il faut télécharger la maj
donc il faut envoyer dans le body avec true pour le relais 1 …et la valeur du relais 2 à null pour pas la modifier :
{
« Relay_command »: [
true,
null
]
}
Il y a donc une regression par rapport à l’API du RT2. Je viens de regarder.
Avec la commande Set R on pouvait bien activer ou désactiver un seul relais.
C’est étonnant que ça ne soit pas prévu dans l’API du RT3 qui semble sur la meme base que l’IPX 800…
Pour moi ce n’est donc pas gérable en l’état car il faudrait d’abord lire la valeur avant de modifier le relais en question. Ce qui peut poser de nombreux problèmes en cas de changement simultanée de plusieurs relais…
EDIT : effectivement le plus simple pour avoir cette évolution serait de conserver le même endoint mais en gérant le null pour ne pas modifier le relais qui comporte le null