Table of Contents

Class SmppServerClient

Namespace
Inetlab.SMPP
Assembly
Inetlab.SMPP.dll

A client connected to SmppServer.

public class SmppServerClient : SmppClientBase, IDisposable
Inheritance
SmppServerClient
Implements
Inherited Members

Properties

BindingMode

Connection mode in which client bound to SMPP server

public ConnectionMode BindingMode { get; set; }

Property Value

ConnectionMode

ClientCertificate

SSL Client Certificate used to authenticate on the SMPP Server.

public X509Certificate ClientCertificate { get; }

Property Value

X509Certificate

InactivityTimeout

Specifies the maximum period after which time, if no SMPP messages are exchanged, the SMPP session may be dropped gracefully. Default is 2 minutes. The value can be changed in the event evClientConnected

public TimeSpan InactivityTimeout { get; set; }

Property Value

TimeSpan

Proxy

Provides source and destination IP addresses of originator of this connection

public ProxyEndpoint Proxy { get; }

Property Value

ProxyEndpoint

The proxy.

ProxyProtocolEnabled

Gets or sets a value indicating whether the proxy protocol is enabled for this client instance.

public bool ProxyProtocolEnabled { get; set; }

Property Value

bool

True if proxy protocol enabled, false if not. Default is false.

RemoteEndPoint

Gets the remote end point.

public EndPoint RemoteEndPoint { get; }

Property Value

EndPoint

The remote end point.

Server

Gets the server that created this client instance.

public SmppServer Server { get; }

Property Value

SmppServer

The server.

Methods

Deliver(IBuilder<DeliverSm>)

[Obsolete("Use the same method with Async suffix. This method name will be used in version 3.0 for synchronous processing.")]
public Task<DeliverSmResp[]> Deliver(IBuilder<DeliverSm> builder)

Parameters

builder IBuilder<DeliverSm>

Returns

Task<DeliverSmResp[]>

Deliver(DeliverSm)

[Obsolete("Use the same method with Async suffix. This method name will be used in version 3.0 for synchronous processing.")]
public Task<DeliverSmResp> Deliver(DeliverSm pdu)

Parameters

pdu DeliverSm

Returns

Task<DeliverSmResp>

Deliver(params DeliverSm[])

[Obsolete("Use the same method with Async suffix. This method name will be used in version 3.0 for synchronous processing.")]
public Task<DeliverSmResp[]> Deliver(params DeliverSm[] pduList)

Parameters

pduList DeliverSm[]

Returns

Task<DeliverSmResp[]>

Deliver(IEnumerable<DeliverSm>)

[Obsolete("Use the same method with Async suffix. This method name will be used in version 3.0 for synchronous processing.")]
public Task<IEnumerable<DeliverSmResp>> Deliver(IEnumerable<DeliverSm> pduList)

Parameters

pduList IEnumerable<DeliverSm>

Returns

Task<IEnumerable<DeliverSmResp>>

DeliverAsync(IBuilder<DeliverSm>)

Submits an array of DeliverSm messages created from SMS builder.

public Task<DeliverSmResp[]> DeliverAsync(IBuilder<DeliverSm> builder)

Parameters

builder IBuilder<DeliverSm>

Returns

Task<DeliverSmResp[]>

DeliverAsync(DeliverSm)

Sends message from SMSC to ESME

public Task<DeliverSmResp> DeliverAsync(DeliverSm pdu)

Parameters

pdu DeliverSm

Returns

Task<DeliverSmResp>

Exceptions

InvalidOperationException

Thrown when PDU serialization is failed.

ArgumentNullException

Thrown when request instance is null.

DeliverAsync(params DeliverSm[])

Submits an array of DeliverSm messages to ESME.

public Task<DeliverSmResp[]> DeliverAsync(params DeliverSm[] pduList)

Parameters

pduList DeliverSm[]

Returns

Task<DeliverSmResp[]>

DeliverAsync(IEnumerable<DeliverSm>)

Submits a collection of DeliverSm messages to ESME.

public Task<IEnumerable<DeliverSmResp>> DeliverAsync(IEnumerable<DeliverSm> pduList)

Parameters

pduList IEnumerable<DeliverSm>

Returns

Task<IEnumerable<DeliverSmResp>>

Events

evBind

Occurs when Bind packet received

public event BindEventHandler evBind

Event Type

BindEventHandler

evCancelSm

Occurs when receiving CancelSm PDU

public event CancelSmEventHandler evCancelSm

Event Type

CancelSmEventHandler

evOutBind

Occurs when OutBind packet received

public event OutBindEventHandler evOutBind

Event Type

OutBindEventHandler

evQuerySm

Occurs when receiving QuerySm PDU

public event QuerySmEventHandler evQuerySm

Event Type

QuerySmEventHandler

evReplaceSm

Occurs when receiving ReplaceSm PDU

public event ReplaceSmEventHandler evReplaceSm

Event Type

ReplaceSmEventHandler

evSubmitMulti

Occurs when receiving SubmitMulti PDU

public event SubmitMultiEventHandler evSubmitMulti

Event Type

SubmitMultiEventHandler

evSubmitSm

Occurs when receiving SubmitSm PDU

public event SubmitSmEventHandler evSubmitSm

Event Type

SubmitSmEventHandler