Olá!

        Não estou conseguindo enviar ussd para o e156b usando "dongle ussd
dongle0 *544#", no caso um chip pré da Claro para eu testar, veja a saída
do CLI no final desta mensagem.

        Contudo, procurando na Net, vi que este modem requer que o ussd
esteja codificado em GSM/PDU e a resposta é na mesma codificação. Procurei
a documentação na Net e fiz um conversor GSM/PDU para Unicode/UTF-8, bem
como outro para enviar e ler o ussd, coloquei no Git Hub, pode ser útil
para mais pessoas:

https://github.com/JuniorPolegato/pdu_gsm_ussd

        Vou dar uma vasculhada assim que puder no código do chan_dongle e
ver o que pode ser feito e até propor uma correção se for o caso.

[]'s
             Junior Polegato



teste_asterisk*CLI> dongle ussd dongle0 *544#
[dongle0] USSD queued for send with id 0xa0a7c98
    -- [dongle0] Successfully sent USSD 0xa0a7c98
[May 22 10:20:17] NOTICE[7981]: at_response.c:267 at_response_ok: [dongle0]
Successfully sent USSD 0xa0a7c98
 [dongle0] Got USSD type 2 'USSD Terminated by network': ''
    -- Executing [ussd@dongle-incoming:1]
Set("Local/ussd@dongle-incoming-3293;1", "type=2") in new stack
    -- Executing [ussd@dongle-incoming:2]
Set("Local/ussd@dongle-incoming-3293;1", "typestr=USSD Terminated by
network") in new stack
    -- Executing [ussd@dongle-incoming:3]
Set("Local/ussd@dongle-incoming-3293;1", "ussd=") in new stack
[May 22 10:20:19] WARNING[8054]: func_base64.c:81 base64_helper: Syntax:
BASE64_DECODE(<data>) - missing argument!
    -- Executing [ussd@dongle-incoming:4]
Set("Local/ussd@dongle-incoming-3293;1", "ussd_multiline=") in new stack
    -- Auto fallthrough, channel 'Local/ussd@dongle-incoming-3293;1' status
is 'UNKNOWN'
teste_asterisk*CLI> dongle ussd dongle0 "*544#"
[dongle0] USSD queued for send with id 0xa0a7c98
    -- [dongle0] Successfully sent USSD 0xa0a7c98
[May 22 10:20:24] NOTICE[7981]: at_response.c:267 at_response_ok: [dongle0]
Successfully sent USSD 0xa0a7c98
 [dongle0] Got USSD type 2 'USSD Terminated by network': ''
    -- Executing [ussd@dongle-incoming:1]
Set("Local/ussd@dongle-incoming-5b8c;1", "type=2") in new stack
    -- Executing [ussd@dongle-incoming:2]
Set("Local/ussd@dongle-incoming-5b8c;1", "typestr=USSD Terminated by
network") in new stack
    -- Executing [ussd@dongle-incoming:3]
Set("Local/ussd@dongle-incoming-5b8c;1", "ussd=") in new stack
[May 22 10:20:25] WARNING[8058]: func_base64.c:81 base64_helper: Syntax:
BASE64_DECODE(<data>) - missing argument!
    -- Executing [ussd@dongle-incoming:4]
Set("Local/ussd@dongle-incoming-5b8c;1", "ussd_multiline=") in new stack
    -- Auto fallthrough, channel 'Local/ussd@dongle-incoming-5b8c;1' status
is 'UNKNOWN'
teste_asterisk*CLI> dongle ussd dongle0 "\*544\#"
[dongle0] USSD queued for send with id 0xa0af9d8
    -- [dongle0] Successfully sent USSD 0xa0af9d8
[May 22 10:20:31] NOTICE[7981]: at_response.c:267 at_response_ok: [dongle0]
Successfully sent USSD 0xa0af9d8
 [dongle0] Got USSD type 2 'USSD Terminated by network': ''
    -- Executing [ussd@dongle-incoming:1]
Set("Local/ussd@dongle-incoming-59ba;1", "type=2") in new stack
    -- Executing [ussd@dongle-incoming:2]
Set("Local/ussd@dongle-incoming-59ba;1", "typestr=USSD Terminated by
network") in new stack
    -- Executing [ussd@dongle-incoming:3]
Set("Local/ussd@dongle-incoming-59ba;1", "ussd=") in new stack
[May 22 10:20:33] WARNING[8061]: func_base64.c:81 base64_helper: Syntax:
BASE64_DECODE(<data>) - missing argument!
    -- Executing [ussd@dongle-incoming:4]
Set("Local/ussd@dongle-incoming-59ba;1", "ussd_multiline=") in new stack
    -- Auto fallthrough, channel 'Local/ussd@dongle-incoming-59ba;1' status
is 'UNKNOWN'
teste_asterisk*CLI> dongle ussd dongle0 \"*544#\"
[dongle0] Invalid USSD
teste_asterisk*CLI> dongle ussd dongle0 \*544\#
[dongle0] USSD queued for send with id 0xa0a8ed0
    -- [dongle0] Successfully sent USSD 0xa0a8ed0
[May 22 10:20:51] NOTICE[7981]: at_response.c:267 at_response_ok: [dongle0]
Successfully sent USSD 0xa0a8ed0
 [dongle0] Got USSD type 2 'USSD Terminated by network': ''
    -- Executing [ussd@dongle-incoming:1]
Set("Local/ussd@dongle-incoming-66de;1", "type=2") in new stack
    -- Executing [ussd@dongle-incoming:2]
Set("Local/ussd@dongle-incoming-66de;1", "typestr=USSD Terminated by
network") in new stack
    -- Executing [ussd@dongle-incoming:3]
Set("Local/ussd@dongle-incoming-66de;1", "ussd=") in new stack
[May 22 10:20:52] WARNING[8070]: func_base64.c:81 base64_helper: Syntax:
BASE64_DECODE(<data>) - missing argument!
    -- Executing [ussd@dongle-incoming:4]
Set("Local/ussd@dongle-incoming-66de;1", "ussd_multiline=") in new stack
    -- Auto fallthrough, channel 'Local/ussd@dongle-incoming-66de;1' status
is 'UNKNOWN'
teste_asterisk*CLI> dongle ussd dongle0 AA1A8D3602
[dongle0] Invalid USSD
teste_asterisk*CLI> dongle ussd dongle0 "AA1A8D3602"
[dongle0] Invalid USSD
teste_asterisk*CLI> dongle ussd dongle0 \"AA1A8D3602\"
[dongle0] Invalid USSD
teste_asterisk*CLI>
_______________________________________________
KHOMP: completa linha de placas externas FXO, FXS, GSM e E1;
Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;
Intercomunicadores para acesso remoto via rede IP. Conheça em www.Khomp.com.
_______________________________________________
ALIGERA – Fabricante nacional de Gateways SIP-E1 para R2, ISDN e SS7.
Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.
Channel Bank – Appliance Asterisk - Acesse www.aligera.com.br.
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para 
asteriskbrasil-unsubscr...@listas.asteriskbrasil.org

Responder a