Développement connecteur Enercoop


#1

Bonjour,

Je suis le projet Cozy depuis un petit bout de temps, et j’ai enfin trouvé le temps de mettre un peu les mains dans le cambouis !

J’ai commencé le développement d’un connecteur Enercoop. Celui-ci semble fonctionnel en mode standalone mais je ne sais pas trop comment procéder pour la suite: le valider, le soumettre à la communauté, etc . Merci de m’indiquer la marche à suivre !


#2

Hello @choj,

Bienvenue sur ce forum et :fireworks:

Merci !!!

Je pense que la prochaine étape est de nous communiquer le code de ton connecteur, pour que nous y jetions un œil. Tu peux le faire publiquement ou m’envoyer l’adresse en privé.

Nous pourrons ainsi le tester et le proposer rapidement aux Cozynautes.


#3

Salut @Clochix,

le code est disponible ici:

https://gitlab.allella.io/dje/cozy-konnector-enercoop

J’attends vos retours,

à bientôt !


#4

Merci beaucoup ! J’en appelle à notre expert es konnectors, @doubleface en (double)personne !


#5

En voilà une bonne nouvelle ! Bravo @choj et bienvenue ici !

–Tristan


#6

\o/ Bienvenue @choj et c’est une contribution que fait bien plaisir!

Je n’ai pas de compte enercoop pour vraiment tester ton connecteur mais le code me semble nickel pour fonctionner en mode “standalone”.

Pour le finaliser, il ne reste plus qu’à remplir le fichier manifest.webapp avec les bonnes permissions :

  "permissions": {
    "bank operations": {
      "description": "Required to link bills to bank operations",
      "type": "io.cozy.bank.operations"
    },
    "bills": {
      "description": "Required to save bills documents",
      "type": "io.cozy.bills"
    },
    "files": {
      "description": "Required to save the bills files",
      "type": "io.cozy.files"
    },
    "accounts": {
      "description": "Required to get the account's data",
      "type": "io.cozy.accounts",
      "verbs": ["GET"]
    }
}

Je pense que le champ “slug” de ce fichier peut être “enercoop” pour plus de cohérence avec les autres connecteurs.

