31/12/2010, 12:21 (Modification du message : 31/12/2010, 12:21 par alanfollow.)
Bonjour,
J'ai un petit sur ces quelques lignes, qui, comme vous avez pu le comprendre serait que lorsque une personne fait un FAILED OPER, l'eggdrop lui envoi un message, et ainsi qu'un message sur le salon d'oper.
J'essaye ceci, mais rien ne se passe, ni même une erreur en PL.
Code PHP :
bind raw - NOTICE opers:notice proc opers:notice {from key arg} { global botnick notc mod set text [split $arg] if {[join [lrange $text 1 3]] == "Failed OPER"} { set opers_nick [lindex $text 6] set opers_user [string range [lindex [split [lindex $text 6] "@"] 0] 1 end] set opers_host [string range [lindex [split [lindex $text 6] "@"] 1] 0 end-1] set oper_userhost "$opers_nick!$opers_user@$opers_host" puthelp "PRIVMSG #opers :Je crois bien que $opers_nick a du mal à s'ircop... ( $opers_userhost )" puthelp "PRIVMSG $opers_nick :Tout va bien ?" } }
Sachant que la "SNOTICE" est :
Code :
-NOTICE- Failed OPER attempt by pseudo (~user@host) [unknown oper]
31/12/2010, 13:46 (Modification du message : 31/12/2010, 13:54 par alanfollow.)
Comme ceci ?
Code PHP :
bind raw - "001" opers:notice proc opers:notice {from key arg} { global botnick notc mod set text [split $arg] if {[join [lrange $text 1 3]] == "Failed OPER"} { set opers_nick [lindex $text 6] set opers_user [string range [lindex [split [lindex $text 6] "@"] 0] 1 end] set opers_host [string range [lindex [split [lindex $text 6] "@"] 1] 0 end-1] set oper_userhost "$opers_nick!$opers_user@$opers_host" puthelp "PRIVMSG #opers :Je crois bien que $opers_nick a du mal à s'ircop... ( $opers_userhost )" puthelp "PRIVMSG $opers_nick :Tout va bien ?" } }
join [lrange $text 1 3] sur ta notice donne "OPER attempt by" et non pas "Failed OPER".
Toute l'actualité de mes scripts ici (dernière mise à jour le 14/07/2018)
Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
MenzAgitat a écrit :join [lrange $text 1 3] sur ta notice donne "OPER attempt by" et non pas "Failed OPER".
Je dois mettre :
Code :
[lrange $text 1 2]
Ceci alors ?
@CrazyCat: L'eggdrop est ircop, c'est bon normalement, non ? (pour recevoir les snotices).
Code PHP :
bind raw - NOTICE opers:notice proc opers:notice {from key arg} { global botnick notc mod set text [split $arg] if {[join [lrange $text 1 2]] == "Failed OPER"} { [lrange $text 1 3] set opers_nick [lindex $text 6] set opers_user [string range [lindex [split [lindex $text 6] "@"] 0] 1 end] set opers_host [string range [lindex [split [lindex $text 6] "@"] 1] 0 end-1] set oper_userhost "$opers_nick!$opers_user@$opers_host" puthelp "PRIVMSG #opers :Je crois bien que $opers_nick a du mal à s'ircop... ( $opers_userhost )" puthelp "PRIVMSG $opers_nick :Tout va bien ?" } }
Toute l'actualité de mes scripts ici (dernière mise à jour le 14/07/2018)
Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
bind raw - NOTICE opers:notice proc opers:notice {from key arg} { global botnick notc mod set oper_text [split $arg] if {[join [lrange $oper_text 0 1]] == "Failed OPER"} { set opers_nick [lindex $oper_text 6] set opers_user [string range [lindex [split [lindex $oper_text 6] "@"] 0] 1 end] set opers_host [string range [lindex [split [lindex $oper_text 6] "@"] 1] 0 end-1] set oper_userhost "$opers_nick!$opers_user@$opers_host" puthelp "PRIVMSG #opers :Je crois bien que $opers_nick a du mal à s'ircop... ( $opers_userhost )" puthelp "PRIVMSG $opers_nick :Tout va bien ?" putlog "[lrange $oper_text 1 2]" } }