Script que realice accion al recibir un SMS.
Publicado por Alonso Saez Aranguiz (1 intervención) el 02/03/2019 17:42:15
Mi caso es el siguiente:
-Tengo un sistema Linux en el que tengo instalado un smsd (SmsTools3)
-Este sistema funciona por medio de un modulo GSM en el que puedo enviar y recibir mensajes de texto.
-Los mensajes de texto llegan a una carpeta determinada (/var/spool/sms/incoming)
-Necesito un script que haga diferentes cosas en respuesta de un SMS entrante al directorio "Incoming". La idea es que cada vez que llegue un SMS, el sistema analice la carpeta donde se recepcionan dichos mensajes, escoja el mensaje mas RECIENTE y ejecute una acción sobre el sistema.
Lo que tengo por el momento es esto:
RESPUESTA:
root@AcerNitro5:/home/halley# ./script3.sh
total 8
-rw-r--r-- 1 root root 54 mar 1 11:07 prueba2
-rw-r--r-- 1 root root 74 mar 1 10:18 prueba1
El patrón Reset fue localizado en /var/spool/sms/incoming/prueba1
/var/spool/sms/incoming/prueba2.
-------------------------------------------------------------------------------------------------------------------------------------------------------
Me falta mucho por completar aun...estoy un poco perdido sobre como hacer para que el script seleccione el el archivo de texto (SMS entrante a incoming) mas RECIENTE donde exista dicho patron "Reset" y despues ejecute un reboot al sistema.
-------------------------------------------------------------------------------------------------------------------------------------------------------
-Tengo un sistema Linux en el que tengo instalado un smsd (SmsTools3)
-Este sistema funciona por medio de un modulo GSM en el que puedo enviar y recibir mensajes de texto.
-Los mensajes de texto llegan a una carpeta determinada (/var/spool/sms/incoming)
-Necesito un script que haga diferentes cosas en respuesta de un SMS entrante al directorio "Incoming". La idea es que cada vez que llegue un SMS, el sistema analice la carpeta donde se recepcionan dichos mensajes, escoja el mensaje mas RECIENTE y ejecute una acción sobre el sistema.
Lo que tengo por el momento es esto:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/bash
#Declaracion
DIRECTORIO=/var/spool/sms/incoming
PATRON='Reset'
# Búsqueda
ls -lt $DIRECTORIO && grep -iqrl $PATRON $DIRECTORIO/*
if [ $? -eq 0 ]; then
LUGAR=$(grep -irl $PATRON $DIRECTORIO/*)
echo "El patrón $PATRON fue localizado en $LUGAR."
else
echo "No se encontró el patrón $PATRON en los archivos presentes dentro de $DIRECTORIO."
fi
RESPUESTA:
root@AcerNitro5:/home/halley# ./script3.sh
total 8
-rw-r--r-- 1 root root 54 mar 1 11:07 prueba2
-rw-r--r-- 1 root root 74 mar 1 10:18 prueba1
El patrón Reset fue localizado en /var/spool/sms/incoming/prueba1
/var/spool/sms/incoming/prueba2.
-------------------------------------------------------------------------------------------------------------------------------------------------------
Me falta mucho por completar aun...estoy un poco perdido sobre como hacer para que el script seleccione el el archivo de texto (SMS entrante a incoming) mas RECIENTE donde exista dicho patron "Reset" y despues ejecute un reboot al sistema.
-------------------------------------------------------------------------------------------------------------------------------------------------------
Valora esta pregunta


0