Commit bba04dda authored by David Marzal's avatar David Marzal 🐧
Browse files

documentar on_event_start

parent 2588efd9
......@@ -6,7 +6,7 @@ Este proyecto contiene las instrucciones y un script para montar un sistema de v
## Funcionamiento
A grandes rasgos lo que este proyecto hace es utilizar la capacidad de `motion` de generar eventos al detectar movimientos para mandar una foto y un mensaje a un canal de Telegram, alertandonos de cuando hay movimiento en nuestra casa (o localización donde lo tengamos montado).
A grandes rasgos lo que este proyecto hace es utilizar la capacidad de [motion](https://motion-project.github.io/) de generar eventos al detectar movimientos para mandar una foto y un mensaje a un canal de Telegram, alertandonos de cuando hay movimiento en nuestra casa (o localización donde lo tengamos montado).
* La configuración nos permite definir las IPs de nuestros dispositivos moviles (se recomienda configurar IP fija o por MAC) para detectar si estamos en casa o no.
* En función de si estamos en casa o no el programa actua de la siguiente manera:
* **Estamos en casa** (o alguno de nuestros dispositvos lo esta) -> Solo nos mandara un mensaje de aviso _silencioso_, sin fotografía. Ademas los mensajes tendran un tiempo mínimo entre ellos definido en el fichero de configuración (por defecto 30 minutos), para que no tengamos mensajes constantes si estamos moviendonos por casa.
......@@ -29,16 +29,15 @@ Es necesario:
### Raspberry Pi
Es preferible que ya tengamos [motion](https://motion-project.github.io/motion_config.html) funcionando en raspbian, pero si no, el comando `install script` lo interá hacer por nosotros.
Es preferible que ya tengamos [motion](https://motion-project.github.io/4.1.1/motion_guide.html) funcionando en raspbian, pero si no, el comando `install script` lo intentará hacer por nosotros.
* Clonar el repo con `git clone https://gitlab.com/Marzal/vigilante-casero.git`
* El programa debería funcionar desde esa misma carpeta pero tiene la opción de instalarse en `/usr/local/{etc,bin}`
* Rellenar los datos de configuración en `vigilantecasero.conf`
* Configurar `motion` para que ejecute el script cada vez que guarde una imagen con una de estas dos opciones en `/etc/motion/motion.conf`:
* Editando las lineas que contienen al menos los siguientes parametros: `on_picture_save` y `target_dir`
* `on_picture_save` con la ruta correcta `on_picture_save RUTA/vigilantecasero.sh avisa %f >> /tmp/vigilantecasero.log 2>&1`
* `target_dir`
* El comando `vigilantecasero.sh install script` añadira el comando necesario apuntando a `/usr/local/bin/vigilantecasero.sh`, ademas de moficiar varias opciones.
* Editando las lineas que contienen al menos los siguientes parametros: `on_event_start`, `on_picture_save` y `target_dir`
* `on_event_start` es opcional. Solo si queremos un preaviso por si se corta la corriente o falla algo antes de enviar la imagen.
* El comando `vigilantecasero.sh install script` añadira los comandos necesarios apuntando a `/usr/local/bin/vigilantecasero.sh`, ademas de moficiar varias opciones.
## Configuración
......@@ -74,7 +73,16 @@ DEPURA=false
* En caso de querer configurarlo a mano hay que modificar obligatoriamente estas opciones:
* **/etc/motion/motion.conf**
* `target_dir $RUTAVIDEOS`
* `on_event_start RUTA/vigilantecasero.sh preavisa %v >> /tmp/vigilantecasero.log 2>&1#`
* `on_picture_save RUTA/vigilantecasero.sh avisa %f >> /tmp/vigilantecasero.log 2>&1`
* **/etc/default/motion**
* Hay que activar el demonio poniendo a `yes` la opción `start_motion_daemon`
* Se recomiendo activar el servicio para que se lance tras un reinicio: `systemctl enable motion --now`
## Recomendaciones
### Usar tmpfs para el /tmp
Añadiendo la siguiente linea a `/etc/fstab` conseguimos descargar el uso de la microSD y acelerar varios procesos de la placaM
```bash
tmpfs /tmp tmpfs defaults,noatime,nosuid 0 0
```
\ No newline at end of file
......@@ -187,6 +187,7 @@ install_motion () {
sed -i 's/^picture_filename.*/picture_filename preview/' $confmotion
sed -i 's/^movie_filename.*/movie_filename %Y-%m-%d_%H%M%S/' $confmotion
sed -i 's/^lightswitch.*/lightswitch 10/' $confmotion
sed -i "s#.*on_event_start .*#on_event_start $bindir/$SCRIPTNAME preavisa %v >> /tmp/vigilantecasero.log 2>\&1#" $confmotion
sed -i "s#.*on_picture_save .*#on_picture_save $bindir/$SCRIPTNAME avisa %f >> /tmp/vigilantecasero.log 2>\&1#" $confmotion
sed -i 's/start_motion_daemon=no/start_motion_daemon=yes/' /etc/default/motion
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment