Connexion


Publier un nouveau sujet Répondre au sujet  [ 1 message ] 

Index du forum : Partie publique : Scripting

Auteur Message
 Sujet du message: [mIRC] StatusBoT
MessagePublié: Jeu Oct 02, 2008 8:18 pm 
Hors-ligne
Apprenti recycleur

Inscrit le: Jeu Oct 02, 2008 8:08 pm
Messages: 1
Bonjour à tous,

Je vous présente un petit script que j'ai utilisé pour créer une liste d'utilisateurs pour un des mes serveurs IRC.

Je mettrais régulièrement à jour ce sujet, en synchronisation avec les mises à jour sur le serveur officiel.

Tout d'abord, les pré-requis :
- Un serveur IRC
- Un mIRC
- Un serveur Web

Sachez qu'il est préférable d'avoir Windows dans ce cas (mIRC étant disponible uniquement sous celui-ci), mais WINE permet de contourner cela.
Le serveur Web et le mIRC doivent être sur le même serveur.
En effet, StatusBot écrira dans une page html, ce qui nécessite donc un serveur web à disposition (afin de consulter la liste des pseudos connectés).

Il suffira de coller dans l'éditeur de scripts de mIRC le code fourni, et ensuite configurer StatusBot, via le fichier statusbot.conf (commenté pour vous aider).

StatusBot mettra à jour la page HTML à chaque action influant le nicklist (grades, part, join, quit, ...), en personnalisant la mise en forme HTML.
StatusBot gère les modes +v,+o,+h,+q,+a.

La première version publique (0.4.2) devrait apparaître d'ici peu.

Pour le moment, je vous file la version 0.4.0, qui est très basique, et doit être configuré directement dans le script.

Code:
; ===============================
; StatusBoT - Par Falistos
; Version 0.4.0
; ===============================

on *:NICK:{
  update_status #channel
}
on *:JOIN:#channel:{
  unset %fake
  update_status #channel
}
on *:PART:#channel:{
  unset %fake
  set %fake $nick
  update_status #channel
on *:QUIT:{
  unset %fake
  set %fake $nick
  update_status #channel
}
alias update_status {
  var %curs = 1
  var %nicks = $nick($1,0)
  while (%nicks >= %curs) {
    if (%curs == 1) {
      if ($nick($1,%curs) != %fake) {
        if (~ isin $nick($1,%curs).pnick) { set %result <U><FONT color=#FF6600><b>~ $+ $nick($1,%curs) $+ </b></FONT></U> }
        elseif (& isin $nick($1,%curs).pnick) { set %result <FONT color="green"><b>& $+ $nick($1,%curs) $+ </b></FONT> }
        elseif ($nick($1,%curs) isop $1) { set %result <FONT color="red"><b>@ $+ $nick($1,%curs) $+ </b></FONT> }
        elseif ($nick($1,%curs) ishop $1) { set %result <FONT color="blue"><b>% $+ $nick($1,%curs) $+ </b></FONT> }
        elseif ($nick($1,%curs) isvoice $1) { set %result <FONT color="purple"><b>+ $+ $nick($1,%curs) $+ </b></FONT> }
        else { set %result <FONT color=#000066><b> $+ $nick($1,%curs) $+ </b></FONT> }
      }
    }
    else {
      if ($nick($1,%curs) != %fake) {
        if (~ isin $nick($1,%curs).pnick) { set %result %result $+ , <U><FONT color=#FF6600><b>~ $+ $nick($1,%curs) $+ </b></FONT></U> }
        elseif (& isin $nick($1,%curs).pnick) { set %result %result $+ , <FONT color="green"><b>& $+ $nick($1,%curs) $+ </b></FONT> }
        elseif ($nick($1,%curs) isop $1) { set %result %result $+ , <FONT color="red"><b>@ $+ $nick($1,%curs) $+ </b></FONT> }
        elseif ($nick($1,%curs) ishop $1) { set %result %result $+ , <FONT color="blue"><b>% $+ $nick($1,%curs) $+ </b></FONT> }
        elseif ($nick($1,%curs) isvoice $1) { set %result %result $+ , <FONT color="purple"><b>+ $+ $nick($1,%curs) $+ </b></FONT> }
        else { set %result %result $+ ,<FONT color=#000066><b> $nick($1,%curs) $+ </b></FONT> }
      }
    }
    inc %curs
  }
  set %result <FONT SIZE=2><b>Sur #channel : </b> $+ %result $+ </font>
  if ($exists(C:\nicks.html) == $true) { remove C:\nicks.html }
  write C:\nicks.html %result
  unset %result
}


Il suffit de remplacer #channel par le salon à écouter, C:\nicks.html par le chemin vers la page html à éditer

A bientôt.


Back to top
 Profil  
 
Afficher les messages publiés depuis:  Trier par  
Publier un nouveau sujet Répondre au sujet  [ 1 message ] 

Index du forum : Partie publique : Scripting


Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 7 invité(s)


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum

Rechercher pour:
Sauter vers:  
cron
Style by Midnight Phoenix & N.Design Studio
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Traduction réalisée par Maël Soucaze © 2010 phpBB.fr