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 !

G-CONTACT MANAGER 1.0


Information sur la source

Catégorie :AddOns Niveau : Initié Date de création : 01/08/2004 Vu / téléchargé: 3 270 / 257

Note :
9,25 / 10 - par 8 personnes
9,25 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

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

Description

Cliquez pour voir la capture en taille normale
GCNT est un programme qui va vous permettre d'enregistrer des informations sur
des utilisateurs, telles que leurs hosts, pseudos, realnames etc... GCNT récupère
toutes ces informations automatiquement, chaque fois que vous joignez un canal,
quand des gens loignent ou partent des canaux sur lesquels vous êtes... bref, en fonction
de la manière dont vous avez configuré GCNT.

Par exemple, connectez vous sur IRC un matin, lancez GCNT, et partez la journée.
Vous revenez le soir, et.. :o surprise ! Votre liste s'est remplie ! Ainsi, vous
pourrez par exemple aller dans votre liste en étant déconnecté :)

Besoin de l'host de quelqu'un ? Besoin de connaître la dernière fois où vous avez
vu telle personne ? ouvrez GCNT et vérifiez ;)

GCNT utilise la commande /who pour prendre les informations.
 

Conclusion

Configuration

Tapez /gcnt et allez dans l'onglet "Configuration".

-Mise à jour de la base :

Cochez "Update at each nick change" si vous voulez que GCNT enregistre les gens qui
changent de pseudo, dans la base de données. [recommendé]

Cochez "Update at each join/part" si vous voulez que GCNT enregistre les gens qui
joignent ou partent des canaux sur lesquels vous êtes. [recommendé]

Cochez "Update each time you join a channel" si vous souhaitez enregistrer toutes
les personnes présentes sur les canaux que vous joignez. Si vous êtes présents sur
des canaux de plus de 100 personnes, mIRC peut ralentir un peu. Quelques scripts
envoient déjà un /who automatiquement, lorsque vous joignez un canal. Dans ce cas,
ne cochez pas, sinon vous feriez deux commandes /who.

-Sauvegarde de la base :

La base de données a besoin d'être enregistrée avant de fermer mIRC pour une
prochaine utilisation, parce que GCNT est basé sur des Hash Tables, dans un soucis
d'optimisation.

Vous pouvez choisir de sauvegarder lors d'une déconnexion (on disconnect). Cela
évite de nombreuses sauvegardes qui peuvent bouffer un peu de CPU (si grande est
la base). Le point faible est que si une coupure de courant intervient, la base
ne sera pas sauvegardées, les données seront perdues.

Vous pouvez aussi choisir de sauvegarder la base à chaque mise à jour que vous
faites, automatiquement ou non; en d'autres termes, lorsque les résultats d'une
commande /who sont reçus. Cela peut ralentir beaucoup mIRC en fonction de la
taille de la base.

La troisième option est de sauvegarder toutes les 10 minutes, ce qui est pratique.

N'oubliez-pas :
Votre choix doit être basé en fonction de la taille de la base de données.

Allez enjoy :)

×××G-FACTION×××
 

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 !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de GFACTION le 01/08/2004 13:28:17

Décompressez le zip à la racine du répertoire de mIRC, et tapez /load -rs gcnt.g dans mIRC.

Signalez les bugs ici s'il y en a, merci.

signaler à un administrateur
Commentaire de davelister le 01/08/2004 13:35:23

Pas mal, juste un petit bug à la progress bar, je te le signale sur IRC :)

signaler à un administrateur
Commentaire de Tucefa le 01/08/2004 13:43:49

Exacte, ce petit bug, sinon rien de mal, c'est pratik ...

Autrement, dans ta source, on ecrit pas recommendé mais recommandé !
Donc bravo pour ce code !

Salut
Tucefa

signaler à un administrateur
Commentaire de GFACTION le 01/08/2004 13:49:32

