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    (4)

Autor: João Bosco Silvino Júnior  

 

4 - Definição do PDU SMPP


4
.1 - Operação de BIND

A operação de BIND é a operação de tentativa de abertura do canal SMPP entre uma ESME e um SMSC. Conforme dito anteriormente, uma ESME pode fazer um bind_transmitter, bind_receiver ou  bind_transceiver. Caso a ESME tente conectar-se com um bind_transceiver em um SMSC não suporte esta operação, este deve retornar uma mensagem de resposta contendo o erro ”Invalid Command ID” e a ESME deverá tentar conectar-se novamente, desta vez com um bind_transmitter ou bind_receiver ou um par bind_transmitter, bind_receiver. Caso a ESME tente conectar-se com um bind_transmitter ou bind_receiver em um SMSC não suporte esta operação, este deve retornar uma mensagem de resposta contendo o erro ”Invalid Command ID” e a ESME deverá tentar conectar-se novamente, desta vez com um bind_transceiver.

4.1.1 - ESME Transmitter

Uma ESME conectada como uma transmitter está autorizada a enviar mensagens a um SMSC e receber as respostas SMPP correspondentes. Uma ESME indica que não deseja receber mensagens originadas de outra SME (i.e. terminais móveis), conectando-se como transmitter. Verifique na tabela 1 quais são as operações permitidas a uma ESME conectada como transmitter.


4.1.1.1 -     Sintaxe do BIND_TRANSMITTER  

 

 

Field Name

Size

Octets

Type

Description

Ref.

header

Command_length

4

Integer

Defines the overall length of the bind_transmitter PDU.

 

command_id

4

Integer

Value corresponding to bind_transmitter request.

 

Command_status

4

Integer

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

 

Sequence_number

4

Integer

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

 

body

system_id b

var. max 16

C-Octet String

Identifies the ESME system requesting to bind as a transmitter with the SMSC.

 

password c

var. 16

C-Octet String

The password may be used by the SMSC to authenticate the ESME requesting to bind.

 

system_type d

var. 16

C-Octet String

Identifies the type of ESME system requesting to bind as a transmitter with the SMSC.

 

interface_version

1

Integer

Indicates the version of the SMPP Protocol supported by the ESME.

 

body

addr_ton

1

Integer

Indicates Type of Number of the ESME address. If not known set to NULL

 

addr_npi

1

Integer

Numbering Plan Indicator for ESME address. If not known set to NULL.

 

address_range

Var. max 41

C-Octet String

The ESME address. If not known set to NULL.

 

Tabela 6 -  PDU do BIND_TRANSMITTER

a. There is no specific requirement on how the sequence_number should be set. However, it is recommended that the sequence number be a monotonically increasing number.

b. The recommended use of system_id is to identify the binding entity, e.g., “InternetGW” in the case of an Internet Gateway or ‘VMS’ for a Voice Mail System.

c. The password is used for authentication to secure SMSC access. The ESME may set the password to NULL to gain insecure access (if allowed by SMSC administration).

d. The system_type (optional) may be used to categorise the system, e.g., “EMAIL”, “WWW”, etc.

 

4.1.1.2 - Sintaxe do BIND_TRANSMITTER_RESP

                                                                                                                

 

Field Name

Size

Octets

Type

Description

Ref.

header

command_length

4

Integer

Defines the overall length of the bind_transmitter_resp PDU.

 

command_id

4

Integer

Value corresponding to bind_transmitter_resp request.

 

command_status

4

Integer

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

 

sequence_number

4

Integer

Set to sequence number of original bind_transmitter request.

 

body

system_id b

var. max 16

C-Octet String

SMSC identifier. Identifies the SMSC to the ESME.

 

 

OPTIONAL PARAMETERS for BIND_TRANSMITTER_RESP

 

sc_interface_version

TLV

SMPP version supported by SMSC

 

Tabela 7 - PDU do BIND_TRANSMITTER_RESP

Note: The body portion of the SMPP bind_transmitter_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_transmitter request, the SMSC system_id is not returned

 

4.1.2 - ESME Receiver

Uma ESME conectada como uma receiver está autorizada a receber mensagens de um SMSC e retornar as respostas SMPP correspondentes. Verifique na tabela 1 quais são as operações permitidas a uma ESME conectada como receiver.

4.1.2.1 - Sintaxe do BIND_RECEIVER

 

Field Name

Size

Octets

Type

Description

Ref.

header

command_length

4

Integer

Defines the overall length of the bind_receiver PDU.

 

command_id

4

Integer

Value corresponding to bind_receiver request.

 

command_status

4

Integer

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

 

sequence_number

4

Integer

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

 

body

system_id b

var. max 16

C-Octet String

Identifies the ESME system requesting to bind as a receiver with the SMSC.

 

password c

var. 16

C-Octet String

The password may be used by the SMSC to authenticate the ESME requesting to bind.

 

system_type d

var. 16

C-Octet String

Identifies the type of ESME system requesting to bind as a receiver with the SMSC.

 

interface_version

1 Integer

Indicates the version of the SMPP Y

Protocol supported by the ESME.

 

addr_ton

1

Integer

Indicates Type of Number of the ESME address. If not known set to NULL

 

addr_npi

1

Integer

Numbering Plan Indicator for ESME address. If not known set to NULL.

 

address_range

Var. max 41

C-Octet String

The ESME address. If not known set to NULL.

 

                                                                             

Tabela 8 - PDU do BIND_RECEIVER

 

4.1.2.2 - Sintaxe do BIND_RECEIVER_RESP

 

Field Name

Size

Octets

Type

Description

Ref.

header

command_length

4

Integer

Defines the overall length of the bind_receiver_resp PDU.

 

command_id

4

Integer

Value corresponding to bind_receiver_resp request.

 

command_status

4

Integer

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

 

sequence_number

4

Integer

Set to sequence number of original bind_receiver request.

 

body

system_id b

var. max 16

C-Octet String

SMSC identifier. Identifies the SMSC to the ESME.

 

 

OPTIONAL PARAMETERS for BIND_RECEIVER_RESP

 

Optional Parameter Name

Type

Description

Ref.

 

sc_interface_version

TLV

SMPP version supported by SMSC

 

Tabela 9 - PDU do BIND_RECEIVER_RESP

 

4.1.3 -  ESME Transceiver

Uma ESME conectada como uma transceiver está autorizada receber/enviar mensagens de/para o SMSC e retornar as respostas SMPP correspondentes, em uma única sessão SMPP. Verifique na tabela 1 quais são as operações permitidas a uma ESME conectada como transceiver.

 

4.1.3.1 - Sintaxe do BIND_TRANSCEIVER

 

Field Name

Size

Octets

Type

Description

Ref.

header

command_length

4

Integer

Defines the overall length of the bind_transceiver PDU.

 

command_id

4

Integer

Value corresponding to bind_transceiver request.

 

command_status

4

Integer

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

 

sequence_number

4

Integer

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

 

body

system_id b

var. max 16

C-Octet String

Identifies the ESME system requesting to bind as a transceiver with the SMSC.

 

password c

var. 16

C-Octet String

The password may be used by the SMSC to authenticate the ESME requesting to bind.

 

system_type d

var. 16

C-Octet String

Identifies the type of ESME system requesting to bind as a transceiver with the SMSC.

 

interface_version

1

Integer

Indicates the version of the SMPP Y

Protocol supported by the ESME.

 

addr_ton

1

Integer

Indicates Type of Number of the ESME address. If not known set to NULL

 

addr_npi

1

Integer

Numbering Plan Indicator for ESME address. If not known set to NULL.

 

address_range

Var. max 41

C-Octet String

The ESME address. If not known set to NULL.

 


Tabela 10 - PDU do BIND_TRANSCEIVER

a. There is no specific requirement on how the sequence_number should be set. However, it is recommended that the sequence number be a monotonically increasing number.

b. The recommended use of system_id is to identify the binding entity, e.g., “InternetGW” in the case of an Internet Gateway or ‘VMS’ for a Voice Mail System.

c. The password is used for authentication to secure SMSC access. The ESME may set the password to NULL to gain insecure access (if allowed by SMSC administration).

d. The system_type (optional) may be used to categorise the system, e.g., “EMAIL”, “WWW”, etc.

 

Anterior                               Home WirelessBR                              Próxima