Julkio ( gestion d'utilisateurs sur une liste d'attente )

Description

C'est un petit bot qui crée une liste d'attente des utilisateurs dans l'ordre qui sont entrer dans le canal. Il notice un message de bienvenue a l'utilisateur qui vient d'entrer et lui informe de sa position.

Source / Exemple :


; ATTENTION CECI EST UNE VERSION ANCIENNE, Nouvelle version bientot disponnible!

;================================================
;  Simple Helpbot
;  Version 1.3 FR
;  Ecrit par: xDaeMoN
;  Email: xdaemon@xdaemon.us
;  Version Francais Par MarcGap ([Marc])
;  MarcGap@gmail.com
;  Undernet (irc.undernet.org) #Musique-Tech
;
;    Commands:  (OPÉRATEUR SEULEMENT)
;
;    !aide on/off = activer ou désactiver le script
;    !suivant = voice le prochain user a aider
;    !aidé <nick> = utiliser après avoir aidé le user
;    !list = list des users en attente
;    !clist = list des users aidés
;
;================================================

on !*:JOIN:%help.chan: {
  if ( $readini(uhelp.ini,config,stat) ) {
    writeini uhelp.ini $chan $_n1($nick) help
    .notice $nick Veuillez attendre votre tour car nous sommes occupés en ce moment. Vous serez voice automatiquement quand nous finirons avec les personnes courantes. Vous êtes $ini(uhelp.ini,$chan,0)  en ligne. Merci !
  }
}

on *:TEXT:!*:%help.chan: {
  if ( $nick isop $chan ) {
    if ( !aide == $1 ) {
      if ( $2 == on ) {
        if (!$readini(uhelp.ini,config,stat)) {
          writeini uhelp.ini config stat 1
          .notice $nick ** Bureau d'aide activé.
          .msg $chan Bureau d'aide pour $chan est maintenant activé.
        }
        else .notice $nick Bureau d'aide déjà activé
      }
      elseif ( $2 == off ) {
        if ($readini(uhelp.ini,config,stat)) {
          .remove uhelp.ini
          .notice $nick ** Bureau d'aide désactivé.
          .msg $chan Bureau d'aide pour $chan est maintenant désactivé.
        }
        else .notice $nick Bureau d'aide déjà désactivé
      }
    }
    elseif ( $1 == !suivant ) {
      if ($readini(uhelp.ini,config,stat)) {
        nextuser $nick $chan
      }
      else .notice $nick Le bureau d'aide n'est pas activé.
    }
    elseif ( $1 == !aidé ) {
      if ( $readini(uhelp.ini,config,stat) ) {
        if ( $2 ison $chan ) { 
          if ( $readini(uhelp.ini,current,$_n1($2)) ) {
            mode $chan -v $2
            remini uhelp.ini current $_n1($2)
            .notice $2 Votre question a été répondue. Veuillez partir du canal maintenant. Merci.
          }
          else .notice $nick ** Parametres incorect: !aidé <nick>
        }
        else .notice $nick ** Parametres incorect: $2 n'est pas sur $chan $+ .
      }
      else .notice $nick Le bureau d'aide n'est pas activé.
    }
    elseif ( $1 == !list ) {
      if ( $readini(uhelp.ini,config,stat) ) {
        if ($ini(uhelp.ini,$chan,0) ) {
          .notice $nick ** $v1 User(s) sur la list d'aide **
          var %hc = 1
          while $ini(uhelp.ini,$chan,%hc) {
            .notice $nick $_n2($v1) 
            inc %hc
          }
          .notice $nick ** Fin de la liste d'aide **
        }
        else .notice $nick  Liste vide.
      }
      else .notice $nick Le bureau d'aide n'est pas activé.
    }
    elseif ( $1 == !clist ) {
      if ( $readini(uhelp.ini,config,stat) ) {
        if ( $ini(uhelp.ini,current,0) ) {
          .notice $nick ** $v1 User(s) Liste de aidé **
          var %h = 1
          while $ini(uhelp.ini,current,%h) {
            .notice $nick $readini(uhelp.ini,current,$_n2($v1)) is currently helping $_n2($v1)
            inc %h
          }
          .notice $nick ** Fin de la liste **
        }
        else .notice $nick Liste vide.
      }
      else .notice $nick Le bureau d'aide n'est pas activé
    }
  }
}

alias nextuser {
  if ( $ini(uhelp.ini,$2,0) ) {
    if ( $_n2($ini(uhelp.ini,$2,1)) ison $2 ) {
      mode $2 +v $v1
      .notice $v1 $1 va maintenant vous aidé
      remini uhelp.ini $2 $_n1($v1)
      writeini uhelp.ini current $_n1($v1) $1
    }
    else {
      remini uhelp.ini $2 $_n1($v1)
      .timer 1 1 nextuser $1 $2
    }
  }
  else .notice $1 Liste vide.
}

alias _n1 { return $replace($1,[,«,],») }

alias _n2 { return $replace($1,«,[,»,]) }

on !*:PART:%help.chan: {
  if ( $readini(uhelp.ini,current,$_n1($nick)) ) remini uhelp.ini current $_n1($nick)
  elseif ( $readini(uhelp.ini,$chan,$_n1($nick)) ) remini uhelp.ini $chan $_n1($nick)
}

on !*:OP:%help.chan: {
  if ( $readini(uhelp.ini,$chan,$_n1($opnick)) ) remini uhelp.ini $chan $_n1($opnick)
}

on *:SERVEROP:%help.chan: {
  if ( $readini(uhelp.ini,$chan,$_n1($opnick)) ) remini uhelp.ini $chan $_n1($opnick)
}

on !*:QUIT: {
  if ( $readini(uhelp.ini,current,$_n1($nick)) ) remini uhelp.ini current $_n1($nick)
  elseif ($readini(uhelp.ini,%help.chan,$_n1($nick))) remini uhelp.ini %help.chan $_n1($nick)
}

on !*:KICK:%help.chan: {
  if ( $readini(uhelp.ini,current,$_n1($knick)) ) remini uhelp.ini current $_n1($knick)
  elseif ($readini(uhelp.ini,$chan,$_n1($knick))) remini uhelp.ini $chan $_n1($knick)
}

on !*:VOICE:%help.chan: {
  if ( $readini(uhelp.ini,$chan,$_n1($vnick)) ) {
    remini uhelp.ini $chan $_n1($vnick)
  }
} 

menu menubar,channel {
  Canal d'aide $iif(%help.chan, $+($chr(40),$v1,$chr(41)), (NONE))
  .$iif(%help.chan,Changer, Changer le canal d'aide):set -s %help.chan #$$?="Entre le #Canal:"
}

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.