Problème zwave et google home

bon finalement je peu répondre même sous quad9, j’ai une erreur qui pop :

2022-03-22T20:58:10+0100 <warn> gateway.forwardDeviceStateToGoogleHome.js:41 (sendCurrentState) Gladys Gateway: Unable to forward google home reportState
2022-03-22T20:58:10+0100 <warn> gateway.forwardDeviceStateToGoogleHome.js:42 (sendCurrentState) Error: getaddrinfo EAI_AGAIN api.gladysgateway.com
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:71:26) {
  errno: -3001,
  code: 'EAI_AGAIN',
  syscall: 'getaddrinfo',
  hostname: 'api.gladysgateway.com',
  config: {
    url: 'https://api.gladysgateway.com/google/report_state',
    method: 'post',
    data: '{"devices":{"states":{"fgd212-dimmer-2-2":{"online":true,"brightness":99}}}}',

Fais un docker inspect gladys je suis quasi sûr que le conteneur a un dns différent.

voici ce que j’ai avec un grep sur dns

docker inspect gladys | grep -iF dns
            "Dns": [],
            "DnsOptions": [],
            "DnsSearch": [],

encore le soucis ce matin :

2022-03-23T10:22:24+0100 <warn> gateway.forwardDeviceStateToGoogleHome.js:41 (sendCurrentState) Gladys Gateway: Unable to forward google home reportState
2022-03-23T10:22:24+0100 <warn> gateway.forwardDeviceStateToGoogleHome.js:42 (sendCurrentState) Error: getaddrinfo EAI_AGAIN api.gladysgateway.com
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:71:26) {
  errno: -3001,
  code: 'EAI_AGAIN',
  syscall: 'getaddrinfo',
  hostname: 'api.gladysgateway.com',
  config: {
    url: 'https://api.gladysgateway.com/google/report_state',
    method: 'post',
    data: '{"devices":{"states":{"fgd212-dimmer-2-2":{"online":true,"brightness":99}}}}',

Aucun changement malgré le changement de dns

C’est bizarre, j’ai moi aussi quad9 par défaut.

Tu sais te connecter en interactif sur le conteneur ? L’idée ça serait de récupérer le contenu de /etc/resolv.conf

Edit:

La commande => docker exec -it gladys /bin/ash -c "cat /etc/resolv.conf"

Exemple de sortie:

vonox@odin in  ~  1 ❯ docker exec -it gladys /bin/ash -c "cat /etc/resolv.conf"
search lan
nameserver 192.168.1.1
nameserver 9.9.9.9

Yes je m’en s’occupe dans l’après midi

Merci de laisser mes messages tel quel :smiley:

Voici le retour (thx)

docker exec -it gladys /bin/ash -c "cat /etc/resolv.conf"
# Generated by resolvconf
nameserver 9.9.9.9

Je viens de vérfier ton ‘dig’

Tu n’as pas de réponse dns :confused:

Côté Quad9 le domaine est ok

De mon côté:

vonox@odin in  ~ ❯ dig api.gladysgateway.com

; <<>> DiG 9.16.1-Ubuntu <<>> api.gladysgateway.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59709
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;api.gladysgateway.com.         IN      A

;; ANSWER SECTION:
api.gladysgateway.com.  300     IN      A       142.93.160.146

;; Query time: 15 msec
;; SERVER: 9.9.9.9#53(9.9.9.9)
;; WHEN: Wed Mar 23 14:00:46 CET 2022
;; MSG SIZE  rcvd: 66

Vraiment bizarre ton PB ( je suis dans une conf similaire Quad9/Pihole )

En testant ta route

pi@raspberrypi:~ $ dig api.gladysgateway.com

; <<>> DiG 9.11.5-P4-5.1+deb10u5-Raspbian <<>> api.gladysgateway.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55078
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;api.gladysgateway.com.         IN      A

;; ANSWER SECTION:
api.gladysgateway.com.  119     IN      A       142.93.160.146

;; Query time: 50 msec
;; SERVER: 9.9.9.9#53(9.9.9.9)
;; WHEN: Wed Mar 23 14:04:12 CET 2022
;; MSG SIZE  rcvd: 66

Pas de soucis non plus ^^

Je suis pas 100 % convaincu que l’on part sur la bonne hypothèse

Merde j’étais sur l’api

dig plus.gladysassistant.com

; <<>> DiG 9.16.1-Ubuntu <<>> plus.gladysassistant.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26101
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;plus.gladysassistant.com.      IN      A

;; ANSWER SECTION:
plus.gladysassistant.com. 300   IN      A       188.114.97.3
plus.gladysassistant.com. 300   IN      A       188.114.96.3

;; Query time: 27 msec
;; SERVER: 9.9.9.9#53(9.9.9.9)
;; WHEN: Wed Mar 23 14:06:50 CET 2022
;; MSG SIZE  rcvd: 85

Idem ^^

pi@raspberrypi:~ $ dig plus.gladysassistant.com

; <<>> DiG 9.11.5-P4-5.1+deb10u5-Raspbian <<>> plus.gladysassistant.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28120
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;plus.gladysassistant.com.      IN      A

;; ANSWER SECTION:
plus.gladysassistant.com. 300   IN      A       188.114.97.3
plus.gladysassistant.com. 300   IN      A       188.114.96.3

;; Query time: 72 msec
;; SERVER: 9.9.9.9#53(9.9.9.9)
;; WHEN: Wed Mar 23 14:08:19 CET 2022
;; MSG SIZE  rcvd: 85

Bah je sais pas trop du coup j’ai pas de piste locale. :face_with_spiral_eyes:

Je vais check de nouveaux mais toi tu n’as pas de soucis ?
Sinon tant pis j’attendrais l’app syno pour refaire une installation depuis le départ

Non j’ai aucun soucis avec une conf similaire, pour ça que je ne comprends pas

J’ai reboot au cas où la config ne s’est pas propager par tout je vais continuer de monitorer thx
J’avais encore le même soucis vers 17h ^^

@spenceur Ok visiblement le souci ne vient pas de là, on avance :slight_smile:

Pour mieux vous expliquer ce qui se passe dans cette fonction “reportState”, en fait comme tu as Google Home de connecté, ton instance locale propage à Google Home les changements de valeurs de tes appareils pour mettre à jour l’état côté Google Home. Ca te permet par exemple si tu as une lampe, de voir le bon état actuel de ta lampe la prochaine fois que tu ouvriras l’application Google Home, même si entre temps il y a eu des changements côté Gladys.

Bien-entendu, afin d’éviter que Gladys Plus spamme Google Home si tu as des appareils très verbose en local, l’instance locale n’envoie au maximum qu’un évènement par appareil et par 5 secondes.

Exemple: Si ta lumière tu l’allume, l’éteint, allume, éteint 12 fois de suite, Gladys n’enverra qu’un évènement et pas 12, j’ai bien réfléchi le truc :smiley: (Et si tu n’as aucuns changement d’état, Gladys n’envoie rien)

En revanche, si tu as 10 lampes différentes qui s’allume en même temps chez toi, Gladys va envoyer 10 requêtes plus ou moins en même temps.

Et c’est là où je pense qu’il pourrait y avoir un soucis.

Des erreurs EAI_AGAIN ça ne veut pas forcément dire que ça vient du serveur DNS, ça peut être aussi le service getaddrinfo qui se prend les pinceaux en local quand il est sous la charge.

Et c’est là qu’il faut vérifier si c’est le cas : si les intégrations que tu utilise en local se mettent à être toute très verbose d’un coup (ou que tu as une scène qui allume toutes les ampoules de ta maison en même temps), je me demande si ça peut poser des problèmes d’accès concurrent à ce fameux service DNS local, et résulter à des erreurs.

Il faudrait voir chez toi à quelle fréquence tu mets à jour les états de tes appareils (ça peut se trouver en DB dans la table t_device_feature_state), et voir si on a des périodes de la journée où tu as une forte concurrence. Si c’est le cas, ça ne veut pas forcément dire que c’est ça mais c’est une 1ère piste.

Néanmoins, pas de panique @spenceur, la seule conséquence de ces erreurs est que Google Home n’est pas à jour sur le dernier état local, ce n’est pas critique au fonctionnement de Gladys :slight_smile:

1 « J'aime »

Salut @spenceur,

Suite à ce qu’on s’est dit ce matin, j’ai fais une PR pour limiter la fréquence des appels vers Gladys Plus au niveau de cet appel réseau “google home reportState”.

J’ai limité à 2 appels concurents, et minimum 200ms par appel, ce qui limite évite de saturer ton Pi en cas de pic de changement d’état local !

La PR est là :

Je l’ai mergé tout à l’heure, ça partira dans la prochaine version de Gladys, en début de semaine prochaine sûrement :slight_smile:

1 « J'aime »

Et beh ta pas chômé !
Bravo

1 « J'aime »

Pour info, ce correctif est dispo dans Gladys Assistant v4.8.2 :slight_smile:

J’espère qu’on verra moins d’erreur DNS dans tes logs avec ce fix, tiens nous au courant !

Plus d’informations :

1 « J'aime »