C'est étrange ce bug, j'ai testé avec un mIRC vierge, j'ai loadé... je me suis connecté, j'ai /who mon canal. Je tape /gcnt, et tout marche correctement... je ne comprends pas :/

signaler à un administrateur
Commentaire de GFACTION le 01/08/2004 14:30:38

Bon, on a fait plein de tests, pour résumer :

Si vous l'avez essayé sur un mIRC6.16 vierge (sans RIEN du tout), et que ça bug, c'est bien un bug.

Si vous ne l'avez pas testé dans ces conditions, alors le problème est chez vous.

signaler à un administrateur
Commentaire de tofu le 01/08/2004 14:40:58

le concept est bien, original, les explications sont claires, par contre je comprends pas pourquoi tu mets un on dialog par item pour ton menu ? oO

signaler à un administrateur
Commentaire de SornDrixer le 01/08/2004 14:54:31 administrateur CS

Original et utile.
Dialog joliement présenté en +

Ton addon peut carrément remplacer une notify list :)

signaler à un administrateur
Commentaire de Kerrigan le 01/08/2004 15:24:26

c'est un code vraiment tres intéressant. Mais tu as fait une petite erreur d'optimisation :

var %nick $6
  var %host $4
  var %ident $3
  var %server $5
  var %realname $9-
  var %mainnick $mainnick(%nick)

tu peux mettre ça sur une seule ligne. Ca ne te ressemble pas de faire ce genre d'erreur ...

bref continuons :

while (1) {
      inc %o
      var %tmpnick $hget(%tnick,Host $+ %o)
      if (%tmpnick) { did -a gcnt 1 3 3 %tmpnick }
      else { break }
    }

Ce bout de code me laisse perplexe. C'est vraiment tres élégant certe, mais pourquoi ne pas la structurer comme une vraie while ?

je te propose ça :

var %o = 1
while ($hget(%tnick,Host $+ %o)) {
    did -a gcnt 1 3 3 $ifmatch
    inc %o
  }

c'est beacoup plus court et la seule condition est celle de la while, ça doit donc etre plus rapide. De surcroit tu utilises cette méthode assez souvent donc cette optimisation ne devrait pas faire de mal a ton code.

if (%n = 0) did -i %d %i 1 cb root
devient :
if (!%n) did -i %d %i 1 cb root

l'alias combine avec ces trois while imbriqué c un vrai tout de force :) (bravo)


dans l'alias "branch" les variable %d et %i ne servent a rien. A moins que leur existence soient justifiées, j'aimerais bien comprendre pourquoi tu les utilises. meme commentaire pour %b et %n

regarde ce que je te propose :

alias branch {
   if ($dialog($1)) {
       if (!%n) did -i $1 $2 1 cb root
    else { did -i $1 $2 1 cb root $gettok($gettok($did($1,$2,1),4-,32),1- $+ $ifmatch,32) }
    return $gettok($gettok($did($1,$2,$gettok($gettok($did($1,$2,1),4-,32),-1,32)),7-,32),1,9)
  }
}

c'est moins clair, mais ça doit etre plus rapide a mon avis. (cela reste a démontrer)

l'alias drop2 st une belle utilisation de $findfile (bravo)

Sinon je suis étonnée que Sorn_Drixer ne t'ait pas dit de regrouper les event de tes dialogues.

J'estime aussi que tu aurais pu donner le choix entre le français et l'anglais pour ton dialogue. Tu es francophone quoi... pense a tes compatriotes.

Voila c'est en gros tout ce que j'avais a dire. Le plus important est l'optimisation de la while que je te propose, le reste se sont des petits détails qui sont plus du style de chaque scripteurs que de la réelle optimisation.

Ca vaut 9/10, tu as perdu un point a cause des var et de la while.

Bon code.



signaler à un administrateur
Commentaire de GFACTION le 01/08/2004 17:14:59

Merci :)

Pour $branch, j'aurais peut-être dû le préciser, c'est la seule chose qui n'est pas de moi, j'avais trouvé cette fonction sur sdb il y a quelque temps.