Avec ça, tu pourras faire fonctionner ton connecteur avec yarn dev faisant pointer ton fichier konnector-dev-config.json vers une instance cozy (qui n’est pas obligée d’être en local.

Enfin, pour pouvoir le déployer, il restera à mettre à jour le fichier package.json et en particulier les commandes de script.

Et aussi un simple yarn upgrade pour mettre à jour cozy-konnector-libs à la dernière version 3.2.5

Ensuite, on pourra rapidement ajouter ton connecteur dans cozy-collect.

Si tu as des questions, n’hésite pas.


#7

Merci pour ces infos @doubleface

J’ai ajouté les permissions au manifest. J’ai un peu tâtonné pour la suite… je ne suis pas parvenu à tester le connecteur avec mon instance cozy hébergée sur mycozy.cloud mais peut-être est-ce normal ? Désolé pour les questions de béotien mais je ne connais pas trop l’architecture de cozy, ni celle de l’environnement de dev… Je coince à la génération du token: cozy-stack instances token-cli <instance name> <scope> me retourne ERRO[2710] [http] POST /instances/token Not Found(404): Instance not found nspace=http
J’ai donc installé une instance en local, et les factures sont bien collectées par celle-ci .
J’ai aussi mis à jour le package.json pour l’entrée deploy notamment qui s’est visiblement bien déroulée.


#8

As-tu eu le temps de jeter un œil aux modifs apportées? N’hésite pas à me dire ce qui ne va pas ! Merci


#9

Tous ça me semble parfait!

Est-ce que tu vois une objection à ce que ton connecteur soit ajouté dans l’organisation konnectors ? Cela permet à l’équipe cozy de faire de la maintenance dessus, même quand tu n’es pas disponible, et ça permet aussi d’ajouter à ton connecteur le build automatique à chaque nouveau commit ainsi que la mise à jour automatique des dépendances. Tu auras bien sûr tous les droits d’administrateur sur ce repo.

En tous cas, ce n’est pas une obligation. Dès que j’ai ta réponse, je pourrai ajouter ton connecteur dans cozy-collect (et désolé pour le temps de réponse, je n’ai pas été notifié, il faut que je revoie mes préférences sur le forum).

Au passage, la documentation des connecteurs vient d’être mise à jour. Tes retours sont plus que bienvenus!

Et merci pour cette superbe contribution!


#10

Merci pour ton retour @doubleface

J’imagine qu’il faudrait pour cela que l’on verse le code sur Github ? Je t’avoue que ça ne m’enchante pas des masses… même si je mesure bien l’intérêt de la chose. D’ailleurs ton (votre) avis sur la question du “tout Github” et la centralisation / l’uniformisation / l’utilisation d’un outil non open source etc. m’intéresse beaucoup. Peut-être disposez-vous d’un serveur GitLab ou autre ?

Concernant la documentation des connecteurs, je vais y jeter un oeil


#11

Hello @choj,

Peut-être serait-il possible de mettre en place un miroir de ton dépôt sur Github ? Nous sommes bien conscient·e·s des inconvénients de Github. Mais il a aussi de nombreux avantages : c’est la plateforme la plus utilisée, sur laquelle il est le plus simple de contribuer (beaucoup de développeurs et de développeuses y ont un compte et connaissent bien son usage). C’est aussi, reconnaissons-la, la plus visible donc à même de donner de la visibilité à nos projets.

Par ailleurs, nous utilisons également notre propre serveur Gitlab, pour nos projets internes. L’idée de l’ouvrir progressivement à nos contributeurs et contributrices a déjà été évoquée, mais j’avoue que nous n’avons jusqu’à présent pas poussé la réflexion très loin.


#12

Bien sûr @Clochix, c’est possible pour le mirroring. Je comprends bien les avantages de Github, mais je préférais poser la question espérant que peut-être … Optons pour l’ajout aux konnectors + mirroring si cela convient à tout le monde !


#13

Hello @choj, je viens d’ajouter ton connecteur dans konnectors. Et si tu me donne un login github, je pourrais t’ajouter en tant que mainteneur de ce repository. Je me suis permis de faire quelques ajouts pour que le build du connecteur se passe bien en attendant.

Son ajout dans collect est aussi en cours : https://github.com/cozy/cozy-collect/pull/570 mais il faudra encore attendre que la prochaine version de collect soit déployée.

Merci pour cette superbe contribution!


#14

Royal !
Mon login github: choje

Merci @doubleface !


#15

Normalement ça devrait être bon. Tu es administrateur sur https://github.com/konnectors/cozy-konnector-enercoop. Merci @cho


#16

Bonjour @Clochix & @doubleface ,

je me remets sur le connecteur puisque des utilisateurs rencontrent quelques soucis. J’ai mis à jour ma copie locale (à partir du dépôt GitHub puisque mauvaise nouvelle, le mirroring avec le GitLab n’est disponible que dans la version EE…) et je constate que le yarn dev échoue: cozy-konnector-dev n’existe visiblement plus. Aussi l’index.js doit être désormais placé dans un répertoire src. Est-ce normal ? Dois-je bien mettre à jour le package.json afin de conserver un dépôt fonctionnel en m’inspirant du cozy-konnector-template par exemple ? Merci beaucoup.


#17

Salut,

Le fait de mettre les sources dans src est une convention et pas obligatoire. Mais le template est maintenant un repository que l’on tiens au maximum à jour et plus ton connecteur s’en rapproche et mieux c’est pour la maintenance.

On a encore des progrès à faire en terme de communication avec les contributeurs sur les modifications apportées dans cozy-konnector-libs. Ce qu’on essaye de faire maintenant est déjà de remplir les releases dans github