Como receber um arquivo via bluetooth no Fedora 24 usando o cli?

2

Essa pergunta já pode ter sido feita, mas não consigo descobrir como fazer isso funcionar.

Até agora, foi o que encontrei (e falhei):

  • Usando o obexpush (o comando nem existe, a correspondência mais próxima é obex_push)
  • O uso do obexftpd falha com o 'registro no servidor SDP falhou'. Aguardando conexão. e nada mais acontece, não consigo receber arquivos.
  • obex_push também falha com sdptool add --channel = 12 OPUSH (12 é o canal OPUSH no meu celular, encontrado usando o hcitool browse).

Até agora eu posso emparelhar, conectar e 'confiar' no meu dispositivo usando bluetoothctl e fluxo de áudio, além de conexão com a Internet para o meu PC, mas é sobre isso. Eu não consigo encontrar uma maneira de enviar um arquivo do meu celular para o PC. Existe alguma maneira de fazer isso ou pelo menos uma referência de como tudo isso funciona?

    
por arielnmz 25.08.2016 / 03:46

1 resposta

0

Ok, então eu consegui fazê-lo funcionar, era apenas um problema com o bluez 5 e sua falta de compatibilidade com o bluez 4. Tão justo quanto eu poderia entender você primeiro tem que adicionar um ouvinte, serviço ou sdp o que quer que seja, usando: sdptool add OPUSH para permitir que o PC escute as mensagens obex push de entrada, bus já que o sdptool espera o bluez 4 api, ele falha ao criar o serviço. Eu notei isso porque sdptool browse local falhou também, e fazendo algumas pesquisas eu aprendi sobre o bluez 4/5 coisa. Esta é a razão pela qual obex_push e obexftp falharam também. No final, a solução foi iniciar o daemon no modo de compatibilidade, adicionando o parâmetro --compat ao executável, ou melhor, no arquivo systemd (no meu caso):

vi /usr/lib/systemd/system/bluetooth.service

e em [Serviço]:

ExecStart=/usr/libexec/bluetooth/bluetoothd - > ExecStart=/usr/libexec/bluetooth/bluetoothd --compat

Na verdade, criei dois arquivos de serviço separados, bluetooth.service com a configuração padrão e bluetooth-compat.service com o flag compat e fiz dele o padrão:

]# systemctl disable bluetooth.service
]# systemctl enable bluetooth-compat.service

Eu iniciei o daemon novamente e agora o sdptool funciona muito bem e acabei de transferir alguns arquivos de tamanho médio (5 MB). Ótimo.

    
por 25.08.2016 / 18:58