Chat multithread

Soyez le premier à donner votre avis sur cette source.

Vue 11 582 fois - Téléchargée 1 520 fois

Description

Cela fait bien longtemps que je n'ai pas posté de source
Dans le cadre d'un développement plus large, j'ai eu besoin d'un logiciel de chat
Celui-ci reprend une architecture Serveur/Client. En mode Serveur, ce dernier se lance et attend des connexions clientes. Automatiquement une connexion est créé permettant de dialoguer... tout seul
A partir de là, il est nécessaire de lancer une ou plusieurs autres instances du programme mais cette fois-ci en mode client en indiquant l'IP du serveur (en mode réseau local ou internet). L'IP internet est récupérée à partir d'un script PHP http://programmeur.fou.free.fr/MyIP.php dont je remercie l'auteur au passage.
6 connexions simultanées sont possibles pour le moment (un #define est à l'origine de cette limitation)
Lorsqu'une déconnexion est repérée( mot clé "/exit" ou bien fermeture de la fenêtre), le socket est libéré, laissant sa place à qq1 d'autre souhaitant se connecter (toujours dans la limite de 6 personnes simultanées). Pour chaque client connecté, un thread est créé au niveau du serveur. Ce thread s'acquitte de la réception du message venant du client et du renvoi de la prose aux autres clients (tout transite par le serveur)
Au niveau client, un thread se charge de la réception des messages, l'envoi étant provoqué par la touche "Enter" comme dans MSN

Améliorations à venir :
-----------------------
  • Disparition de la notion d'IP : le serveur ira écrire sur un site son IP internet et le client s'y connectera afin de venir lire cette ip. L'utilisateur n'aura plus à intervenir
  • Amélioration de l'interface (police, couleurs, personnalisation)
  • envoi de fichiers
  • insertion d'icônes (smileys ?)

Conclusion :


Je cherche à faire fonctionner la chose derrière un routeur livebox mais pour le moment ça ne marche pas (j'ai pourtant fait un redirection de ports). Donc pour la partie "connexion sans ip" on va attendre un peu

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

kiki67100
Messages postés
318
Date d'inscription
samedi 6 mai 2006
Statut
Membre
Dernière intervention
10 août 2013
1 -
vraiment bien la source merci
pour l'ip ses mieux ceci

/*MyIP.php*/
<?php
print("$_SERVER[REMOTE_ADDR]"); //ses plus sur ?>

Kevin
MuPuF
Messages postés
536
Date d'inscription
mercredi 27 avril 2005
Statut
Membre
Dernière intervention
22 août 2008
-
no probs ;-), contant que ça serve.
cs_GoldenEye
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
2 -
Je ne retrouvais plus ton nom, c'est bien de t'être manifesté.
J'avais vu traîner un -petit- code avec un OpenURLxxx mais impossible de (re)mettre la main dessus
MuPuF
Messages postés
536
Date d'inscription
mercredi 27 avril 2005
Statut
Membre
Dernière intervention
22 août 2008
-
Hello, je suis l'auteur du script. Je te remercie d'utiliser mon source de FileSender pour récupérer l'IP internet.
Dans un soucis d'indépendance envers mon site, je livre le code source du script de la page php.

/*MyIP.php*/
<?php
print("$REMOTE_ADDR"); //Pourquoi faire compliqué ;-)
?>

Voila, bonne continuation.
cs_GoldenEye
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
2 -
Je ne connaissais pas l'astuce, je viens de la mettre en oeuvre, ça marche au poil. Je vais updater la source
Merci beaucoup Vecchio56

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.