Outils pour utilisateurs

Outils du site


logiciel_dlfix

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Prochaine révisionLes deux révisions suivantes
logiciel_dlfix [2008/09/14 15:56] thierrylogiciel_dlfix [2012/03/26 21:02] thierry
Ligne 1: Ligne 1:
 ====== dlfix ====== ====== dlfix ======
 +===== Description =====
 +**''dlfix''** est un script en Perl permettant d'automatiser des traitements avec le service [[http://dl.free.fr|dl.free.fr]] .
  
-Télécharger la version 0.2 BETA => {{:dlfix.zip|dlfix.zip}} <=+Le but principale étant de rendre disponible sur un web, une liste de fichiers placé sur dl.free.fr, sans intervention humaine (aprés un minimum de configuration, bien sur).
  
-  $ unzip dlfix.zip+**''dlfix''** n'utilise qu'un simple fichier pour stocker les informations: par defaut il se nomme **"dlfix.conf"** et se trouve dans le répertoire courant.
  
-Aprés extraction, il peut être nécessaire de rendre le script éxécutable:  
-  $ chmod a+x dlfix 
  
-Installer: copier quelque part... 
  
  
  
-===== Description ===== +===== Telecharger =====
-**''dlfix''** est un script en Perl permettant d'automatiser des traitements avec le service [[http://dl.free.fr|dl.free.fr]] . +
- +
-Le but principale étant de rendre disponible sur un web, une liste de fichiers placé sur dl.free.fr, sans intervention humaine (aprés un minimum de configuration, bien sur). +
- +
-**''dlfix''** n'utilise qu'un simple fichier pour stocker les informations: par defaut il se nomme **"dlfix.conf"** et se trouve dans le répertoire courant.+
  
  
 +|  Télécharger la version 0.24 BETA |  => {{:dlfix-0.24-beta.zip|dlfix-0.24-BETA.zip}} <=  | 18/03/2012 |
 +|  Télécharger la version 0.22 BETA |  => {{:dlfix-0.22-BETA.zip|dlfix-0.22-BETA.zip}} <=  | 03/05/2009 |
  
 +  $ unzip dlfix.zip
  
 +Aprés extraction, il peut être nécessaire de rendre le script éxécutable: 
 +  $ chmod a+x dlfix
  
 +Installer: copier quelque part...
  
 ===== Syntaxe générale ===== ===== Syntaxe générale =====
Ligne 31: Ligne 31:
   $ dlfix configure --create --login mon_compte_free --password mon_pass_de_compte   $ dlfix configure --create --login mon_compte_free --password mon_pass_de_compte
   $ dlfix manage --add ./films/matrix_vii_dvdscr_vostfr.avi   $ dlfix manage --add ./films/matrix_vii_dvdscr_vostfr.avi
 +
  
  
Ligne 43: Ligne 44:
   * La commande "run" ne fonctionne qu'avec des fichiers précédements activé avec l'option "--enable" de la commande "manage".   * La commande "run" ne fonctionne qu'avec des fichiers précédements activé avec l'option "--enable" de la commande "manage".
   * Diffuser la liste des relations "fichiers" et "lien" avec la commande "publish".   * Diffuser la liste des relations "fichiers" et "lien" avec la commande "publish".
 +
 +
 +===== Techniques =====
 +  *L'envoi de fichiers est effectué par FTP
 +  *Lorsqu'un traitement va bien, **''dlfix''** ne n'affiche rien (juste "''exit(0)''") (sauf s'il y a l'option ''--verbose'')
 +  *Lorsqu'il y a des erreurs, elles sont envoyées sur STDERR (et le reste sur STDOUT), et **''dlfix''** retourne "''exit(1)''".
  
 ===== En pratique ===== ===== En pratique =====
Ligne 53: Ligne 60:
   $ dlfix manage --add ./films/matrix_vii_dvdscr_vostfr.avi   $ dlfix manage --add ./films/matrix_vii_dvdscr_vostfr.avi
   $ dlfix manage --add ./music/nin/06-nine_inch_nails-still_it.mp3   $ dlfix manage --add ./music/nin/06-nine_inch_nails-still_it.mp3
 +
 +Pour ajouter la totalité d'un répertoire (mais pas les sous répertoires):
 +
 +  $ dlfix manage --glob-timeout 90d --glob ./music/Devin_Townsend/Devin_Townsend_-_2014_-_Ziltoid_2
  
 ==== activer l'utilisation ==== ==== activer l'utilisation ====
Ligne 81: Ligne 92:
   06-nine_inch_nails-still_it.mp3 http://dl.free.fr/cgvipeyku   06-nine_inch_nails-still_it.mp3 http://dl.free.fr/cgvipeyku
 (Ce ne sont pas des liens valides: ce ne sont que des exemples) (Ce ne sont pas des liens valides: ce ne sont que des exemples)
 +
  
  
Ligne 139: Ligne 151:
  
  
 +
 +===== CGI Perl =====
 +Lien: http://johnbokma.com/perl/redirectioncgiscript.html
 +
 +Exemple, soit un lien comme cela **''href=/cgi-bin/dlfix.pl?&file=filename.ext''** et un script **''dlfix.pl''** dans **''/cgi-bin''**:
 +
 +  #!/usr/bin/perl -w
 +    
 +  use strict;
 +  use warnings;
 +  
 +  {
 +  if ( defined( $ENV{QUERY_STRING} ) ) {
 +    if ( my ( $filename ) = $ENV{QUERY_STRING} =~ /\&file=(.*\.\w+)?/ ) {
 +      if ( open( my $h, '<' , '../dlfix.txt' ) ) {
 +        my $dllink;
 +  
 +        while( my $li = readline( $h ) ) {
 +          if ( my ( $fn, $dl ) = split(/\t/,$li) ) {
 +            if ( $fn eq $filename ) {
 +              $dllink = $dl;
 +              last;
 +            }
 +          }
 +        }
 +  
 +        close( $h );
 +  
 +        if ( $dllink ) {
 +          print STDOUT <<HEAD;
 +  Status: 302 Found
 +  Location: $dllink
 +  
 +  HEAD
 +          exit( 0 );
 +        }
 +      }
 +    }
 +  }
 +  
 +  print STDOUT <<HEAD;
 +  Status: 302 Found
 +  Location: /
 +  
 +  HEAD
 +  
 +  0;
 +  }
  
 ===== dlfix ? ===== ===== dlfix ? =====
Ligne 383: Ligne 443:
       dlfix version       dlfix version
      
 +
 +===== un cron =====
 +  $ crontab -l
 +  1    * * * * cd /home/thierry/mp3;./dlfix run --bind-address=192.168.1.99 --upload --alarm 20 1>/dev/null
 +  */10 * * * * cd /home/thierry/mp3;./dlfix run --bind-address=192.168.1.99 --exist --alarm 1 1>/dev/null
 +  45   * * * * cd /home/thierry/mp3;./dlfix publish --bind-address=192.168.1.99 --ftp-user=toto --ftp-password=t0t0 --nooutput --alarm 1 1>/dev/null
 +
 +| :!: Il faut eviter que le scripte demarre en même temps, à cause du "lock". |
 +
logiciel_dlfix.txt · Dernière modification : 2012/04/12 10:52 de thierry