test
continuous-integration/drone/push Build is passing Details

ServeurDeTest
Noé GARNIER 2 years ago
parent b05e8067e9
commit bec438e716

@ -18,27 +18,27 @@ class Client
$userModel = new UserModel();
// pas d'arrêt d'éxécution du script (No timeout)
set_time_limit(20);
$socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("la socket n'a pas pu être créée ERROR : " . socket_strerror(socket_last_error()) . "\n");
set_time_limit(0);
$socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("la socket n'a pas pu être créée ERROR : " . socket_strerror(socket_last_error()) . "(Client : Queuing) \n");
// connecter la socket à l'adresse ip et au port du serveur
$result = socket_set_block($socket);
if ($result === false) {
echo "socket_set_block a échoué : " . socket_strerror(socket_last_error()) . "\n";
echo "socket_set_block a échoué : " . socket_strerror(socket_last_error()) . " (Client : Queuing)\n";
} else {
echo "socket_set_block a réussi.\n";
echo "socket_set_block a réussi. (Client : Queuing) \n";
}
$result = socket_connect($socket, $serverAdress, $port) or die("Impossible de se connecter au serveur ERROR : " . socket_strerror(socket_last_error()) . "\n");
$result = socket_connect($socket, $serverAdress, $port) or die("Impossible de se connecter au serveur ERROR : " . socket_strerror(socket_last_error()) . "(Client : Queuing) \n");
if ($result === false) {
// La connexion de la socket à l'adresse et au port a échoué
echo "socket_connect a échoué : " . socket_strerror(socket_last_error()) . "\n";
echo "socket_connect a échoué : " . socket_strerror(socket_last_error()) . "(Client : Queuing)\n";
} else {
echo "socket_connect a réussi.\n";
echo "socket_connect a réussi. (Client : Queuing)\n";
$request = "Queuing";
$result = socket_write($socket, $request, strlen($request));
if ($result === false) {
echo "socket_write a échoué : " . socket_strerror(socket_last_error()) . "\n";
echo "socket_write a échoué : " . socket_strerror(socket_last_error()) . " (Client : Queuing)\n";
} else {
echo "socket_write a réussi.\n";
echo "socket_write a réussi.(Client : Queuing)\n";
}
$response = "AAA";
// $response = socket_read($socket, $BUFFER_SIZE);

@ -17,25 +17,25 @@ class RequestHandler{
$socketsFromQueue[]=$socket;
echo 'ajout de la connecion au tableau des connections en attente'.count($socketsFromQueue);
echo 'ajout de la connecion au tableau des connections en attente'.count($socketsFromQueue). '(Queuing : RequestHandler)';
// si le nombre de joueur par partie nécessaire est égal au nombre de connection encore dans la file d'attente
// alors envoie à l'utilisateur de lancer la partie et ajoute l'ensemble de connection à un tableau de groupe de sockets avec comme paire clés valeurs
// l'identifiant de la partie et l'ensemble de connections sinon envoie à tout les utilisateurs en file d'attente qu'il faut rafraichir la page de la file d'attente
echo 'nombre de joueurs en attente : '.count($socketsFromQueue).' nombre de joueurs par partie : '.$playerNumberPerGame;
echo 'nombre de joueurs en attente : '.count($socketsFromQueue).' nombre de joueurs par partie : '.$playerNumberPerGame.'(Queuing : RequestHandler)';
if(count($socketsFromQueue)==$playerNumberPerGame)
{
echo 'lancement de la partie\n';
echo "lancement de la partie (Queuing : RequestHandler)\n";
$response="launchGame";
$idPartie=$this->partie_gateway->findPartieInQueue();
echo 'id de la partie : '.$idPartie;
echo 'id de la partie : '.$idPartie ." (Queuing : RequestHandler)\n";
$arraySocketGroup[$idPartie]=$socketsFromQueue;
$socketsFromQueue=array();
}
else
{
echo "rafraichissement de la file d'attente\n";
echo "rafraichissement de la file d'attente (Queuing : RequestHandler)\n";
$response="refreshQueue";
}
// var_dump($socketsFromQueue);
@ -43,12 +43,12 @@ class RequestHandler{
foreach($socketsFromQueue as $sock)
{
// var_dump($sock);
echo 'envoie de la réponse au client : '.$response ."\n";
$result=socket_write($sock,$response,strlen($response)) or die("N'a pas pu écrire à la socket\n");
echo 'envoie de la réponse au client : '.$response ." (Queuing : RequestHandler)\n";
$result=socket_write($sock,$response,strlen($response)) or die("N'a pas pu écrire à la socket (Queuing : RequestHandler)\n");
// var_dump($result);
if($result==false)
{
echo "erreur d'écriture\n";
echo "erreur d'écriture (Queuing : RequestHandler)\n";
}
}
return $response;
@ -60,7 +60,7 @@ class RequestHandler{
// envoie à tous les utilisateurs en attente de rafraichir la page
foreach($socketsFromQueue as $socket)
{
socket_write($socket, $response, strlen($response)) or die("N'a pas pu envoyer la réponse au client\n");
socket_write($socket, $response, strlen($response)) or die("N'a pas pu envoyer la réponse au client (Queuing : RequestHandler)\n");
}
}
public function quitGame(Socket $client,String $request){
@ -70,7 +70,7 @@ class RequestHandler{
// envoie à tous les utilisateurs en attente de rafraichir la page
foreach($this->arraySocketGroup[explode(" ",$request)[1]] as $socket)
{
socket_write($socket, $response, strlen($response)) or die("N'a pas pu envoyer la réponse au client\n");
socket_write($socket, $response, strlen($response)) or die("N'a pas pu envoyer la réponse au client (Queuing : RequestHandler)\n");
}
}
public function refreshDashBoard(Socket $client,String $request){
@ -78,7 +78,7 @@ class RequestHandler{
// envoie à tous les utilisateurs en attente de rafraichir la page
foreach($this->arraySocketGroup[explode(" ",$request)[1]] as $socket)
{
socket_write($socket, $response, strlen($response)) or die("N'a pas pu envoyer la réponse au client\n");
socket_write($socket, $response, strlen($response)) or die("N'a pas pu envoyer la réponse au client (Queuing : RequestHandler)\n");
}
}
public function finishGame(Socket $client,String $request){
@ -88,7 +88,7 @@ class RequestHandler{
// envoie à tous les utilisateurs en attente de rafraichir la page
foreach($this->arraySocketGroup[explode(" ",$request)[1]] as $socket)
{
socket_write($socket, $response, strlen($response)) or die("N'a pas pu envoyer la réponse au client\n");
socket_write($socket, $response, strlen($response)) or die("N'a pas pu envoyer la réponse au client (Queuing : RequestHandler)\n");
}
}
}

@ -67,12 +67,12 @@ $client=false;
while(true) {
// Commencer à écouter sur le port
$result = socket_listen($socket, 10) or die ("N'a pas pu configurer l'écoute sur la socket ERROR : ".socket_strerror(socket_last_error())."\n");
$result = socket_listen($socket, 10) or die ("N'a pas pu configurer l'écoute sur la socket ERROR : ".socket_strerror(socket_last_error())." (Serveur) \n");
if ($result === false) {
// L'écoute sur le port a échoué
echo "socket_listen a échoué : " . socket_strerror(socket_last_error()) . "\n";
echo "socket_listen a échoué : " . socket_strerror(socket_last_error()) . " (Serveur)\n";
} else {
echo "socket listen sur le port :".$port."\n";
echo "socket listen sur le port :".$port." (Serveur)\n";
// L'écoute sur le port a réussi
}
@ -83,7 +83,7 @@ while(true) {
$client=socket_accept($socket);
if($client === false)
{
echo "N'a pas pu accepter la connection entrante ERROR : ".socket_strerror(socket_last_error())."\n";
echo "N'a pas pu accepter la connection entrante ERROR : ".socket_strerror(socket_last_error())." (Serveur)\n";
}
else
{
@ -93,7 +93,7 @@ while(true) {
}
var_dump($client);
echo "socket_strerror(socket_last_error()) : ".socket_strerror(socket_last_error())."\n";
echo "socket_strerror(socket_last_error()) : ".socket_strerror(socket_last_error())." (Serveur)\n";
//si $client est dans le tableau des sockets à surveiller en lecture
//Met la requête du client dans $request et verifie si la requête est valide
@ -106,10 +106,10 @@ while(true) {
$requestHandler = new RequestHandler();
if (method_exists($requestHandler, $request)) {
$function=explode(' ',$request)[0];
echo ($function."\n");
echo ($function." (Serveur) \n");
$response = $requestHandler->$function($client, $request);
echo 'response : '.$response."\n";
socket_write($client,$response,strlen($response));
echo 'response : '.$response." (Serveur)\n";
// socket_write($client,$response,strlen($response));
} else {
$response = "Invalid request";
socket_write($client,$response,strlen($response));

Loading…
Cancel
Save