Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

SOCKET MESSAGER


Information sur la source

Catégorie :AddOns Niveau : Débutant Date de création : 05/02/2005 Date de mise à jour : 06/02/2005 00:39:05 Vu / téléchargé: 3 691 / 162

Note :
7 / 10 - par 3 personnes
7,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (11)
Ajouter un commentaire et/ou une note

Description

Voila c'est un genre de petit messager tout en socket
 

Source

  • ;premiere remote
  • menu menubar {
  • Ouvrir Socket-Messager: { sockclose * | socklisten messager 6667 | echo $active 12Socket Messager et lancer }
  • Fermer Socket-Messager: { sockclose * }
  • couleur d'ecriture:{ set %color $$?"Entre ta couleur" }
  • Connaitre son adresse de socket messager:/echo $active 12Votre adresse de socket messager est :4 $ip $+ :6667
  • ouvrire une session avec socket messager avec quelqu'un:/messager $$?"Quel IP ?"
  • }
  • on 1:socklisten:*:{
  • sockaccept pseudo
  • sockwrite -n pseudo mon-pseudo $me
  • }
  • on 1:sockclose:*:{ aline -ph 4 @socket. [ $+ [ $sockname ] ] Déconnexion de $sockname }
  • on 1:sockread:*: {
  • if ($sockname != pseudo) {
  • if ( $sockerr == 0 ) { sockread %temp
  • if (%temp != $null) { aline -ph 1 @socket. [ $+ [ $sockname ] ] %temp }
  • }
  • else {
  • if ($gettok(%temp,1,32) == NICK) { set %pseudo $gettok(%temp,2,32) | fenetre }
  • }
  • }
  • }
  • on *:input:@socket.*:{
  • aline -ph 2 $active 4[12 $+ $me $+ 4] - %color $+ $1-
  • sockwrite -n $gettok($active,2,46) 4[12 $+ $me $+ 4] - %color $+  $+ $1-
  • }
  • On 1:close:@socket.*:{
  • sockwrite -n $gettok($active,2,46) 4[12INFO4]7 $me vient de de fermer la session socket messager avec vous.
  • sockclose $gettok($active,2,46)
  • }
  • menu @socket.* {
  • Fermer le socket messager avec $gettok($active,2,46) :{
  • sockwrite -n $gettok($active,2,46) 4[12INFO4]7 $me vient de de fermer la session socket messager avec vous.
  • sockclose $gettok($active,2,46)
  • close - $+ $active
  • }
  • }
  • alias fenetre {
  • window -e @socket. [ $+ [ %pseudo ] ]
  • aline -ph 4 @socket. [ $+ [ %pseudo ] ] Connexion de %pseudo
  • sockwrite -n pseudo 4[12INFO4] Connection effectuer avec7 $me
  • sockrename pseudo %pseudo
  • }
  • alias messager {
  • sockopen pseudo $1 6667
  • .timer 1 1 fenetre
  • }
  • ;à metre dans un deuxieme remote
  • on 1:sockread:*: {
  • if ( $sockerr == 0 ) { sockread %temp2
  • if (%temp2 != $null) {
  • if ($gettok(%temp2,1,32) == mon-pseudo) { set %pseudo $gettok(%temp2,2,32) | fenetre }
  • }
  • }
  • }
;premiere remote

menu menubar {
  Ouvrir Socket-Messager: { sockclose * | socklisten messager 6667 | echo $active 12Socket Messager et lancer }
  Fermer Socket-Messager: { sockclose * }
  couleur d'ecriture:{ set %color $$?"Entre ta couleur" }
  Connaitre son adresse de socket messager:/echo $active 12Votre adresse de socket messager est :4 $ip $+ :6667
  ouvrire une session avec socket messager avec quelqu'un:/messager $$?"Quel IP ?"
}

on 1:socklisten:*:{
  sockaccept pseudo
  sockwrite -n pseudo mon-pseudo $me
}

on 1:sockclose:*:{ aline -ph 4 @socket. [ $+ [ $sockname ] ] Déconnexion de $sockname }

on 1:sockread:*: {
  if ($sockname != pseudo) {
    if ( $sockerr == 0 ) { sockread %temp
      if (%temp != $null) { aline -ph 1 @socket. [ $+ [ $sockname ] ] %temp }
    }
    else {
      if ($gettok(%temp,1,32) == NICK) { set %pseudo $gettok(%temp,2,32) | fenetre }
    }
  }
}

on *:input:@socket.*:{ 
  aline -ph 2 $active 4[12 $+ $me $+ 4]  - %color  $+ $1-
  sockwrite -n $gettok($active,2,46) 4[12 $+ $me $+ 4] - %color $+  $+ $1-
}

