Erreur ERR_SOCKET_BAD_PORT alors que le port est OK

Bonjour,

Je viens de découvrir l’existance du plugin maillistener.
C’est exactement ce que je recherchais pour finir de domotiser la gestion de conso électrique pour l’abonnement EDF Zen Flex.
Oui, car contrairement à l’abonnement Tempo, les différents types de jours Zen Flex ne sont pas annoncés par le plugin EcoWatt et il n’y a pas de site à requêter en API. La notification se fait par mail ou SMS la veille et débrouilles toi avec ça !

Je l’ai donc configuré pour aller lire une boite mail Orange en IMAP comme suit:

Mais le démon ne se lance pas et il y a message incohérent dans les log du node ERR_SOCKET_BAD_PORT (voir ci dessous).
Incohérent, car c’est comme si il y avait un mix sur les paramètrés envoyés au démon: genre le nom du serveur imap à la place du port du serveur IMAP.

Ce poste me semblait prometteur mais c’est déjà OK côté mot de passe et lien symbolique (ln)

J’ai vu d’autres posts sur le type de sécurisation de l’IMAP mais ça donne rien non.

Si quelqu’un a eu une idée, je serais bien reconnaissant !

Merci de m’avoir lu en tout cas.
PS: au cas où, je signale que mon Jeedom est mode docker.

Maillistener


[2024-03-10 23:00:14]ERROR : Attention je pense qu'il y a un soucis avec le démon que j'ai relancé plus de 3 fois consécutivement

Maillistener_node


 node:internal/validators:409
 throw new ERR_SOCKET_BAD_PORT(name, port, allowZero);
 ^
 RangeError [ERR_SOCKET_BAD_PORT]: Port should be >= 0 and < 65536. Received type string ('imap.orange.fr').
 at new NodeError (node:internal/errors:405:5)
 at validatePort (node:internal/validators:409:11)
 at lookupAndConnect (node:net:1280:5)
 at Socket.connect (node:net:1237:5)
 at Connection.connect (/var/www/html/plugins/maillistener/resources/node_modules/imap/lib/Connection.js:286:10)
 at MailListener.start (/var/www/html/plugins/maillistener/resources/node_modules/mail-listener3/index.js:45:15)
 at Object.<anonymous> (/var/www/html/plugins/maillistener/resources/maillistener.js:62:14)
 at Module._compile (node:internal/modules/cjs/loader:1356:14)
 at Module._extensions..js (node:internal/modules/cjs/loader:1414:10)
 at Module.load (node:internal/modules/cjs/loader:1197:32) {
 code: 'ERR_SOCKET_BAD_PORT'
 }
 Node.js v18.19.0

Bonjour,

Aucune idée, mais le log indique que le port est hors de la plage.

A tester :
Supprimez 993, enregistrez et saisissez de nouveau 993 et sauvegardez (assurez vous qu’il n’y a pas un espace après).

Il faut bien écrire le port, car ce qui est donné en exemple n’est pas une valeur envoyé, mais grisée.

Vu sur le forum, une personne a eu le même problème et à du supprimer l’équipement et l’a recréé de nouveau.

Bonjour,

Pour suivre l’idée de Fabrice, j’ai commencé une suppression et recréation du listener pour la boîte mail qui m’intéresse mais sans succès.

Les logs d’install ont aussi un message d’erreur que j’avais pas vu:

Installation spécifique plugin
npm WARN deprecated mimelib@0.3.1: This project is unmaintained
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See There’s Math.random(), and then there’s Math.random() · V8 for details.
npm WARN deprecated mailparser@0.4.9: Mailparser versions older than v2.3.0 are deprecated
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
added 92 packages, and audited 93 packages in 19s
13 packages are looking for funding
run npm fund for details
5 moderate severity vulnerabilities
To address all issues possible (including breaking changes), run:
npm audit fix --force
Some issues need review, and may require choosing
a different dependency.
Run npm audit for details.
npm notice
npm notice New minor version of npm available! 10.2.3 → 10.5.0
npm notice Changelog: https://github.com/npm/cli/releases/tag/v10.5.0
npm notice Run **npm install -g npm@10.5.0** to update!
npm notice
Fin de l’installation

J’ai tenté la commande npm install -g npm@10.5.0 mais nouvelle erreur:

npm ERR! code EACCES
npm ERR! syscall mkdir
npm ERR! path /var/www/.npm
npm ERR! errno -13
npm ERR!
npm ERR! Your cache folder contains root-owned files, due to a bug in
npm ERR! previous versions of npm which has since been addressed.
npm ERR!
npm ERR! To permanently fix this problem, please run:
npm ERR! sudo chown -R 33:33 « /var/www/.npm »

npm ERR! Log files were not written due to an error writing to the directory: /var/www/.npm/_logs
npm ERR! You can rerun the command with --loglevel=verbose to see the logs in your terminal

Et quand je cherche les propriétés du dossier /var/www/.npm, en fait il est manquant:

root@f7e275102bf8:/# ls -l /var/www/.npm
ls: cannot access ‹ /var/www/.npm ›: No such file or directory

Donc, création du dossier manquant avec les bonnes permissions, update du module npm et reinstall du plugin: plus d’erreur d’install mais toujours la même erreur d’execution « ERR_SOCKET_BAD_PORT ».

Je sèche là.