Robot de Gestion de Salons IRC
Transcription
Robot de Gestion de Salons IRC
GREATOREX Camille 2013-2014 Poitiers SE3 Robot de Gestion de Salons IRC Modération Topics Support Compteur Gestion des Hiérarchies Codé en MSL sur MIRC Version 7.32 ----------------------------------------------------------------------------------- #autovoice off on 1:join:%chan:/mode $chan +v $nick #autovoice end #joinsupport off on +1:join:%support:{ If ($nick !isin %urgences) { /mode $chan +v $nick /notice $nick Bienvenue sur le support, $nick ; Veuillez expliquer votre problème. /disable #support /enable #contresupport If (%urgences != $null) { /mode $chan -v $nick(%support,1,v,o) } } Elseif ($nick isin %urgences) { /mode $chan -v $nick(%support,1,v,o) /mode $chan +v $nick } } on +1:part:%support:{ If ($nick !isin %urgences) { /notice $nick La requête N° %requestcount vient d'être verouillée. /enable #support /disable #contresupport If (%waitinguser != $null) { Inc %requestcount /invite %waitinguser %support /notice %waitinguser Vous venez d'être invité sur# %support . /msg $chan %waitinguser vient d'ouvrir la requête n° %requestcount : %waitingmsg /set %waitinguser /set %waitingmsg } Elseif (%urgences != $null) { /mode $chan +v $nick(%support,2,r,vo) } } Elseif ($nick isin %urgences) { /set %urgences /mode $chan +v $nick(%support,1,r,vo) /notice $nick Vous venez de quitter le support. } } on +1:kick:%support:{ If ($knick !isin %urgences) { /notice $knick La requête N° %requestcount vient d'être verouillée. /enable #support /disable #contresupport If (%waitinguser != $null) { Inc %requestcount /invite %waitinguser %support /notice %waitinguser Vous venez d'être invité sur #%support . /msg $chan %waitinguser vient d'ouvrir la requête n° %requestcount : %waitingmsg /set %waitinguser /set %waitingmsg } } Elseif ($knick isin %urgences) { /set %urgences /mode $chan +v $nick(%support,1,r,vo) } } on 50:join:%support:{ /mode $chan +o $nick } #joinsupport end #modes off on 80:text:!mode +m:%chans:{ /mode $chan +m } on 80:text:!mode +n:%chans:{ /mode $chan +n } on 80:text:!mode +s:%chans:{ /mode $chan +s } on 80:text:!mode +i:%chans:{ /mode $chan +i } on 80:text:!mode +t:%chans:{ /mode $chan +t } on 80:text:!mode +l:%chans:{ if ($3 isalnum) { /mode $chan +l $3 } } on:80:text:!mode +C:%chans:{ /mode $chan +C } on 80:text:!mode +M:%chans:{ /mode $chan +M } on 80:text:!mode -m:%chans:{ /mode $chan -m } on 80:text:!mode -n:%chans:{ /mode $chan -n } on 80:text:!mode -s:%chans:{ /mode $chan -s } on 80:text:!mode -i:%chans:{ /mode $chan -i } on 80:text:!mode -t:%chans:{ /mode $chan -t } on 80:text:!mode -l:%chans:{ /mode $chan -l } on 80:text:!mode -C:%chans:{ /mode $chan -C } on 80:text:!mode -M:%chans:{ /mode $chan -M } #modes end #topics off on 80:text:!on:%chans:{ /f9 } on 99:text:!off:%chans:{ /f11 } on 90:text:!setopic*:%chans:{ /topic $chan $2} on 90:text:!set*:%chan:{ If ($2 == 1) { If ($3 == ON) { /set %se ,14 $3If (%su == ON) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 : %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 : %se ] [0,14News :,14 %news ] } ElseIf (%su == OFF) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 : %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 : %se ] [0,14News :,14 %news ] } Else { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 : %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 : %se ] [0,14News :,14 %news ] } } Elseif ($3 == OFF) { /set %se ,14 $3/set %su ,14 $3If (%su == OFF) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 : %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 : %se ] [0,14News :,14 %news ] } Else { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 : %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 : %se ] [0,14News :,14 %news ] } } Else { /set %se ,14 $3If (%su == ON) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 : %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 : %se ] [0,14News :,14 %news ] } ElseIf (%su == OFF) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 : %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 : %se ] [0,14News :,14 %news ] } Else { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 : %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 : %se ] [0,14News :,14 %news ] } } } If ($2 == 2) { If ($3 == ON) { /set %su ,14 $3/enable #support /disable #contresupport /disable #supportoff If (%se == ON) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support : %su ] [0,14News :,14 %news ] } ElseIf (%se == OFF) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support : %su ] [0,14News :,14 %news ] } Else { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support : %su ] [0,14News :,14 %news ] } } Elseif ($3 == OFF) { /set %su ,14 $3/disable #support /disable #contresupport /enable #supportoff If (%se == ON) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support : %su ] [0,14News :,14 %news ] } ElseIf (%se == OFF) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support : %su ] [0,14News :,14 %news ] } Else { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support : %su ] [0,14News :,14 %news ] } } Else { /set %su ,14 $3If (%se == ON) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support : %su ] [0,14News :,14 %news ] } ElseIf (%se == OFF) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support : %su ] [0,14News :,14 %news ] } Else { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support : %su ] [0,14News :,14 %news ] } } } If ($2 == 3) { /set %news ,14 $3If (%se == ON) { If (%su == OFF) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14News :,14 %news ] } } If (%se == ON) { If (%se == ON) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14News :,14 %news ] } } If (%se == OFF) { If (%su == OFF) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 :,14 %se ] [0,14News :,14 %news ] } } If (%se == ON) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 :,14 %se ] [0,14News :,14 %news ] } If (%se == OFF) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 :,14 %se ] [0,14News :,14 %news ] } If (%su == ON) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] } If (%su == OFF) { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] } Else { /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 :,14 %se ] [0,14Support :,14 %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 :,14 %se ] [0,14News :,14 %news ] } } } #topics end #textes off on 1:text:!dh:%chans:{ /msg $chan Nous sommes le $date et il est $time (UTC+01:00) } on 1:text:!support:%chans:{ If (ON isin %supporto) { /notice $nick Le support est activé ; Pour envoyer une requête, entrez #"/msg SE3 Support <votre_probleme>"# puis patientez quelques temps jusqu'a être invité ; Si le support est occupé, vous recevrez une notice d'infirmation ; Renvoyez donc la requête quelques minutes plus tard. } Else { /notice $nick Le support est actuellement fermé. Si un administrateur est connecté, peut-être qu'il vous invitera sur le support. } } on 1:text:!timer*:%chans:{ If ($2 isalnum) { If ($2 <= 600) { If (%antispam == 0) { If (%timer == 0) { /msg $chan Il reste $2 secondes. /timerchrono 1 $2 /msg $chan Temps écoulé! /set %timer $2 /timertim $2 1 /dec %timer /set %antispam 60 /timerantispam 60 1 /dec %antispam } } elseif (%timer > 0) { /notice $nick Il y a déjà un timer en cours. Temps restant : %time } elseif (%antispam > 0) { /notice $nick Pas plus d'un timer par minute. Temps restant: %antispam } } Elseif ($2 > 600) /notice $nick Valeur non conforme. } Else /notice $nick Valeur non conforme. } on 1:text:!time:%chans:{ If (%timer >= 1) { /notice $nick Il reste %timer secondes. } Else { /notice $nick Il n'y a pas de timer en cours. } } on 1:text:!lvl*:%chans:{ If ($2 != $null) { If ($2 !ison $chan) { /notice $nick $2 est au niveau $read(D:\write\lvl.txt, s, $2) } Elseif ($2 ison $chan) { /notice $nick $2 est au niveau $level($address($2,2)) } } Elseif ($2 == $null) { /notice $nick Vous êtes au niveau $level($address($nick,2)) } } on 1:text:!lolz:%chans:{ /msg $chan lolz! } on 1:text:!channels:#:{ /msg $chan Les salons enregistrés sont : %chans } on 1:text:!=*:%chans:{ /msg $chan $calc($2-) } on 1:text:!about:%chans:{ /notice $nick Bot en MSL crée dans son intégralité par Camille Greatorex ( %admin ) } on 1:text:!-*:%chans:{ If ($2 isalnum) { If ($3 == h) { If ($4 == m) { /msg $chan $2 heures font $calc( $2 * 60 ) minutes } Elseif ($4 == s) { /msg $chan $2 heures font $calc( $2 * 3600 ) secondes } } ElseIf ($3 == m) { If ($4 == h) { /msg $chan $2 minutes font $calc( $2 / 60 ) heures } Elseif ($4 == s) { /msg $chan $2 minutes font $calc( $2 * 60 ) secondes } } Elseif ($3 == s) { If ($4 == h) { /msg $chan $2 secondes font $calc( $2 / 3600 ) heures } Elseif ($4 == m) { /msg $chan $2 secondes font $calc( $2 / 60 ) minutes } } } } on 1:text:!Caelius:%chans:{ /notice $nick Caelius est le créateur de SE3. C'est le dieu suprème du salon #LP2I. } on 1:text:!lepongistedu63:%chans:{ /notice $nick lepongistedu63 est le créateur de FrogServ. Il a aidé Caelius lors de ses début sur IRC. Aujourd'hui, il fait du planeur. } on 1:text:!CakeAuCitron:%chans:{ /notice $nick CakeAuCitron est le créateur de CakeBot, CakeServ, CakeSpam. Il a rencontré Caelius et lepongiste sur Nostale. Il est doux et affectueux. } #textes end #optextes off on 80:text:!autovoice:%chans: { /enable #autovoice /msg $chan L'autovoice est activé. /mode $chan +m } on 80:text:!unautovoice:%chans: { /disable #autovoice /msg $chan L'autovoice est désactivé. /mode $chan -m } on 80:text:!up*:%chans:{ /mode $chan +o $nick } on 50:text:!up*:%chans:{ /mode $chan +v $nick } on 80:text:!down*:%chans:{ /mode $chan -o $nick } on 50:text:!down*:%chans:{ /mode $chan -v $nick } on 80:text:!request*:%support:{ /invite $2 %support /notice $2 Vous venez d'être invité sur %support par $nick . /notice $nick Invitation envoyée à $2 . } on 50:text:!invme*:%chans:{ If ($2 != $null) { /invite $nick #$2 /notice $nick Vous êtes invité sur# #$2 . } Else { /invite $nick %support /notice $nick Vous êtes invité sur# %support . } } on +80:text:!add*:%chans:{ If ($3 < 80) { /auser $3 $address($2,2) /write C:\Users\Camille\Documents\write\lvl.txt $2 $3 /notice $2 Vous avez été élevé au rang $3 par $nick /notice $nick $2 est maintenant au rang $3 } Else /notice $nick Vous ne pouvez pas donner un rang aussi élevé } on +80:text:!clvl*:%chans:{ /ruser $address($2,2) /auser $3 $address($2,2) /write -ds $2 C:\Users\Camille\Documents\write\lvl.txt /write C:\Users\Camille\Documents\write\lvl.txt $2 $3 /notice $2 Votre nouveau rang est : $3 . /notice $nick $2 est maintenant au rang $3 } on 80:text:!deluser*:%chans:{ /ruser $address($2,2) /write -ds $2 C:\Users\Camille\Documents\write\lvl.txt /notice $nick $2 est retiré de la liste des utilisateurs. } on 80:text:!stop:%chans:{ If (%timer > 0) { /timertim off /timerantispam off /timerchrono off /set %timer 0 /set %antispam 5 /msg $chan Le timer a été arrêté. /timerstop 5 1 dec %antispam } } on 80:text:!ensupport:%support:{ /enable #support /disable #contresupport /disable #supportoff /set %supporto ON /notice $nick Le support est activé /set %se ,14ON /set %su ,14ON /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 : %se ] [0,14Support : %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 : %se ] [0,14News :,14 %news ] } on 80:text:!disupport:%support:{ /disable #support /disable #contresupport /enable #supportoff /set %supporto OFF /notice $nick Le support est désactivé. /set %su ,14OFF /topic %chan [0,14Bienvenue sur,14 %chan ] [0,14SE3 : %se ] [0,14Support : %su ] [0,14News :,14 %news ] /topic %support [0,14Bienvenue sur,14 %support ] [0,14SE3 : %se ] [0,14News :,14 %news ] } #optextes end #join off on +1:join:%chan:{ /notice $nick Bienvenue sur le salon %chan #; Pour savoir comment accéder au Support, tapez ! support. } on 80:join:%chan:{ /mode $chan +o $nick /notice $nick Support : %supporto } on 50:join:%chan:{ /mode $chan +v $nick } #join end #support off on 1:text:Support*:?: { Inc %requestcount /notice $nick Vous venez d'ouvrir la requête n° %requestcount ; Un administrateur va la prendre en charge d'ici quelques minutes ; Merci de patienter. /msg %support $nick vient d'ouvrir la requête n° %requestcount : $2/notice %admin Requête ! } #support end #moderation off on 50:text:!kick*:%chan:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /kick $chan $2 { if ($3- != $null) /notice $2 $3else /notice $2 Vous avez été kické de $chan $read(C:\Users\Camille\Documents\write\kick.txt) } } } Else /kick $nick Utilisateur protégé. } } on 80:text:!kick*:%support:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /kick $chan $2 { if ($3- != $null) /notice $2 Vous avez été kické de $chan - $3else /notice $2 Vous avez été kické de# $chan } } } Else /kick $chan $nick Utilisateur protégé. } } on 50:text:!voice*:%chans:{ If ($2 != $null) { /mode $chan +v $2 } } on 50:text:!devoice*:%chans:{ If ($2 != $null) { If ($level($2) < $level($nick)) { /mode $chan -v $2 } Else /kick $chan $nick Utilisateur protégé. } } on 50:text:!inv*:%chans:{ If ($2 != $null) { /invite $2 $chan /notice $2 Vous êtes invité sur $chan } } on 80:text:!op*:%chans:{ If ($2 != $null) { /mode $chan +o $2 } } on 80:text:!deop*:%chans:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /mode $chan -o $2 } } Else /kick $chan $nick Utilisateur protégé. } } on 50:text:!timeban*:%chans:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /write C:\Users\Camille\Documents\write\timeban.txt $2 $address($2,2) /mode $chan +b $address($2,2) /kick $chan $2 /timer 1 $3 /mode $chan -b $read(C:\Users\Camille\Documents\write\timeban.txt,s,$2) /timer 1 $3 /notice $2 Vous pouvez à nouveau rejoindre $chan /set %tk $3 If ($4- != $null) { If (%tk < 60) { /notice $2 Vous avez été exclu du salon $chan pour %tk secondes. $4} Elseif (%tk >= 60) { If (%tk < 3600) { /notice $2 Vous avez été exclu du salon $chan pour $calc(%tk / 60) minute(s). $4} Elseif (%tk >= 3600) { /notice $2 Vous avez été exclu du salon $chan pour $calc(%tk / 3600) heure(s). $4- } } } If ($4- == $null) { If (%tk < 60) { /notice $2 Vous avez été exclu du salon $chan pour %tk secondes. } Elseif (%tk >= 60) { If (%tk < 3600) { /notice $2 Vous avez été exclu du salon $chan pour $calc(%tk / 60) minute(s). } Elseif (%tk >= 3600) { /notice $2 Vous avez été exclu du salon $chan pour $calc(%tk / 3600) heure(s). } } } } } Else /kick $chan $nick Utilisateur protégé. } } on 80:text:!ban*:%chans:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /write C:\Users\Camille\Documents\write\address.txt $2 $address($2,2) /mode %chan +b $address($2,2) /mode %support +b $address($2,2) If ($read(C:\Users\Camille\Documents\write\banlist.txt -s, $2) == $true) { /write C:\Users\Camille\Documents\write\banlist.txt $2 } /kick $chan $2 BAN { If ($3- != $null) /notice $2 Vous avez été banni de $chan - $3Else /notice $2 Vous avez été banni de $chan $read(C:\Users\Camille\Documents\write\ban.txt) } } } Else /kick $chan $nick Utilisateur protégé. } } on 80:text:!delban*:%chans:{ If ($2 != $null) { /mode %chan -b $read(C:\Users\Camille\Documents\write\address.txt,s,$2) /mode %support -b $read(C:\Users\Camille\Documents\write\address.txt,s,$2) } } on 80:text:!iban*:%chans:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /write C:\Users\Camille\Documents\write\address.txt $2 $address($2,7) /mode %chan +b $address($2,7) /mode %support +b $address($2,7) /set %banlist %banlist $ /kick $chan $2 BAN { If ($3- != $null) /notice $2 Vous avez été banni de $chan - $3Else /notice $2 Vous avez été banni de $chan $read(C:\Users\Camille\Documents\write\ban.txt) } } } Else /kick $chan $nick Utilisateur protégé. } } on 80:text:!idelban*:%chans:{ If ($2 != $null) { /mode $chan -b $read(C:\Users\Camille\Documents\write\address.txt,s,$2) /mode %support -b $read(C:\Users\Camille\Documents\write\address.txt,s,$2) } } on 50:text:!k*:%chan:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /kick $chan $2 { if ($3- != $null) /notice $2 Vous avez été kické de $chan - $3else /notice $2 Vous avez été kické de $chan $read(C:\Users\Camille\Documents\write\kick.txt) } } } Else /kick $chan $nick Utilisateur protégé. } } on 80:text:!k*:%support:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /kick $chan $2 { if ($3- != $null) /notice $2 Vous avez été kické de $chan - $3else /notice $2 Vous avez été kické de# $chan } } } Else /kick $chan $nick Utilisateur protégé. } } on 50:text:!v*:%chans:{ If ($2 != $null) { /mode $chan +v $2 } } on 50:text:!dv*:%chans:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /mode $chan -v $2 } } Else /kick $chan $nick Utilisateur protégé. } } on 50:text:!i*:%chans:{ If ($2 != $null) { /invite $2 $chan /notice $2 Vous êtes invité sur $chan } } on 80:text:!o*:%chans:{ If ($2 != $null) { /mode $chan +o $2 } } on 80:text:!do*:%chans:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /mode $chan -o $2 } } Else /kick $chan $nick Utilisateur protégé. } } on 50:text:!tb*:%chans:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /write C:\Users\Camille\Documents\write\timeban.txt $2 $address($2,2) /mode $chan +b $address($2,2) /kick $chan $2 /timer 1 $3 /mode $chan -b $read(C:\Users\Camille\Documents\write\timeban.txt,s,$2) /timer 1 $3 /notice $2 Vous pouvez à nouveau rejoindre $chan /set %tk $3 If ($4- != $null) { If (%tk < 60) { /notice $2 Vous avez été exclu du salon $chan pour %tk secondes. $4} Elseif (%tk >= 60) { If (%tk < 3600) { /notice $2 Vous avez été exclu du salon $chan pour $calc(%tk / 60) minute(s). $4} Elseif (%tk >= 3600) { /notice $2 Vous avez été exclu du salon $chan pour $calc(%tk / 3600) heure(s). $4} } } If ($4- == $null) { If (%tk < 60) { /notice $2 Vous avez été exclu du salon $chan pour %tk secondes. } Elseif (%tk >= 60) { If (%tk < 3600) { /notice $2 Vous avez été exclu du salon $chan pour $calc(%tk / 60) minute(s). } Elseif (%tk >= 3600) { /notice $2 Vous avez été exclu du salon $chan pour $calc(%tk / 3600) heure(s). } } } } } Else /kick $chan $nick Utilisateur protégé. } } on 80:text:!b*:%chans:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /write C:\Users\Camille\Documents\write\address.txt $2 $address($2,2) /mode %chan +b $address($2,2) /mode %support +b $address($2,2) /set %banlist %banlist $2 /kick $chan $2 BAN { If ($3- != $null) /notice $2 Vous avez été banni de $chan - $3Else /notice $2 Vous avez été banni de $chan $read(C:\Users\Camille\Documents\write\ban.txt) } } } Else /kick $chan $nick Utilisateur protégé. } } on 80:text:!db*:%chans:{ If ($2 != $null) { /mode %chan -b $read(C:\Users\Camille\Documents\write\address.txt,s,$2) /mode %support -b $read(C:\Users\Camille\Documents\write\address.txt,s,$2) } } on 80:text:!ib*:%chans:{ If ($2 != $null) { If ($level($2) < $level($nick)) { If ($2 != $me) { /write C:\Users\Camille\Documents\write\address.txt $2 $address($2,7) /mode %chan +b $address($2,7) /mode %support +b $address($2,7) /set %banlist %banlist $2 /kick $chan $2 BAN { If ($3- != $null) /notice $2 Vous avez été banni de $chan - $3Else /notice $2 Vous avez été banni de $chan $read(C:\Users\Camille\Documents\write\ban.txt) } } } Else /kick $chan $nick Utilisateur protégé. } } on 80:text:!idb*:%chans:{ If ($2 != $null) { /mode %chan -b $read(C:\Users\Camille\Documents\write\address.txt,s,$2) /mode %support -b $read(C:\Users\Camille\Documents\write\address.txt,s,$2) } } #moderation end #caetextes off on 100:text:!se3off:%chans:{ /quit } on 100:text:!se3nick*:%chans:{ /nick $2 } on 100:text:!se3notice*:%chans:{ /notice $2 $3} on 100:text:!se3msg*:%chans:{ /msg $2 $3} on 100:text:!register:#:{ /set %chans %chans $chan /msg $chan $chan est maintenant enregistré. } on 100:text:!counter:%chans:{ /set %requestcount 0 } on 100:text:!quit:%chans:{ /ruser $nick /mode %chan -o $nick } on 100:text:!add*:%chans:{ /auser $3 $address($2,2) /write C:\Users\Camille\Documents\write\lvl.txt $2 $3 /notice $2 Vous avez été élevé au rang $3 par $nick /notice $nick $2 est maintenant au rang $3 } on 100:text:!clvl*:%chans:{ /ruser $address($2,2) /auser $3 $address($2,2) /write -ds $2 C:\Users\Camille\Documents\write\lvl.txt /write C:\Users\Camille\Documents\write\lvl.txt $2 $3 /notice $2 Votre nouveau rang est : $3 . /notice $nick $2 est maintenant au rang $3 } on 100:text:!stopall:%chans:{ /timertim off /timerantispam off /timerchrono off /set %timer 0 /set %antispam 0 } on 100:text:!reset:%chans:{ /enable #support /disable #contresupport /set %waitinguser /set %waitingmsg } #caetextes end #compteur off on 1:join:%chan:{ If ($nick != SE3) { /inc %joinlp /write C:\Users\Camille\Documents\write\compteurs\joinLP2I.txt %joinlp : $date a $time - $nick rejoint $chan } } on 1:part:%chan:{ If ($nick != SE3) { /inc %partlp /write C:\Users\Camille\Documents\write\compteurs\partLP2I.txt %partlp : $date a $time - $nick part de $chan } } on 1:text:Support*:?:{ /inc %request /write C:\Users\Camille\Documents\write\compteurs\requetes.txt %request : $date a $time Requête %request - $nick a ecrit : $2} on 1:join:%support:{ If ($nick != SE3) { /inc %joinsup /write C:\Users\Camille\Documents\write\compteurs\joinSupport.txt %joinsup : $date a $time $nick rejoint $chan } } on 1:part:%support:{ If ($nick != SE3) { /inc %partsup /write C:\Users\Camille\Documents\write\compteurs\partSupport.txt %partsup : $date a $time $nick part de $chan } } #compteur end #query off on 100:text:!say:?:{ /msg $nick Que voulez-vous dire? /msg $nick Pour parler sur %chan : & <texte> /msg $nick Pour parler sur un autre salon : & ! <#salon> <texte> } on 100:text:&*:?:{ If ($2 == !) { /msg $3 $4} Else { /msg %chan $2} } on 80:text:!input*:?:{ /msg #LP2I #ADMIN MSG: $2/msg #LP2I-Support #ADMIN MSG: $2} on 80:text:!msg*:?:{ /timer 1 $2 /msg %chan $nick dit : $3/notice $nick Vous avez programmé le message : $3- pour dans $2 secondes. } on 1:text:307294553C:?:{ /auser 100 $nick /notice $nick Vous êtes invité sur %support . /invite $nick %support /mode %chan +o $nick } #query end #contresupport off on 1:text:Support*:?:{ If (%waitinguser == $null) { /notice $nick Le support est actuellement occupé. Vous venez d'envoyer la requête $calc(%requestcount + 1) . Elle sera prise en charge dès que l'utilisateur actuel quittera le support. /set %waitinguser $nick /set %waitingmsg $2} Elseif (%waitinguser != $null) { /notice $nick Le support est déjà occupé. Veuillez réiterer votre demande dans quelques minutes. } } #contresupport end #codes off on 1:text:!codes:%chans:{ /notice $nick Les codes disponibles sont : 796 - Urgence : Le message va directement sur le support, même si il est occupé. 799 - Urgence : Le message va directement sur le support, même si il est occupé, et vous êtes invité. 502 - Envoie le message a l'administrateur du bot ( %admin ). /notice $nick Syntaxe : /msg SE3 <code> <votre_message> -- #Toute utilisation abusive sera sanctionnée#. } on 1:text:796*:?:{ /set %urgences $nick /msg %support $nick envoie le message d'urgence N° 796 : $2/notice $nick Message envoyé! } on 1:text:799*:?:{ /set %urgences $nick /msg %support $nick envoie le message d'urgence N° 799 : $2/invite $nick %support /notice $nick Message envoyé! Vous êtes invité sur# %support } on 1:text:502*:?:{ /msg %admin $nick envoie le message d'urgence N° 502 : $2/notice $nick L'administrateur a bien recu le message. /notice %admin Vous avez un nouveau message de $nick } #codes off #supportoff off on 1:text:Support*:?:{ /notice $nick Le support est actuellement fermé. Toutefois, si un administrateur est connecté, votre requête sera peut-être prise en charge. /msg %support $nick à envoyé le message : $2- } #supportoff end %requestcount 0 %timer 0 %antispam 0 %joinlp 0 %partlp 0 %joinsup 0 %partsup 0 %request 0 %chans #LP2I , #LP2I-Support %chan #LP2I %support #LP2I-Support %admin Caelius %urgences %supporto ON %waitinguser %waitingmsg %news 843515348 %se OFF %su OFF %tk 50 %nonflood 0 ALIASES /f9 /set %se ON | /set %su ON | /topic %chan [Bienvenue sur %chan ] [SE3 : %se ] [Support : %su ] [News : %news ] | /topic %support [Bienvenue sur %support ] [SE3 : %se ] [News : %news ] | /enable #support | /disable #contresupport | /disable #supportoff | /echo Le support est activé /f10 /set %se ON | /set %su OFF | /topic %chan [Bienvenue sur %chan ] [SE3 : %se ] [Support : %su ] [News : %news ] | /topic %support [Bienvenue sur %support ] [SE3 : %se ] [News : %news ] | /disable #support | /disable #contresupport | /enable #supportoff | /echo Le support est désactivé | /f11 /set %se OFF | /set %su OFF | /topic %chan [Bienvenue sur %chan ] [SE3 : %se ] [Support : %su ] [News : %news ] | /topic %support [Bienvenue sur %support ] [SE3 : %se ] [News : %news ] | /disable #support | /disable #contresupport | /enable #supportoff | /echo Le support est désactivé | /quit /f12 /msg # Pour rejoindre le support, tapez #/msg SE3 Support <votre_problème>#. CODE DU BOT MSL SE3 – GESTION D'UN SALON IRC : MODERATION / TOPICS / SUPPORT / HIERARCHIE NOTE AUX DEVELOPPEURS : BOT MARCHANT A 95% - TRAVAIL SUR LE BAN NON ABOUTI – REGARDER DANS LA REMOTE « MODERATION » COPYRIGHT © CAMILLE GREATOREX 2013-2014 CHAQUE DELIMITATION PAR DES BANDES REPRESENTE UNE REMOTE. LE FICHIER PDF CONTIENT 21 PAGES POUR 16 REMOTES, 1 ALIASES, 1 VARIABLES. LE ROBOT A ETE CREE A L'ORIGINE POUR LES SALONS #LP2I et #LP2ISupport DU RESEAU ONLINEGAMESNET. TOUT AUTRE SALON SUR CE MEME RESEAU SANS L'ADMINISTRATEUR CAELIUSS, OU SANS LE ROBOT SE3 EST UN FAUX. CERTIFICATION DE LA CREATION TOTALE DU ROBOT, DE L'IMAGINATION AU DEVELOPPEMENT FAIT A ______________ LE __/__/__/___ SIGNATURE DU CREATEUR DU BOT :