Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
757 connectés 

  FORUM HardWare.fr
  Programmation

  comment obtenir une liste de personnes connectes....

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

comment obtenir une liste de personnes connectes....

n°85795
Profil sup​primé
Posté le 03-01-2002 à 16:44:39  answer
 

En fait j'ai un prog style chat en c++ et je voudrais afficher la liste des personnes connectes sous ce prog... le probleme c comment le faire parce que en reseau local, avec une adresse broadcast ca doit marcher, mais sur internet???
 
Est ce quelqu'un s'y connait un peu sachant que j'utilise le tcp/ip avec les sockets windows pour la connection....???

mood
Publicité
Posté le 03-01-2002 à 16:44:39  profilanswer
 

n°85800
Profil sup​primé
Posté le 03-01-2002 à 16:52:39  answer
 

Personne a une petite idee???  :ouch:  :heink:

n°85803
juju_le_ba​rbare
Vous fiez pas aux apparences !
Posté le 03-01-2002 à 16:55:00  profilanswer
 

billyboy78 a écrit a écrit :

Personne a une petite idee???  :ouch:  :heink:  




 
pô moi en tout cas  :sweat:


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
n°85805
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 03-01-2002 à 16:56:29  profilanswer
 

billyboy78 a écrit a écrit :

En fait j'ai un prog style chat en c++ et je voudrais afficher la liste des personnes connectes sous ce prog... le probleme c comment le faire parce que en reseau local, avec une adresse broadcast ca doit marcher, mais sur internet???
 
Est ce quelqu'un s'y connait un peu sachant que j'utilise le tcp/ip avec les sockets windows pour la connection....???  




 
Bin ton serveur il fait du processing de clients non. Il a donc l'info. Il suffit qu'il la mette à disposition du client ...


---------------
What is popular is not always right, what is right is not always popular :D
n°85806
Profil sup​primé
Posté le 03-01-2002 à 16:56:33  answer
 

juju_le_barbare a écrit a écrit :

 
 
pô moi en tout cas  :sweat:  




 
Merci de ta participation somme toute inutile mais tout de meme sympatique  :D

n°85808
Profil sup​primé
Posté le 03-01-2002 à 16:57:25  answer
 

darklord22 a écrit a écrit :

 
 
Bin ton serveur il fait du processing de clients non. Il a donc l'info. Il suffit qu'il la mette à disposition du client ...  




 
Je n'est pas de serveur, la connection se fait uniquement entre 2 personnes, aucun serveur entre les 2...

n°85811
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 03-01-2002 à 17:00:36  profilanswer
 

billyboy78 a écrit a écrit :

 
 
Je n'est pas de serveur, la connection se fait uniquement entre 2 personnes, aucun serveur entre les 2...  




 
Liste des personnes connectes sous ce prog = toi et l'autre gars :D
 
Comprends pas ta question ....


---------------
What is popular is not always right, what is right is not always popular :D
n°85824
Profil sup​primé
Posté le 03-01-2002 à 17:03:02  answer
 

darklord22 a écrit a écrit :

 
 
Liste des personnes connectes sous ce prog = toi et l'autre gars :D
 
Comprends pas ta question ....  




 
Bah non justement, quand je me connecte pour chatter par exemple, ok c avec un autre gars, mais disons qu'a un moment donne il y ait 10 personnes qui ait ouvert le logiciel, et que moi je souhaite avoir la liste des c 10 personnes pour choisir avec laquelle je veux me connecter, (en gros je veux recuperer l'ip) comment je fais???

n°85825
youdontcar​e
Posté le 03-01-2002 à 17:04:22  profilanswer
 

pas de miracle, faut une machine qui joue le rôle de serveur.

n°85828
Profil sup​primé
Posté le 03-01-2002 à 17:06:36  answer
 

youdontcare a écrit a écrit :

pas de miracle, faut une machine qui joue le rôle de serveur.  




 
bah moi ca me semblerait logique aussi... mais ce qui me trouble c ca...
 
