Texam International

Nom Utilisateur

utilisateur@example.com

Documentation API

Cette page documente toutes les routes API disponibles pour le projet Mon Texam Site.

Événements Socket.IO

ÉvénementDescriptionDonnées
join-reunion-hostÉmis par le vendeur pour rejoindre une réunionreunionId: string
join-reunion-clientÉmis par un client pour rejoindre une réunion{ reunionId: string, clientInfo: object }
update-cartÉmis par un client pour mettre à jour son panier{ reunionId: string, cart: array }
validate-cartÉmis par un client pour valider son panier{ reunionId: string, comment?: string }
close-reunionÉmis par le vendeur pour clôturer une réunionreunionId: string
reunion-dataReçu par le vendeur avec les données de la réunionreunion: object
reunion-statusReçu par le client avec le statut de la réunionstatus: string
client-joinedReçu par le vendeur quand un client rejointclientData: object
cart-updatedReçu par le vendeur quand un panier est mis à jour{ clientId: string, cart: array }
cart-validatedReçu par le vendeur quand un panier est validé{ clientId: string, comment?: string }
reunion-closedReçu par les clients quand la réunion est clôturée-
client-disconnectedReçu par le vendeur quand un client se déconnecte{ clientId: string, status: string }
survey-submittedReçu par le vendeur quand un questionnaire est soumis{ reunionId: string, timestamp: string }

Modèles de données

Réunion
Structure d'une réunion dans Redis
{
  "id": "reunion-123",
  "status": "active|terminee",
  "clients": [
    {
      "id": "client-456",
      "info": {
        "name": "Alice",
        "email": "alice@example.com"
      },
      "cart": [
        {
          "productId": "prod-789",
          "quantity": 2
        }
      ],
      "status": "en_cours|valide|non_finalise",
      "joinedAt": "2023-04-01T14:30:00Z",
      "validatedAt": "2023-04-01T15:00:00Z",
      "disconnectedAt": "2023-04-01T15:30:00Z"
    }
  ],
  "createdAt": "2023-04-01T14:00:00Z",
  "closedAt": "2023-04-01T16:00:00Z"
}
Questionnaire
Structure d'un questionnaire de satisfaction
{
  "overallRating": 4,
  "comment": "Très bonne expérience",
  "explanationClarity": "Très claires",
  "hostSupport": "Oui, très bien",
  "discoveredNewProduct": "Oui",
  "productQuality": "Bonne",
  "futureParticipation": "Oui, avec plaisir",
  "suggestion": "Plus de démonstrations",
  "recommendationScore": 9,
  "timestamp": "2023-04-01T15:30:00Z"
}

Codes d'erreur

Code HTTPDescriptionExemple
200 OKLa requête a réussi{ "success": true }
400 Bad RequestParamètres manquants ou invalides{ "message": "Données manquantes" }
403 ForbiddenAccès refusé (ex: réunion terminée){ "message": "Cette réunion est terminée" }
404 Not FoundRessource non trouvée{ "message": "Réunion non trouvée" }
500 Internal Server ErrorErreur serveur{ "message": "Erreur serveur" }