Message aléatoire avec un timer

Résolu
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012 - 15 août 2008 à 16:54
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 - 16 août 2008 à 17:06
Bonjour,

J'ai actuellement plusieurs timer sur mon salon que j'active par des alias :

/t1 /timerannonce1 0 360 /msg #salon �2;Message 1


/t1off /timerannonce1 off


/t2 /timerannonce2 0 360 /msg #salon �2;Message 2


/t2off /timerannonce2 off

et ainsi de suite.

J'aurai aimer savoir si il était possible avec une seule commande de lancer une lecture aléatoire de tout les messages et de pouvoir arrêter cette lecture par une seule commande aussi.

Parce que là avec 10 annonces différentes cela devient très vite lourd à gérer de la façon que je fais.

Merci d'avance

22 réponses

WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
16 août 2008 à 16:13
ok je vois dejà

je reprend donc

alias startn {
  if ($regex($1,^[[:digit:]]+$)) {
    .timerX 0 $1 tn
    echo -a envoi de messages actif delai ( $1 sec. )
  }
  else echo -a erreur format mettez /startn <delai repetition>
}
alias tn .play -r # fichier.txt
alias stoptn { .timerX off | .play stop | echo -a envoie de messages deactiver }

comme l'autre tu tape /startn 360 pour avoir un msg aleatoire chaque 6 min de ton fichier.txt que tu va remplacé en metant le nom de ton fichier.txt qui contien les annonces

et /stoptn pour arreter
3
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
15 août 2008 à 18:48
J'ai trouvé une piste avec la commande play mais je n'y comprend pas grand chose :/
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
15 août 2008 à 19:20
/tann .timerannonce 0 360 msg #salon message1 $(|) msg #salon message2
/tannoff .timerannonce off

de cette façon le timer gère les deux message normalement
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
15 août 2008 à 19:25
Merci wins

Si j'ai 10 messages je les ajoute tous comme de la même manière ?

/tann .timerannonce 0 360 msg #salon message1 $(|) msg #salon message2 $(|) msg #salon message3 $(|) msg #salon message4 $(|) msg #salon message5 $(|) msg #salon message6 $(|) msg #salon message7 $(|) msg #salon message8 $(|) msg #salon message9 $(|) msg #salon message10

/tannoff .timerannonce off

Ne vaut-il pas mieux lire les lignes d'un fichier txt aléatoirement ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
15 août 2008 à 19:37
Je viens de faire l'essai :

[19:36:48] <Surfsp33> message1
[19:36:48] <Surfsp33> message2
[19:36:48] <Surfsp33> message3
[19:36:48] <Surfsp33> message4
[19:36:48] <Surfsp33> message5
[19:36:48] <Surfsp33> message6
[19:36:48] <Surfsp33> message7
[19:36:48] <Surfsp33> message8
[19:36:48] <Surfsp33> message9
[19:36:48] <Surfsp33> message10

Tout en une seconde, Quit : Exess Flood
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
16 août 2008 à 08:28
Qu'en pensez vous ?


Un seule commande avec un timer ou timer avec lecture d'un fichier aléatoire ?
0
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
16 août 2008 à 10:34
salut


tu dis que t'a trouvé le chemin avec play c'est une bonne idée pour ne pas flood


tu met tes 10 messages dans un fichier txt

en suite tu tape

/play -r #salon fichier.txt 360000

rasure toi que le fichier.txt est dans le dossier du mIRC

comme ça chaque 360 sec. (6 min.) il va envoyé 1 msg

mais au cas que tu veu a chaque 6 min il envoi les 10 msg a la fois

/timerX 0 360 play -r #salon fichier.txt

comme ça a chaque 6 min les 10 msg sort une apres l'autre chaque 1 sec alors pas de flood

NB: a testé j'ai pas testé
0
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
16 août 2008 à 10:54
je retire ce que j'ai dis dans la 2eme partie

/timerX 0 360 play -r #salon fichier.txt

ça peu pas aller :p dsl
0
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
16 août 2008 à 11:51
bon ce code lis les msg mais en ordre de lignes pas aleatoire 
et lire aleatoirement risque de repeter une phrase plusieurs fois
voici le code a mettre dans la remote et tes messages dans un fichier.txt

alias startn {
  if ($regex($1,^[[:digit:]]+$)) {
    .timerX 0 $1 tn
    echo -a envoi de messages actif delai ( $1 sec. )
  }
  else echo -a erreur format mettez /startn <delai repetition>
}
alias tn .timer 1 1 .play # fichier.txt
alias stoptn { .timerX off | .play stop | echo -a envoie de messages deactiver }

tu tape /startn + <Numero du delai de repetition>

comme tu veux a chaque 6 min tu tape "/startn 360"
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
16 août 2008 à 13:13
Si ce n'est pas aléatoire ce n'est pas très grave.

Par contre ton code me donne ce résultat :

[13:11:20] <@Surfsp33> Annonce N°1
[13:11:21] <@Surfsp33> Annonce N°2
[13:11:22] <@Surfsp33> Annonce N°3
[13:11:23] <@Surfsp33> Annonce N°4
[13:11:24] <@Surfsp33> Annonce N°5
[13:11:25] <@Surfsp33> Annonce N°6
[13:11:26] <@Surfsp33> Annonce N°7
[13:11:27] <@Surfsp33> Annonce N°8
[13:11:28] <@Surfsp33> Annonce N°9
[13:11:29] <@Surfsp33> Annonce N°10

