WirelessBR

WirelessBr é um site brasileiro, independente, sem vínculos com empresas ou organizações, sem finalidade  comercial,  feito por voluntários, para divulgação de tecnologia em telecomunicações 

SMPP - SHORT MESSAGE PEER TO PEER
PROTOCOLOS E APLICAÇÕES    (5)

Autor: João Bosco Silvino Júnior  

 

4.1.3.2   - Sintaxe do BIND_TRANSCEIVER_RESP

 

Field Name

Size

Octets

Type

Description

Ref.

header

command_length

4

Integer

Defines the overall length of the bind_transceiver_resp PDU.

 

command_id

4

Integer

Value corresponding to bind_transceiver_resp request.

 

command_status

4

Integer

Indicates status (success or error code) of original bind_transceiver request.

 

sequence_number

4

Integer

Set to sequence number of original bind_transceiver request.

 

body

system_id b

var. max 16

C-Octet String

SMSC identifier. Identifies the SMSC to the ESME.

 

 

OPTIONAL PARAMETERS for BIND_TRANSCEIVER_RESP

 

Optional Parameter Name

Type

Description

Ref.

 

sc_interface_version

TLV

SMPP version supported by SMSC

 

Tabela 11 - PDU do BIND_TRANSCEIVER_RESP

Note:          The body portion of the SMPP bind_transceiver_resp PDU is not returned if the command_status field contains a non-zero value; i.e., if there is an error in the original bind_transceiver request, the SMSC system_id is not returned.

 

4.1.4   -  Operação de OUTBIND

Esta operação é utilizada pelo SMSC para sinalizar à ESME para que esta origine um bind_receiver­ ao SMSC.

4.1.4.1    Sintaxe do OUTBIND

 

Field Name

Size

Octets

Type

Description

Ref.

Header

command_length

4

Integer

Defines the overall length of the outbind PDU.

 

command_id

4

Integer

Value corresponding to outbind request.

 

command_status

4

Integer

Not used in outbind PDU. Must be set to NULL.

 

sequence_number

4

Integer

Set to a unique sequence number.

 

Body

system_id

var. max 16

C-Octet String

SMSC identifier. Identifies the SMSC to the ESME

 

password

var. 16

C-Octet String

The password may be used by the ESME for security reasons to authenticate the SMSC originating the outbind.

 

Tabela 12 - PDU do OUTBIND

 

4.2Operação de UNBIND

O propósito da operação de unbind de acordo com o protocolo SMPP é cancelar o registro de uma instância ESME a partir do SMSC e informar ao SMSC que a ESME não deseja mais utilizar esta conexão de rede para o envio ou recebimento de mensagens. Desta forma, a operação de unbind pode ser vista como uma forma do SMSC requisitar um fechamento da sessão SMPP corrente.

 

4.2.1 - Sintaxe do UNBIND  

 

Field Name

Size

Octets

Type

Description

Ref.

Header

command_length

4

Integer

Defines the overall length of the unbind PDU.

 

command_id

4

Integer

Value corresponding to unbind request.

 

command_status

4

Integer

Not used in unbind PDU. Must be set to NULL.

 

sequence_number

4

Integer

Set to a unique sequence number. The associated unbind_resp PDU will echo the same sequence number.

 

Tabela 13 - PDU do UNBIND  

4.2.2 - Sintaxe do UNBIND_RESP

 

Field Name

Size

Octets

Type

Description

Ref.

Header

command_length

4

Integer

Defines the overall length of the unbind PDU.

 

command_id

4

Integer

Value corresponding to unbind request.

 

command_status

4

Integer

Not used in unbind PDU. Must be set to NULL.

 

sequence_number

4

Integer

Set to sequence number of original unbind PDU request.

 

Tabela 14 - PDU do UNBIND_RESP

 

4.3 - GENERIC_NACK PDU

Este PDU de resposta é um reconhecimento negativo de um PDU SMPP enviado com um cabeçalho inválido. A resposta generic_nack é retornada nos seguintes casos:

-      Invalid command_length

Se a entidade recebedora, ao decodificar o PDU SMPP, detecta um command_length  inválido (tanto curto quando longo), ela deve assumir que o dado está corrompido. Neste caso uma resposta com o generic_nack é retornada ao originador da mensagem;

-      command_id desconhecido

Se um command_id desconhecido ou inválido é recebido, uma resposta com o generic_nack é retornada ao originador da mensagem.


4.3.1 - Sintaxe do PDU GENERIC_NACK

 

Field Name

Size

Octets

Type

Description

Ref.

Header

command_length

4

Integer

Defines the overall length of the generic_nack PDU.

 

command_id

4

Integer

Value corresponding to generic_nack request.

 

command_status

4

Integer

Error code corresponding to reason for sending the generic_nack.

 

sequence_number

4

Integer

Set to sequence number of original PDU or to NULL if the original PDU cannot be decoded.

 

Tabela 15 - PDU do GENERIC_NACK  

4.4 - Operação de SUBMIT_SM

