Communauté sur les Eggdrops - Community about Eggdrops
identd aléatoire même si il est pas activé - Printable Version

+- Communauté sur les Eggdrops - Community about Eggdrops (https://forum.eggdrop.fr)
+-- Forum: Eggdrop et TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=8)
+--- Forum: Scripts TCL (https://forum.eggdrop.fr/forumdisplay.php?fid=4)
+--- Thread: identd aléatoire même si il est pas activé (/showthread.php?tid=127)



identd aléatoire même si il est pas activé - larrybr - 06/01/2008

Salut

Voila comme il en a pas nul part sur internet et que j'ai même pas vu ou ça en parle... j'aimerais un script qui fasse un ident aléatoire comme le winident.tcl même lorsque le ident n'est pas activé sur le pc ou est le windrop. (Comme quand le port n'est pas ouvert dans le routeur)

Si ça intéresse quelqu'un je lui en remerci

au plaisir d'avoir de vos nouvelles


RE: identd aléatoire même si il est pas activé - CrazyCat - 07/01/2008

Alors suite à notre discussion, j'ai fait un mini-script:

tcl
namespace eval rand_id {
 
    # Le masque de l'ident, les ? seront remplacés par
    # un caractère de la liste "chars"
    variable pattern "hello???"
 
    # Liste des caractères de remplacement autorisés
    variable chars {
        "0" "1" "2" "3" "4" "5" "6" "7" "8" "9"
        "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"
        "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"
        "_" "-"
    }
 
 
    # renvoit un caractère au hasard
    proc rndchr {} {
        return [lindex $rand_id::chars [rand [llength $rand_id::chars]]]
    }
 
    # Remplace tous les ? du masque
    proc randomize {pattern} {
        set out ""
        foreach {chr [split $rand_id::pattern ""]} {
            append out [if {[string eq $chr "?"]} {rand_id::rndchr} {set chr}]
        }
        return $out
    }
 
    # Bind sur la connexion au serveur
    bind evnt - "connect-server" ident
    proc ident {evnt} {
        set ::username rand_id::randomize
    }
}

Il suffit de de modifier le pattern et la liste chars pour t'en servir comme tu veux.

Par exemple, pour avoir automatiquent 5 chiffres:

tcl
variable pattern "?????"
variable chars { "0" "1" "2" "3" "4" "5" "6" "7" "8" "9" }