IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IRC / mIRC Discussion :

[MiRc] Script de transfert par lots


Sujet :

IRC / mIRC

  1. #1
    Membre du Club Avatar de tiger33
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 77
    Points : 56
    Points
    56
    Par défaut [MiRc] Script de transfert par lots
    Salut

    Je veux exécuter çà :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    /msg serveur_xdccc xdcc send 1
    /msg serveur_xdccc xdcc send 2
    /msg serveur_xdccc xdcc send 3
    /msg serveur_xdccc xdcc send ...
    /msg serveur_xdccc xdcc send dernier fichiers du lot
    J'ai penser a 1 alias avec $filestart(fichier1) et $fileend(dernier) et une boucle while
    Le soucis, c'est que je dois attendre une réaction du serveur : transfert terminé car je suis limité à un transfert simultané et deux en attente.
    La chose est possible avec un on:text mais dans une remote pas dans un alias
    comment faire
    merci
    Tiger33,
    Développeur, chômeur, en auto formation sur joomla!
    Site à venir

  2. #2
    Membre émérite
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Points : 2 411
    Points
    2 411
    Par défaut
    Salut,

    tu peux attraper l'évènement
    FILERCVD

    et relancer un DCC apres avoir déclanché cet évènement

    F.

    P.S. : le chainleeching, c'est mâl
    Développeur Java / Flex à Shanghai, Chine
    mes publications
    Mon dernier tutoriel : Messages Quit IRC : explications

    La rubrique IRC recrute des redacteurs : contactez moi

    Ce flim n'est pas un flim sur le cyclimse. Merci de votre compréhension.[/SIZE]

  3. #3
    Membre du Club Avatar de tiger33
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 77
    Points : 56
    Points
    56
    Par défaut
    merci,
    Mais que faut-il que J'écrive, (débutant en mirc) je pense à une remote.(confimé par ce que tu dis) mais il me faut bien un allias pour déclencher mon script, non ?

    Autre chose, j'ai besoin d'un compteur pour ma boucle while, dois-je le déclarer dans l'onglet variable ou juste avant le while comme pour les autres langages ?
    a+
    Tiger33,
    Développeur, chômeur, en auto formation sur joomla!
    Site à venir

  4. #4
    Membre émérite
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Points : 2 411
    Points
    2 411
    Par défaut
    Salut,

    Tu peux déclarer une variable $count par exemple initialisé à 0 dans l'onglet variable.

    Oui c'est bien un remote. Je te réponds exactement en rentrant, ici je n'ai pas la doc de mirc!

    F.
    Développeur Java / Flex à Shanghai, Chine
    mes publications
    Mon dernier tutoriel : Messages Quit IRC : explications

    La rubrique IRC recrute des redacteurs : contactez moi

    Ce flim n'est pas un flim sur le cyclimse. Merci de votre compréhension.[/SIZE]

  5. #5
    Membre émérite
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Points : 2 411
    Points
    2 411
    Par défaut
    re,

    Je suppose dans ce script que tu as déjà lancé le pack #0 en téléchargement, et #1 et #2 sont en liste d'attente.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    on *:FILERCVD:*: {
      if ($count == $null) {
        set $count 3;
      } 
      msg $nick xdcc send [ $count ]
      inc $count
      if ($count == -1) {
        set $count -2
      }
      if ($count == -2) {
        unset $count
      }
    }
    
    on *:notice:*invalid*pack*: {
      set $count -1
    }
    Fonctionnement :

    Lors du premier fichier recu (déclanchement de l'évènement), le script crée une variables qui permet de savoir où on en est.
    Si cette variable existe, on ajoute le dernier fichier non encore téléchargé / en file d'attente dans la file d'attente. Si le dernier fichier n'existe pas, le xdcc renvoie un message du type "invalid pack number" en notice. Si on recoit ce message, l'evenement met la variable à -1. Lors de la reception de l'avant dernier fichier, on met $count à -2. Lors de la reception du dernier fichier, on supprime $count, cela réinitialise notre jeu d'évènements.

    Je n'ai pas testé mais tu as déjà une bonne base

    Si tu as un problème avec ce script n'hésite pas

    F.
    Développeur Java / Flex à Shanghai, Chine
    mes publications
    Mon dernier tutoriel : Messages Quit IRC : explications

    La rubrique IRC recrute des redacteurs : contactez moi

    Ce flim n'est pas un flim sur le cyclimse. Merci de votre compréhension.[/SIZE]

  6. #6
    Membre du Club Avatar de tiger33
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 77
    Points : 56
    Points
    56
    Par défaut
    Salut,

    S'il marche, ton script ne marche que pour 3 fichiers supplémentaires, non ? De plus, j'ai vu dans le cours de Soufiane Hassou, que les variables se nomment avec "%" pas des "$"

    J'ai écris çà :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    alias dl {
      ;calcul du nombre de fichier à downloader
      set -se %i $calc(($$2 - $$1)+ 1)
      ;stockage de la borne de départ
      set %k -se $$1
      ininitalisation du compteur de dl
      set  -se %j 0
      ;envoi du 1er pack
      /msg $$3 xdcc send $$1
      
      
    }
    on *:FILERCVD:*{
    ;cas ou au moins 1 variable n'est pas affectee
    if ((%i == $null)||(%j == $null)||(%j == $null)){}
    ElseIf (%j != %i){
    /inc -s %j 1
    /msg $nick xdcc send $calc(%k + %j)}
    else{/unsetall}}
    on *:ERROR:*{
    /echo zut
    /unsetall}
    qui semble ne pas marcher, mais je ne vois pas pourquoi help please
    Tiger33,
    Développeur, chômeur, en auto formation sur joomla!
    Site à venir

  7. #7
    Membre émérite
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Points : 2 411
    Points
    2 411
    Par défaut
    Salut,

    woups pour les variables, au temps pour moi
    Non ce script ne fonctionnera qu'avec un fichier en téléchargement et 2 fichiers en file d'attente.

    Premier élément de réponse :

    tu as ouvlié le dernier ":" donc ton évènement ne se déclanchera jamais.

    Concrètement tu aurais pu le voire car mIRC ne t'a pas fait l'indentation. De base si mIRC n'indente pas automatiquement quand tu ouvres la fenètre de scripts c'est qu'il y a une erreur de syntaxe dans le script non indenté (oubli d'accolades ouvrantes ou fermantes ou de ":").

    Autre chose : mIRC est généralement très très pointilleux sur la syntaxe : je n'ai jamais vérifié mais il se peut qu'il soit case sensitive (Elseif n'est pas elseif). Il n'aime pas quand il n'y a pas les espaces là où il faut.

    Je me souviens avoir eu des problemes de ce genre avec d'anciennes versions de mIRC :
    ne passait pas alors que
    passait.

    Le -s de /inc fait quoi ? Rien dans la doc de précisé
    Essaie de bien mettre tes accolades fermantes sur une ligne à part, ce qui permettra à mIRC de te faire une indentation propre.

    Si après celà, ça ne fonctionne otujours pas, pourrais tu poster une explication succinte de ton code ? Histoire que je comprenne exactement ce que tu as pensé en le codant.
    Développeur Java / Flex à Shanghai, Chine
    mes publications
    Mon dernier tutoriel : Messages Quit IRC : explications

    La rubrique IRC recrute des redacteurs : contactez moi

    Ce flim n'est pas un flim sur le cyclimse. Merci de votre compréhension.[/SIZE]

  8. #8
    Membre du Club Avatar de tiger33
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 77
    Points : 56
    Points
    56
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    alias dl {  
      ;calcul du nombre de fichier à downloader
      set -se %i $calc(($$2 - $$1)+ 1)
      ;stockage de la borne de départ
      set -se %k  $$1
      ;ininitalisation du compteur de dl
      set  -se %j 0
      ;envoi du 1er pack
      /msg $$3 xdcc send $$1
    }
    on *:FILERCVD:*: {
      ;cas ou au moins 1 variable n'est pas affectee
      if (%i == $null) || (%j == $null) || (%k == $null) {
        /echo variables non affectées -a
      }
      elseif (%j != %i){
      /inc -s %j 1
      /msg $nick xdcc send $calc(%k + %j)}
      else {
        /unsetall
      }
    }
    on *:ERROR:* {
      /echo zut
      /unsetall
    }
    Voici le code propre

    Usage désiré : /dl %pack_debut pack_fin serveur_xdcc

    Explication de l'algo :

    %i nombre de fichiers entre $$1 et $$2
    %j nombre de téléchargements effectués
    %k stockage du numéro du pack_debut
    Sur filercvd si une au moins des trois variables n'est pas affecté, on affiche un message (pour l'instant, car çà pourrait être chiant de recevoir un message chaque fois qu'1 fichier reçu ne l'a pas été suite à /dl ...)et on sort
    Si %j est different de %i on lance le pack suivant (%j + %k) sur l'émetteur du filercvd
    Sinon on efface les variables

    Bug rencontré actuellement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    elseif (%j != %i){
     <-- paramètres insufisants
    Tiger33,
    Développeur, chômeur, en auto formation sur joomla!
    Site à venir

  9. #9
    Membre émérite
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Points : 2 411
    Points
    2 411
    Par défaut
    salut,

    Essaie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    else {
       if (%j != %i) {
    avec les accolades fermantes qui vont avec.

    F.
    Développeur Java / Flex à Shanghai, Chine
    mes publications
    Mon dernier tutoriel : Messages Quit IRC : explications

    La rubrique IRC recrute des redacteurs : contactez moi

    Ce flim n'est pas un flim sur le cyclimse. Merci de votre compréhension.[/SIZE]

  10. #10
    Membre du Club Avatar de tiger33
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 77
    Points : 56
    Points
    56
    Par défaut
    çà marche je ne comprends pas la !=ce mais çà marche,je mettrai resolu, quand j'aurai fini mon lot
    a+
    et merci
    Tiger33,
    Développeur, chômeur, en auto formation sur joomla!
    Site à venir

  11. #11
    Membre émérite
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Points : 2 411
    Points
    2 411
    Par défaut
    Ca marche avec ma solution ou d'un coup ca marche ?

    F.
    Développeur Java / Flex à Shanghai, Chine
    mes publications
    Mon dernier tutoriel : Messages Quit IRC : explications

    La rubrique IRC recrute des redacteurs : contactez moi

    Ce flim n'est pas un flim sur le cyclimse. Merci de votre compréhension.[/SIZE]

  12. #12
    Membre du Club Avatar de tiger33
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 77
    Points : 56
    Points
    56
    Par défaut
    ca marche à merveille, un seul petit problème de borne %j est a 0 au debut, donc çà dl 1 de +. correction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    alias dl {  
      ;calcul du nombre de fichier à downloader
      set -se %i $calc(($$2 - $$1)+ 1)
      ;stockage de la borne de départ
      set -se %k  $$1
      ;ininitalisation du compteur de dl
      set  -se %j 1
      ;envoi du 1er pack
      /msg $$3 xdcc send $$1
    }
    on *:FILERCVD:*: {
      ;cas ou au moins 1 variable n'est pas affectee
      if (%i == $null) || (%j == $null) || (%k == $null) {
        /echo variables non affectées -a
      }
      else {
        if (%j != %i) {
          /inc -s %j 1
          /msg $nick xdcc send $calc(%k + %j)
        }
      }
      else {
        /unsetall
      }
    }
    on *:ERROR:*: {
      /echo zut
      /unsetall
    }
    Gestion des erreurs à pauffiner, après comment puis-je déposer mon source sur dvp ?
    Tiger33,
    Développeur, chômeur, en auto formation sur joomla!
    Site à venir

  13. #13
    Membre émérite
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Points : 2 411
    Points
    2 411
    Par défaut
    Il y a un sujet attitré :

    Vos sources

    F.
    Développeur Java / Flex à Shanghai, Chine
    mes publications
    Mon dernier tutoriel : Messages Quit IRC : explications

    La rubrique IRC recrute des redacteurs : contactez moi

    Ce flim n'est pas un flim sur le cyclimse. Merci de votre compréhension.[/SIZE]

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. photoshop conversion par lot (script) en jpg
    Par mic84 dans le forum Imagerie
    Réponses: 1
    Dernier message: 27/11/2011, 12h46
  2. script de connexion par ssh
    Par black_code dans le forum Modules
    Réponses: 2
    Dernier message: 25/07/2005, 15h10
  3. [mIRC] Script MIRC?
    Par tarnak dans le forum IRC / mIRC
    Réponses: 3
    Dernier message: 04/06/2005, 14h01
  4. [sybase] Suppression de tables par lot
    Par Higgins dans le forum Sybase
    Réponses: 2
    Dernier message: 30/09/2004, 16h42
  5. Transferts par web, quel SGBD ?
    Par Harry dans le forum Bases de données
    Réponses: 10
    Dernier message: 22/08/2003, 22h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo