Bluetooth Proximity Detection on Debian/Ubuntu
Guardando ieri al tipo che ha scriptato un affarino per bloccare/sbloccare il proprio Mac OSx se questo e’ vicino o meno al proprio cellulare Bluetooth, mi e’ venuto da fare la stessa cosa con il mio portatile Ubuntu.
Il sistema e’ molto semplice, basta tenere attivi i bluetooth del pc e del cell, quando uscirete dalla stanza in cui siete, portandovi via il vostro cell, il pc si accorgera’ della vostra assenza e si blocchera’ automaticamente attivando lo screensaver e bloccandosi, una volta che tornerete in prossimita’ del vostro pc questo automaticamente si accorgera’ del vostro ritorno sbloccandosi senza nemmeno inserire la password.
Ma vediamo come funziona:
Prima di tutto scaricate lo script Bluetooth Proximity Detection
Ricordatevi di configurare lo script con i vostri dati in particolare:
DEVICE=”00:16:4E:D0:B0:5E”
dovete impostarlo con il device del vostro cell che potete vedere usando il comando:
hcitool scan
ovviamente avendo acceso prima il BT del cell
CHECK_INTERVAL=10
e’ il valore in secondi che volete attendere tra una scansione e l’altra, ovvero ogni X secondi lui provera’ a vedere se ci siete o meno
THRESHOLD=-2
e’ il valore impostato per settare quanto distante (intensita’ del segnale) deve essere il vostro cell per catalogarlo “fuori portata” e quindi attivare il blocco del pc
FAR_CMD=’/usr/bin/gnome-screensaver-command –activate -l’
e’ il comando che verra’ eseguito appena vi allontanerete dal pc
NEAR_CMD=’/usr/bin/gnome-screensaver-command –deactivate’
e’ invece il comando eseguito non appena rientrerete in prossimita’ del vostro pc
Queste due ultime e tutte le altre impostazioni vanno gia’ bene se avete una distribuzione Debian o Ubuntu, lo script ovviamente puo’ funzionare anche in qualunque altra distribuzione Linux basta modificare i path ed eventualmente i comandi se ce ne fosse bisogno.
A questo punto e’ sufficiente eseguire lo script per attivarlo e il gioco e’ fatto!
Fate delle prove accendendo e spegnendo il BT del vostro cell (senza dover uscire dalla stanza) per verificare che tutto funzioni correttamente, una volta settato tutto per bene potete aggiungere alla vostra sessione Gnome anche questo script in modo da averlo attivo non appena vi loggate al vostro pc.
Have fun!
Grazie a loro per lo script iniziale
If you enjoyed this post, please consider to leave a comment or subscribe to the feed and get future articles delivered to your feed reader.




22:28 on April 13th, 2007
hi nice site.
10:30 on May 18th, 2007
Ciao, lo script funziona molto bene, grazie mille per il post.
Ho inserito lo script alla mia sessione di Gnome su Ubuntu (Sistema–>Pref–>Sessioni–>Prog avvio) purtroppo all’avvio carica lo script ma non esegue la ricerca del cellulare, se invece lo lancio da terminale funziona che è una meraviglia, qualcuno mi sa dire se devo impostare qualche altro parametro o altro? Scusate la mia bassa conoscenza di Linux. Ciao Grazie
15:30 on May 21st, 2007
Prova a vedere se nel file /etc/default/bluetooth e’ settata questa opzione a 1:
BLUETOOTH_ENABLED=1
13:11 on September 18th, 2007
Ciao… ho provato il tuo script su ubuntu 7.04.
Devo dire che lo script è geniale anche se qualcosa non mi è del tutto chiara… a cominciare da quel valore RSSI: non riesco a capire intanto perchè negativo… inoltre non ho capito se mettendo tipo -12 il cellulare va più vicino o più lontano…
inoltre ho cercato di vedere cosa fa lo script togliendo il commento dall’opzione di debug.
E mi dice:
Connected
state = far, RSSI = 0
però non mi blocca lo schermo… ma se è far non dovrebbe bloccarlo?
Alla fine ho spento il bt del cellulare e si è bloccato lo schemro.
L’ho riacceso, ma lo schermo non si è sbloccato (mi dice sempre
Attempting connection…
Connected
state = far, RSSI = 0
)
ma perchè? bho…
aiutooo
grazie
22:54 on August 4th, 2008
Ciao! ho eseguito lo script.. molto carino! il problema è che parte anche se il cel è vicino e acceso.. come se non lo riconoscesse! eppure il DEVICE è giusto.. mah ci ragiono un pò su, nel frattempo l’ho buttato nel cestino e riavviato tutto O_o