No description
Find a file
2024-04-01 19:39:01 +02:00
src fix. vérifier si une adresse email est déjà liée à un compte avant de faire la liaison 2024-04-01 19:39:01 +02:00
.gitignore Ignore storage 2023-02-03 09:42:40 +01:00
Cargo.toml implemented part of the logging system 2023-02-04 00:35:51 +01:00
README.md update README.md 2023-02-01 14:24:09 +01:00
rust-toolchain.toml Finition du projet de base 2022-12-08 16:10:05 +01:00

Cygnus

Structure

  • Le fichier main.rs initialise le programme;
  • Le dossier commands contient toutes les commandes du bot (un fichier par commande);
  • Attention : chaque module de commande doit être référencé dans le fichier mod.rs pour pouvoir être utilisé dans le main.rs;
  • Et donc, chaque fonction de commande doit être donnée à poise (dans le main.rs) pour qu'il puisse la transmettre à discord et réagir correctement.

Lancement

En mode développement, des informations sont à mettre dans un fichier env.

Il faut donc créer un fichier nommé .env à la racine de votre projet, et y écrire

TOKEN = le token du bot
MAILING_USERNAME = votre matricule HELMo
MAILING_PASSWORD = votre mot de passe HELMo
MAILING_SERVER = smtp.helmo.be
STORAGE_PATH = chemin vers la racine du stockage

Le projet peut ensuite être lancé normalement (via votre IDE, ou cargo run).

Structure des données

  • 1 dossier par serveur (dossier nommé en fonction de l'ID du serveur)
  • 1 fichier par utilisateur·ice et par dossier qui contient son adresse mail HELMo

Par exemple, 1 utilisateur rejoint le serveur Gaming et principal avec l'email p.nom@student.helmo.be

Note : on ne stocke pas le domaine de l'adresse email, ce serait redondant.

[user@cygnus]$ tree
.
├── 358231579714375690
│   └── 243281140079612931
└── 976597467281101450
    └── 243281140079612931

2 directories, 2 files
[user@cygnus]$ cat 976597467281101450/243281140079612931
p.nom
[user@cygnus]$ cat 358231579714375690/243281140079612931
p.nom

Commandes à implémenter

Commandes globales

Commande Description Exemple
verifier_user Permet de vérifier si le compte est déjà validé sur un des serveurs /verifier_user
lier Demande l'envoie d'un code par mail à l'adresse mail mentionner en paramètre /lier p.nom@student.helmo.be
verifier_code Permet de vérifier le code reçu par mail /verifier_code 123456
info Permet d'obtenir le message d'info du bot et des RGPD /info

Commandes d'administration

Commande Description Exemple
qui_est Permet d'obtenir l'email utilisé par l'utilisateur pour s'enregistrer /qui_est @username
set_role Permet de configurer le rôle qui sera attribuer à un utilisateur après sa vérification /set_role @role_vérifié