Table of Contents

Class SmppClient

Namespace
Inetlab.SMPP
Assembly
cs.temp.dll.dll
SMPP protocol client class for connection with an SMSC over a TCP/IP and for sending or receiving short messages to and from the SMSC.
public sealed class SmppClient : SmppClientBase
Inheritance
Object
SmppClient

Constructors

SmppClient()

public SmppClient()

Properties

ClientCertificates

Defines collection of Client Certificates
public X509CertificateCollection ClientCertificates { get; set; }

Property Value

X509CertificateCollection

EnabledSslProtocols

Defines enabled versions of SSL Protocols for SMPP client.
public SslProtocols EnabledSslProtocols { get; set; }

Property Value

SslProtocols

Methods

Bind(Bind)

public BindResp Bind(Bind pdu)

Parameters

pdu Bind

Returns

BindResp

Bind(String, String)

Register client as Transceiver with the SMSC system and request an SMPP session
public BindResp Bind(string systemId, string password)

Parameters

systemId String
Identifies the ESME system requesting to bind with the SMSC.
password String
password used by the SMSC to authenticate the client.

Returns

BindResp

Bind(String, String, ConnectionMode)

Registers client as ConnectionMode with the SMSC system and requests an SMPP session
public BindResp Bind(string systemId, string password, ConnectionMode mode)

Parameters

systemId String
password String
mode ConnectionMode

Returns

BindResp

BindAsync(Bind)

Register client as Transceiver with the SMSC system and request an SMPP session, asynchronously.
public void BindAsync(Bind pdu)

Parameters

pdu Bind

BindAsync(String, String)

Register client as Transceiver with the SMSC system and request an SMPP session, asynchronously.
public void BindAsync(string systemId, string password)

Parameters

systemId String
Identifies the ESME system requesting to bind with the SMSC.
password String
password used by the SMSC to authenticate the client.

BindAsync(String, String, ConnectionMode)

Register client as ConnectionMode with the SMSC system and request an SMPP session, asynchronously.
public void BindAsync(string systemId, string password, ConnectionMode mode)

Parameters

systemId String
password String
mode ConnectionMode

Cancel(CancelSm)

Cancels previously submitted short message that is still pending delivery.
public CancelSmResp Cancel(CancelSm pdu)

Parameters

pdu CancelSm

Returns

CancelSmResp

Cancel(String, String, Byte, Byte, String, Byte, Byte, String)

Cancel previously submitted short message that is still pending delivery.
public CancelSmResp Cancel(string serviceType, string messageId, byte srcTon, byte srcNpi, string srcAddr, byte dstTon, byte dstNpi, string dstAddr)

Parameters

serviceType String
messageId String
srcTon Byte
srcNpi Byte
srcAddr String
dstTon Byte
dstNpi Byte
dstAddr String

Returns

CancelSmResp

CancelAsync(CancelSm)

Cancel previously submitted short message that is still pending delivery., asynchronously.
public void CancelAsync(CancelSm pdu)

Parameters

pdu CancelSm

Connect(EndPoint)

Connect to SMSC using IPEndPoint instance
public bool Connect(EndPoint endPoint)

Parameters

endPoint EndPoint
IPEndPoint instance

Returns

Boolean
A Boolean value indicating true if the client is connected, false if not.

Connect(String, Int32)

Connect to SMSC using hostname and port number
public bool Connect(string hostName, int port)

Parameters

hostName String
SMSC hostname
port Int32
SMSC port

Returns

Boolean
A Boolean value indicating true if the client is connected, false if not.

ConnectAsync(EndPoint)

public void ConnectAsync(EndPoint endPoint)

Parameters

endPoint EndPoint

ConnectAsync(String, Int32)

Connect to SMPP server using hostname and port number.
public void ConnectAsync(string hostName, int port)

Parameters

hostName String
SMPP server hostname
port Int32
SMPP port

Dispose(Boolean)

protected override void Dispose(bool disposing)

Parameters

disposing Boolean

OutBind(OutBind)

Initiates SMPP session as Message Center. It is not intended to be used by VASP.
public void OutBind(OutBind pdu)

Parameters

pdu OutBind

OutBind(String, String)

Initiates SMPP session as Message Center. It is not intended to be used by VASP.
public void OutBind(string systemId, string password)

Parameters

systemId String
password String

ParseStream(Stream)

public List<SmppPDU> ParseStream(Stream stream)

Parameters

stream Stream

Returns

List<SmppPDU>

Query(QuerySm)

Query the status of a previously submitted short message.
public QuerySmResp Query(QuerySm data)

Parameters

data QuerySm

Returns

QuerySmResp

Query(String, Byte, Byte, String)

