Bot Mattermost écrit en Rust faisant la liaison entre Mattermost et Discord (WIP)
src | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
README.md |
matter_bot
Pré-requis
openssl
requis par mattermost_api
sudo apt install libssl-dev
.env
placé dans la racine du projet qui contient ses différentes variables :
TOKEN=votre_token_ici # pas besoin de token si vous mettez un combo pseudo/mot-de-passe
PSEUDO=votre_pseudo_ici # pas besoin de pseudo si un token est renseigné
MOT_DE_PASSE=votre_mot-de-passe_ici # pas besoin de mot de passe si un token est renseigné
URL=url_du_site_ici, ex: https://talk.up8.edu
EQUIPE=nom_de_lequipe, ex: etudiant-es
Note: Si les deux moyens de connexion sont renseignés (token et pseudo/mot-de-passe), le bot ne se lancera pas.
Dans le cas ou vous optez pour le token, vous devez ajouter un bot, pour ce faire (d'après la documentation officielle) :
- Cliquez sur les 9 carrés en haut a gauche
- Integrations
- Bot Accounts
- Add Bot Account
- Remplissez les champs
- Cochez la case
post:all
pour être sur qu'il n'y aura pas de problèmes de permission (c'est une reccomandation) - Create Bot Account
- Dans la page suivante, vous aurez votre token
Tests en local
En local, j'ai utilisé Docker pour héberger mon instance de Mattermost et pouvoir faire des tests, voici le docker-compose que j'ai utilisé :
version: "2"
services:
mattermost:
image: mattermost/mattermost-preview:latest # version preview parce que c'est juste pour testé
container_name: Mattermost
ports:
- 8065:8065 # cf. documentation officielle : https://docs.mattermost.com/install/setting-up-local-machine-using-docker.html
restart: unless-stopped
Sources
- Documentation
mattermost_api
(utilisé pour communiquer avec Mattermost) - Documentation
tokio
(utilisé carmattermost_api
estasync
)
Projet ne fonctionne pas avec l'instance de la Fac, car son mattermost se connecte via Gitlab et (je crois?) aucune librarie ne supporte ceci.