Mise en forme de code: pensez à utiliser les balises [ tcl ] et [ /tcl ] (sans les espaces bien sûr) autour de vos codes tcl afin d'avoir un meilleur rendu et une coloration syntaxique. x


[script] Eggdrop RSS Syndication
#16
Bonjour à tous :)

Tout d'abord merci pour ce site très utile :)

Je me permets de venir vers vous car j'ai beau cherché, je ne trouve pas la solution à mon problème (je ne suis pas non plus féru en codage tcl). Donc voici mon problème :

Sous un egg 1.6.19+SSL j'ai chargé la version 0.5b1 de la tcl qui nous occupe.
Lorsque je veux rajouter un flux rss, voici systématiquement le message d'erreur que j'ai que ce soit en faisant .rehash ou .restart :

[13:15:28] <Bot> [13:15] Tcl error in file 'eggdrop.conf':
[13:15:28] <Bot> [13:15] list element in quotes followed by "trigger"" instead of space
[13:15:28] <Bot> while executing
[13:15:28] <Bot> "array set tmp $rss($feed)"
[13:15:28] <Bot> (procedure "::rss-synd::init" line 17)
[13:15:28] <Bot> invoked from within
[13:15:28] <Bot> "::rss-synd::init"
[13:15:28] <Bot> (file "scripts/rss-synd.tcl" line 1090)
[13:15:28] <Bot> invoked from within
[13:15:28] <Bot> "source scripts/rss-synd.tcl"
[13:15:28] <Bot> (file "eggdrop.conf" line 1343)
[13:15:28] <Bot> [13:15] * FICHIER DE CONFIGURATION NON CHARGE (INTROUVABLE OU ERREUR)


Pour mettre en Å“uvre le flux rss supplémentaire, voici ce que j'ai changé dans la tcl :

set rss(slashdot) {
"url" "http://rss.slashdot.org/Slashdot/slashdot"
"channels" "#HiDef-Zone"
"database" "./scripts/feeds/slashdot.db"
"output" "\\\[\002Slashdot\002\\\] @@item!title@@ (@@item!slash:section@@) - \[string map { \"&from=rss\" \"\" } \"@@item!feedburner:origLink@@\"\]"
"trigger" "!@@feedid@@"
"evaluate-tcl" 1
}

set rss(monsite) {
"url" "http://www.monsite.com/rss.php"
"channels" "#lechan"
"database" "./scripts/feeds/HDF.db"
"output" "\\\[\002En-tête\002\\\] @@item!title@@ - @@item!link@@
"trigger" "!@@rsshdf@@"
}

Bien entendu, c'est le second set rss qui me pose problème.
J'ai essayé de mettre uniquement ce "set" là (je cherche hein), même résultat.

Sauriez vous m'indiquer où je commets une erreur ? (sachant que sans le second "set" la tcl fonctionne très bien).

Merci d'avance de votre aide :)
  Répondre
#17
Si tu regardes l'exemple donné (Slashdot), il te manque le:
tcl
"evaluate-tcl" 1


Et il faudrait l'url réelle de ton flux RSS pour faire des tests.
  Répondre
#18
Merci CrazyCat :) sauf que entre temps j'ai trouvé le problème et honte à moi...... manque un " à la fin de la ligne "output".....

quand on veut cacher quelque chose à quelqu'un faut lui mettre devant le nez..... (j'ai blairé toute une journée alors que c'est flagrant....)
  Répondre
#19

http://forum.egghelp.org/viewtopic.php?p=85047#85047

on t'a même un peu aidé ;)
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

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.
  Répondre
#20
lol même pas, j'avais trouvé avant cette réponse MenzAgitat ;)
  Répondre
#21
Rikito a écrit :Merci CrazyCat :) sauf que entre temps j'ai trouvé le problème et honte à moi...... manque un " à la fin de la ligne "output".....

quand on veut cacher quelque chose à quelqu'un faut lui mettre devant le nez..... (j'ai blairé toute une journée alors que c'est flagrant....)

Je l'ai même pas vu! Shame on me! :D
  Répondre
