PDA

Ver la Versión Completa : Usar bluetooth para identificarse en Linux



Xripox
10/03/2011, 19:34
[Only registered and activated users can see links]

Aprovechando la funcionalidad de hcitool (herramienta para configurar conexiones bluetooth) crearemos una conexión con alguno de nuestros dispositivos bluetooth (por ejemplo un celular), una vez hecha la conexión, nuestro script estará funcionando dentro de un bucle monitorizando la calidad de la conexión con nuestro dispositivo bluethooth y nuestra computadora, cuando el dispositivo se aleje, es decir cuando la calidad de la conexión disminuya, se bloquerá la pantalla automáticamente, cuando el dispositivo se acerca, la pantalla de desbloquea, todo esto sin necesidad de ingresar nuestro password, de igual manera cuando la conexión entre nuestro dispositivo y nuestra computadora se cierre se bloquerá la pantalla.

hcitool requiere permisos de root para funcionar, por lo que si no ejecutas el script en modo root éste no funcionará. Ademas requiere que uno ejecute el programa cada vez que encienda la pc. Pero por supuesto se puede configurar el archivo SUDOERS para que no nos este pidiendo clave de root y se puede poner la aplicacion para que se autoarranque con cada inicio de sesion. Aunque esas cosas ya quedan a cargo de ustedes.


#!/bin/bash

export INTERFACE=”A0:07:98:A7:D5:3C”

prom=”Link quality: 255″

while true; do

hcitool cc ${INTERFACE}
sleep 1

Signal=”`hcitool lq ${INTERFACE}`”
#Signal=”Link quality: 254″

echo $Signal

#if [ "${Signal##*: }" -lt 300 ]; then
if [ "$Signal" < "$prom" ]; then
echo “Baja señal”
sudo -u Usuario gnome-screensaver-command –lock

else
if [ "${Signal##*: }" -gt 220 ]; then
echo “Conectado”
sudo -u Usuario gnome-screensaver-command –deactivate

else
echo “Desconectado”
sudo -u Usuario gnome-screensaver-command –lock

fi

fi

hcitool dc ${INTERFACE}

done

Debes copiar ese texto y cambiar 2 cosas. En donde dice usuario poner tu nombre de usuario y en donde dice Export INTERFACE=”A0:07:98:A7:D5:3C” debes poner el identificador de tu dispositivo bluetooth. Lo puedes obtener con el siguiente comando:


sudo hcitool scan

luego guardas el archivo y lo nombras por ej. blueconexion.sh y le das permisos de ejecucion (chmod +x) y lo ejecutas.


./blueconexion.sh

Luego lo puedes mover a la carpeta /bin para que este siempre disponible, etc etc. Es un script sencillo que se puede mejorar.



Visto en la Vida Linux ([Only registered and activated users can see links])