Comandos (PDU)

Abaixo todos os comandos (PDU) permitidos e seus respectivos usos:

Comando (PDU)
Descrição

submit_sm

Utilizado para enviar mensagem

deliver_sm

Utilizado para receber relatórios de entrega (DLR) e mensagens de resposta (MO)

enquire_link

Necessário para manter conexão ativa com o servidor

unbind

Remover sessão do usuário

Concatenação

Suportado os formatos UDH 8-bit e 16-bit.

Referência: UDH Headers

submit_sm

Veja abaixo os parâmetros considerados no envio da sua mensagem

Parâmetro
Obrigatório
Descrição
Valor

source_addr

Sim

Remetente da mensagem

Definido pelo usuário

source_addr_ton

Sim

Tipo de remetente

5

source_addr_npi

Sim

Plano de numeração

0

destination_addr

Sim

Destinatário da mensagem

Definido pelo usuário

dest_addr_ton

Sim

Tipo de destino

1

dest_addr_npi

Sim

Plano de numeração

1

Não

Nível de relatório de entrega (DLR)

Definido pelo usuário

Sim

Encoding da mensagem

Definido pelo usuário

registered_delivery

A partir deste parâmetro você define quais os níveis de relatório que quer receber em seu PDU deliver_sm.

Valor
Hexadecimal
Descrição

0

0x00

Sem relatórios de entrega

1

0x01

Somente relatórios finais

3

0x03

Relatórios intermediários e finais

O valor padrão do servidor é 0x03 nas ocasiões em que o parâmetro não seja enviado ou enviado um valor diferente dos demonstrados acima.

data_coding

Definição do tipo de encoding da mensagem enviada. Veja abaixo os valores aceitos.

Tipo
Valor
Hexadecimal

GSM-7

0

0x00

UCS-2

8

0x08

FLASH GSM-7

16

0x10

FLASH UCS-2

24

0x18

Seu submit_sm irá falhar com o código ESME_RINVDCS caso utilize um valor diferente dos mencionados acima

deliver_sm

A partir deste PDU vamos enviar os dados de relatório de entrega e mensagens recebidas (MO) caso a conexão que você estiver usando tenha suporte.

{
  command_length: 227,
  command_id: 5,
  command_status: 0,
  sequence_number: 3,
  command: 'deliver_sm',
  service_type: '',
  source_addr_ton: 0,
  source_addr_npi: 0,
  source_addr: '5512988439629',
  dest_addr_ton: 0,
  dest_addr_npi: 0,
  destination_addr: '4306745',
  esm_class: 4,
  protocol_id: 0,
  priority_flag: 0,
  schedule_delivery_time: '',
  validity_period: '',
  registered_delivery: 3,
  replace_if_present_flag: 0,
  data_coding: 1,
  sm_default_msg_id: 0,
  short_message: {
    message: 'id:d803ab6a-fecc-45ba-8c14-297dd7a45e7e sub:001 dlvrd:001 submit date:2509101509 done date:2509101509 stat:DELIVRD err:000 text:'
  },
  message_state: 2,
  receipted_message_id: 'd803ab6a-fecc-45ba-8c14-297dd7a45e7e'
}

Message State

Código
Nome
Descriç

1

ENROUTE

Mensagem recebida e direcionada a fila de processamento interna

2

DELIVRD

Operadora confirma o envio e a entrega da mensagem ao destinatário

3

EXPIRED

Tempo limite de tentativas de entrega ao destinatário expirado na operadora.

4

DELETED

Mensagem removida de processamento

5

UNDELIV

Mensagem não entregue ao destinatário

6

ACCEPTD

Mensagem aceita na operadora e enviada ao destinatário sem confirmação de entrega

7

UNKNOWN

Dados corrompidos vindos da operadora.

8

REJECTD

Mensagem rejeitada na operadora

Código de erros

Os erros seguem o padrão do protocolo. Acesse o link abaixo e consulte de acordo com o código recebido, mas se ainda assim surgirem dúvidas, entre em contato com nossa equipe de suporte

Last updated