<div dir="ltr">
  

    
  
  <div bgcolor="#FFFFFF" text="#000000">
    Olá!<br>
    <br>
            Não estou conseguindo enviar ussd para o e156b usando
    &quot;dongle ussd dongle0 *544#&quot;, no caso um chip pré da Claro para eu
    testar, veja a saída do CLI no final desta mensagem.<br>
    <br>
            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:<br>
    <br>
    <a href="https://github.com/JuniorPolegato/pdu_gsm_ussd">https://github.com/JuniorPolegato/pdu_gsm_ussd</a><br><br></div><div bgcolor="#FFFFFF" text="#000000">        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.<br>
<br></div><div bgcolor="#FFFFFF" text="#000000">[]&#39;s<br></div><div bgcolor="#FFFFFF" text="#000000">             Junior Polegato<br><br></div><div bgcolor="#FFFFFF" text="#000000">
    <br>
    <br>
    teste_asterisk*CLI&gt; dongle ussd dongle0 *544#<br>
    [dongle0] USSD queued for send with id 0xa0a7c98<br>
        -- [dongle0] Successfully sent USSD 0xa0a7c98<br>
    [May 22 10:20:17] NOTICE[7981]: at_response.c:267 at_response_ok:
    [dongle0] Successfully sent USSD 0xa0a7c98<br>
     [dongle0] Got USSD type 2 &#39;USSD Terminated by network&#39;: &#39;&#39;<br>
        -- Executing [ussd@dongle-incoming:1]
    Set(&quot;Local/ussd@dongle-incoming-3293;1&quot;, &quot;type=2&quot;) in new stack<br>
        -- Executing [ussd@dongle-incoming:2]
    Set(&quot;Local/ussd@dongle-incoming-3293;1&quot;, &quot;typestr=USSD Terminated by
    network&quot;) in new stack<br>
        -- Executing [ussd@dongle-incoming:3]
    Set(&quot;Local/ussd@dongle-incoming-3293;1&quot;, &quot;ussd=&quot;) in new stack<br>
    [May 22 10:20:19] WARNING[8054]: func_base64.c:81 base64_helper:
    Syntax: BASE64_DECODE(&lt;data&gt;) - missing argument!<br>
        -- Executing [ussd@dongle-incoming:4]
    Set(&quot;Local/ussd@dongle-incoming-3293;1&quot;, &quot;ussd_multiline=&quot;) in new
    stack<br>
        -- Auto fallthrough, channel &#39;Local/ussd@dongle-incoming-3293;1&#39;
    status is &#39;UNKNOWN&#39;<br>
    teste_asterisk*CLI&gt; dongle ussd dongle0 &quot;*544#&quot;<br>
    [dongle0] USSD queued for send with id 0xa0a7c98<br>
        -- [dongle0] Successfully sent USSD 0xa0a7c98<br>
    [May 22 10:20:24] NOTICE[7981]: at_response.c:267 at_response_ok:
    [dongle0] Successfully sent USSD 0xa0a7c98<br>
     [dongle0] Got USSD type 2 &#39;USSD Terminated by network&#39;: &#39;&#39;<br>
        -- Executing [ussd@dongle-incoming:1]
    Set(&quot;Local/ussd@dongle-incoming-5b8c;1&quot;, &quot;type=2&quot;) in new stack<br>
        -- Executing [ussd@dongle-incoming:2]
    Set(&quot;Local/ussd@dongle-incoming-5b8c;1&quot;, &quot;typestr=USSD Terminated by
    network&quot;) in new stack<br>
        -- Executing [ussd@dongle-incoming:3]
    Set(&quot;Local/ussd@dongle-incoming-5b8c;1&quot;, &quot;ussd=&quot;) in new stack<br>
    [May 22 10:20:25] WARNING[8058]: func_base64.c:81 base64_helper:
    Syntax: BASE64_DECODE(&lt;data&gt;) - missing argument!<br>
        -- Executing [ussd@dongle-incoming:4]
    Set(&quot;Local/ussd@dongle-incoming-5b8c;1&quot;, &quot;ussd_multiline=&quot;) in new
    stack<br>
        -- Auto fallthrough, channel &#39;Local/ussd@dongle-incoming-5b8c;1&#39;
    status is &#39;UNKNOWN&#39;<br>
    teste_asterisk*CLI&gt; dongle ussd dongle0 &quot;\*544\#&quot;<br>
    [dongle0] USSD queued for send with id 0xa0af9d8<br>
        -- [dongle0] Successfully sent USSD 0xa0af9d8<br>
    [May 22 10:20:31] NOTICE[7981]: at_response.c:267 at_response_ok:
    [dongle0] Successfully sent USSD 0xa0af9d8<br>
     [dongle0] Got USSD type 2 &#39;USSD Terminated by network&#39;: &#39;&#39;<br>
        -- Executing [ussd@dongle-incoming:1]
    Set(&quot;Local/ussd@dongle-incoming-59ba;1&quot;, &quot;type=2&quot;) in new stack<br>
        -- Executing [ussd@dongle-incoming:2]
    Set(&quot;Local/ussd@dongle-incoming-59ba;1&quot;, &quot;typestr=USSD Terminated by
    network&quot;) in new stack<br>
        -- Executing [ussd@dongle-incoming:3]
    Set(&quot;Local/ussd@dongle-incoming-59ba;1&quot;, &quot;ussd=&quot;) in new stack<br>
    [May 22 10:20:33] WARNING[8061]: func_base64.c:81 base64_helper:
    Syntax: BASE64_DECODE(&lt;data&gt;) - missing argument!<br>
        -- Executing [ussd@dongle-incoming:4]
    Set(&quot;Local/ussd@dongle-incoming-59ba;1&quot;, &quot;ussd_multiline=&quot;) in new
    stack<br>
        -- Auto fallthrough, channel &#39;Local/ussd@dongle-incoming-59ba;1&#39;
    status is &#39;UNKNOWN&#39;<br>
    teste_asterisk*CLI&gt; dongle ussd dongle0 \&quot;*544#\&quot;<br>
    [dongle0] Invalid USSD<br>
    teste_asterisk*CLI&gt; dongle ussd dongle0 \*544\#<br>
    [dongle0] USSD queued for send with id 0xa0a8ed0<br>
        -- [dongle0] Successfully sent USSD 0xa0a8ed0<br>
    [May 22 10:20:51] NOTICE[7981]: at_response.c:267 at_response_ok:
    [dongle0] Successfully sent USSD 0xa0a8ed0<br>
     [dongle0] Got USSD type 2 &#39;USSD Terminated by network&#39;: &#39;&#39;<br>
        -- Executing [ussd@dongle-incoming:1]
    Set(&quot;Local/ussd@dongle-incoming-66de;1&quot;, &quot;type=2&quot;) in new stack<br>
        -- Executing [ussd@dongle-incoming:2]
    Set(&quot;Local/ussd@dongle-incoming-66de;1&quot;, &quot;typestr=USSD Terminated by
    network&quot;) in new stack<br>
        -- Executing [ussd@dongle-incoming:3]
    Set(&quot;Local/ussd@dongle-incoming-66de;1&quot;, &quot;ussd=&quot;) in new stack<br>
    [May 22 10:20:52] WARNING[8070]: func_base64.c:81 base64_helper:
    Syntax: BASE64_DECODE(&lt;data&gt;) - missing argument!<br>
        -- Executing [ussd@dongle-incoming:4]
    Set(&quot;Local/ussd@dongle-incoming-66de;1&quot;, &quot;ussd_multiline=&quot;) in new
    stack<br>
        -- Auto fallthrough, channel &#39;Local/ussd@dongle-incoming-66de;1&#39;
    status is &#39;UNKNOWN&#39;<br>
    teste_asterisk*CLI&gt; dongle ussd dongle0 AA1A8D3602<br>
    [dongle0] Invalid USSD<br>
    teste_asterisk*CLI&gt; dongle ussd dongle0 &quot;AA1A8D3602&quot;<br>
    [dongle0] Invalid USSD<br>
    teste_asterisk*CLI&gt; dongle ussd dongle0 \&quot;AA1A8D3602\&quot;<br>
    [dongle0] Invalid USSD<br>
    teste_asterisk*CLI&gt; <br>
    <br>
    <br>
    <div></div>
  </div>

</div>