Yate
SIGTRAN Class Referenceabstract

Abstract SIGTRAN user adaptation component. More...

#include <yatesig.h>

Inheritance diagram for SIGTRAN:
SIGAdaptation SS7M2PA SIGAdaptClient SIGAdaptServer ISDNIUAClient SS7M2UAClient

Public Types

enum  MsgClass {
  MGMT = 0 , TRAN = 1 , SSNM = 2 , ASPSM = 3 ,
  ASPTM = 4 , QPTM = 5 , MAUP = 6 , CLMSG = 7 ,
  COMSG = 8 , RKM = 9 , IIM = 10 , M2PA = 11
}
 
enum  MsgMGMT { MgmtERR = 0 , MgmtNTFY = 1 }
 
enum  MsgSSNM {
  SsnmDUNA = 1 , SsnmDAVA = 2 , SsnmDAUD = 3 , SsnmSCON = 4 ,
  SsnmDUPU = 5 , SsnmDRST = 6
}
 
enum  MsgASPSM {
  AspsmUP = 1 , AspsmDOWN = 2 , AspsmBEAT = 3 , AspsmUP_ACK = 4 ,
  AspsmDOWN_ACK = 5 , AspsmBEAT_ACK = 6
}
 
enum  MsgASPTM { AsptmACTIVE = 1 , AsptmINACTIVE = 2 , AsptmACTIVE_ACK = 3 , AsptmINACTIVE_ACK = 4 }
 
enum  MsgRKM { RkmREG_REQ = 1 , RkmREG_RSP = 2 , RkmDEREG_REQ = 3 , RkmDEREG_RSP = 4 }
 
enum  MsgIIM { IimREG_REQ = 1 , IimREG_RSP = 2 , IimDEREG_REQ = 3 , IimDEREG_RSP = 4 }
 

Public Member Functions

 SIGTRAN (u_int32_t payload=0, u_int16_t port=0)
 
virtual ~SIGTRAN ()
 
virtual void attach (SIGTransport *trans)
 
SIGTransporttransport () const
 
u_int32_t payload () const
 
u_int16_t defPort () const
 
bool connected (int streamId=0) const
 
virtual void notifyLayer (SignallingInterface::Notification status)
 
bool transmitMSG (unsigned char msgVersion, unsigned char msgClass, unsigned char msgType, const DataBlock &msg, int streamId=0) const
 
bool transmitMSG (unsigned char msgClass, unsigned char msgType, const DataBlock &msg, int streamId=0) const
 
bool restart (bool force)
 
bool getSocketParams (const String &params, NamedList &result)
 
virtual bool transportNotify (SIGTransport *newTransport, const SocketAddr &addr)
 
bool hasTransportThread ()
 
void stopTransportThread ()
 

Static Public Member Functions

static const TokenDictclassNames ()
 
static const char * typeName (unsigned char msgClass, unsigned char msgType, const char *defValue=0)
 

Protected Member Functions

virtual bool processMSG (unsigned char msgVersion, unsigned char msgClass, unsigned char msgType, const DataBlock &msg, int streamId)=0
 

Friends

class SIGTransport
 

Detailed Description

Abstract SIGTRAN user adaptation component.

An interface to a Signalling Transport user adaptation component

Member Enumeration Documentation

◆ MsgASPSM

enum MsgASPSM

ASP State Maintenance messages

◆ MsgASPTM

enum MsgASPTM

ASP Traffic Maintenance messages

◆ MsgClass

enum MsgClass

Message classes

◆ MsgIIM

enum MsgIIM

Interface Identifier Management messages

◆ MsgMGMT

enum MsgMGMT

Management messages

◆ MsgRKM

enum MsgRKM

Routing Key Management messages

◆ MsgSSNM

enum MsgSSNM

Signalling Network Management messages

Constructor & Destructor Documentation

◆ SIGTRAN()

SIGTRAN ( u_int32_t payload = 0,
u_int16_t port = 0 )
explicit

Constructs an uninitialized signalling transport

Parameters
payloadSCTP payload code, ignored for other transports
portSCTP/TCP/UDP default port used for transport

References payload().

◆ ~SIGTRAN()

virtual ~SIGTRAN ( )
virtual