[13:11:40] <@Surfsp33> Annonce N°1
[13:11:41] <@Surfsp33> Annonce N°2
[13:11:42] <@Surfsp33> Annonce N°3
[13:11:43] <@Surfsp33> Annonce N°4
[13:11:44] <@Surfsp33> Annonce N°5
[13:11:45] <@Surfsp33> Annonce N°6
[13:11:46] <@Surfsp33> Annonce N°7
[13:11:47] <@Surfsp33> Annonce N°8
[13:11:48] <@Surfsp33> Annonce N°9
[13:11:49] <@Surfsp33> Annonce N°10

Avec un /startn +20 (pour ne pas attendre 6 min pour tester)

J'ai essayé de modifier le timer car je pense que çà vient de là mais j'ai réussi à planter le mirc
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
16 août 2008 à 13:26
Pour mon code, c'est normal, le code ne fait que ce qu'il doit faire, c'est toi qui a voulu ça :].Si tu veux que tout t'es message se suivent sans excess flood, suffit de remettre des timer sur chaque message, mais a ce niveau là, un /play est beaucoup mieux oui.
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
16 août 2008 à 13:39
Voilà j'ai trouvé une solution vous aller me dire ce que vous en pensez :

/timerX 0 22 play #aide test.txt 2000

Je suis obligé d'adapter le timer en fonction de la durée du play, pour relancer le play en boucle gràce au timer.
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
16 août 2008 à 13:44
Bah c'est pas si mal comme ça, mais tu dis que tu doit adapter ton timer par rapport au /play,
 tu peut très bien detecter quand est ce que le /play est finis et a partir de là relancé un timer, ou faire ce que tu veux, tes timers serait donc pas inifini (.timerX 0).
Ce que tu as est une "feinte" mais il se passe quoi si tu ajoutes des lignes dans le fichier ? Tu va devoir revoir le timer ainsi que le play... donc faire ça proprement t'éviterai a chaque fois de changé les paramètres :)
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
16 août 2008 à 13:49
Oui c'est pas bête çà mais je ne sais pas comment détecter que le play et terminé ^^

J'ai feinté pour m'en sortir
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
16 août 2008 à 14:20
/help on playend
:)
0
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
16 août 2008 à 15:48
"Si ce n'est pas aléatoire ce n'est pas très grave.
Par contre ton code me donne ce résultat :
[13:11:20] <@Surfsp33> Annonce N°1
[13:11:21] <@Surfsp33> Annonce N°2
[13:11:22] <@Surfsp33> Annonce N°3
[13:11:23] <@Surfsp33> Annonce N°4
[13:11:24] <@Surfsp33> Annonce N°5
[13:11:25] <@Surfsp33> Annonce N°6
[13:11:26] <@Surfsp33> Annonce N°7
[13:11:27] <@Surfsp33> Annonce N°8
[13:11:28] <@Surfsp33> Annonce N°9
[13:11:29] <@Surfsp33> Annonce N°10"

selon ce que j'ai compris, c'est que tu voulais a chaque X de temp que tu defuse les 10 msg que tu as

si non j'avais dejà dis avant si tu veux 1 msg chaque X temp

c'est autre chose
stp  si tu m'explique encore plus ce que tu veu parceque je ne sais plus ce que tu cherche :/
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
16 août 2008 à 15:53
Ha désolé, en fait j'aimerai que si le temps entre chaque message était 20 secondes le résultat soit :

[13:11:00] <@Surfsp33> Annonce N°1
[13:11:20] <@Surfsp33> Annonce N°2
[13:11:40] <@Surfsp33> Annonce N°3
[13:12:00] <@Surfsp33> Annonce N°4
[13:12:24] <@Surfsp33> Annonce N°5
[13:12:40] <@Surfsp33> Annonce N°6
[13:13:00] <@Surfsp33> Annonce N°7
[13:13:20] <@Surfsp33> Annonce N°8
[13:13:40] <@Surfsp33> Annonce N°9
[13:14:00] <@Surfsp33> Annonce N°10
[13:14:20] <@Surfsp33> Annonce N°1
[13:14:40] <@Surfsp33> Annonce N°2
[13:15:00] <@Surfsp33> Annonce N°3
[13:15:20] <@Surfsp33> Annonce N°4
[13:15:40] <@Surfsp33> Annonce N°5
[13:16:00] <@Surfsp33> Annonce N°6
[13:16:20] <@Surfsp33> Annonce N°7
[13:16:40] <@Surfsp33> Annonce N°8
[13:17:00] <@Surfsp33> Annonce N°9
[13:17:20] <@Surfsp33> Annonce N°10

Et ainsi de suite, est-ce que c'est plus explicite ?
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
16 août 2008 à 16:36
Je comprend pas pourquoi vous vous compliquez la vie :|

/play fichier.txt 20000   < cette command va lire le fichier sur la fenetre active avec un intervalle de 20 secondes entre chaque ligne.
Après, j'ai pas bien compris ce que tu veux faire, mais tu peux utilisé l'evenement on playend pour savoir quand est ce le /play est finis, et selon ce que tu veux faire, tu peux par exemple refaire ce processus dans 1 minutes avec un timer.

 Je pense que tu devrais bien prendre ton temps a nous expliquer clairement ce que tu veux, ça éviterai beaucoup de post inutile ainsi que de perdre du temps
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
16 août 2008 à 16:48
Ben WorldDMT tu as compris car c'est exactement le fonctionnement que j'attendais.

J'ai juste modifier alias tn .play -r # fichier.txt enalias tn .play # fichier.txt

Car l'aléatoire ne l'est pas trop finalement.

Merci beaucoup à vous.
0
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
16 août 2008 à 16:54
attention!!


si tu enleve le "-r" ça marche plus comme tu va souhaité


car comme tu as fais va lire tout le fichier.txt chaque X temp :/
0
Rejoignez-nous