A operação de submit_sm é utilizada pela ESME para enviar mensagens para o SMSC. A sessão utilizada para enviar estas mensagens é a sessão ESME Transmitter. Assim que o SMSC recebe o pacote submit_sm, e este é verificado como correto, esta entidade envia um PDU de resposta submit_sm_resp contendo um código que será utilizado para identificar aquela mensagem. Este código é o message_id, que será utilizado posteriormente para associar a mensagem submit_sm ao recibo de confirmação de entrega correspondente. Conforme dito anteriormente, as mensagens de resposta submit_sm_resp não precisam necessáriamente serem precedidas do submit_sm correspondente, mas devem estar OBRIGATORIAMENTE em ordem, de forma que o message_id se uma mensagem não seja atribuído à outra. Caso ocorra algum erro no envio desta mensagem submit_sm, o SMSC irá retornar o código de erro da operação para o ESME e a mensagem não será aceita. Dependerá das regras de tratamento de erro de cada plataforma ESME, qual será a decisão a ser tomada com relação a este pacote submit_sm rejeitado. Esta decisão pode ser descartar o pacote, armazenar o pacote em buffer, esperando uma intervenção no sistema para corrigir o problema, ou uma tentativa de reenvio, de acordo com o estabelecido na máquina. A mesma decisão depende do código de erro devolvido, ou seja, não necessariamente a ESME irá descartar, armazenar ou retransmitir todos os pacotes com algum código de erro.

4.4.1 - Sintaxe do SUBMIT_SM

O formato do PDU  submit_sm é definido pela seguinte tabela:

 

Field Name

Size Octets

Type

Description

Ref.

Header

command_length

4

Integer

Defines the overall length of the submit_sm PDU.

 

command_id

4

Integer

submit_sm

 

command_status

4

Integer

Not used. Set to NULL.

 

sequence_number

4

Integer

Set to a Unique sequence number. The associated submit_sm_resp PDU will echo this sequence number.

 

MANDATORY PARAMETERS

service_type

Var.

Max

6

C-Octet

String

The service_type parameter can be used to indicate the SMS Application service associated with the message. Specifying the service_type allows the ESME to

• Avail of enhanced messaging services such as “replace by service” type

• To control the teleservice used on the air interface.

Set to NULL for default

SMSC settings.

 

source_addr_ton

1

Integer

Type of Number for source address. If not known, set to NULL (Unknown).

 

source_addr_npi

1

Integer

Numbering Plan Indicator for source address.

If not known, set to NULL (Unknown).

 

source_addr

Var.

Max

21

C-Octet

String

Address of SME which originated this message.

If not known, set to NULL (Unknown).

 

dest_addr_ton

1

Integer

Type of Number for destination

 

dest_addr_npi

1

Integer

Numbering Plan Indicator for Destination.

 

destination_addr

Var.

Max

21

C-Octet

String

Destination address of this short message. For mobile terminated messages, this is the directory number of the recipient MS.

 

esm_class

1

Integer

Indicates Message Mode & Message Type.

 

Protocol_id

1

Integer

Protocol Identifier. Network specific field.

 

priority_flag

1

Integer

Designates the priority level of the message.

 

 

 

Field Name

Size Octets

Type

Description

Ref.

MANDATORY PARAMETERS

Schedule_delivery_time

1 or 17

C-Octet

String

The short message is to be scheduled by the SMSC for delivery. Set to NULL for immediate message delivery.

 

Validity_period

1 or 17

C-Octet

String

The validity period of this message. Set to NULL to request the SMSC default validity period.

 

registered_delivery

1

Integer

Indicator to signify if an SMSC delivery receipt or an SME acknowledgement is required.

 

replace_if_present_flag

1

Integer

Flag indicating if submitted message should replace an existing message.

 

Data_coding

1

Integer

Defines the encoding scheme of the short message user data.

 

sm_default_msg_id

1

Integer

Indicates the short message to send from a list of pre-defined (‘canned’) short messages stored on the SMSC. If not using an SMSC canned  message, set to NULL.

 

sm_length

1

Integer

Length in octets of the short_message user data.

 

short_message

Var.

Max

0 - 254

Octet

String

Up to 254 octets of short message user data. The exact physical limit for short_message size may vary according to the underlying network.

Applications which need to send messages longer than 254 octets should use the  message_payload parameter. In this case the sm_length field should be set to zero.

Note:

The short message data should be inserted in either the short_message or message_payload fields. Both fields must not be used simultaneously.

 

Tabela 16 - PDU do SUBMIT_SM

 

Nota: Os parâmetros opcionais do PDU submit_sm poderão ser encontrados na documentação entregue em anexo (SMPP Protocol Specification v3.4), e não farão parte do escopo deste curso.

4.4.1.1 -  Source and Destination Addressing

O PDU  submit_sm inclui formas de provisionar tanto o "endereço fonte" ou source address, quanto o "endereço de destino" ou destination address. O endereço fonte é composto dos campos source_addr_ton, source_addr_npi e source_addr e o endereço de destino é composto dos campos dest_addr_ton, dest_addr_npi e destination_addr.  

            Uma ESME Transmitter pode inserir valores nulos nos campos do endereço fonte.  Neste caso, o SMSC deve inserir neste campo o valor padrão para aquela ESME em particular. Este comportamento foi projetado para interfaces que normalmente não são familiares ao conceito de endereço fonte para short messages, como por exemplo, sistemas de Voice Mail.  

Anterior                               Home WirelessBR                              Próxima