Construire un serveur WebSocket en C++ Builder

· Composants

TsgcWebSocketServer fait partie de la suite sgcWebSockets et fournit un composant haut niveau pour créer des serveurs WebSocket en C++ Builder. Ce guide te montre comment créer un serveur minimal qui répond automatiquement aux messages entrants. 

Créer le projet VCL

  1. Ouvre C++ Builder et crée une nouvelle VCL Forms Application.
  2. Pose un composant TsgcWebSocketServer sur la fiche (nommé sgcWSServer1 par défaut).
  3. Optionnellement, ajoute un TMemo (MemoLog) pour afficher l'activité.

Configurer le serveur

Configure le serveur dans le gestionnaire OnCreate de la fiche : 

void __fastcall TForm1::FormCreate(TObject *Sender)
{
  sgcWSServer1->Port   = 9001;  // écouter sur le port 9001
  sgcWSServer1->Active = true;  // démarrer le serveur
} 

Répondre aux messages entrants

Gère l'événement OnMessage pour renvoyer en écho le texte reçu au client : 

void __fastcall TForm1::sgcWSServer1Message(TsgcWSConnection *Connection,
                                            const UnicodeString Text)
{
  Connection->WriteData("Server received: " + Text);  // répond uniquement à l'expéditeur
  // sgcWSServer1->Broadcast(Text); // alternative : envoyer à tous les clients
  MemoLog->Lines->Add(Text);                           // logging optionnel
}

WriteData ne transmet la réponse qu'à la connexion spécifique, tandis que Broadcast envoie le message à chaque client connecté. 

Exécuter le serveur

Compile et lance l'application. Tout client WebSocket qui se connecte à ws://<your-host>:9001/ recevra une réponse préfixée par « Server received: » pour chaque message envoyé.