75 lines
1.6 KiB
Plaintext
75 lines
1.6 KiB
Plaintext
|
#!/bin/bash
|
||
|
if [ $UID -ne 0 ]; then
|
||
|
echo "Ejecute 'sudo $0'"
|
||
|
exit
|
||
|
fi
|
||
|
|
||
|
# LECTURA FICHERO DE CONFIGURACION
|
||
|
|
||
|
config=/etc/nodemecu.conf
|
||
|
source $config
|
||
|
|
||
|
[ -z $1 ] && exit
|
||
|
|
||
|
|
||
|
com=$1
|
||
|
|
||
|
case $com in
|
||
|
|
||
|
start)
|
||
|
if [ -z $interval ]; then
|
||
|
echo "Asegurese de haber establecido 'intervalo' de regitro y envio de datos."
|
||
|
exit 1
|
||
|
fi
|
||
|
if [ -z $name ]; then
|
||
|
echo "Asegurese de haber establecido el 'nombre' de dispositivo."
|
||
|
exit 1
|
||
|
fi
|
||
|
echo "El modo de operación es '$mode', puede cambiar el modo con el comando:"
|
||
|
echo "'nomecu modo MODE' donde 'MODE' puede ser 'test' para generar y enviar datos simulados o 'sensores' para enviar datos tomados de los sensores."
|
||
|
echo ""
|
||
|
read -p "Desea continuar? Presione 'enter' para continuar o 'ctrl-c' para cancelar..."
|
||
|
echo "*/$interval * * * * /opt/nodemecu/data_gen.sh" > /tmp/nodemecu.crontab
|
||
|
crontab -u root /tmp/nodemecu.crontab
|
||
|
echo ""
|
||
|
echo "Se enviarán datos cada $interval minutos."
|
||
|
echo ""
|
||
|
exit
|
||
|
;;
|
||
|
stop)
|
||
|
crontab -u root -r
|
||
|
echo "Se detuvo la toma y envio de datos."
|
||
|
echo ""
|
||
|
;;
|
||
|
intervalo)
|
||
|
if [[ $1 == intervalo && $2 -ge 1 && $2 -le 60 ]]; then
|
||
|
sed -i 's/interval=[0-9]*/interval='$2'/' $config
|
||
|
echo "intervalo seteado en $2"
|
||
|
exit
|
||
|
else
|
||
|
echo "Establezca un valor entre 1 y 60."
|
||
|
exit 1
|
||
|
fi
|
||
|
;;
|
||
|
nombre)
|
||
|
|
||
|
parametros=$*
|
||
|
nombre=$(echo $parametros | sed 's/nombre //g' | sed 's/ /_/g')
|
||
|
if [[ "$nombre" =~ ^[a-zA-Z0-9_]+$ ]];then
|
||
|
sed -i 's/name=[a-z A-Z 0-9]*/name='"$nombre"'/' $config
|
||
|
else
|
||
|
echo "El nombre solo puede contener carateres alfanumericos."
|
||
|
fi
|
||
|
;;
|
||
|
monitor)
|
||
|
$install_dir/monitor.sh
|
||
|
;;
|
||
|
|
||
|
*)
|
||
|
exit
|
||
|
;;
|
||
|
|
||
|
esac
|
||
|
|
||
|
|