Destructor, terminates transport layer

Member Function Documentation

◆ attach()

virtual void attach ( SIGTransport * trans)
virtual

Attach a transport (connectivity provider)

Parameters
transTransport to attach to this component

◆ classNames()

static const TokenDict * classNames ( )
static

Message class names dictionary

Returns
Pointer to dictionary of message classes

◆ connected()

bool connected ( int streamId = 0) const

Check if the network transport layer is connected

Parameters
streamIdIdentifier of the stream to check if applicable
Returns
True if the transport (and stream if applicable) is connected

◆ defPort()

u_int16_t defPort ( ) const
inline

Get the default SCTP/TCP/UDP port used for transport

Returns
Default protocol port, 0 if unknown or not set

◆ getSocketParams()

bool getSocketParams ( const String & params,
NamedList & result )

Get sctp socket parameters.

Parameters
paramsList of parameters to obtain
resultList of parameters to fill
Returns
True if operation was successful, false if an error occurred

◆ hasTransportThread()

bool hasTransportThread ( )

Check if the transport thread is running

Returns
true if the transport thread is running

◆ notifyLayer()

virtual void notifyLayer ( SignallingInterface::Notification status)
inlinevirtual

Reimplemented in SIGAdaptation, SIGAdaptClient, and SS7M2PA.

◆ payload()

u_int32_t payload ( ) const
inline

Get the SCTP payload of this user adaptation component

Returns
SCTP payload code

Referenced by SIGAdaptation::SIGAdaptation(), SIGAdaptClient::SIGAdaptClient(), SIGAdaptServer::SIGAdaptServer(), and SIGTRAN().

◆ processMSG()

virtual bool processMSG ( unsigned char msgVersion,
unsigned char msgClass,
unsigned char msgType,
const DataBlock & msg,
int streamId )
protectedpure virtual

Process a complete message

Parameters
msgVersionVersion of the protocol
msgClassClass of the message
msgTypeType of the message, depends on the class
msgMessage data, may be empty
streamIdIdentifier of the stream the message was received on
Returns
True if the message was handled

Implemented in ISDNIUAClient, SS7M2PA, and SS7M2UAClient.

◆ restart()

bool restart ( bool force)

Restart the underlaying transport

Parameters
forceTrue to hard restart, false to force restart if transport is down
Returns
True if the transport was notified that it needs to restart

◆ stopTransportThread()

void stopTransportThread ( )

Stop the transport thread

◆ transmitMSG() [1/2]

bool transmitMSG ( unsigned char msgClass,
unsigned char msgType,
const DataBlock & msg,
int streamId = 0 ) const
inline

Transmit a message with default version to the network transport layer

Parameters
msgClassClass of the message
msgTypeType of the message, depends on the class
msgMessage data, may be empty
streamIdIdentifier of the stream to send the data over
Returns
True if the message was transmitted to network

References transmitMSG().

◆ transmitMSG() [2/2]

bool transmitMSG ( unsigned char msgVersion,
unsigned char msgClass,
unsigned char msgType,
const DataBlock & msg,
int streamId = 0 ) const

Transmit a message to the network transport layer

Parameters
msgVersionVersion of the protocol
msgClassClass of the message
msgTypeType of the message, depends on the class
msgMessage data, may be empty
streamIdIdentifier of the stream to send the data over
Returns
True if the message was transmitted to network

Referenced by transmitMSG().

◆ transport()

SIGTransport * transport ( ) const
inline

Get the transport of this user adaptation component

Returns
Pointer to the transport layer or NULL

◆ transportNotify()

virtual bool transportNotify ( SIGTransport * newTransport,
const SocketAddr & addr )
inlinevirtual

Notification that a new incomming connection has been made

Parameters
newTransportThe new created transport
addrThe newly created transport socket address
Returns
True if the newTransport will be used.

◆ typeName()

static const char * typeName ( unsigned char msgClass,
unsigned char msgType,
const char * defValue = 0 )
static

Message types name lookup

Parameters
msgClassClass of the message to look up
msgTypeType of the message, depends on the class
defValueValue to return if lookup fails
Returns
Pointer to message type name

The documentation for this class was generated from the following file: