]> git.llucax.com Git - z.facultad/75.08/llamadas.git/blob - inst/afimonio
empiezan a tomar forma los paths
[z.facultad/75.08/llamadas.git] / inst / afimonio
1 #!/bin/bash
2 # uso las funciones de util.sh
3 . util.sh
4
5
6 # filtra el nombre del archivo pasado por parametro sacandole todos los
7 # caracteres que no sean numeros 
8 checkfilename(){
9         date=`echo $1 | cut -d "." -f 1`
10         central=`echo $1 | cut -d "." -f 2`
11
12         validar_solo_numeros "$date"
13         if [ "$?" -ne 0 ]; then
14                 return 1
15         fi
16         mes=${date:4:2}
17         validar_rango "$mes" "1" "12"
18         if [ "$?" -ne 0 ]; then
19                 return 1
20         fi
21         dia=${date:6:2}
22         validar_rango "$dia" "1" "31" 
23         if [ "$?" -ne 0 ]; then
24                 return 1
25         fi
26         hora=${date:8:2}
27         validar_rango "$hora" "0" "23"
28         if [ "$?" -ne 0 ]; then
29                 return 1
30         fi
31         min=${date:10:2}
32         validar_rango "$min" "0" "59"
33         if [ "$?" -ne 0 ]; then
34                 return 1
35         fi
36         validar_solo_numeros "$central"
37         if [ "$?" -ne 0 ]; then
38                 return 1
39         fi
40         return 0                
41 }
42
43 #--------------------MAIN SCRIPT----------------------
44 # busco el archivo de configuracion para recuperar las rutas hacia los archivos
45 # que debo leer.
46
47 aficonf=~/sop/conf/afinstal.conf
48 # Recupero las rutas a todos los directorios y archivos que necesito
49
50 DATADIR=`grep -n "DATADIR" $aficonf | grep 15 | sed s?.*DATADIR\ =\ ??`
51 SOURCEDIR="$DATADIR/aprocesar/"
52 ACEPTDIR="$DATADIR/enproceso/"
53 REJECTDIR="$DATADIR/rechazadas/"
54 BINDIR=`grep -n "BINDIR" $aficonf | grep 11 | sed s?.*BINDIR\ =\ ??`
55 LOGDIR=`grep -n "LOGDIR" $aficonf | grep 32 | sed s?.*LOGDIR\ =\ ??`
56 LOGNAME=`grep -n "LOGFILE" $aficonf | grep 33 | sed s?.*LOGFILE\ =\ ??`
57 logfile=$LOGDIR/$LOGNAME
58 echo $logfile
59 # Comienza el ciclo infinito que mueve los archivos
60 while [ true ]; do 
61         for file in `ls $SOURCEDIR` ; do
62                 checkfilename $file     
63                 if [ "$?" -eq 0 ]; then
64                         mv $SOURCEDIR$file $ACEPTDIR #cambiar copiar por mover
65                         fecha=$(date +%d/%m/%Y-%H:%M)
66                         echo "$fecha $USER afimonio:\"Se detecta archivo de llamadas $file\"" >> $logfile
67                 else 
68                         mv $SOURCEDIR$file $REJECTDIR #cambiar copiar por mover
69                         fecha=$(date +%d/%m/%Y-%H:%M)
70                         echo "$fecha $USER afimonio:\"Se rechaza el  archivo $file\"" >> $logfile
71                 fi
72         done #for
73         # me fijo si el antifraude esta corriendo y si no lo esta lo arranco
74         if ! is_lock "antifraude.pl" ; then
75                 echo "DISPARANDO ANTIFRAUDE"
76                 $BINDIR/antifraude.pl
77         fi
78         break
79         # sleep 60
80 done #while 
81