#22
Bonsoir bonsoir,
Je poste sur ce sujet vue qui parle un peu de mon problème ( ainsi j'évite d'ouvrir un autre topic )
Voilà hier j'ai voulu ajouter ce petit script à mon eggdrop qui prend les flux rss de mon blog ( dotclear pour information ) mais marche super pas ( en même temps je dois dire que je suis un peu naab sur le sujet )
Alors je vous montre ce que j'ai fait :

Code :
# Start of Settings
#

namespace eval ::rss-synd {
    variable rss

    # This is an example of a basic feed, If you dont understand why all
    #   the \'s are in the examples below use this one as a template.
    set rss(kipof) {
               "url"                   "http://kipof.net/index.php?feed/atom"
               "channels"              "#quizz"
               "database"              "./scripts/kipof.db"
               "output"    "[\002Rss kipof.net\002] @@item!title@@: \037@@item!link@@\037"
               "trigger"    "*rss"
        }

    set rss(kipofc) {
               "url"                   "http://kipof.net/index.php?feed/atom/comments"
               "channels"              "#quizz"
               "database"              "./scripts/kipofc.db"
               "output"    "[\002Commentaires kipof.net\002] @@item!title@@: \037@@item!link@@\037"
               "trigger"    "*rssc"
        }
    # The default settings, If any setting isnt set for an individual feed it'll
    #   use the default listed here
    set default        {
                 "max-output"    1
                 "remove-empty"    0
                 "max-depth"    5
                 "eval-tcl"    0
                 "update"    30
                 "timeout"    60000
                 "channels"    "#channel1 #channel2"
                 "trigger"    "!rss @@feedid@@"
                 "output"    "\[\002@@channel!title@@\002\] @@item!title@@ - @@item!link@@"
                 "useragent"    "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.10) Gecko/20050716 Firefox/1.0.6"
                }
}

#
# End of Settings
#
###############################################################################

La version est la v0.2 du rss.tcl et l'erreur que j'ai en PL est :
Citation :<Oxys> [16:18] Tcl error [::rss-synd::pubFeeds]: can't read "news(item)": no such element in array
Alors si vous pourriez m'aider un peu car je suis un peu dans le brouillard :p

Merci d'avance kipof.
  Répondre
#23
Tout d'abord, je te conseillerais de prendre la dernière version du tcl. Mais ton erreur vient du fait que tu essayes de lire un flux Atom com si c'était un RSS, alors que les espaces sont différents.

Donc, soit tu utilises le flux RSS, soit tu modifies la la définition de ce que tu veux afficher (@@entry plutôt que @@item)
  Répondre
#24
J'ai pris la dernière version avec la modification pour afficher et cela marche nickel :) merci encore.
  Répondre
#25
De rien :)
  Répondre
#26
soir
aidez moi svp
j ai cette erreur

tcl
missing close-brace: possible unbalanced brace in comment
    while executing
"namespace eval ::rss-synd {
        variable rss
        variable default
 
        # This is an example of a basic feed, If you dont understand why all
        #   the \'s are in..."
    (file "scripts/rss-synd.tcl" line 48)
    invoked from within
"source scripts/rss-synd.tcl"


  Répondre
#27
bonsoir,

là tout nous montre un bout du TCL mais ce qui serais bien c'est le message d'erreur
La différence entre Linux et Windows ,c'est que Linux c'est comme une belle fille , il faut l'apprivoiser , la comprendre , la séduire tandis que Windows , c'est comme une prostitué , il faut payer et surtout bien se protéger.
  Répondre
#28
C'est ce qui a déjà été évoqué dans un précédent fil: les { } sont interprétés même dans les commentaires, ce qui peut provoquer des erreurs.
Il faut donc retirer les accolades des commentaires.
  Répondre
#29
CrazyCat a écrit :Il faut donc retirer les accolades des commentaires.
Ou s'assurer qu'elles soient bien toutes équilibrées.
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

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.
  Répondre
#30
soir CrazyCat

j dois enlever le '{' qui se trouve après rss::synd ?

l anglais serait plus facile pour moi ( dsl )
  Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)