On 1:close:@socket.*:{
  sockwrite -n $gettok($active,2,46) 4[12INFO4]7 $me vient de de fermer la session socket messager avec vous.
  sockclose $gettok($active,2,46)
}

menu @socket.* {
  Fermer le socket messager avec $gettok($active,2,46) :{
    sockwrite -n $gettok($active,2,46) 4[12INFO4]7 $me vient de de fermer la session socket messager avec vous.
    sockclose $gettok($active,2,46)
    close - $+ $active
  }
}

alias fenetre {
  window -e @socket. [ $+ [ %pseudo ] ]
  aline -ph 4 @socket. [ $+ [ %pseudo ] ] Connexion de %pseudo
  sockwrite -n pseudo 4[12INFO4] Connection effectuer avec7 $me
  sockrename pseudo %pseudo
}

alias messager {
  sockopen pseudo $1 6667
  .timer 1 1 fenetre
}


;à metre dans un deuxieme remote


on 1:sockread:*: {
  if ( $sockerr == 0 ) { sockread %temp2
    if (%temp2 != $null) {
      if ($gettok(%temp2,1,32) == mon-pseudo) { set %pseudo $gettok(%temp2,2,32) | fenetre }
    }
  }
}

Conclusion

Voila, pour le moment c'est encore très basique, mais j'espere continuer à l'ameliorer
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • clientTélécharger ce fichier [Réservé aux membres club]449 octets
  • serveurTélécharger ce fichier [Réservé aux membres club]1 212 octets

Télécharger le zip

Historique

05 février 2005 11:17:02 :
ajoute de la deuxieme remote
05 février 2005 11:18:53 :
Probleme de sockaccept
05 février 2005 16:59:29 :
Voila j'est tout mi en un seul remotes
06 février 2005 00:39:05 :
modification de quelques bugs

Commentaires et avis

signaler à un administrateur
Commentaire de loadation le 05/02/2005 11:33:10

ca sert a quoi?

signaler à un administrateur
Commentaire de ReMi34 le 05/02/2005 11:47:02

Il est vrai que tu pourrais décrire un peu ta source et dire en quoi elle consiste... C'est la moindre des choses.

signaler à un administrateur
Commentaire de KiNdErMaXi le 05/02/2005 13:12:26

pourquoi avoir mis un zip ?

signaler à un administrateur
Commentaire de Kozygi le 05/02/2005 14:01:27

night comment il marche ton truc ?

signaler à un administrateur
Commentaire de nightmar le 05/02/2005 15:17:39

ben en faite c'est un genre de messager, quand quelqu'un fait /server -m <ton ip> sur le script une window souvrira qui portera le nom @sock.<son pseudo> et chaque message qu'il tappera exemple /test s'affichera avec son pseudo dedan. et ecrivant dans la window il recoi aussi le message, bref un debut de messager en socket. Je rajouterai d'autre truc pour que se soi vraiment comme un messager. Voila j'espere avoir été aussi clair que possible =)

signaler à un administrateur
Commentaire de nightmar le 05/02/2005 17:13:52

eu au faite pas besoin de telecharger le zip lé pas bon j'est fait une erreur, suffi juste de c/c le code =)
(si quelqu'un sai comment supprimer le zip)

signaler à un administrateur
Commentaire de Kozygi le 05/02/2005 20:17:54

moi marche po ='(

signaler à un administrateur
Commentaire de nightmar le 06/02/2005 00:39:44

voila c'est bon tout les bug on été rectifier =)

signaler à un administrateur
Commentaire de COOLMAN002 le 06/02/2005 02:23:28

Dommage que le port est 6667, si un serveur tourne sur mon ip, avec le port 6667, j'fais comment ?
Tu devrais mettre differents choix.

menu menubar {
    Ouvrir Socket-Messager: { sockclose * | socklisten messager 6667 | echo $active 12Socket Messager et lancer }
    Fermer Socket-Messager: { sockclose * }

Perso j'ai plusieurs socket d'ouverte sur mon script, tu vas tous me les fermer, pas cool.

Pense à mettre tes alias en local (-l)

signaler à un administrateur
Commentaire de Kozygi le 06/02/2005 12:07:26

sa me soul moi sa marche night!!!! ='(

signaler à un administrateur
Commentaire de steve6000 le 16/02/2005 08:15:54

var %r $r(10000,20000)
while (!$portfree(%r)) { inc %r }
socklisten <socket> %r

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,842 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.