Skip to content
This repository was archived by the owner on Sep 18, 2026. It is now read-only.

Constitution "Grade"

Mathis Lamidey edited this page Sep 19, 2021 · 1 revision

Principe

Le type de constitution original: chaque utilisateur vote pour toutes les chansons en lui attribuant une note de 1 à 10, et, une fois ces notes normalisées en utilisant la loi normale, la somme cumulée de tous les votes est effectuée et la chanson gagnante est celle qui a le plus grand score.

Module de votes

  • Une collection "votes" contient des objets ayant l'uid d'un utilisateur.
  • Chaque objet contient une map<id de la chanson, note>
  • La collection vote contient aussi un objet "summary" pour avoir notamment le nombre de vote sans à avoir à écouter tous les objets

Interface

interface GradeVote {
  songId: number; // ID de la chanson à laquelle le vote est attribué
  grade: number;  // Valeur du vote. Doit être contenu entre 1 et 10
}

interface GradeUserData {
  uid: string;                 // UID de l'utilisateur auquel ce document se réfère
  values: Map<number, number>; // Map reliant un ID de chanson à un score allant de 1 à 10
}

interface GradeSummary {
  voteCount: number; // Nombre de votes total de tous les utilisateurs de la sontitution.
}

Requêtes WS

Event Request parameters Response Subscribe Response Description
CST-GRADE-edit
  • cstId: string
  • voteData: GradeVote
  • result: ResponseStatus
Modifie le document de vote d'un utilisateur pour contenir les informations demandées.
CST-GRADE-get-all
  • cstId: string
  • gradeDataUpdate: GradeUserData
Récupère tous les votes accessibles à l'utilisateur qui les demande, et abonne l'utilisateur à leurs changements.
CST-GRADE-get-user
  • cstId: string
  • gradeDataUpdate: GradeUserData
Récupère tous les votes de l'utilisateur qui les demande, et abonne l'utilisateur à leurs changements.
CST-GRADE-get-summary
  • cstId: string
  • summary: GradeSummary
Récupère le document résumé, et abonne l'utilisateur à ses changements.
CST-GRADE-unsubscribe
  • cstId: string
Supprime les mises à jours des votes de la constitution demandée.

Clone this wiki locally