Enviar archivos por bluetooth con Python


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