Query the status of a previously submitted short message.
public QuerySmResp Query(string messageId, byte srcTon, byte srcNpi, string srcAddr)

Parameters

messageId String
srcTon Byte
srcNpi Byte
srcAddr String

Returns

QuerySmResp

QueryAsync(QuerySm)

Query the status of a previously submitted short message, asynchronously.
public void QueryAsync(QuerySm data)

Parameters

data QuerySm

Submit(IBuilder<SubmitMulti>)

Submits an array of SubmitMulti messages from SMS builder function.
public IList<SubmitMultiResp> Submit(IBuilder<SubmitMulti> submitBuilder)

Parameters

submitBuilder IBuilder<SubmitMulti>

Returns

IList<SubmitMultiResp>

Submit(IBuilder<SubmitSm>)

Submits an array of SubmitSm messages from SMS builder function.
public IList<SubmitSmResp> Submit(IBuilder<SubmitSm> submitBuilder)

Parameters

submitBuilder IBuilder<SubmitSm>

Returns

IList<SubmitSmResp>

Submit(IList<SubmitMulti>)

Submits an array of SubmitMulti messages to the SMSC.
public IList<SubmitMultiResp> Submit(IList<SubmitMulti> submitList)

Parameters

submitList IList<SubmitMulti>

Returns

IList<SubmitMultiResp>

Submit(IList<SubmitSm>)

Submits an array of SubmitSm messages to the SMSC.
public IList<SubmitSmResp> Submit(IList<SubmitSm> submitSmList)

Parameters

submitSmList IList<SubmitSm>

Returns

IList<SubmitSmResp>

Submit(SubmitMulti)

Submits a SubmitMulti message to the SMSC
public SubmitMultiResp Submit(SubmitMulti pdu)

Parameters

pdu SubmitMulti

Returns

SubmitMultiResp

Submit(SubmitSm)

Submits PDU message to the SMSC
public SubmitSmResp Submit(SubmitSm pdu)

Parameters

pdu SubmitSm

Returns

SubmitSmResp

SubmitAsync(IBuilder<SubmitMulti>)

Submits an array of SubmitMulti messages from SMS builder function, asynchronously.
public void SubmitAsync(IBuilder<SubmitMulti> submit)

Parameters

submit IBuilder<SubmitMulti>

SubmitAsync(IBuilder<SubmitSm>)

Submits an array of SubmitSm messages from SMS builder function, asynchronously.
public void SubmitAsync(IBuilder<SubmitSm> submit)

Parameters

submit IBuilder<SubmitSm>

SubmitAsync(IList<SubmitMulti>)

Submits an array of SubmitMulti messages to the SMSC, asynchronously.
public void SubmitAsync(IList<SubmitMulti> submitList)

Parameters

submitList IList<SubmitMulti>

SubmitAsync(IList<SubmitSm>)

Submits an array of SubmitSm messages to the SMSC, asynchronously.
public void SubmitAsync(IList<SubmitSm> submitSmList)

Parameters

submitSmList IList<SubmitSm>

SubmitAsync(SubmitMulti)

Submits a SubmitMulti message to the SMSC, asynchronously.
public void SubmitAsync(SubmitMulti submit)

Parameters

submit SubmitMulti

SubmitAsync(SubmitSm)

Submits SubmitSm message to the SMSC, asynchronously.
public void SubmitAsync(SubmitSm submit)

Parameters

submit SubmitSm

Events

evAlertNotification

Occurs when received AlertNotification PDU
public event AlertNotificationEventHandler evAlertNotification

Event Type

AlertNotificationEventHandler

evBindComplete

Occurs when received Bind response PDU
public event BindRespEventHandler evBindComplete

Event Type

BindRespEventHandler

evCancelComplete

Occurs when received CancelSmResp PDU
public event CancelSmRespEventHandler evCancelComplete

Event Type

CancelSmRespEventHandler

evDeliverSm

Occurs when receiving DeliverSm PDU
public event DeliverSmEventHandler evDeliverSm

Event Type

DeliverSmEventHandler

evQueryComplete

Occurs when received QuerySmResp PDU
public event QuerySmRespEventHandler evQueryComplete

Event Type

QuerySmRespEventHandler

evServerCertificateValidation

Occurs when validating server certificate
public event EventHandler<CertificateValidationEventArgs> evServerCertificateValidation

Event Type

EventHandler<CertificateValidationEventArgs>

evSubmitComplete

Occurs when received SubmitSmResp PDU
public event SubmitSmRespEventHandler evSubmitComplete

Event Type

SubmitSmRespEventHandler

evSubmitMultiComplete

Occurs when received SubmitMultiResp PDU
public event SubmitMultiRespEventHandler evSubmitMultiComplete

Event Type

SubmitMultiRespEventHandler