27/05/2013, 12:48
(26/08/2011, 14:27)aliasangelius a écrit : Bonjour,
Voilà suite à une discutions avec MenzAgitat j'ai voulus avoir son système de tinyurl pour ceux qui ne Save pas ce que c'est :
Tinyurl et le raccourcissement d'url exemple :
Citation :( @Talk-Me ) [ Deux-Sèvres ] Pourquoi pas la chèvre pour nous identifier ? [http://www.lanouvellerepublique.fr/ACTUA...identifier]
Donc ceci et ce que ont obtient lorsqu'on à le TCL rss-synd.. À la base.
Ensuite lorsque nous mettons la procédure de tinyurl ça donne ceci :
Citation :( @Talk-Me ) [ Deux-Sèvres ] Vacances pour agriculteurs : moins rares, plus chères [http://tinyurl.com/3jhz92v]
Donc le système de procédure de tinyurl ma été donnais par MenzAgitat qui ma tout de même demander de préciser une chose :
La proc tinyurl vient du script TkTiny de Tomekk.
Maintenant ont va expliquer ou mettre cette procédure et aussi la donnais serait pas mal.
Voici la procédure :
tcl
proc ::rss-synd::grab_data { url } { set get_url_timeout "10" set uagent "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-GB; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2" set url [string map -nocase { "&" "&" } $url] set tiny_query "http://tinyurl.com/create.php?[::http::formatQuery url ${url}]" set tiny_token [http::config -useragent $uagent] set tiny_token [http::geturl $tiny_query -timeout [expr $get_url_timeout * 1000]] set html_data [http::data $tiny_token] ::http::cleanup $tiny_token set all_n [split $html_data \n] set tiny_link "" foreach tiny_lines $all_n { if {[regexp -all -nocase "<blockquote>(.*)</b><br>(.*)</blockquote>" $tiny_lines]} { regsub -all -nocase "<blockquote><b>" $tiny_lines "" tiny_link regsub -all -nocase "</b><br><small>(.*)</small></blockquote>" $tiny_link "" tiny_link } } if {($tiny_link != 0) && ($tiny_link ne "")} { return $tiny_link } { return "\00307(problème avec tinyurl.com)\00314 ${url}" } }
Mettre la procédure dans le tcl.
Ensuite mettre ceci aussi :
tcl
if { ([string last "title" $cookie] == 25) || ([string last "title" $cookie] == 19) } { set tmp [encoding convertfrom utf-8 $tmp] } elseif { ([string last "link" $cookie] == 25) || ([string last "link" $cookie] == 19) } { set tmp [::rss-synd::grab_data $tmp] }
Une fois ceci fait supprimer ce que vous avez dans le dossier "rss" ou sont stockait tout vos rss une fois le tout supprimé faite un rehash/restart de votre eggdrop.
Et lorsque votre eggdrop fera une annonce d'un flux rss il affichera avec tynurl !
PS : je ferais une version traduite en français avec un rss-synd.tcl
Qui bien sur sera avec le système de tynurl.
Voila have fun =)
Bonjour,
Je suis très intéressé par ta procédure tinyurl.
Toutefois j'ai deux questions :
1. La "proc ::rss-synd::grab_data" on la mets n'importe où dans le script ?
2. Où mettre le "if" de la 2ème partie ? N'importe quel endroit ?
3. Quand tu parles de supprimer le dossier "rss" parles tu du dossier où sont stockés les fichiers ".db" des différents flux ? Car de mon côté je n'ai aucun dossier "rss".
Merci par avance de l'aide que tu pourras m'apporter.
@+