WEBCAM480K_1Esta noche tenía un ratito y me puse a jugar con la Eee PC que tanto me costó configurar. Lo que hice fue un simple script en BASH que toma una foto con la webcam, la guarda en un archivo temporal y la envía por mail a un destinatario.

El script utiliza ffmpeg y mutt. Pueden instalarlos poniendo

sudo apt-get install ffmpeg mutt

Para que Mutt funcione se tiene que usar con un MTA, por default postfix. Se puede instalar con Exim o con SSMTP. Este último es una especie de wrapper que nos permite configurar un MTA externo para enviar los mails. Esta guía explica bien cómo hacerlo.

#!/bin/bash
IMG_SIZE="320x240"
CAM_DEV="/dev/video0"

IMG_NAME="`mktemp -u /tmp/img.XXXXXX`.jpg"

mutt=/usr/bin/mutt
ffmpeg=/usr/bin/ffmpeg
date=`date`
hostname=`hostname`

echo "Taking picture and saving it on $IMG_NAME"

$ffmpeg -f video4linux2 \
	-s $IMG_SIZE \
	-r 5 \
	-vframes 1 \
	-i $CAM_DEV \
	-f mjpeg \
	$IMG_NAME > /dev/null 2>&1

if [ ! -z $1 ]; then
	echo "Attempting to email the picture to $1"
	echo "Picture taken on $hostname at $date" | \
		$mutt -s "A picture was sent to you" -a $IMG_NAME -- $1
fi

Para ejecutarlo, copiamos el contenido en un archivo, por ejemplo “cam.sh”. Luego le damos permisos de escritura y lo ejecutamos.

# chmod +x cam.sh
# ./cam.sh "myaddress@domain.com"

Entre las utilidades de este script podríamos pensar en sacar una foto de la persona en frente de la máquina cuando se produce un login incorrecto o en algún otro evento que pudiera darnos la pauta de un uso diferente al usual. Ideal para paranóicos y nerds obsesivos.

Bookmark and Share

Quizás te interese:

  1. Netstat con colorcitos
  2. Backup de todas las bases de datos MySQL en archivos separados
  3. Tips Apache: ver configuración desde la línea de comandos
  4. Python-Directadmin: API para conectarse a Directadmin desde Python
  5. Actualizar software con Custombuild para Directadmin