Aymkdn / assistant-plugins

Des plugins pour les Assistant (comme Google Home, Cortana, Alexa)
https://aymkdn.github.io/assistant-plugins/
MIT License
92 stars 21 forks source link

Erreur sur le host #222

Closed Ybbet closed 5 years ago

Ybbet commented 5 years ago

Bonjour,

Avec assistant-plugins@2.0.11 et assistant-notifier@2.1.6, pm2@3.2.9, node@9.9.0, npm@6.5.0, sur un Raspberry Pi 3, j'ai l'erreur suivante :

1|assistan |     at /home/pi/assistant-plugins/node_modules/assistant-notifier/notifier.js:78:15
1|assistan |     at Array.forEach (<anonymous>)
1|assistan | (node:2768) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 8)
1|assistan | (node:2768) UnhandledPromiseRejectionWarning: TypeError [ERR_INVALID_ARG_TYPE]: The "options.port" property must be one of type number or string. Received type function
1|assistan |     at lookupAndConnect (net.js:1026:13)
1|assistan |     at TLSSocket.Socket.connect (net.js:1001:5)
1|assistan |     at Object.exports.connect (_tls_wrap.js:1144:12)
1|assistan |     at Client.connect (/home/pi/assistant-plugins/node_modules/castv2/lib/client.js:35:21)
1|assistan |     at PlatformSender.connect (/home/pi/assistant-plugins/node_modules/castv2-client/lib/senders/platform.js:27:15)
1|assistan |     at /home/pi/assistant-plugins/node_modules/assistant-notifier/notifier.js:33:13
1|assistan |     at new Promise (<anonymous>)
1|assistan |     at AssistantNotifier.prom (/home/pi/assistant-plugins/node_modules/assistant-notifier/notifier.js:28:10)
1|assistan |     at /home/pi/assistant-plugins/node_modules/assistant-notifier/notifier.js:78:15
1|assistan |     at Array.forEach (<anonymous>)
1|assistan | (node:2768) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 10)

Ma configuration pour notifier est :

    "notifier": {
      "host": {
        "salon": "192.168.X.XX",
        "chambre garcons": "192.168.Y.YY"
      }
    }

Et du fait de l'erreur, notifier ne fonctionne plus. J'ai l'impression que depuis la v2.1.6, quelque chose a été cassée. J'ai également le plugin assistant-freebox et je n'ai pas de problème de fonctionnement.

Une idée du souci ?

Amicalement,

Aymkdn commented 5 years ago

Aucun problème chez moi...

Question stupide, mais tu as bien des nombres à la place des X dans 192.168.X.XX ? ^^

Aymkdn commented 5 years ago

Si oui, ce que tu peux essayer de faire (afin de débugguer), entre ces deux lignes : https://github.com/Aymkdn/assistant-notifier/blob/master/notifier.js#L77-L78 (qui sont dans le fichier node_modules/assistant-notifier/notifier.js)

Tu peux mettre :

        currentVolume[host] = -1;
        console.log("[DEBUG] ",host); // cette ligne à rajouter
        _this.prom(client, 'connect', host)

Et dans le fichier node_modules/castv2/lib/client.js (juste avant https://github.com/thibauts/node-castv2/blob/master/lib/client.js#L28) tu peux mettre :

  console.log("[DEBUG castv2] ",options); // cette ligne à rajouter
  options.port = options.port || 8009;

Puis reteste et vois ce que ça te dit dans la console.

Ybbet commented 5 years ago

Bonjour,

Oui, bien sûr les XX sont bien les numéros de l'adresse IP. Je vais voir pour rajouter ces lignes de logs dans notifier ce soir. Là, je n'ai pas accès dans l'immédiat à mon installation. Je te tiens au courant.

Ybbet commented 5 years ago

Re,

J'ai modifié un peu tes commandes de log :

        currentVolume[host] = -1;
        console.log("[DEBUG] "+host); // cette ligne à rajouter
        _this.prom(client, 'connect', host)

et

  console.log("[DEBUG castv2] "+options); // cette ligne à rajouter
 console.debug(options);
  options.port = options.port || 8009;

Voici ce que j'ai au final :

1|assistant  | [assistant] (2019-02-03 14:52:52) Appel du plugin 'wait'
1|assistant  | [assistant] (2019-02-03 14:53:22) Appel du plugin 'notifier'
1|assistant  | [assistant-notifier] (salon,chambre garcons) Lecture du message : Mon message ici
1|assistant  | [DEBUG] 192.168.0.29
1|assistant  | [DEBUG castv2] [object Object]
1|assistant  | { host: '192.168.0.29' }
1|assistant  | [DEBUG] 192.168.0.25
1|assistant  | [DEBUG castv2] [object Object]
1|assistant  | { host: '192.168.0.25' }

Les messages se lancent correctement aujourd'hui. Je ne vois qu'une seule raison : il faut que tous les mois je me connecte sur mon compte pushbullet pour ne pas avoir de "compte inactif". Mais j'ai toujours l'erreur pour client.js

Aymkdn commented 5 years ago

il faut que tous les mois je me connecte sur mon compte pushbullet pour ne pas avoir de "compte inactif".

Si c'était le cas, tu ne recevrais pas du tout de message depuis PushBullet.... Mais tu peux en effet, installer l'application PushBullet sur ton téléphone qui devrait être suffisant.

Les messages se lancent correctement aujourd'hui [...] Mais j'ai toujours l'erreur pour client.js

Tu as toujours l'erreur at /home/pi/assistant-plugins/node_modules/assistant-notifier/notifier.js:78 qui s'affiche ? Mais les messages sont lus par le Google Home quand même ?

Moi j'ai mis un console.debug(options) sur cette ligne : https://github.com/thibauts/node-castv2/blob/master/lib/client.js#L32, et ça m'affiche ça :

{ host: '192.168.0.13', port: 8009, rejectUnauthorized: false }

Et tout fonctionne parfaitement, pas de message d'erreur....

no-response[bot] commented 5 years ago

Cette issue a été automatiquement fermée car il n'y a eu aucune réponse complémentaire de la part de l'auteur. N'hésite pas à reposter ici si tu as d'autres questions.