IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  kral sohbet




Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 19 Temmuz 2007, 06:43   #11
Çevrimdışı
al sana haber tclsi




Kod:   Kodu kopyalamak için üzerine çift tıklayın!
###haber namespace eval ::rss-synd { variable rss set rss(bbcworld) { "url" "
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
set rss(slashdot) { "url" "
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
1 } set rss(theregister) { "url" "http://haber.mynet.com/rss/rssconverter.asp?type=flash" "channels" "#haber" "output" "\\[2,8Son Dakika\\] @@item!title@@ @@item!description@@" "database" "./scripts/haber/sondakika.db" "trigger" "!sondakika" "evaluate-tcl" 1 } set rss(guncel) { "url" "http://haber.mynet.com/rss/RSSConverter.asp?type=actuel" "channels" "#haber" "output" "\\[2,8Guncel\\] @@item!title@@ @@item!description@@" "database" "./scripts/haber/guncel.db" "trigger" "!guncel" "evaluate-tcl" 1 } set rss(ekonomi) { "url" "http://haber.mynet.com/rss/RSSConverter.asp?type=economy" "channels" "#haber" "output" "\\[2,8Ekonomi\\] @@item!title@@ @@item!description@@" "database" "./scripts/haber/ekonomi.db" "trigger" "!ekonomi" "evaluate-tcl" 1 } set rss(saglik) { "url" "http://haber.mynet.com/rss/RSSConverter.asp?type=health" "channels" "#haber" "output" "\\[2,8Saglik\\] @@item!title@@ @@item!description@@" "database" "./scripts/haber/saglik.db" "trigger" "!saglik" "evaluate-tcl" 1 } set rss(teknoloji) { "url" "http://haber.mynet.com/rss/RSSConverter.asp?type=technology" "channels" "#haber" "output" "\\[2,8Teknoloji\\] @@item!title@@ @@item!description@@" "database" "./scripts/haber/teknoloji.db" "trigger" "!teknoloji" "evaluate-tcl" 1 } set rss(bilim) { "url" "http://haber.mynet.com/rss/RSSConverter.asp?type=science" "channels" "#haber" "output" "\\[2,8Bilim\\] @@item!title@@ @@item!description@@ " "database" "./scripts/haber/bilim.db" "trigger" "!bilim" "evaluate-tcl" 1 } set rss(genel) { "url" "
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Haber\\] @@item!title@@ @@item!description@@ 4Haber Devami 7>>> 14 @@item!link@@  - \[::rss-synd::urldecode \[lindex \[regexp -inline -- {url=(.[^&]*)} {@@item!link@@}\] 1\]\]" "database" "./scripts/haber/genel.db" "trigger" "!genel" "evaluate-tcl" 1 } set default { "announce-output" 50 "trigger-output" 50 "remove-empty" 1 "trigger-type" 0:1 "announce-type" 1 "max-depth" 5 "evaluate-tcl" 0 "update-interval" 5 "output-order" 1 "timeout" 60000 "channels" "#haber" "trigger" "!sondakika @@feedid@@" "output" "\[\002@@!rss!title@@@@title@@\002\] @@item!title@@@@entry!title@@ - @@item!link@@@@entry!link!=href@@" "user-agent" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6" } } proc ::rss-synd::init {args} { variable rss variable default variable version variable packages set version(number) "0.3b2" set version(date) "2006-09-12" package require http set packages(base64) [catch {package require base64}]; # http auth set packages(tls) [catch {package require tls}]; # https set packages(trf) [catch {package require Trf}]; # gzip compression foreach feed [array names rss] { array set tmp $default array set tmp $rss($feed) set required[list "announce-output" "trigger-output" "max-depth" "update-interval" "timeout" "channels" "output" "user-agent" "url" "database" "trigger-type" "announce-type"] foreach {key value} [array get tmp] { if {[set ptr [lsearch -exact $required $key]] >= 0} { set required [lreplace $required $ptr $ptr] } } if {[llength $required] == 0} { regsub -nocase -all -- {@@feedid@@} $tmp(trigger) $feed tmp(trigger) set ulist [regexp -nocase -inline -- {(http(?:s?))://(?:(.[^:]+:.[^@]+)?)(?:@?)(.*)} $tmp(url)] if {[llength $ulist] == 0} { putlog "\002RSS Error\002: Unable to parse URL, Invalid format for feed \"$feed\"." unset rss($feed) continue } set tmp(url) "[lindex $ulist 1]://[lindex $ulist 3]" if {[string compare [lindex $ulist 1] "https"] == 0} { if {$packages(tls) != 0} { putlog "\002RSS Error\002: Unable to find tls package required for https, unloaded feed \"$feed\"." unset rss($feed) continue } ::http::register https 443 ::tls::socket } if {(![info exists tmp(url-auth)]) || ([string compare $tmp(url-auth) ""] == 0)} { set tmp(url-auth) "" if {[string compare [lindex $ulist 2] ""] != 0} { if {$packages(base64) != 0} { putlog "\002RSS Error\002: Unable to find base64 package required for http authentication, unloaded feed \"$feed\"." unset rss($feed) continue } set tmp(url-auth) [::base64::encode [lindex $ulist 2]] } } if {[regexp {^[0123]{1}:[0123]{1}$} $tmp(trigger-type)] != 1} { putlog "\002RSS Error\002: Invalid 'trigger-type' syntax for feed \"$feed\"." unset rss($feed) continue } set tmp(trigger-type) [split $tmp(trigger-type) ":"] if {([info exists tmp(charset)]) && ([lsearch -exact [encoding names] [string tolower $tmp(charset)]] < 0)} { putlog "\002RSS Error\002: Unable to load feed \"$feed\", unknown encoding \"$tmp(encoding)\"." unset rss($feed) continue } set tmp(updated) 0 if {([file exists $tmp(database)]) && ([set mtime [file mtime $tmp(database)]] < [unixtime])} { set tmp(updated) [file mtime $tmp(database)] } set rss($feed) [array get tmp] } else { putlog "\002RSS Error\002: Unable to load feed \"$feed\", missing one or more required settings. \"[join $required ", "]\"" unset rss($feed) } unset tmp } bind evnt -|- prerehash [namespace current]::deinit bind time -|- {* * * * *} [namespace current]::feed_get bind pubm -|- {* *} [namespace current]::pub_trigger bind msgm -|- {*} [namespace current]::msg_trigger } proc ::rss-synd::deinit {args} { catch {unbind evnt -|- prerehash [namespace current]::deinit} catch {unbind time -|- {* * * * *} [namespace current]::feed_get} catch {unbind pubm -|- {* *} [namespace current]::pub_trigger} catch {unbind msgm -|- {*} [namespace current]::msg_trigger} foreach child [namespace children] { catch {[set child]::deinit} } namespace delete [namespace current] } proc ::rss-synd::msg_trigger {nick user handle text} { [namespace current]::handle_triggers $text $nick } proc ::rss-synd::pub_trigger {nick user handle chan text} { [namespace current]::handle_triggers $text $nick $chan } proc ::rss-synd::handle_triggers {text nick {chan ""}} { variable rss foreach name [array names rss] { array set feed $rss($name) if {[string compare -nocase $text $feed(trigger)] == 0} { if {([[namespace current]::check_channel $feed(channels) $chan]) || ([string length $chan] == 0)} { if {[string compare $chan ""] == 0} { set feed(channels) $nick set feed(type) [lindex $feed(trigger-type) 1] } else { set feed(channels) $chan set feed(type) [lindex $feed(trigger-type) 0] } if {[catch {set data [[namespace current]::feed_read [array get feed]]} error] == 0} { if {[set feedlist [[namespace current]::feed_info [array get feed] $data]] == ""} { putlog "\002RSS Error\002: Invalid feed format ($state(url))!" return } array set feed $feedlist if {$feed(trigger-output) >= 0} { set feed(announce-output) $feed(trigger-output) [namespace current]::feed_output [array get feed] $data } } else { putlog "\002RSS Warning\002: $error." } } } } } proc ::rss-synd::feed_get {args} { variable rss set i 0 foreach name [array names rss] { if {$i == 3} { break } array set feed $rss($name) if {$feed(updated) <= [expr { [unixtime] - ($feed(update-interval) * 60) }]} { ::http::config -useragent $feed(user-agent) set feed(type) $feed(announce-type) set feed(headers) [list] if {[string compare $feed(url-auth) ""] != 0} { lappend feed(headers) "Authorization" "Basic $feed(url-auth)" } if {([info exists feed(enable-gzip)]) && ($feed(enable-gzip) == 1)} { lappend feed(headers) "Accept-Encoding" "gzip" } catch {::http::geturl "$feed(url)" -command "[namespace current]::feed_callback {[array get feed] depth 0}" -timeout $feed(timeout) -headers $feed(headers)} debug set feed(updated) [unixtime] set rss($name) [array get feed] incr i } unset feed } } proc ::rss-synd::feed_callback {feedlist args} { set token [lindex $args end] array set feed $feedlist upvar 0 $token state if {[string compare -nocase $state(status) "ok"] != 0} { putlog "\002RSS HTTP Error\002: $state(url) (State: $state(status))" return 1 } array set meta $state(meta) if {([::http::ncode $token] == 302) || ([::http::ncode $token] == 301)} { set feed(depth) [expr {$feed(depth) + 1 }] if {$feed(depth) < $feed(max-depth)} { catch {::http::geturl "$meta(Location)" -command "[namespace current]::feed_callback {$feedlist}" -timeout $feed(timeout) -headers $feed(headers)} } else { putlog "\002RSS HTTP Error\002: $state(url) (State: timeout, max refer limit reached)" } return 1 } elseif {[::http::ncode $token] != 200} { putlog "\002RSS HTTP Error\002: $state(url) ($state(http))" return 1 } set data [::http::data $token] if {([info exists meta(Content-Encoding)]) && \ ([string compare $meta(Content-Encoding) "gzip"] == 0)} { if {[catch {[namespace current]::feed_gzip $data} data] != 0} { putlog "\002RSS Error\002: Unable to decompress \"$state(url)\": $data" return 1 } } if {[catch {[namespace current]::xml_list_create $data} data] != 0} { putlog "\002RSS Error\002: Unable to parse feed properly, parser returned error. \"$state(url)\"" return 1 } if {[string length $data] == 0} { putlog "\002RSS Error\002: Unable to parse feed properly, no data returned. \"$state(url)\"" return 1 } set odata "" if {[catch {set odata [[namespace current]::feed_read $feedlist]} error] != 0} { putlog "\002RSS Warning\002: $error." } if {[set feedlist [[namespace current]::feed_info $feedlist $data]] == ""} { putlog "\002RSS Error\002: Invalid feed format ($state(url))!" return 1 } array set feed $feedlist ::http::cleanup $token if {[catch {[namespace current]::feed_write $feedlist $data} error] != 0} { putlog "\002RSS Database Error\002: $error." return 1 } if {$feed(announce-output) > 0} { [namespace current]::feed_output $feedlist $data $odata } } proc ::rss-synd::feed_info {feedlist data} { array set feed $feedlist set length [[namespace current]::xml_get_info $data[list -1 "*"]] for {set i 0} {$i < $length} {incr i} { set type [[namespace current]::xml_get_info $data[list $i "*"] "name"] switch [string tolower $type] { rss { set feed(tag-list)[list 0 "channel"] set feed(tag-name) "item" break } rdf:rdf { set feed(tag-list) [list] set feed(tag-name) "item" break } feed { set feed(tag-list) [list] set feed(tag-name) "entry" break } } } if {![info exists feed(tag-list)]} { return } set feed(tag-feed)[list 0 $type] return [array get feed] } proc ::rss-synd::feed_gzip {cdata} { variable packages if {(![info exists packages(trf)]) || \ ($packages(trf) != 0)} { error "Trf package not found." } set cdata [string range $cdata 10 [expr { [string length $cdata] - 9 } ]] if {[catch {zip -mode decompress -nowrap 1 $cdata} data] != 0} { error $data } return $data } proc ::rss-synd::feed_read {feedlist} { array set feed $feedlist if {[catch {open $feed(database) "r"} fp] != 0} { error $fp } if {[info exists feed(charset)]} { fconfigure $fp -encoding [string tolower $feed(charset)] } set data "" while {![eof $fp]} { gets $fp line append data $line } close $fp return $data } proc ::rss-synd::feed_write {feedlist data} { array set feed $feedlist if {[catch {open $feed(database) "w+"} fp] != 0} { error $fp } if {[info exists feed(charset)]} { fconfigure $fp -encoding [string tolower $feed(charset)] } set data [string map { "\n" "" "\r" "" } $data] puts -nonewline $fp $data close $fp } proc ::rss-synd::xml_list_create {xml_data} { set xml_list [list] set ptr 0 while {[string compare [set tag_start [[namespace current]::xml_get_position $xml_data $ptr]] ""]} { array set tag [list] set tag_start_first [lindex $tag_start 0] set tag_start_last [lindex $tag_start 1] set tag_string [string range $xml_data $tag_start_first $tag_start_last] set last_ptr $ptr set ptr [expr { $tag_start_last + 2 }] if {[regexp -nocase -- {^!(\[CDATA|--)} $tag_string]} { regexp -nocase -- {^!\[CDATA\[(.*?)\]\]$} $tag_string -> tag_data regexp -nocase -- {^!--(.*?)--$} $tag_string -> tag_data if {[info exists tag_data]} { set tag(data) [[namespace current]::xml_escape $tag_data] } } else { if {[string match {[/]*} $tag_string]} { putlog "\002Malformed Feed\002: Tag not open: \"<$tag_string>\" ($tag_start_first => $tag_start_last)" continue } if {![regexp -- {(.[^ \/\n\r]*)(?: |\n|\r\n|\r|)(.*?)$} $tag_string -> tag_name tag_args]} { putlog "parse error!!!?!?!?!" continue } set tag(name) [[namespace current]::xml_escape $tag_name] set tag(attrib) [list] if {[string length $tag_args] > 0} { set values [regexp -inline -all -- {(?:\s*|)(.[^=]*)="(.[^"]*)"} $tag_args] foreach {r_match r_tag r_value} $values { lappend tag(attrib) [[namespace current]::xml_escape $r_tag] [[namespace current]::xml_escape $r_value] } } if {(![regexp {(\?|!|/)(\s*)$} $tag_args]) || \ (![string match "\?*" $tag_string])} { regexp -indices -start $ptr -- "</$tag_name>" $xml_data tag_end set tag_end_first [lindex $tag_end 0] set tag_end_last [lindex $tag_end 1] set tmp_num [regexp -all -- "<$tag_name\(|.\[^>\]+\)>" [string range $xml_data $ptr $tag_end_last]] while {$tmp_num > 0} { regexp -indices -start $tag_end_last -- "</$tag_name>" $xml_data tag_end set tag_end_first [lindex $tag_end 0] set tag_end_last [lindex $tag_end 1] incr tmp_num -1 } set ptr [expr { $tag_end_last + 1 }] catch {unset tmp_num xml_sub_data} set xml_sub_data [string range $xml_data [expr { $tag_start_last + 2 }] [expr { $tag_end_first - 1 }]] set result [[namespace current]::xml_list_create $xml_sub_data] if {[llength $result] > 0} { set tag(children) $result } else { set tag(data) [[namespace current]::xml_escape $xml_sub_data] } } } if {$last_ptr != [expr { $tag_start_first - 1 }]} { lappend xml_list[list "data" [[namespace current]::xml_escape [string range $xml_data $last_ptr [expr { $tag_start_first - 2 }]]]] } lappend xml_list [array get tag] array unset tag "*" } if {$ptr < [string length $xml_data]} { lappend xml_list[list "data" [[namespace current]::xml_escape [string range $xml_data $ptr end]]] } return $xml_list } proc ::rss-synd::xml_escape {string} { regsub -all -- {([\{\}])} $string {\\\1} string return $string } proc ::rss-synd::xml_get_position {xml_data ptr} { set tag_start[list -1 -1] regexp -indices -start $ptr {<(.+?)>} $xml_data -> tmp(tag) regexp -indices -start $ptr {<(!--.*?--)>} $xml_data -> tmp(comment) regexp -indices -start $ptr {<(!\[CDATA\[.+?\]\])>} $xml_data -> tmp(cdata) foreach name [lsort [array names tmp]] { set tmp_s [split $tmp($name)] if {( ([lindex $tmp_s 0] < [lindex $tag_start 0]) && \ ([lindex $tmp_s 0] > -1) ) || \ ([lindex $tag_start 0] == -1)} { set tag_start $tmp($name) } } if {([lindex $tag_start 0] == -1) || \ ([lindex $tag_start 1] == -1)} { set tag_start "" } return $tag_start } proc ::rss-synd::xml_list_flatten {xml_list {level 0}} { set xml_string "" foreach e_list $xml_list { if {[catch {array set e_array $e_list}] != 0} { return $xml_list } if {[info exists e_array(children)]} { append xml_string [[namespace current]::xml_list_flatten $e_array(children) [expr { $level + 1 }]] } elseif {[info exists e_array(data)]} { append xml_string $e_array(data) } array unset e_array "*" } return $xml_string } proc ::rss-synd::xml_get_info {xml_list path {element "data"}} { set i 0 foreach {t_data} $xml_list { array set t_array $t_data if {![info exists t_array(name)]} { set t_array(name) "" } if {[string match -nocase [lindex $path 1] $t_array(name)]} { if {$i == [lindex $path 0]} { set result "" if {([llength $path] == 2) && \ ([info exists t_array($element)])} { set result $t_array($element) } elseif {[info exists t_array(children)]} { set result [[namespace current]::xml_get_info $t_array(children) [lreplace $path 0 1] $element] } return $result } incr i } array unset t_array } if {[lindex $path 0] == -1} { return $i } } proc ::rss-synd::xml_join_tags {args} { set list [list] foreach tag $args { foreach item $tag { if {[string length $item] > 0} { lappend list $item } } } return $list } proc ::rss-synd::feed_output {feedlist data {odata ""}} { array set feed $feedlist set msgs [list] set path [[namespace current]::xml_join_tags $feed(tag-feed) $feed(tag-list) -1 $feed(tag-name)] set count [[namespace current]::xml_get_info $data $path] for {set i 0} {($i < $count) && ($i < $feed(announce-output))} {incr i} { set tmpp [[namespace current]::xml_join_tags $feed(tag-feed) $feed(tag-list) $i $feed(tag-name)] set tmpd [[namespace current]::xml_get_info $data $tmpp "children"] if {[[namespace current]::feed_compare $feedlist $odata $tmpd]} { break } set tmp_msg [[namespace current]::cookie_parse $feedlist $data $i] if {(![info exists feed(output-order)]) || \ ($feed(output-order) == 0)} { set msgs [linsert $msgs 0 $tmp_msg] } else { lappend msgs $tmp_msg } } foreach msg $msgs { foreach chan $feed(channels) { if {([catch {botonchan $chan}] == 0) || ([[namespace current]::is_chan $chan] == 0)} { foreach line [split $msg "\n"] { if {($feed(type) == 1) || ($feed(type) == 3)} { putserv "PRIVMSG $chan :$line" } else { putserv "PRIVMSG $chan :$line" } } } } } } proc ::rss-synd::feed_compare {feedlist odata data} { if {[string compare $odata ""] == 0} { return 0 } array set feed $feedlist array set ofeed [[namespace current]::feed_info [list] $odata] if {[array size ofeed] == 0} { putlog "\002RSS Error\002: Invalid feed format ($feed(database))!" return 0 } if {[string compare -nocase [lindex $feed(tag-feed) 1] "feed"] == 0} { set cmp_items[list {0 "id"} "children" "" 2 {0 "link"} "attrib" "href" 1 {0 "title"} "children" "" 1] } else { set cmp_items[list {0 "guid"} "children" "" 2 {0 "link"} "children" "" 1 {0 "title"} "children" "" 1] } set path [[namespace current]::xml_join_tags $ofeed(tag-feed) $ofeed(tag-list) -1 $ofeed(tag-name)] set count [[namespace current]::xml_get_info $odata $path] for {set i 0} {$i < $count} {incr i} { set tmpp [[namespace current]::xml_join_tags $ofeed(tag-feed) $ofeed(tag-list) $i $ofeed(tag-name)] set tmpd [[namespace current]::xml_get_info $odata $tmpp "children"] set e 0; set m 0; foreach {cmp_path cmp_element cmp_attrib cmp_weight} $cmp_items { set oresult [[namespace current]::xml_get_info $tmpd $cmp_path $cmp_element] if {[string compare -nocase $cmp_element "attrib"] == 0} { array set tmp $oresult catch {set oresult $tmp($cmp_attrib)} unset tmp } if {[string compare $oresult ""] == 0} { continue } incr e set result [[namespace current]::xml_get_info $data $cmp_path $cmp_element] if {[string compare -nocase $cmp_element "attrib"] == 0} { array set tmp $result catch {set result $tmp($cmp_attrib)} unset tmp } if {[string compare -nocase $oresult $result] == 0} { set m [expr { $m + $cmp_weight} ] } } if {[expr { round(double($m) / double($e) * 100) }] >= 66} { return 1 } } return 0 } proc ::rss-synd::cookie_parse {feedlist data current} { array set feed $feedlist set output $feed(output) set eval 0 if {([info exists feed(evaluate-tcl)]) && ($feed(evaluate-tcl) == 1)} { set eval 1 } set matches [regexp -inline -nocase -all -- {@@(.*?)@@} $output] foreach {match tmpc} $matches { set tmpc [split $tmpc "!"] set index 0 set cookie [list] foreach piece $tmpc { set tmpp [regexp -nocase -inline -all -- {^(.*?)\((.*?)\)|(.*?)$} $piece] if {[lindex $tmpp 3] == ""} { lappend cookie [lindex $tmpp 2] [lindex $tmpp 1] } else { lappend cookie 0 [lindex $tmpp 3] } } if {[string compare -nocase $feed(tag-name) [lindex $cookie 1]] == 0} { set cookie [[namespace current]::xml_join_tags $feed(tag-list) [lreplace $cookie $index $index $current]] } set cookie [[namespace current]::xml_join_tags $feed(tag-feed) $cookie] if {[set tmp [[namespace current]::charset_encode $feedlist [[namespace current]::cookie_replace $cookie $data]]] != ""} { set tmp [[namespace current]::xml_list_flatten $tmp] regsub -nocase -- "$match" $output "[string map { "&" "\\\x26" } [[namespace current]::html_decode $eval $tmp]]" output } } if {(![info exists feed(remove-empty)]) || ($feed(remove-empty) == 1)} { regsub -nocase -all -- "@@.*?@@" $output "" output } if {$eval == 1} { if {[catch {set output [subst $output]} error] != 0} { putlog "\002RSS Eval Error\002: $error" } } return $output } proc ::rss-synd::cookie_replace {cookie data} { set element "children" set tags [list] foreach {num section} $cookie { if {[string compare "=" [string range $section 0 0]] == 0} { set attrib [string range $section 1 end] set element "attrib" break } else { lappend tags $num $section } } set return [[namespace current]::xml_get_info $data $tags $element] if {[string compare -nocase "attrib" $element] == 0} { array set tmp $return if {[catch {set return $tmp($attrib)}] != 0} { return } } return $return } proc ::rss-synd::html_decode {eval data {loop 0}} { array set chars { nbsp \x20 amp \x26 quot \x22 lt \x3C gt \x3E iexcl \xA1 cent \xA2 pound \xA3 curren \xA4 yen \xA5 brvbar \xA6 brkbar \xA6 sect \xA7 uml \xA8 die \xA8 copy \xA9 ordf \xAA laquo \xAB not \xAC shy \xAD reg \xAE hibar \xAF macr \xAF deg \xB0 plusmn \xB1 sup2 \xB2 sup3 \xB3 acute \xB4 micro \xB5 para \xB6 middot \xB7 cedil \xB8 sup1 \xB9 ordm \xBA raquo \xBB frac14 \xBC frac12 \xBD frac34 \xBE iquest \xBF Agrave \xC0 Aacute \xC1 Acirc \xC2 Atilde \xC3 Auml \xC4 Aring \xC5 AElig \xC6 Ccedil \xC7 Egrave \xC8 Eacute \xC9 Ecirc \xCA Euml \xCB Igrave \xCC Iacute \xCD Icirc \xCE Iuml \xCF ETH \xD0 Dstrok \xD0 Ntilde \xD1 Ograve \xD2 Oacute \xD3 Ocirc \xD4 Otilde \xD5 Ouml \xD6 times \xD7 Oslash \xD8 Ugrave \xD9 Uacute \xDA Ucirc \xDB Uuml \xDC Yacute \xDD THORN \xDE szlig \xDF agrave \xE0 aacute \xE1 acirc \xE2 atilde \xE3 auml \xE4 aring \xE5 aelig \xE6 ccedil \xE7 egrave \xE8 eacute \xE9 ecirc \xEA euml \xEB igrave \xEC iacute \xED icirc \xEE iuml \xEF eth \xF0 ntilde \xF1 ograve \xF2 oacute \xF3 ocirc \xF4 otilde \xF5 ouml \xF6 divide \xF7 oslash \xF8 ugrave \xF9 uacute \xFA ucirc \xFB uuml \xFC yacute \xFD thorn \xFE yuml \xFF ensp \x20 emsp \x20 thinsp \x20 zwnj \x20 zwj \x20 lrm \x20 rlm \x20 euro \x80 sbquo \x82 bdquo \x84 hellip \x85 dagger \x86 Dagger \x87 circ \x88 permil \x89 Scaron \x8A lsaquo \x8B OElig \x8C oelig \x8D lsquo \x91 rsquo \x92 ldquo \x93 rdquo \x94 ndash \x96 mdash \x97 tilde \x98 scaron \x9A rsaquo \x9B Yuml \x9F apos \x27 } regsub -all -- {<(.[^>]*)>} $data " " data if {$eval != 1} { regsub -all -- {([\"\$\[\]\{\}\(\)\\])} $data {\\\1} data } else { regsub -all -- {([\"\$\[\]\{\}\(\)\\])} $data {\\\\\\\1} data } regsub -all -- {&#([0-9][0-9]?[0-9]?);?} $data {[format %c [scan \1 %d]]} data regsub -all -- {&([0-9a-zA-Z#]*);} $data {[if {[catch {set tmp $chars(\1)} char] == 0} { set tmp }]} data regsub -all -nocase -- {&([0-9a-zA-Z#]*);} $data {[if {[catch {set tmp [string tolower $chars(\1)]} char] == 0} { set tmp }]} data regsub -nocase -all -- "\\s{2,}" $data " " data set data [subst $data] if {[incr loop] == 1} { set data [[namespace current]::html_decode 0 $data $loop] } return $data } proc ::rss-synd::charset_encode {feedlist string} { array set feed $feedlist if {[info exists feed(charset)]} { set string [encoding convertto [string tolower $feed(charset)] $string] } return $string } proc ::rss-synd::check_channel {chanlist chan} { foreach match [split $chanlist] { if {[string compare -nocase $match $chan] == 0} { return 1 } } return 0 } proc ::rss-synd::is_chan {chan} { if {([string index $chan 0] == "#") || ([string index $chan 0] == "&")} { return 1 } return 0 } proc ::rss-synd::urldecode {str} { regsub -all -- {([\"\$\[\]\{\}\(\)\\])} $str {\\\1} str regsub -all -- {%([aAbBcCdDeEfF0-9][aAbBcCdDeEfF0-9]);?} $str {[format %c [scan \1 %x]]} str return [subst $str] } ::rss-synd::init

