Initiate a bind request to register a connection

Use the bind request to initiate an SMPP session for transmitting one-way or two-way messages. During the bind operation, you'll pass your account ID and password in an encoded format. Your information is authenticated, and once authenticated a connection is established. With the connection established, you can then send and receive messages.

A bind request is composed of a header indicating the type of request and PDU parameters. OpenMarket then returns a bind response along with a Bind response status codes. A bind request can be any of the following:

  • bind_transmitter: a recipient will receive messages but cannot return messages. This operation is typically used with MO messages.
  • bind_receiver: a sender can submit messages to the server and also receive messages from the server. This operation is typically used with MT messages, but can be used for one-way messaging.
  • bind_transceiver: allows message transmittal between the sender and the receiver. This is typically used with one-way messaging.

The following information can be found in this topic:

bind_transmitter, bind_receiver, and bind_transceiver PDU header

These bind parameters are common for all bind request operations

bind PDU header parameters

Parameter

Description

Command Length

Length of the PDU in octets.


Size: 4

Type: Integer

Value: Customer-supplied

Command ID

Identifies the type of message the SMPP PDU represents. It is identified as either a transmitter, receiver, or transceiver.


Size: 4

Type: Integer

Value:

    • bind transmitter = 0x02

    • bind receiver = 0x01

    • bind transceiver = 0x009

Command Status

Not used. Set to 0x00 (NULL).


Size: 4

Type: Integer

Value: 0x00

Sequence Number

A customer-set unique sequence number. The associated bind response PDU echoes this sequence number back.


Size: 4

Type: Integer

Value: Customer-supplied

bind_transmitter, bind_receiver, and bind_transceiver PDU parameters

Parameter

Description

System ID

Authenticates the SMS customer. See Authenticating with OpenMarket for more information.


Size (octets): Variable. Maximum of 16.

Type: C-Octet String

Value: OpenMarket account ID or OpenMarket username associated with the IDS account enabled for SMS. The ID must not include any dashes (-). For example, an ID of 123-456-789-123459 would be 12345678912345.

Password

The password used by the SMSC to authenticate the ESME requesting the bind. A password might not always be required by the Service Provider.


Size (octets): Variable. Maximum is 100. The SMPP v3.4 specification allows up to 8 characters; however, OpenMarket has extended that length to up to 100, which allows you to provide greater security.

Type: C-Octet String

Value: Password associated with the OpenMarket account.

System Type

Identifies the type of ESME system requesting the bind with the SMSC. For example, this might be a VMS - Voice Mail System. Some Service Providers might not require the system type parameter.


Size (octets): Variable. Maximum is 13.

Type: C-Octet String

Value: Any value as long as it fits within the maximum size

Interface Version

Indicates the protocol version supported by the ESME.


Size (octets): 1

Type: Integer

Value: 0x34

Address TON

Not used. Set to 0x00 (NULL).


Size (octets): 1

Type: Integer

Value: 0x00

Address NPI

Not used. Set to 0x00 (NULL).


Size (octets): 1

Type: Integer

Value: 0x00

Address Range

Not used. Set to 0x00 (NULL).


Size (octets): Variable. Maximum is 41.

Type: C-Octet String

Value: 0x00

bind_transmitter, bind_receiver, and bind_transceiver PDU response header

This header information is common for all Bind responses:

Parameter

Description

Command Length

Length of the PDU in octets.


Size (octets): 4

Type: Integer

Value: Supplied by OpenMarket

Command ID

Identifies the type of message the SMPP PDU passed in the bind request.


Size (octets): 4

Type: Integer

Value:

  • bind transmitter resp = 0x80000002
  • bind receiver resp = 0x80000001
  • bind transceiver = 0x80000009

Command Status

The success or error code for the bind request.


Size (octets): 4

Type: Integer

Value: See Bind response status codes.

Sequence Number

The sequence number passed in the bind request.


Size (octets): 4

Type: Integer

Value: The sequence number from the bind PDU

System ID

The SMSC identifier passed in the bind request.


Size (octets): Variable. Maximum is 16.

Type: C-Octet String

Value: OpenMarket-supplied

Bind response optional parameter

Parameter

Description

SC Interface

Indicates the interface version supported by the SMSC.

 

Tag: 0x210

TLV Length: 2

Size (octets): 1

Type: Integer

Value: 0x34=52