Skip to content

Latest commit

 

History

History
182 lines (149 loc) · 18 KB

82-chessevent.md

File metadata and controls

182 lines (149 loc) · 18 KB

Caution

CETTE PAGE DE DOCUMENTATION EST OBSOLÈTE.

Retour au sommaire de la documentation

Papi-web - Annexe technique : interfaçage avec Chess Event

La configuration de Papi-web pour l'accès à la plateforme Chess Event est décrite dans la documentation utilisateur :

Cette page en décrit les aspects techniques.

Authentification

Le téléchargement se fait sur authentification pour limiter la diffusion des coordonnées des joueur·euses (adresses mél et numéros de téléphone).

Les identifiants utilisés pour l'authentification sont ceux de la plateforme Chess Event (administrateur, utilisateur ou gestionnaire d'évènement).

Une connexion à la plateforme ChessEvent est définie par les informations suivantes :

  • l'identifiant FFE de l'utilisateur·trice sur la plateforme Chess Event (de la forme XNNNNN, facultatif) ;
  • le mot de passe l'utilisateur·trice sur la plateforme Chess Event (facultatif) ;
  • l'identifiant de l'évènement sur la plateforme Chess Event.

Connexion d'un tournoi

Un tournoi est connecté à un tournoi de la plateforme Chess Event avec les informations suivantes :

  • une connexion à la plateforme ChessEvent (ci-dessus) ;
  • le nom du tournoi sur la plateforme Chess Event.

Requêtes de téléchargement

URL

L'URL de la requête est https://services.breizh-chess-online.fr/chessevent/download.

Paramètres

Tous les paramètres seront passés en clair dans le corps de la requête HTTPS sous la forme de paramètres (méthode POST).

Paramètre Description
user_id L'identifiant FFE de l'utilisateur·trice (de la forme XNNNNN).
password Le mot de passe l'utilisateur·trice sur la plateforme Chess Event.
event_id L'identifiant de l'évènement sur la plateforme Chess Event.
tournament_name Le nom du tournoi sur la plateforme Chess Event.

Exemple de paramètres :

- user_id=C69548
- password=my-password
- event_id=BRE_35_domloupfide36
- tournament_name=Tournoi A

Données attendues

Description des tournois

Les données sont attendues sous la forme d'un dictionnaire au format JSON (Content-Type: application/json).

Champ Type Description
name str Le nom.
type enum Le type :
1 = Suisse
2 = Toutes rondes
rounds int Le nombre de rondes.
pairing enum L'appariement :
1 = Standard
2 = Haley
3 = Haley dégressif
4 = SAD
5 = Accéléré niçois
6 = Berger
time_control str La cadence.
location str Le lieu.
arbiter str L'arbitre.
start timestamp La date de début.
end timestamp La date de fin.
tie_break_1, tie_break_2, tie_break_3 enum Les départages :
0 = aucun départage
1 = Buchholz
2 = Buchholz Tronqué
3 = Buchholz Médian
4 = Cumulatif
5 = Performance
6 = Somme des Buchholz
7 = Nombre de victoires
8 = Kashdan
9 = Koya
10 = Sonnenborn-Berger
rating enum Le classement utilisé :
1 = Standard
2 = Rapide
3 = Blitz
players list La liste des joueur·euses (détails plus bas).

Exemple de tournoi :

{
  'name': '36e open Fide de Domloup',
  'type': 1, # Suisse
  'rounds': 5,
  'pairing': 1, # Standard
  'time_control': 'G3600 + 30',
  'location': 'Domloup',
  'arbiter': 'AUBRY Pascal C69548',
  'start': 1708767000, # 2024-02-24 09:30
  'end': 1708880400, # 2024-02-25 17:00
  'tie_break_1': 2, # Buchholz tronqué
  'tie_break_2': 3, # Buchholz médian
  'tie_break_3': 5, # Performance
  'rating': 1, # Standard
  'players': [
    ...
  ],
}

Description des joueur·euses

Champ Type Description
last_name str Le nom de famille.
first_name str Le prénom.
gender enum Le genre :
0 = aucun
1 = Féminin
2 = Masculin
birth timestamp La date de naissance.
federation str Le code de la fédération (FED).
fide_id int L'identifiant Fide.
ffe_id str L'identifiant FFE (champ RefFFE dans Papi).
ffe_license enum La licence :
0 = aucune
1 = Licence non renouvelée (N)
2 = Licence B
3 = Licence A
ffe_licence_number str Le numéro de licence FFE (champ NrFFE dans Papi, au format XNNNNN).
ffe_league str Le code de la ligue (LIG).
ffe_club_id int Le numéro d'identifiant du club.
ffe_club str Le club.
category enum La catégorie :
0 = aucune
1 = U8 (Ppo)
2 = U10 (Pou)
3 = U12 (Pup)
4 = U14 (Ben)
5 = U16 (Min)
6 = U18 (Cad)
7 = U20 (Jun)
8 = Sen
9 = Sep
10 = Vet
standard_rating int Le classement standard.
standard_rating_type enum Le type de classement standard :
1 = Estimé
2 = National
3 = Fide
rapid_rating int Le classement rapide.
rapid_rating_type enum Le type de classement rapide (cf standard_rating_type).
blitz_rating int Le classement blitz.
blitz_rating_type enum Le type de classement blitz (cf standard_rating_type).
title enum Le titre :
0 = aucun
1 = Maître Fide féminin
2 = Maître Fide
3 = Maître International féminin
4 = Maître International
5 = Grand Maître féminin
6 = Grand Maître
email str L'adresse électronique'.
phone str Le numéro de téléphone.
fee float Le montant de l'inscription.
paid float La somme réglée.
check_in bool true si le·la joueur·euse a pointé, false sinon.
board int Un numéro d'échiquier fixe, 0 sinon.
skipped_rounds dict Un dictionnaire avec pour clé les rondes non journées et pour valeur les points marqués 0.0 si forfait, 0.5 ou 1.0 si points joker.

Exemple de joueur·euse :

{
  'last_name': 'AUBRY',
  'first_name': 'Pascal',
  'ffe_id': 'C69548',
  'fide_id': 20671806,
  'gender': 2,
  'birth': -41990400, # 1968-09-02
  'category': 9, # Sep
  'standard_rating': 1458,
  'standard_rating_type': 3, # F
  'rapid_rating': 1440,
  'rapid_rating_type': 3, # F
  'blitz_rating': 1440,
  'blitz_rating_type': 1, # E
  'title': 0,
  'license': 3, # A
  'federation': 'FRA',
  'league': 'BRE',
  'club_id': 1918,
  'club': 'Echiquier Domloupéen',
  'email': '[email protected]',
  'phone': '0677939521',
  'fee': 25.0,
  'paid': 25.0,
  'check_in': true,
  'board': 0,
  'skipped_rounds': {
    1: 0.5, # bye ronde 1
    2: 0.0, # absent ronde 3
  }
}

Codes d'erreur

En cas d'erreur, la réponse au format JSON ne contient qu'un champ error: str qui précise l'erreur rencontrée.

Les codes d'erreur suivants sont utilisés :

Statut HTTP Signification Champ error
200 succès
401 Problème d'authentification (impossibilité de s'identifier sur la plateforme Chess Event) Unauthorized
403 Problème d'autorisation (identifiants non autorisés pour l'évènement demandé) Access forbidden
497 Identifiant non trouvé User not found
498 Tournoi non trouvé Tournament not found
499 Évènement non trouvé Event not found
500 Autres erreurs À préciser