es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo enviar SMS a través de Bluetooth utilizando PyOBEX?

Estoy intentando enviar SMS a través de Bluetooth a mi teléfono usando PyOBEX, pero está devolviendo <pyobex.common.unknownresponse object="" at="" 0x107f2bd50="">.

Aquí está mi código:

port = 4
target_address = "C0:3D:03:43:E1:5A"
message = 'BEGIN:BMSG\r\nVERSION:1.0\r\nSTATUS:UNREAD\r\nTYPE:SMSGSM\r\nFOLDER:telecom/msg/outbox\r\nBEGIN:VCARD\r\nVERSION:3.0\r\nFN:Yona Mahundi\r\nN:Yona Mahundi\r\nTEL:+255762637233\r\nEMAIL:yona@gmail.com\r\nEND:VCARD\r\nBEGIN:BENV\r\nBEGIN:BBODY\r\nCHARSET:UTF-8\r\nLENGTH:34\r\nBEGIN:MSG\r\ni am a text.\r\nEND:MSG\r\nEND:BBODY\r\nEND:BENV\r\nEND:BMSG\r\n'

client = MessageAccessProfileClient(target_address, port)

result = client.connect()

if not isinstance(result, responses.ConnectSuccess):
    sys.stderr.write("Failed to connect to phone.\n")
    sys.exit(1)

resp = client.put('telecom/msg/outbox', message.encode(), header_list=[
    headers.Type(b"x-bt/message"), headers.AppParameters(b'\x0b\x01\00\x0b\x00\x14\x01\x01')
])

Mi entorno:

  • OS: MacOS Versión 12.0.1
  • Memoria: 16GB
  • Procesador: 2.5 GHz
  • Versión de Python: 3.7.11
  • Versión de PyOBEX: 0.29</pyobex.common.unknownresponse>
Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El mensaje de error <PyOBEX.common.UnknownResponse object at 0x107f2bd50> sugiere que la respuesta recibida del dispositivo objetivo no es reconocida por la biblioteca PyOBEX. Esto puede ser debido a varias razones, como un formato de mensaje incorrecto o un tipo de mensaje no compatible.

    Aquí hay algunos pasos que puedes intentar para resolver el problema:

    1. Verificar el formato del mensaje: Asegúrate de que el formato del mensaje que estás utilizando sea compatible con el dispositivo objetivo. Puedes consultar el manual o la documentación del dispositivo para conocer los tipos de mensaje compatibles.
    2. Asegurar la codificación correcta: Dado que la carga del mensaje está codificada, verifica que la codificación sea correcta. En el código proporcionado, el mensaje está codificado con UTF-8. Verifica si el dispositivo es compatible con la codificación UTF-8.

    3. Verificar la conectividad Bluetooth: Asegúrate de que el dispositivo objetivo esté correctamente emparejado y conectado a tu computadora mediante Bluetooth. Puedes intentar conectarte a otros dispositivos Bluetooth para verificar si el problema es específico de tu dispositivo objetivo.

    4. Actualizar la biblioteca PyOBEX: Asegúrate de tener la última versión de la biblioteca PyOBEX instalada. Puedes verificar las actualizaciones utilizando el administrador de paquetes pip ejecutando el comando pip install --upgrade pyobex.

    5. Depuración: Puedes depurar la respuesta recibida del dispositivo objetivo para identificar la causa raíz del problema. Puedes imprimir el objeto de respuesta e inspeccionar sus propiedades, o utilizar un depurador para seguir paso a paso el código y ver dónde se produce el error.

    Estos pasos de solución de problemas deberían ayudarte a resolver el problema de enviar mensajes de texto a través de Bluetooth utilizando PyOBEX.

Comments are closed.