Protocole pour un système de chat.

Protocole pour un système de chat. - Divers - Programmation

Marsh Posté le 29-10-2013 à 11:00:42    

Bonjour, bonjour à tous.
je suis à la recherche d'un protocole ou autre astuce, pour un système de chat, qui me permettrait de faire la chose suivante :
 
Sur une ligne :
 

  • envoyer un message à un autre utilisateur ;
  • envoyer un message à tous les autres utilisateurs ;
  • envoyer un message au système lui même.


Peut-être que me faire un petit topo sur le fonctionnement des système de "chat" (je sais pas comment on dit en français) serait le bien venu.
 
Merci pour vos réponses.
 
Si vous avez besoin de précision, je suis pas loin.
 
Merci encore.

Reply

Marsh Posté le 29-10-2013 à 11:00:42   

Reply

Marsh Posté le 29-10-2013 à 13:33:59    

Regarde Jabber : http://fr.wikipedia.org/wiki/Exten [...] e_Protocol


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 29-10-2013 à 14:37:41    

Merci bien rufo, mais d'une je lis pas l'english.

Reply

Marsh Posté le 29-10-2013 à 14:39:34    

Oups, je vais jeter un coup d'oeil à la page que tu m'as donné quand même.
Merci.

Reply

Marsh Posté le 29-10-2013 à 14:42:22    

Mais quand même si on pouvait en parler ici, en fonction de mes besoins.
j'ai déjà fait le truc mais je voulais votre avis.
 

Reply

Marsh Posté le 29-10-2013 à 14:47:28    

Sinon en pas trop complexe et avec beaucoup d'applications compatibles, il y a IRC : http://fr.wikipedia.org/wiki/Internet_Relay_Chat


---------------
Main/Alt1/Alt2/Alt3
Reply

Marsh Posté le 29-10-2013 à 14:52:54    

c'est déjà un sacret truc.
J'avais simplement fait un genre de boite aux lettres avec un ou deux caractères de contrôle.
Merci bien en tout cas.

Reply

Marsh Posté le 29-10-2013 à 14:55:34    

Après je sais pas du tout comment ça ce met en place ; Au niveau programmation du système.

Reply

Marsh Posté le 29-10-2013 à 15:31:25    

Je vous dis ce que j'avais fait et vous me dite ce que vous en pensez ! S'il vous plaît, bien entendu ; Merci.
 
 
- j'avais fait des message :
   

  • un identifiant de la source

 

  • un identifiant de la destination

 

  • un contenu en texte.


- un thread pour une boite au lettre : c'était un thread qu'il fallait consulter pour voir si il y a un message pour nous puis récolter le message.
  Je le faisait en boucle tant qu'il y avait des message de sorte que lorsque un utilisateur se connectait, il recevait tous ses messages.
  On envoyait un message avec une syntaxe spécial pour les trois mode cités plus aux.
 
- un serveur de login pour renvoyer le nouvel utilisateur à tous les utilisateurs connectés et se connectant.
 
- et serveur qui accédait à la boîte à lettre.
 
 
Et en fait le projet avais avorté parce que ça le thread client du serveur de login plantait l'interface graphique au moment d'écrire les nouveau utilisateurs dans une zone de texte de ma fenêtre.
 
Voilà vous savez tout ou l'essentiel.
Merci encore de votre investissement.


Message édité par Profil supprimé le 29-10-2013 à 15:32:35
Reply

Marsh Posté le 29-10-2013 à 15:46:07    

Euh, ce que tu nous as fait ressemble fort au principe du mail là, avec la limitation que ton truc marche que si on utilise ton soft :/
 
Ca marche uniquement sur un réseau local où sur tout le web. En gros, comment est identifié un utilisateur de manière unique pour qu'il reçoive un message ?
 
Côté technique, sous Unix, faut utiliser les fonctions C relatives aux sockets ;) Soit en mode TCP, soit en mode UDP...
 
Edit : et la fonction fork() pour avoir le process serveur puis les process clients (enfin, ça, c'est si tu fais un seul binaire qui fera serveur et client, son mode de fonctionnement étant défini à son lancement.
En TP Unix, en école d'ingé, on nous avait fait développer un petit système similaire, sauf qu'on avait plusieurs serveur, chacun ayant des clients. Les clients ne communiquaient qu'avec le serveur auquel ils sont connectés et les serveurs s'échangent les messages.


Message édité par rufo le 29-10-2013 à 15:49:18

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 29-10-2013 à 15:46:07   

Reply

Marsh Posté le 29-10-2013 à 15:51:26    

L'id c'était le logname.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed