Bluetooth Ponto
Aqui no INdT a gente tem um sistema de ponto que usa uma etiqueta RFID que fica em nossos crachás para marcar a hora que a gente chega e sai do trabalho. O problema é que esse sistema não é muito confiável e eu também vivo esquecendo de passar o meu crachá na tal maquininha e isso fez com que eu tenha o maior banco de horas negativas aqui da empresa.
Cansado dessa história eu tentei vários métodos diferentes para marcar a minha chegada e saída aqui da empresa. Usei planilha, adaptei um sisteminha feito por um colega de trabalho, anotei em um caderno… e nada. As anotações estavam sempre inconsistentes e impediam que eu fizesse a conferência do meu relatório de horas e corrigir eventuais problemas.
Mas isso mudou quando li um artigo que falava sobre um programinha que executa tarefas quando um dispositivo Bluetooth específico se aproximava do computador. Eu pensei: “Eu tenho um celular com Bluetooth e tenho como colocar um dongle Bluetooth na minha estação de trabalho da empresa. Eu posso registrar a minha chegada/saída na empresa baseado na presença do meu celular, afinal ele me acompanha quando chego ou saio do trabalho…”
Mas o programinha do artigo não funciona com Linux e minha estação de trabalho é Linux então tive que desenvolver o meu próprio script Bluetooth Ponto 0.1.
O funcionamento dele é simples: Quando executado sem nenhum parâmetro ele faz discovery dos dispositivos Bluetooth nas redondezas e registra as entradas e saídas desses dispositivos desde o último discovery. Então é só colocar ele no seu crontab ($ crontab -e) para ser executado de 5 em 5 minutos:
$ crontab -l # m h dom mon dow command */5 * * * * /path/completo/btponto.py
Esse comando irá gerar um arquivo de log para cada mês do ano dentro do diretório ~/.btponto e a partir desse arquivo a gente poderá gerar os relatórios.
Para gerar os relatórios é só criar um arquivinho de configuração com o MAC address do celular e o nome do dono:
$ cat .btponto/indt.cfg [osantana] bt = 00:0F:ED:ED:01:02 name = Osvaldo Santana Neto occupation = Researcher
e roda o btponto.py da seguinte forma:
$ btponto.py -f .btponto/indt.cfg .btponto/bluetooth-200703.log ------------------------------------------------------------------------ Username: osantana Fullname: Osvaldo Santana Neto BT Mac: 00:0F:ED:ED:01:02 Date In Out 2007-03-20 14:14:00 19:10:12 2007-03-21 09:35:12 19:20:11 2007-03-22 08:55:11
Esse programinha depende do Python BlueZ. No meu Ubuntu Edgy bastou executar: sudo apt-get install python-bluez para instalá-lo.
Para você descobrir qual o MAC address do teu celular tente:
$ hcitool scan
Scanning ...
00:0F:ED:ED:01:02 meu_celular
Ou, se o seu celular for um S60 da Nokia digite: *#2820# no teclado numérico.
A Triveos é especializada no desenvolvimento de aplicações Web e utiliza Python e Django em grande parte de seus projetos. Tendo como base esse know-how no uso de Python e Django criamos o Curso de Desenvolvimento Web com Python e Django nas modalidades in-company e online.
-
http://www.danilocesar.com danilocesar
-
http://www.danilocesar.com danilocesar
-
http://www.pythonbrasil.com.br Osvaldo Santana Neto
-
http://www.pythonbrasil.com.br Osvaldo Santana Neto
-
Nycholas Oliveira e Oliveira
-
http://www.pythonbrasil.com.br Osvaldo Santana Neto
-
http://www.pythonbrasil.com.br Osvaldo Santana Neto
-
http://lotonyckx.sourceforge.net Nycholas Oliveira e Oliveira
-
http://lotonyckx.sourceforge.net Nycholas Oliveira e Oliveira
-
http://www.danilocesar.com danilocesar
-
http://www.danilocesar.com danilocesar
-
http://www.pythonbrasil.com.br Osvaldo Santana Neto
-
http://www.pythonbrasil.com.br Osvaldo Santana Neto
-
lucmult
-
http://www.danilocesar.com danilocesar
-
http://www.danilocesar.com danilocesar
-
http://www.pythonbrasil.com.br Osvaldo Santana Neto
-
http://www.pythonbrasil.com.br Osvaldo Santana Neto
-
http://www.pythonbrasil.com.br Osvaldo Santana Neto
-
http://www.pythonbrasil.com.br Osvaldo Santana Neto



