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


Fermeture TCL
#1
Exclamation 
Bonjour,

J'ai repris du service depuis 10 ans d'absence du circuit ! A l'époque, et je crois que c'était avec l'aide des utilisateurs du fofo nous avions crée ce script :

tcl
# Minute de fermeture de salon
set CC(min) "15"
 
# Heure de fermeture du salon
set CC(ferme) "17"
 
# Heure d'ouverture du salon
set CC(ouvre) "17"
 
# Minute d'ouverture du salon
set CC(mouvre) "17"
 
# Heure d'avertissement de fermeture
set CC(afh)   "17"
 
# Minute d'avertissement de fermeture
set CC(amn)   "14"
 
# Mode de fermeture de salon
set CC(mode) "+iRm"
 
# Message d'avertissement de fermeture
set CC(af)   "Fermeture du salon dans 05minute.. veuillez quitter ce salon !"
 
# Message de fermeture
set CC(close) "Fermeture du salon !" 
 
# Message d'ouverture
set CC(ouvert) "Ouverture du salon ! Bon t'chat à tous ! ;)"
 
if {![file exists "scripts/chan.db"]} { set file_chan [open "host.db" a+]; close $file_chan }
 
bind time - "$CC(amn) $CC(afh) * * *" time:averto
proc time:averto {min hour day month year} {
global CC
catch {open scripts/chan.db r} salle
while {![eof $salle]} { gets $salle salon; if {$salon!=""} { puts "PRIVMSG $salon :$CC(af)" } }
catch {close $salle}
}
 
bind time - "$CC(min) $CC(ferme) * * *" time:close
proc time:close {min hour day month year} {
global CC
catch {open scripts/chan.db r} salle
while {![eof $salle]} { gets $salle salon; if {$salon!=""} { puts "PRIVMSG $salon :$CC(close)"; puts "MODE $salon +$CC(mode)"; foreach users [chanlist $salon] { puts "KICK $salon $user :$CC(ouvert)"} } }
catch {close $salle}
}
 
bind time - "$CC(mouvre) $CC(ouvre) * * *" time:ouvre
proc time:ouvre {min hour day month year} {
global CC
catch {open scripts/chan.db r} salle
while {![eof $salle]} { gets $salle salon; if {$salon!=""} { puts "PRIVMSG $salon :$CC(ouvert)"; puts "MODE $salon -$CC(mode)" } }
catch {close $salle}
}


Ce script fonctionnait parfaitement !

Aujourd'hui en revanche... c'est plus compliqué ! Je n'ai aucun message d'erreur en part line, mais rien ne s'effectue sur le salon, aucun message ni de changement de mode...

Merci pour vos lumières...
  Répondre
#2
Vérifie que tes binds sont bien chargés, ajoute des putlog pour savoir où tu passes. D'autant plus que tu utilises des catch qui peuvent potentiellement te masquer des erreurs.

Et remet ton code en forme (indentations, retours à la ligne), ça t'aidera à y voir plus clair.

<mode style=moqueur>
KeeViiNou a écrit :J'ai repris du service depuis 10 ans d'absence du circuit !
Alors que tu t'es inscrit en 2012 et que tu as participé au forum jusqu'en mars 2017 ? Il y a des lacunes en math :D
</mode>
  Répondre
#3
<mode style=moqueur>
KeeViiNou a écrit :J'ai repris du service depuis 10 ans d'absence du circuit !
Alors que tu t'es inscrit en 2012 et que tu as participé au forum jusqu'en mars 2017 ? Il y a des lacunes en math :D
</mode>
[/quote]

J'avoue que sur coup là, je me suis fais griller ! Je me souviens plus de quand j'avais stoppé ! xD

Merci je vais aller voir ça.
  Répondre
#4
salut,
idée en passant, si le " bot" n'a pas les bons flags possible qu'il ne puisse pas modifier les modes salon.

Je dit, ça je dit rien, parfois les petites erreures aprés 10 ans d'absence sont bien présentes xD .

Cordialement.
  Répondre
#5
Le problème est peut-être de faire des puts plutôt que des putserv.
  Répondre


Sujets apparemment similaires...
Sujet Auteur Réponses Affichages Dernier message
  Fermeture automatique d'un salon a une heure prédéfinie cac.team 49 16,636 26/02/2017, 12:00
Dernier message: CrazyCat

Atteindre :


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