FÓRUM DigiVoice

Fórum de Suporte Digivoice

Você não está logado.

#1 01/02/2013 18:09:23

Problema ao receber SMS com acentos

Estou com problemas para receber mensagens com acentos e caracteres especiais (codificadas em UCS-2). Quando recebo mensagens em GSM 03.38 (7 bits por caractere) a mesma é decodificada corretamente, mas ao receber mensagens com 16 bits/caractere o valor hexadecimal dela é exibida no log e enviada para meu script AGI.

Por exemplo, ao receber uma mensagem com o texto "Teste á" o seguinte aparece no log:

    -- SMS received on port 1
    -- Going to extension dgv_sms|1
    -- (Dgv/1): SMS Received, use DGV_SMS_FROM, DGV_SMS_DATE, DGV_SMS_TIME and DGV_SMS_TEXT variables to read it!
    -- Executing [dgv_sms@celulares:1] NoOp("DGV/1-SMS-1", "SMS RECEIVED FROM: +<numero> at 13/02/01(18:02:36): 00540065007300740065002000E1
") in new stack
    -- Executing [dgv_sms@celulares:2] AGI("DGV/1-SMS-1", "recebeTorpedo,+<numero>,"00540065007300740065002000E1
",DGV/1-SMS-1") in new stack
    -- Launched AGI Script /var/lib/asterisk/agi-bin/recebeTorpedo
    -- <DGV/1-SMS-1>AGI Script recebeTorpedo completed, returning 0
    -- Executing [dgv_sms@celulares:3] Hangup("DGV/1-SMS-1", "") in new stack
  == Spawn extension (celulares, dgv_sms, 3) exited non-zero on 'DGV/1-SMS-1'

Até poderia usar uma função que decodifique isso, porém o grande problema é no caso da mensagem ser dividida em várias partes, pois seria preciso esperar que as várias partes fossem recebidas, interpretar o cabeçalho, colocá-las em ordem (caso sejam recebidas fora de ordem) para depois decodificar a mensagem.

O que devo fazer neste caso?

Offline

 

Rodapé do fórum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson