AccueilÀ Propos de moiCompétencesProjetsContact

My Teams

Présentation globale

My teams est un projet de 2e année à Epitech

Le but de ce projet est de recréer le logiciel de communication Teams de Microsoft

Le projet est codé en C et se fais en version CLI (pas de partie graphique tout est dans le terminal)

Le projet est à réaliser en 5 semaines

Le projet est à réaliser en équipe de 2 à 3 personnes

J'ai réalisé ce projet seul

Le projet se décompose en 2 parties

Le serveur

Le serveur est le programme qui gère les connexions des clients et les commandes des clients

Il gère aussi la sauvegarde des données

Le serveur est codé en C et utilise la librairie standard de C ainsi qu'uuid pour la génération d'uuid unique

Le client

Le client est le programme qui permet à l'utilisateur d'interagir avec le serveur

Le client est codé en C et utilise la librairie standard de C

Les commandes

Les commandes sont les actions que l'utilisateur peut faire

Les commandes sont les suivantes:

  • /login (permet de se connecter)
  • /logout (permet de se déconnecter)
  • /users (permet de lister les utilisateurs)
  • /user (permet de voir les informations d'un utilisateur)
  • /send (permet d'envoyer un message privé à un utilisateur)
  • /messages (permet de lister les messages)
  • /subscribe (permet de s'abonner à une team)
  • /subscribed (permet de lister les teams auxquelles on est abonné)
  • /unsubscribe (permet de se désabonner d'une team)
  • /use (permet de changer le contexte(e.g. on peut /create dans la team pour créer un channel ou on peut /create dans un channel pour créer un thread))
  • /create (permet de créer quelque chose en fonction du contexte)
  • /list (permet de lister les éléments en fonction du contexte)
  • /info (permet d'avoir des informations sur un élément en fonction du contexte)
  • /help (permet d'afficher l'aide)

Exemple de conversation entre 2 utilisateurs