namespace eval anekdot {} setudef flag nopubanekdot set anekdot(channel) #erotic set anekdot(page) http://pda.anekdot.ru/ set anekdot(version) "1.0" set anekdot(author) "tvrsh @ IrcNet.ru" package require http bind time - "?5 * * * *" ::anekdot::anekdot bind time - "?0 * * * *" ::anekdot::anekdot proc ::anekdot::anekdot {min hour day month year} { global anekdot lastbind set agent "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1" set anekdot_tok [::http::config -useragent $agent] set anekdot_tok [::http::geturl $anekdot(page) -timeout 30000] set html [::http::data $anekdot_tok] ::http::cleanup $anekdot_tok set asplitr [lindex {¤ • # * + °} [rand 6]] set rgx "Случайный\\\ анекдот(.*?)еще\\\ анекдоты" regsub -all -- {\n} $html "" html foreach line [split $html \n] { if {[regexp -nocase -- $rgx $line garb data]} { regsub -all -- {} $data "" data regsub -all -- {} $data "" data regsub -all -- {} $data "" data regsub -all -- {} $data "" data regsub -all -- {

} $data "" data regsub -all -- {} $data "" data regsub -all -- {
} $data "|" data foreach line [split $data "|"] { putserv "PRIVMSG $anekdot(channel) :$line" } putserv "PRIVMSG $anekdot(channel) :$asplitr$asplitr$asplitr" return } } } putlog "anekdot.ru.tcl v$anekdot(version) by $anekdot(author) loaded."