Articles sur : Documentation technique

⚙️ Documentation technique - Bot et Integrations Tchap

Les projets de la communauté Tech x Tchap communiquent dans le salon Tchap suivant : https://tchap.gouv.fr/#/room/#BotsetIntgrationsTchapU2tHdMEN80D:agent.dinum.tchap.gouv.fr

Des webinaires sont organisés régulièrement. Les notes partagées se trouvent ici

Projets communautaires



Les besoins remontés lors des webinaires Tech x Tchap se regroupent dans deux cas d'usage principaux :

- les webhooks
Exemple : dans un salon Tchap, un service de monitoring envoient des messages lorsqu'un serveur informatique rencontre des problèmes.

ProjetsLibrary utiliséLanguageEncryption
https://github.com/numerique-gouv/tchap-bot-webhookmatrix-bot-sdkjsno


- les bots
Exemple : un programme informatique automatise des actions dans un salon comme répondre à des messages, inviter des nouveaux membres, exécuter des commandes.

ProjetsLibrary utiliséLanguageEncryption
https://github.com/etalab-ia/albert-tchapbothttps://github.com/imbev/simplematrixbotlibPythonNA
https://github.com/tchapgouv/tchap-bot-mte/tree/master/backendmatrix-js-sdk +pantalaimonNodeJsoui par pantalaimon
https://forge.dgfip.finances.rie.gouv.fr/dgfip/esi-strasbourg/devops/maubot/maubot-composehttps://github.com/maubot/gitlabpythonNA
https://code.peren.fr/open-source/tchapbothttps://github.com/imbev/simplematrixbotlibpythonOui via le paramètre ENCRYPTION_ENABLED dans matrix_bot/config.py


Plus d'information sur le chiffrement ici :
⚙️ Documentation technique - Le chiffrement dans Tchap

Clients officiels de Matrix



Maubot (python) : https://docs.mau.fi/
Matrix Nio (python) : https://github.com/poljar/matrix-nio
Matrix-Bot-sdk (typescript) : https://turt2live.github.io/matrix-bot-sdk/index.html

Attentions particulières



Tester votre intégration sur nos serveurs de test



Tout le personnel qui possède une adresse mail en *.gouv.fr peut créer un compte sur les serveurs de développement Tchap https://www.tchap.incubateur.net. Comme ce sont des serveurs de développement, ils sont considérés instables et peuvent être réinitialisés sans préavis par l'équipe Tchap.

Se reconnecter à chaque appel



Il est dangereux de se reconnecter à chaque appel API car cela créé des dizaines voir des centaines de sessions et un grand volume de données.
Il faut partager le access token à chaque appel.

Respecter les rate-limit des serveurs



Lors de l'invitation en masse d'utilisateur dans un salon, il faut respecter un certain délai entre deux invitations pour ne pas déclencher les rate-limit sur le serveur Synapse ou sur les serveurs frontaux web.

Une bonne pratique est de respecter un rythme d'un appel API par seconde.

Mis à jour le : 09/10/2024

Cet article a-t-il répondu à vos questions ?

Partagez vos commentaires

Annuler

Merci !