Manejar dispositivos con bluetooth es bastante fácil utilizando Lightblue.
Lightblue proporciona un acceso sencillo a:
- La detección de dispositivos y de servicios (con y sin GUI)
- Interfaz de sockets estándar para RFCOMM y L2CAP
- Envío y recepción de archivos a través de OBEX
- La publicación de los servicios de RFCOMM y OBEX
- Información sobre el dispositivo.
Consulta la documentación de la API para más detalles.
Pueden buscar esta librería en los repositorios de su distribución de linux o bajar los binarios de la pagina oficial.
El código básico para enviar una imagen es el siguiente.
import lightblue # mac y nombre de los dispositivos detectados lightblue.finddevices() #devolverá la mac, canal y protocolo de comunicacion disponibles de los dispositivos, para el envio de archivos el mio es el 8, OBEX Object Push lightblue.findservices() #se crea la variable con la direccion mac y el canal del dispositivo cliente = lightblue.obex.OBEXClient('xx:xx:xx:xx:xx:xx',8) #despues de conectarse correctamente se enviara un mensaje como este.. #<OBEXResponse reason='OK' code=0x20 (0xa0) headers={}> cliente.connect() #lo que enviamos putresponse = cliente.put({"name": "luis.txt"}, file("luis.txt", 'rb')) cliente.disconnect()
Lo guardan y desde la terminal pueden ejecutarlo como:
$ python codigo.py
Fuente: El FrameWork de Luis
No hay comentarios:
Publicar un comentario