TCPLinotte est le greffon que l'on doit utiliser pour créer des connexions réseaux entre plusieurs programmes Linotte.
Ce greffon est basé sur la notion de socket réseau. Pour l'utiliser, il faut comprendre cette notion.
Ce greffon permet de créer des jeux réseaux, des services de messageries instantanées, etc.
Ce greffon est découpé en deux parties : TCPClient et TCPServeur
Voici un exemple très simple pour comprendre la notion et manipuler des sockets : un mini serveur messagerie instantanée
Le programme du serveur (30 lignes !):
[php]
globale
serveur :: tcpserveur
sockets :: casier de nombres
démarrage :
début
évoque serveur.démarrer(7779)
tant que vrai, lis
socket :: nombre
affiche "on attend l'ouverture d'une nouvelle socket..."
socket vaut serveur.attendreconnexion()
affiche "un client sur la socket " + socket + " vient de se connecter !"
ajoute socket dans sockets
appelle gestion socket avec socket
ferme
gestion socket :
* socket :: nombre
début
tant que vrai, lis
message :: texte
// on attend l'arrivée de nouveaux messages sur le socket
message vaut serveur.recevoir(socket)
affiche "le client de la socket " + socket + " a dit : " + message
pour chaque sockets, lis
affiche "envoyer le message '" + message + "' à la socket " + joker
évoque serveur.envoyer(joker, message)
ferme
ferme
[/php]
Le programme du client (20 lignes !):
[php]
globale
client :: tcpclient
genègraphe :
tchat :: texte
début
évoque client.connexion("localhost", 7779)
appelle attendre message
tant que vrai, lis
questionne tchat sur "Que voulez-vous dire ?"
évoque client.envoyer(tchat)
ferme
attendre message :
message :: texte
début
tant que vrai, lis
// On attend la réception d'un message
message vaut client.recevoir()
affiche message
ferme
[/php]
Vitrine en cours de réalisation...
Ce greffon est basé sur la notion de socket réseau. Pour l'utiliser, il faut comprendre cette notion.
Ce greffon permet de créer des jeux réseaux, des services de messageries instantanées, etc.
Ce greffon est découpé en deux parties : TCPClient et TCPServeur
- TCPServeur
- demarrer[/*318axyzk]
- arrêter[/*318axyzk]
- attendreconnexion[/*318axyzk]
- envoyer[/*318axyzk]
- recevoir[/*318axyzk]
- fermer[/*318axyzk]
- ip[/*318axyzk]
- TCPClient
- connexion[/*318axyzk]
- fermer[/*318axyzk]
- envoyer[/*318axyzk]
- recevoir[/*318axyzk]
- nommachine[/*318axyzk]
[/*318axyzk]
[/*318axyzk]
Voici un exemple très simple pour comprendre la notion et manipuler des sockets : un mini serveur messagerie instantanée
Le programme du serveur (30 lignes !):
[php]
globale
serveur :: tcpserveur
sockets :: casier de nombres
démarrage :
début
évoque serveur.démarrer(7779)
tant que vrai, lis
socket :: nombre
affiche "on attend l'ouverture d'une nouvelle socket..."
socket vaut serveur.attendreconnexion()
affiche "un client sur la socket " + socket + " vient de se connecter !"
ajoute socket dans sockets
appelle gestion socket avec socket
ferme
gestion socket :
* socket :: nombre
début
tant que vrai, lis
message :: texte
// on attend l'arrivée de nouveaux messages sur le socket
message vaut serveur.recevoir(socket)
affiche "le client de la socket " + socket + " a dit : " + message
pour chaque sockets, lis
affiche "envoyer le message '" + message + "' à la socket " + joker
évoque serveur.envoyer(joker, message)
ferme
ferme
[/php]
Le programme du client (20 lignes !):
[php]
globale
client :: tcpclient
genègraphe :
tchat :: texte
début
évoque client.connexion("localhost", 7779)
appelle attendre message
tant que vrai, lis
questionne tchat sur "Que voulez-vous dire ?"
évoque client.envoyer(tchat)
ferme
attendre message :
message :: texte
début
tant que vrai, lis
// On attend la réception d'un message
message vaut client.recevoir()
affiche message
ferme
[/php]
Vitrine en cours de réalisation...