Bonjour à tous,
je travaille sur un projet, il consiste à dialoguer entre un module Wi-Fi et un serveur local en lui envoyant des trames. Le module comprend la trame et sait s'il doit lire une memoire distante, écrire dans la memoire, effacer la memoire ou changer le<mot de passe administrateu.
c'est pour cela que j'ai opté pour les sockets en php.
je dois alors créer une socket entre le module Wi-Fi et le serveur local, ouvrir la connexion , et dés que le module est connecté au serveur local, on commence le dialogue.
je veux savoir les grands points à suivre afin d'écrire le code nécessaire !!
est ce que j'aurai besoin du code côté client et côté serveur ?
qu'ils sont les modifications à apporter à mon code serveur ci dessous pour réaliser ça ?
Merci d'avance
*************************************************************
<?php
error_reporting(E_ALL);
set_time_limit(0);
ob_implicit_flush();
$address = '127.0.0.1';
$port = 10000;
if (($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) < 0) {
echo "socket_create() a échoué : raison : " . socket_strerror($sock) . "\n";
}
if (($ret = socket_bind($sock, $address, $port)) < 0) {
echo "socket_bind() a échoué : raison : " . socket_strerror ($ret) . "\n";
}
if (($ret = socket_listen($sock, 5)) < 0) {
echo "socket_listen() a échoué : raison : " . socket_strerror ($ret) . "\n";
}
do {
if (($msgsock = socket_accept($sock)) < 0) {
echo "socket_accept() a échoué : raison : " . socket_strerror ($msgsock) . "\n";
break;
}
$msg = "\Bienvenue sur le serveur de test PHP.\n" .
"Pour quitter, tapez 'quit'. Pour éteindre le serveur, tapez 'shutdown'.\n";
socket_write($msgsock, $msg, strlen($msg));
do {
if (false === ($buf = socket_read($msgsock, 2048))) {
echo "socket_read() a échoué : raison : " . socket_strerror ($ret) . "\n";
break 2;
}
if (!$buf = trim($buf)) {
continue;
}
if ($buf == 'quit') {
break;
}
if ($buf == 'shutdown') {
socket_close($msgsock);
break 2;
}
$talkback = "PHP: You said '$buf'.\n";
socket_write($msgsock, $talkback, strlen($talkback));
echo "$buf\n";
} while (true);
socket_close($msgsock);
}
while (true);
socket_close($sock);
?>
Merci pour votre aide