Kerrigan

"c'est un code vraiment tres intéressant. Mais tu as fait une petite erreur d'optimisation :

var %nick $6
  var %host $4
  var %ident $3
  var %server $5
  var %realname $9-
  var %mainnick $mainnick(%nick)

tu peux mettre ça sur une seule ligne. Ca ne te ressemble pas de faire ce genre d'erreur ..."

Ce n'est pas une erreur, regarde la suite du code, le %nick sert à plusieurs reprises ;)

Pour la while d'ajout des pseudos dans la treeview, tu as raison, je n'y avais pas pensé.

Merci pour vos conseils, critiques etc... :)

signaler à un administrateur
Commentaire de Hades53 le 01/08/2004 18:12:53

Enfin un truc utile pour l'IRC.
L'idée est très bonne ;)

Maintenant en optimisant le tout, la source sera vraiment excellente.

Petite remarque:
"alias noext {
  unset %noext
  unset %pos
  var %i 1
  set %len $len($1)
  while (%i <= %len) {
    if ($mid($1,%i,1) == $chr(46)) {
      set %pos %i
    }
    inc %i
  }
  if (%pos) { set %noext $left($1,$calc(%pos - 1)) }
  else { set %noext $1 }
  return %noext
}
"
peut-être remplacé par ceci:
alias next {
  if ($numtok($1,46) == 1) return $1
  return $deltok($1,-1,46)
}

signaler à un administrateur
Commentaire de GFACTION le 01/08/2004 19:07:18

Ah oui excellent :O

Bien vu Hades53 :p

signaler à un administrateur
Commentaire de Kerrigan le 01/08/2004 20:21:39

Je reprend je n'ai pas été clair en fait je dit que

  var %nick $6
  var %host $4
  var %ident $3
  var %server $5
  var %realname $9-
  var %mainnick $mainnick(%nick)

peut etre remplacer par

var %nick  = $6,%host =  $4,%ident =  $3,%server =  $5,..

la prochaine fois je serais plus clair.

signaler à un administrateur
Commentaire de GFACTION le 01/08/2004 22:06:06

Ah oui ok

signaler à un administrateur
Commentaire de PaDa le 01/08/2004 22:08:37

j'aime beaucoup ta source , c'est très abouti ...
je regrette cependant (tu n'y es pour rien) que ce soit inutilisable sur de gros salons ... le /who qui me permet de rafraichir l'ial a l'entrée du salon me fait freezer correctement sur un salon de 450 users , j'ose pas imaginer a 800 je pars en ping timeout :( et puis avec le nombre de join part a la seconde j'me demande pourquoi le server m'a pas jété avec autant de /who ...
sinan rien a redire les ptites optimisations ont été dites je pense bwavo quand même :p

signaler à un administrateur
Commentaire de GFACTION le 02/08/2004 08:09:01

Oui effectivement, sur de si gros canaux, ça devient ingérable. C'est dommage mais bon.
En tout cas, ça convient sur des réseaux où seuls quelques canaux dépassent 100 users :)

signaler à un administrateur
Commentaire de abhoryo le 05/08/2004 01:09:48

Hum
bien bien
comme c'est dommage : "En tout cas, ça convient sur des réseaux où seuls quelques canaux dépassent 100 users :)" ca existe des réseau si petit ?.
enfin bref passons. je ne reproche rien sur l'anglais étant bilingue mais je pense aux autres... pkoi ne pas faire un option qui traduise tout en francais et d'autres langues???

Bref étant donné que ce programme soit limité si vite, il n'est d'aucune utilité. Tu as perdu ton temps.

signaler à un administrateur
Commentaire de tofu le 05/08/2004 12:14:12

" ca existe des réseau si petit ?." ya pas que voila/wanadoo, undernet, efnet etc, ya plusieurs milliers de réseaux/serveurs    dont peu de cannaux excèdent les 100 users .

signaler à un administrateur
Commentaire de GFACTION le 05/08/2004 12:27:25

abhoryo, on voit que tu connais mal IRC, comme le dit tofu y'en a des milliers des réseaux comme ça, et même EpiKnet qui est le 3ème réseau francophone, alors chut :)

Programme limité ? Seulement car des gens ne sont même pas foutus de parler une langue essentielle ? -_-
D'aucune utilité ? Hum.. soit tu es limité psychologiquement, ou alors tu le fais exprès, car justement c'est un addon original, et très utile, quelque chose qu'on avait jamais vu.
C'est bizarre ça.. un seul mec contre tout le monde :o

Allez ciao abhorymachin.

signaler à un administrateur
Commentaire de GFACTION le 05/08/2004 12:28:36

Et puis au lieu de critiquer à tout va, tu pourrais plutôt donner des idées, des solutions concernant ce problème des gros canaux, non ? Toi qui es si fort et intelligent pour critiquer comme ça...

signaler à un administrateur
Commentaire de tempusus le 06/08/2004 21:58:43 administrateur CS

Bonsoir.

un seul mot: Excellent.

Chez moi pas de bug visible et bien utile pour les netadmins :))

Quand aux reproches qui te sont fait... C'est triste mais malheureusement certains ne savent pas evaluer correctement une bonne source

8/10

Tempusus
Admin CS

signaler à un administrateur
Commentaire de abhoryo le 09/08/2004 21:06:30

lol je connais tres bien IRC et les scripts. Mais pas les réseau wanatruc. et puis Epiknet c quoi? bref je connais un serveur fr qui fait bien plus de 5000 user minimum...
Et puis ya pas que les serveurs francais. Faut pas resté sur votre "voila". Bref j'ouvre une nouvelle salle et 12h apres elle est deja a 150 donc c vite mort.

"Et puis au lieu de critiquer à tout va, tu pourrais plutôt donner des idées" ==>> une des meilleures idées était de ne pas l'avoir commencé par perte de temps.
Sinon faire ami ami avec les ircop de chez vous pour négocier l'implant d'un programme directement sur le réseau.(je suis un des créateurs d'un des plus gros serveur francais et on m'a deja demandé cela...). Et merci pour le gros rame ^^. ca fait tjrs plaisir de faire ramer un serveur.

"C'est bizarre ça.. un seul mec contre tout le monde :o"
==>>lol je dois etre le seul conscient de l'étendue de ton logiciel.

Sinon j'ai rien a repprocher sur le programmation bravo.

Et puis c quoi cette manie de faire que pour les mirc 6.16 qui sont buggé à l'origine ;_;

bref bonne continuation.

Tes autre source sont plus utiles Gfaction

signaler à un administrateur
Commentaire de PaDa le 09/08/2004 21:27:01

faire ami ami avec les ircops ? sur undernet ou quakenet , avec 200 000 de max users je pense que les ircops ont autre chose a faire lol
'fin bon :)
et puis mirc a toujours des bugs quelques soient les versions mais je vois pas vraiment ce que tu pointes du doigt par "buggé a l'origine" ... a chaque release des fonctions sont améliorées corrigées j'veux bien un exemple de véritable bug non signalé que tu aurais déniché :)

signaler à un administrateur
Commentaire de sman0 le 11/08/2004 00:03:59

Vraiment bien :)
Et utile en plus, très beau boulot !

signaler à un administrateur
Commentaire de KiNdErMaXi le 27/09/2004 21:08:40

super joli, méga utile,
génial

signaler à un administrateur
Commentaire de freenaute le 17/07/2005 13:13:08

slt.
pour moi, c'est oki.il tourne très bien et me rend bien service sur mon chan.c'est mon petit coueau suisse.
merci pour tout.
bye.

signaler à un administrateur
Commentaire de jeremy29 le 09/11/2005 20:48:39

Très bonnes sources, vraiment utile =)

10/10

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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 : 1,123 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é.