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


[Demande] besoin d'aide pour finaliser
#1
Bonjour, j'anime une webradio et j'ai installé un eggdrop avec un certain nombre de commandes en rapport, dernièrement j'ai voulu ajouter une fonction like qui inscrit dans un fichier txt les information liées au like suivit du n° comme ceci:
09/11/2020 • 21:04:49 • Dj-Fou • de sucrette30 - Kygo, Donna Summer - Hot Stuff n°1
09/11/2020 • 21:08:05 • Dj-Fou • de sucrette30 - 24kGoldn - Mood ft iann dior n°2
09/11/2020 • 21:11:29 • Dj-Fou • de sucrette30 - GIMS - YOLO n°3
j'arrive a le faire dans un script mirc sans aucun soucis
je voudrais le faire avec l'eggdrop et après plusieurs jours d'essais je n'arrive qu'a avoir un n° (le n° 1) en fin de ligne mais toujours le même, ci dessous le code de ma commande:

Code :
proc sc::like {nick host hand chan arg} {
 set fopen [open  "scripts/liketest.txt"  a+  ]
set fileData [read $fopen ]
set fileLines [split $fileData "\n" ]
set numlike [expr $fileLines+ 1]
  variable status
variable title
variable rchan
variable achan
if {[info exists status] && !$status} return
if {$rchan!="" && [lsearch  $rchan $chan]==-1} return  
puts $fopen  "Like de $nick $arg $title $numlike $compte "
close $fopen
putserv "NOTICE $nick :[::msgcat::mc m19 $title]"
putserv "PRIVMSG $achan :[::msgcat::mc m20 $nick $title]"
putlog [::msgcat::mc m20 $nick $arg]
}
ce que je souhaite vous l'aurais compris c'est qu'a chaque nouveau like le n° augmente de 1 et c'est là que je sèche.
Sinon le reste vas bien.
  Répondre
#2
Le problème vient sûrement de ta variable $compte qui n'est initialisée nulle part et qui devrait à mon avis être $numlike.
Et j'ai un doute sur la manière dont tu remplis cette variable, tu devrais plutôt faire set numlike [expr [llength $fileLines] + 1]
  Répondre
#3
Bonjour,
Pour moi il manque clairement des informations dans ta demande si tu désire une aide.
Car déjà tu fournis un "passage" de code dont j'ai aucune idée de l'ensemble, comme par exemple la commande qui fait appelle a "sc::like" et ce quelle contient ou doit contenir par exemple.
Il serais bien de nous montrer un bout du fichier "scripts/liketest.txt"

Pour moi, la variable "status" est vérifie si elle existe et si elle vaut 0 le script s'arête or, a moins que j'ai de la m**de dans les yeux; elle ne sera jamais 1 pour le bout de code donner.
la variable "rchan" débarque de nulle part non plus , du moins encore une fois avec le peu d'élément fournis.

C'est un genre de da vinci code, ou l'ont doit deviner et déchiffrer pas mal .

Merci de nous aider un minimum à t'aider ! car même ::msgcat::mc on doit deviner les messages des catalogues pour essayer de comprendre les retour attendu.

Je pense que le mieux serais de nous montrer ton équivalent en MIRC et nous fournir plus d'informations.

Quelles sont les données disponibles, ou peut on les lires, que doit on faire avec ....

Merci
  Répondre
#4
Le seul script à ma connaissance auquel me fait penser les variables

tcl
variable achan
variable rchan
proc sc::



Son celle du shoutcast de djkenny
https://scripts.eggdrop.fr/details-shoutcast-s128.html
Vous interdisez les erreurs, vous empêchez ainsi la victoire.

Ma super kikoo-page loll
  Répondre
#5
Tout à fait c'est dans ce script que je fais cet ajout pour avoir le titre dans le fichier des likes.
  Répondre
#6
(12/11/2020, 09:36)CrazyCat a écrit : Le problème vient sûrement de ta variable $compte qui n'est initialisée nulle part et qui devrait à mon avis être $numlike.
Et j'ai un doute sur la manière dont tu remplis cette variable, tu devrais plutôt faire set numlike [expr [llength $fileLines] + 1]

Merci, alors en effet $compte n'est pas initialisée c'est un oubli d'avoir lever $compte dans cette ligne après avoir fait des tests avec cette variable sans résultats.
set numlike [expr [llength $fileLines] + 1] ne donne pas plus de bon résultats.

(12/11/2020, 15:45)mcdeffice a écrit : Bonjour,
Pour moi il manque clairement des informations dans ta demande si tu désire une aide.
Car déjà tu fournis un "passage" de code dont j'ai aucune idée de l'ensemble, comme par exemple la commande qui fait appelle a "sc::like" et ce quelle contient  ou doit contenir par exemple.
Il serais bien de nous montrer un bout du fichier "scripts/liketest.txt"

Pour moi, la variable "status" est vérifie si elle existe et si elle vaut 0 le script s'arête or, a moins que j'ai de la m**de dans les yeux; elle ne sera jamais 1 pour le bout de code donner.  
la variable "rchan" débarque de nulle part non plus , du moins encore une fois avec le peu d'élément fournis.

C'est un genre de da vinci code, ou l'ont doit deviner et déchiffrer pas mal .

Merci de nous aider un minimum à t'aider ! car même ::msgcat::mc on doit deviner les messages des catalogues pour essayer de comprendre les retour attendu.

Je pense que le mieux serais de nous montrer ton équivalent en MIRC et nous fournir plus d'informations.

Quelles sont les données disponibles, ou peut on les lires, que doit on faire avec ....

Merci
Alors la variable rchan c'est le salon de la radio sur lequel les usagers tapent la commande !like.
  ::msgcat::mcset fr m19 "Merci d'avoir liker >> %s"
#renvois un message au demandeur du like.

  ::msgcat::mcset fr m20 " like de %s - %s"
#signale sur la backroom l'arrivée d'un like
-----------------------------------------------------
#extrait des 2 lignes actuelles après 2 demandes de like du fichier "scripts/liketest.txt":
Like de berni13[OqP]  Ricoune - Un petit Ricard dans un verre  ballon 1
Like de berni13[OqP]  Ricoune - Un petit Ricard dans un verre  ballon 1

------------------------------------------------------------------------------------------
le code MIRC qui me comptabilise bien chaque ligne:

Code :
alias radioask3 {
 $iif(!$window(@like),Window -zg0nk0 @like)
 var %current_like_number = $calc($lines(like.txt) +1)
 echo @like $AideAnim(Couleur2) $+ $AideAnim(Couleur1)      $+  $+   $1-  n° $+ %current_like_number
 write like.txt $date • $time $line • $nick • $1-  n° $+ %current_like_number
}

Merci de vos réponses
  Répondre
#7
(13/11/2020, 20:31)berni13 a écrit :
(12/11/2020, 09:36)CrazyCat a écrit : Le problème vient sûrement de ta variable $compte qui n'est initialisée nulle part et qui devrait à mon avis être $numlike.
Et j'ai un doute sur la manière dont tu remplis cette variable, tu devrais plutôt faire set numlike [expr [llength $fileLines] + 1]

Merci, alors en effet $compte n'est pas initialisée c'est un oubli d'avoir lever $compte dans cette ligne après avoir fait des tests avec cette variable sans résultats.
set numlike [expr [llength $fileLines] + 1] ne donne pas plus de bon résultats.

(12/11/2020, 15:45)mcdeffice a écrit : Bonjour,
Pour moi il manque clairement des informations dans ta demande si tu désire une aide.
Car déjà tu fournis un "passage" de code dont j'ai aucune idée de l'ensemble, comme par exemple la commande qui fait appelle a "sc::like" et ce quelle contient  ou doit contenir par exemple.
Il serais bien de nous montrer un bout du fichier "scripts/liketest.txt"

Pour moi, la variable "status" est vérifie si elle existe et si elle vaut 0 le script s'arête or, a moins que j'ai de la m**de dans les yeux; elle ne sera jamais 1 pour le bout de code donner.  
la variable "rchan" débarque de nulle part non plus , du moins encore une fois avec le peu d'élément fournis.

C'est un genre de da vinci code, ou l'ont doit deviner et déchiffrer pas mal .

Merci de nous aider un minimum à t'aider ! car même ::msgcat::mc on doit deviner les messages des catalogues pour essayer de comprendre les retour attendu.

Je pense que le mieux serais de nous montrer ton équivalent en MIRC et nous fournir plus d'informations.

Quelles sont les données disponibles, ou peut on les lires, que doit on faire avec ....

Merci
Alors la variable rchan c'est le salon de la radio sur lequel les usagers tapent la commande !like.
  ::msgcat::mcset fr m19 "Merci d'avoir liker >> %s"
#renvois un message au demandeur du like.

  ::msgcat::mcset fr m20 " like de %s - %s"
#signale sur la backroom l'arrivée d'un like
-----------------------------------------------------
#extrait des 2 lignes actuelles après 2 demandes de like du fichier "scripts/liketest.txt":
Like de berni13[OqP]  Ricoune - Un petit Ricard dans un verre  ballon 1
Like de berni13[OqP]  Ricoune - Un petit Ricard dans un verre  ballon 1

------------------------------------------------------------------------------------------
le code MIRC qui me comptabilise bien chaque ligne:

Code :
alias radioask3 {
 $iif(!$window(@like),Window -zg0nk0 @like)
 var %current_like_number = $calc($lines(like.txt) +1)
 echo @like $AideAnim(Couleur2) $+ $AideAnim(Couleur1)      $+  $+   $1-  n° $+ %current_like_number
 write like.txt $date • $time $line • $nick • $1-  n° $+ %current_like_number
}

Merci de vos réponses
La variable status fait référence au status de la radio off = 0, on = 1 et la fonction like ne doit fonctionner que lorsque la radio est on
  Répondre


Sujets apparemment similaires...
Sujet Auteur Réponses Affichages Dernier message
  Besoin d'aide Eggdrop TCL Lien YouTube Zion 3 1,992 28/01/2019, 13:06
Dernier message: CrazyCat
Big Grin demande d'aide pour codage KeeViiNou 4 3,623 04/07/2016, 07:55
Dernier message: CrazyCat
  Besoin d'aide SVP KeeViiNou 10 4,400 17/06/2016, 18:48
Dernier message: KeeViiNou
  aide pour un script svp s2drk 3 4,177 11/08/2014, 23:23
Dernier message: CrazyCat
  [Demande] Besoin d'aide pour youtubeURL.tcl hades_48 4 4,240 01/07/2014, 15:41
Dernier message: hades_48
  Besoin d'aide hades_48 3 3,416 21/05/2014, 20:08
Dernier message: hades_48
  [Demande] aide pour une modification pour whois loulou7593 21 10,949 29/10/2013, 13:35
Dernier message: loulou7593
  aide pour le script Nostromo1st 13 6,711 16/09/2013, 16:24
Dernier message: Nostromo1st
  [aide] comment rajouter des hosts et des salons en plus pour sajoin Naruto 11 6,437 17/07/2013, 22:51
Dernier message: aliasangelius
  aide pour trivia zyrte 5 4,527 19/11/2012, 13:13
Dernier message: CrazyCat

Atteindre :


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