[AsteriskBrasil] Bug report para chan_mobile
Caio Begotti
caio em ueberalles.net
Sábado Janeiro 19 01:08:48 BRST 2008
On 16/01/2008, at 21:00, Marcelo/Porks wrote:
> Eu creio que descobri o motivo de não ter áudio (andei olhando o
> código fonte do chan_mobile)
Como você eu também não sou programador, Porks, mas resolvi dar uma
olhadinha pra ver se ajuda alguma coisa... de agora em dianta tá por
conta e risco sua. Boas Googleadas :-)
> onde há a linha:
> if ((adapter->sco_socket = socket(PF_BLUETOOTH, SOCK_SEQPACKET,
> BTPROTO_SCO)) < 0) {
> [...]
> Como eu não sou bom programador, nem sei localizar onde está essa
> função 'socket' (e eu tentei mexer em algo.. juro que tentei... mas
> não consegui não).
Esse socket() aqui não é do Asterisk, é do sistema mesmo, então não
adianta procurar muito nos fontes dele. Olhe em /usr/include/sys/
socket.h. Aparentemente o chan_mobile é Linux-centric, porque pelo
que vi de socket no meu OSX isso aí não funcionaria também, suspeito.
Não testei pra ver.
Agora... o bug acontece quando? Você chega a carregar o módulo e tudo
o mais e é só na hora de usar mesmo? Olhe seus logs com debug
habilitado no logger.conf, eu acredito que deve ter algo errado já no
carregamento do chan_mobile.so aí.
O sco_socket é um socket específico pra Bluetooth transmitir voz e
talvez ele não esteja funcional na compilação aí. Você tem os headers
com isso do Bluetooth? Você pode tentar procurar por algum código que
teste isso no Google se quiser, pra garantir que é culpa do
chan_mobile mesmo. Se está retornando erro é porque o sistema pensou
algo como "putz cara! não consegui criar nesse sistema um socket
Bluetooth decente e usando SCO pra transmitir voz".
Uma grande dica que economiza horas de procura:
apt-get install/port install/urpmi ctags
Aí rode "ctags -R ." no diretório do fonte e no vim execute "set
tags=tags". Dê uma olhada na documentação de como navegar pelo código
com ctags, mas logo de cara já pode sair digitando "ctrl + ]" em cima
de algo do código pra ser levado pra declaração/chamada dele.
> Qual seria o caminho mais indicado para eu reportar
> esse problema?
Primeiro é bom ter certeza que é um problema, senão ignoram seu
report ou fecham ele sem muitas explicações. O fato do código não
estar conseguindo abrir um socket no seu sistema pode ser problema
local. Você não usa BSD? Acho que me lembro de ter dito isso no IRC
outro dia, ou me enganei? Se sim, pode ser isso, igual meu caso. O
Asterisk tem vários problemas pra funcionar com BSD, e se for isso
mesmo, pode ser um bom bug pra você se divertir fechando.
> Eu deveria abrir um bug report em http://bugs.digium.com/ ??
> Alguém sabe me dizer o que eu posso fazer? hehehe
Minha sugestão:
1. teste isso em um Linux, se estiver usando BSD
2. tente fazer funcionar primeiro, procure algo no Google
3. fale com alguém disso no IRC, pois tem gente usando o chan_mobile
normalmente
4. mande e-mail pra lista asterisk-dev dizendo que suspeita do bug,
no caso de não ter certeza ainda
5. siga o que falarem, que provavelmente ou será "configure direito,
o código tá certo" ou "por favor, reporte como bug"
> Muito Obrigado.
Happy hacking :-)
--
Caio Begotti <http://caio.ueberalles.net>
TEM DUVIDAS? LEIA O FAQ DO ASTERISK:
http://caio.ueberalles.net/asterisk/faq/
More information about the AsteriskBrasil
mailing list