A une epoque j'avais fais un programme de chat comme ca avec directplay,  et il y a une fonction qui permet d'interroger le reseau (intranet ou internet, j'ai teste) et renvoyais l'ip d'une autre personne qui avais le programme de chat, alors comment cette fonction fait-elle pour retrouver ca?

mood
Publicité
Posté le 03-01-2002 à 17:06:36  profilanswer
 

n°85831
youdontcar​e
Posté le 03-01-2002 à 17:10:23  profilanswer
 

aucune idée :D ton truc me rappelle que doom marchait déjà comme ça, et que quake peut trouver un réseau local.
 
si tu ne trouves rien, les sources de quake2 sont dispos > bonne recherche.

n°85832
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 03-01-2002 à 17:10:28  profilanswer
 

te casse pas la tete et fais un serveur central. Tu peux faire tourner ca sur une machine isolée. Ca bouffe rien comme BP / CPU Et c'est bcp plus efficace que de scanner tout le réseau chaque fois que qqun demande la liste ...


---------------
What is popular is not always right, what is right is not always popular :D
n°85835
Profil sup​primé
Posté le 03-01-2002 à 17:12:22  answer
 

darklord22 a écrit a écrit :

te casse pas la tete et fais un serveur central. Tu peux faire tourner ca sur une machine isolée. Ca bouffe rien comme BP / CPU Et c'est bcp plus efficace que de scanner tout le réseau chaque fois que qqun demande la liste ...  




 
 
ouais masis bon je trouve ca dommage de perdre du tps a faire un prog serveur qui ne fait que maintenir la liste des personnes, alors que c possible puisque que ca marche en directplay... mais avec les sockets windows, la mystere

n°85837
Profil sup​primé
Posté le 03-01-2002 à 17:21:01  answer
 

Si quelqu'un d'autre peu eclairer ma lanterne, je reste ouvert a toutes suggestions.... :p

n°85839
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 03-01-2002 à 17:23:36  profilanswer
 

billyboy78 a écrit a écrit :

Si quelqu'un d'autre peu eclairer ma lanterne, je reste ouvert a toutes suggestions.... :p  




 
Bah ton client peut écouter sur un port donné, genre 7111. Lorsqu'un process ouvre une connec sur le port 7111, il renvoie une chain de caractère avec l'info souhaitée (nom par exemple)
 
Ainsi, ton client scanne les ips de ton intranet et si le port 7111 répond c'est bon.
 
Mais crois moi c'est une perte de bp et c'est pas performant du tout!


---------------
What is popular is not always right, what is right is not always popular :D
n°85842
Profil sup​primé
Posté le 03-01-2002 à 17:28:30  answer
 

darklord22 a écrit a écrit :

 
 
Bah ton client peut écouter sur un port donné, genre 7111. Lorsqu'un process ouvre une connec sur le port 7111, il renvoie une chain de caractère avec l'info souhaitée (nom par exemple)
 
Ainsi, ton client scanne les ips de ton intranet et si le port 7111 répond c'est bon.
 
Mais crois moi c'est une perte de bp et c'est pas performant du tout!  




 
ouais ca on est d'accord, cote performance c pas gagne, par contre a ton avis, ce type de systeme ca peut aussi marcher sur internet....?
 
Car comme pour auparavant, avec directplay je retrouvais une personne en moins de 5 secondes sur internet

n°85846
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 03-01-2002 à 17:33:51  profilanswer
 

ah ah ah ah ah ah ah  
 
Et tu fais comment pour scanner toutes les ip d'internet? Une à une en 5 secondes ?
 
Ton directplay, tu sais cmt ca marche? Moi je te parie tout ce que tu veux qu'il y un serveur central derrière. De toutes façons le broadcast, c'est théorique sur l'internet public ... Si tu crois que ce genre de truc est supporté par tous les FAI ...
 
Bref, arrête de rêver et renseigne toi sur ton prog directplay. Il doit y avoir un serveur central ou du moins un ensemble de nodes connectés entre eux  
 
 :hap:


---------------
What is popular is not always right, what is right is not always popular :D
n°85848
Profil sup​primé
Posté le 03-01-2002 à 17:35:26  answer
 

darklord22 a écrit a écrit :

ah ah ah ah ah ah ah  
 
Et tu fais comment pour scanner toutes les ip d'internet? Une à une en 5 secondes ?
 
Ton directplay, tu sais cmt ca marche? Moi je te parie tout ce que tu veux qu'il y un serveur central derrière. De toutes façons le broadcast, c'est théorique sur l'internet public ... Si tu crois que ce genre de truc est supporté par tous les FAI ...
 
Bref, arrête de rêver et renseigne toi sur ton prog directplay. Il doit y avoir un serveur central ou du moins un ensemble de nodes connectés entre eux  
 
 :hap:  




 
c bien ce que je te dis, ca me semble plus que bizarre....
mais y'a pas de serveur derriere.. c moi qui l'avais fait a partie d'un de leur exemples, enfin bon peu importe, je vais voir, merci pour l'aide

 

[edtdd]--Message édité par billyboy78--[/edtdd]

n°85851
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 03-01-2002 à 17:39:15  profilanswer
 

ok no prob ...


---------------
What is popular is not always right, what is right is not always popular :D
n°85888
HelloWorld
Salut tout le monde!
Posté le 03-01-2002 à 20:26:13  profilanswer
 

Et à propos d'UDP ?
Winsock permet d'utiliser UDP, et il me semble qu'il est indiqué dans ton cas, bien que je ne sais pas trop ce que c'est :D
Quake justement utilise UDP ... petetre un signe ...
 
http://perso.libertysurf.fr/rollin [...] cp-udp.htm
 
"UDP est utile pour des applications orientées commande/réponse dont les données tiennent dans un seul datagramme. Ce protocole est moins lourd que TCP car il ne nécessite pas d'ouverture, de maintien et de fermeture de connexion, ce qui en fait aussi un protocole plus rapide, plus simple mais moins robuste, moins sécurisé.
UDP est aussi très pratique pour ce qui est diffusion ou multidiffusion (broadcast); imaginer se connecter à 1000 machines pour un broadcast !!!"
 
t'envoit un datagramme "si vous etes en train de chatter, répondez"
et cote client quand tu recoit ce datagremme, tu répond "moi je chat, voila mon nom et mon ip"
 
je crois que ca fonctionne comme ca ...


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°85926
Profil sup​primé
Posté le 03-01-2002 à 23:22:05  answer
 

HelloWorld a écrit a écrit :

Et à propos d'UDP ?
Winsock permet d'utiliser UDP, et il me semble qu'il est indiqué dans ton cas, bien que je ne sais pas trop ce que c'est :D
Quake justement utilise UDP ... petetre un signe ...
 
http://perso.libertysurf.fr/rollin [...] cp-udp.htm
 
"UDP est utile pour des applications orientées commande/réponse dont les données tiennent dans un seul datagramme. Ce protocole est moins lourd que TCP car il ne nécessite pas d'ouverture, de maintien et de fermeture de connexion, ce qui en fait aussi un protocole plus rapide, plus simple mais moins robuste, moins sécurisé.
UDP est aussi très pratique pour ce qui est diffusion ou multidiffusion (broadcast); imaginer se connecter à 1000 machines pour un broadcast !!!"
 
t'envoit un datagramme "si vous etes en train de chatter, répondez"
et cote client quand tu recoit ce datagremme, tu répond "moi je chat, voila mon nom et mon ip"
 
je crois que ca fonctionne comme ca ...  




 
 
mmm oui ca se pourrais bien etre une pas mauvaise idee, la par contre, ca va etre cho pour moi, il va falloir que je regarde ca de plus pres, parce que a par ce que j'ai pu en voir en cours, c a dire pas grand chose, il faut que je capte commment ca marche et comment le mettre en oeuvre.
 
En tout cas merci pour l'idee, ca peut peut etre bien marcher..

n°85954
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 04-01-2002 à 08:19:38  profilanswer
 

Le broadcast c'est théorique. Rare sont les FAIs qui le supporte. En tout cas, à un niveau public international, certainement pas. Ici, il s'agit de déterminer quels sont les clients connectés. UDP ou TCP ne rentre pas en ligne de compte.
 
UDP est plus utilie pour des applications orientées streaming, voix, media, etc. Car il n'a pas la qualité de service (et donc la latency) de TCP.  
 
Tu ne voudrais pas que lorsque tu tapes un message à ton correspondant, il n'aparaisse pas? Avec UDP, si tu perds un packet dans un routeur, rien ne sera entrepris pour corriger le problème (e.g. renvoyer le packet).  
 
Bref, tout ca pour dire qu'à un niveau intranet limité c'est faisable mais certainement pas au niveau internet international. Pas mal de recherches sont en cours sur le multicast et son support avec de la QoS mais ne rêve pas ... C'est pas demain la veille  
 
A+


---------------
What is popular is not always right, what is right is not always popular :D
n°85955
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 04-01-2002 à 08:21:03  profilanswer
 

je dis donc: serveur central ou du moins un ensemble de nodes qui parle entre eux. Tu vas perdre plus de temps à trouver un machin qui marchera jamais plutot que de coder un petit serveur d'enregistrement. Ca prend meme pas 1j si tu as un protocole simple.
 
A+


---------------
What is popular is not always right, what is right is not always popular :D
n°85962
darklord22
Nightwish rulezzzzzzzzzzzzz
Posté le 04-01-2002 à 08:59:56  profilanswer
 

HelloWorld a écrit a écrit :

Et à propos d'UDP ?
t'envoit un datagramme "si vous etes en train de chatter, répondez"
et cote client quand tu recoit ce datagremme, tu répond "moi je chat, voila mon nom et mon ip"




 
Donc tu envoie un datagramme en broadcast à toute les machines connectées à Internet ???
 
Allez sérieusement ca te parait faisable ca ? :D
 
ah la la ;)
 
Et je me répète: que ce soit UDP ou TCP n'a rien à voir là dedans ...


---------------
What is popular is not always right, what is right is not always popular :D
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  comment obtenir une liste de personnes connectes....

 

Sujets relatifs
[C++] trie une liste de la stl[C++] liste liee --> HELP!!
connaitre le nbre de personnes onlines sur un forumproblème de dénombrement (ou personnes nintelligentes wanted)
[Java script] Liste de checkbox[C] liste chainées de l'aide pitier lol
SQL et liste des tables[c] liste chainees
[MYSQL] kestion conne mais pour une liste de membres vous prenez koi??[web] mailez des personnes choisis dans une liste
Plus de sujets relatifs à : comment obtenir une liste de personnes connectes....


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR