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

ServeurDeTest
Noé GARNIER 2 years ago
parent 7db0daba01
commit 02d35df1fb

@ -1,64 +1,60 @@
<?php <?php
class Client class Client{
{
private static $instance; private static $instance;
private $socket; private $socket;
public static function getInstance() public static function getInstance() {
{
if (self::$instance === null) { if (self::$instance === null) {
self::$instance = new self(); self::$instance = new self();
} }
return self::$instance; return self::$instance;
} }
public function Queuing() public function Queuing(){
{ global $port,$serverAdress,$rep,$vues, $BUFFER_SIZE;
global $port, $serverAdress, $rep, $vues, $BUFFER_SIZE;
$userModel = new UserModel(); $userModel = new UserModel();
// pas d'arrêt d'éxécution du script (No timeout) // pas d'arrêt d'éxécution du script (No timeout)
set_time_limit(0); 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()) . "\n"); $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");
// connecter la socket à l'adresse ip et au port du serveur // connecter la socket à l'adresse ip et au port du serveur
$result = socket_set_block($socket); $result = socket_set_block($socket);
if ($result === false) { 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()) . "\n";
} else { } else {
echo "socket_set_block a réussi.\n"; echo "socket_set_block a réussi.\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())."\n");
if ($result === false) { if ($result === false) {
// La connexion de la socket à l'adresse et au port a échoué // 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()) . "\n";
} else { } else {
echo "socket_connect a réussi.\n"; echo "socket_connect a réussi.\n";
$request = "Queuing"; $request="Queuing";
$result = socket_write($socket, $request, strlen($request)); $result=socket_write($socket,$request,strlen($request));
if ($result === false) { if($result === false) {
echo "socket_write a échoué : " . socket_strerror(socket_last_error()) . "\n"; echo "socket_write a échoué : " . socket_strerror(socket_last_error()) . "\n";
} else { } else {
echo "socket_write a réussi.\n"; echo "socket_write a réussi.\n";
} }
$response = ""; $response="";
$i = 0; while(strcmp($response,"launchGame")!=0){
while ($i != 2) { $response=socket_read($socket, $BUFFER_SIZE);
$response = socket_read($socket, $BUFFER_SIZE); if($response!=false)
echo $response; {
if ($response != false) {
echo "socket_read a réussi.\n"; echo "socket_read a réussi.\n";
if (strcmp($response, "refreshQueue") == 0) { if(strcmp($response,"refreshQueue")==0)
{
$userGroup = $userModel->findUsersInQueue(); $userGroup = $userModel->findUsersInQueue();
$numberOfPlayer = count($userGroup); $numberOfPlayer=count($userGroup);
header('Location : ' . $rep . $vues['queue']); header('Location : '.$rep.$vues['main']);
} }
} else { }
else{
echo "socket_read a échoué : " . socket_strerror(socket_last_error()) . "\n"; echo "socket_read a échoué : " . socket_strerror(socket_last_error()) . "\n";
break; break;
} }
sleep(5); }
$i++;
}
require $rep . $vues['erreur'];
} }
} }
} }

@ -109,13 +109,14 @@ while(true) {
echo ($function."\n"); echo ($function."\n");
$response = $requestHandler->$function($client, $request); $response = $requestHandler->$function($client, $request);
echo 'response : '.$response."\n"; echo 'response : '.$response."\n";
socket_write($client,$response,strlen($response));
} else { } else {
$response = "Invalid request"; $response = "Invalid request";
// socket_write($client,$response,strlen($response)); socket_write($client,$response,strlen($response));
} }
} else { } else {
$response = "Response is false"; $response = "Response is false";
// socket_write($client,$response,strlen($response)); socket_write($client,$response,strlen($response));
} }
} }
} }

Loading…
Cancel
Save