!Sondakika
!Spor
!Burc
!guncel
!ekonomi
!saglik
!teknoloji
!bilim
!Genel

Açıklama :

Arkadaşlar yukardaki tcl haber tclsi olup benim tarafımdan genişletilmiş ve türkçe sitelere göre ayarlanmıştır.


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
"announce-output" 50 "trigger-output" 50

Kanalda ilk x haberin çıkmasını isterseniz 50 sayısını x yapınız.

bunun dışında sorunlarınız için buradan ve sunucumdan bana ulaşa bilirsiniz.

Denemek için : irc.sohbettc.com #haber


Konu sohbettc tarafından (19 Temmuz 2007 Saat 06:53 ) değiştirilmiştir.
  Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
radyo44.com.tr
Alt 19 Temmuz 2007, 09:57   #12
Çevrimdışı
Yanıt: haber.tcl ariorum..




ScanX koruma botunu tevsiye ederim
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
ayrıca haber kanaLında oto günceL haberLeri vermektedir (:

  Alıntı ile Cevapla

Alt 19 Temmuz 2007, 13:41   #13
Alovepoem
Guest
Alovepoem - ait Kullanıcı Resmi (Avatar)
Cevap: haber.tcl ariorum..




Ellerine saglık arkadasım

  Alıntı ile Cevapla

Alt 02 Ağustos 2007, 02:02   #14
Çevrimdışı
Cevap: haber.tcl ariorum..




Arkadaşlar bir arkadaş sunucuma gelmiş ben yoktum haber botunu çalıştıramamış bende yazmadım mbu tcl çalıştırmak için lütfen scripts içinde haber şeklinde bir kalasör açınız aksi taktirde tcl çalışmaz çünki önce bilgileri kaydedip sonrada bunları kanalda yayınlayan bir tcl dir.

Beni arayan arkadaşımıza duyurulur.

Kolay gelsin

  Alıntı ile Cevapla

Alt 02 Ağustos 2007, 08:55   #15
Çevrimdışı
Yanıt: Cevap: haber.tcl ariorum..




sohbettc Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Arkadaşlar bir arkadaş sunucuma gelmiş ben yoktum haber botunu çalıştıramamış bende yazmadım mbu tcl çalıştırmak için lütfen scripts içinde haber şeklinde bir kalasör açınız aksi taktirde tcl çalışmaz çünki önce bilgileri kaydedip sonrada bunları kanalda yayınlayan bir tcl dir.

Beni arayan arkadaşımıza duyurulur.

Kolay gelsin


Evet kardes Senin server a gelen bendim Ben Bu Tcl Yi aynı senin yazdıgın Sekilde Koydugum zaman hata veriyor hatasının sebebide bu : ::rss-synd::init

sayfanın en altındaki bu yazıya hata veriyor onu silince hatasız giriyor ama haberleri vermiyor !sondakika veya !bilgi yazıyorum tık yok ayrıca scripts in icine haber diye dosyada acdım hatta acdıgım dosyanın chmodunu bile 777 yaptım belki yazamaz icine diye ama yok sana zahmet calısan hali ile buradan dosya olarak eklersen veya kendi sitene koy linki burdan bize yaz ordan yukleyelim. senin serverinda sohbettc.com da haber kanalındaki bilgi botunun kullandıgı calısıyor onu yayınlarsan sevirim kardeş cok tesekkur ederim..

  Alıntı ile Cevapla

Alt 02 Ağustos 2007, 15:27   #16
Çevrimdışı
Cevap: Yanıt: Cevap: haber.tcl ariorum..




ilyas68 Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Evet kardes Senin server a gelen bendim Ben Bu Tcl Yi aynı senin yazdıgın Sekilde Koydugum zaman hata veriyor hatasının sebebide bu : ::rss-synd::init

sayfanın en altındaki bu yazıya hata veriyor onu silince hatasız giriyor ama haberleri vermiyor !sondakika veya !bilgi yazıyorum tık yok ayrıca scripts in icine haber diye dosyada acdım hatta acdıgım dosyanın chmodunu bile 777 yaptım belki yazamaz icine diye ama yok sana zahmet calısan hali ile buradan dosya olarak eklersen veya kendi sitene koy linki burdan bize yaz ordan yukleyelim. senin serverinda sohbettc.com da haber kanalındaki bilgi botunun kullandıgı calısıyor onu yayınlarsan sevirim kardeş cok tesekkur ederim..


Tam olarak hatayı yazarsan sevinirim ben kendi sunucumda bunu kullanıyorum aynısını ama özeliklerini az kapattım çok kişi oynuyor botu laga sokuyor diye yaptım bunu sen tam hatayı yaz bir bakalım yukarda yayınladıgım tcl 'nin aynısını kullanıyorum olmadı sunucunun adını ver bi bakayım

  Alıntı ile Cevapla

Alt 14 Ağustos 2007, 22:32   #17
Çevrimdışı
Yanıt: haber.tcl ariorum..




Kod:   Kodu kopyalamak için üzerine çift tıklayın!
[22:26] Tcl error in file 'Deneme.conf': [22:26] can't read "requiredannounce-output trigger-output max-depth update-interval timeout channels output user-agent url database trigger-type announce-type": no such variable while executing "set required[list "announce-output" "trigger-output" "max-depth" "update-interval" "timeout" "channels" "output" "user-agent" "url" "database" "trigge..." (procedure "::rss-synd::init" line 15) invoked from within ""::rss-synd::init"" (file "scripts/deneme/haber.tcl" line 725) invoked from within "source scripts/deneme/haber.tcl" (file "deneme.conf" line 198)

Boyle bir hata verdi

  Alıntı ile Cevapla

Alt 15 Ağustos 2007, 09:53   #18
Çevrimdışı
Cevap: haber.tcl ariorum..




bendede aynı hatayı verdi

  Alıntı ile Cevapla

Alt 18 Ağustos 2007, 00:22   #19
Çevrimdışı
Yanıt: haber.tcl ariorum..




bendede aynı hatayı verdi evet

  Alıntı ile Cevapla

Alt 18 Ağustos 2007, 02:06   #20
Çevrimdışı
Cevap: haber.tcl ariorum..




Arkadaşlar ben bir hata bulamadım tclde kullandıgınız sistem nedir ?

  Alıntı ile Cevapla

Cevapla

Etiketler
ariorum, habertcl

Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Bir Kod Ariorum Yardim EdebiLcecekmisinz POSOFxBELA mIRC Scripting Sorunları 4 25 Ekim 2009 20:33