Plugin RFlink ne fonctionne plus

Bonjour,

un retour de mes recherches.
Je précise que c’est ma première approche avec npm, je n’y ai jamais touché, donc prennez mes infos comme ce qu’elles sont.
Voici un lien pour comprendre le pourquoi du problème (rapide):

En gros, à l’instant donné, une installation de dépendance via npm d’un jour à l’autre, on a pas les même packages
Comme sous Linux en fait, il prend la version la plus à jour dans le repo quand on upgrade.

Du coup ca pose problème, on a pas la même installation avec les mêmes versions d’un jour à l’autre.

Le fichier en question qui installe ce qu’il faut se trouve ici : /plugins/rflink/resources/package.json

Le script d’installation des dépendances dans jeedom va exécuter un script shell .sh, et à un moment, faire un npm install.
C’est la qu’il va lire le contenu du fichier package.json, et installer tout ce qu’il faut.

voici son contenu après une installation fraiche du plugin rflink :

{
  "name": "JeedomRflink",
  "version": "0.0.1",
  "description": "Node to use Rflink with Jeedom",
  "license": "GPL-3.0",
  "repository": "npm/npm",
  "dependencies": {
    "request": "latest",
    "telnet-client": "latest",
    "serialport": "latest"
  }
}

Apres diverses tentatives, j’ai isolé la dépendance serialport qui posait problème (request et telnet-client sont ok en latest)
J’ai pris un backup à moi au moment ou ce plugin fonctionnai, et regardé le contenu de cette librairie pour avoir la version qui fonctionnait.
On peut la trouver dans le fichier (même démarche pour chaque librairie, c’est pas mal en fait^^):
/plugins/rflink/resources/node_modules/serialport/package.json

Chez moi c’était la version 9.2.0.
Voici le contenu du fichier package.json après modification (via système/éditeur de fichier intégré de jeedom, ou via ssh, c’est pareil) :

{
  "name": "JeedomRflink",
  "version": "0.0.1",
  "description": "Node to use Rflink with Jeedom",
  "license": "GPL-3.0",
  "repository": "npm/npm",
  "dependencies": {
    "request": "latest",
    "telnet-client": "latest",
    "serialport": "~9.2.0"
  }
}

On retourne dans les plugin jeedom, et on relance l’installation des dépendance.
Et ca fonctionne ! Le démon est en démarré.

j’espère que ce sera le coup aussi chez vous.

Donc je pense qu’il y a un fix à faire coté plugin rflink, sinon faire la manip expliqué ici.

6 « J'aime »