SS7ISUP Class Reference
SS7 ISUP implementation.
More...
#include <yatesig.h>
List of all members.
|
Public Member Functions |
| SS7ISUP (const NamedList ¶ms) |
virtual | ~SS7ISUP () |
unsigned int | cicLen () const |
const String & | format () const |
bool | setPointCode (SS7PointCode *pc, bool def) |
SS7PointCode * | hasPointCode (const SS7PointCode &pc) |
void | setLabel (SS7Label &label, const SS7PointCode &opc, const SS7PointCode &dpc, unsigned char sls=255) |
virtual SS7MSU * | createMSU (SS7MsgISUP::Type type, unsigned char ssf, const SS7Label &label, unsigned int cic, const NamedList *params=0) const |
virtual SignallingCall * | call (SignallingMessage *msg, String &reason) |
int | transmitMessage (SS7MsgISUP *msg, const SS7Label &label, bool recvLbl, int sls=-1) |
virtual void | cleanup (const char *reason="offline") |
virtual void * | getObject (const String &name) const |
virtual void | destruct () |
bool | decodeMessage (NamedList &msg, SS7MsgISUP::Type msgType, SS7PointCode::Type pcType, const unsigned char *paramPtr, unsigned int paramLen) |
bool | encodeMessage (DataBlock &buf, SS7MsgISUP::Type msgType, SS7PointCode::Type pcType, const NamedList ¶ms, unsigned int *cic=0) |
Protected Member Functions |
virtual void | timerTick (const Time &when) |
virtual void | notify (SS7Layer3 *link, int sls) |
SS7MSU * | buildMSU (SS7MsgISUP::Type type, unsigned char sio, const SS7Label &label, unsigned int cic, const NamedList *params) const |
virtual bool | receivedMSU (const SS7MSU &msu, const SS7Label &label, SS7Layer3 *network, int sls) |
virtual bool | processMSU (SS7MsgISUP::Type type, unsigned int cic, const unsigned char *paramPtr, unsigned int paramLen, const SS7Label &label, SS7Layer3 *network, int sls) |
virtual SignallingEvent * | processCircuitEvent (SignallingCircuitEvent &event, SignallingCall *call=0) |
Protected Attributes |
unsigned int | m_cicLen |
Friends |
class | SS7ISUPCall |
Detailed Description
SS7 ISUP implementation.
Implementation of SS7 ISDN User Part
Constructor & Destructor Documentation
Constructor
- Parameters:
-
| params | Call controller's parameters |
Member Function Documentation
Create a new MSU populated with type, routing label and space for fixed part
- Parameters:
-
| type | Type of ISUP message |
| sio | Service Information Octet |
| label | Routing label for the new MSU |
| cic | Circuit Identification Code |
| params | Parameter list |
- Returns:
- Pointer to the new MSU or NULL if an error occured
Create an outgoing call. Send a NewCall event with the given msg parameter This method is thread safe
- Parameters:
-
| msg | Call parameters |
| reason | Failure reason if any |
- Returns:
- Referenced SignallingCall pointer on success or 0 on failure
Reimplemented from SignallingCallControl.
unsigned int cicLen |
( |
|
) |
const [inline] |
Get the length of the Circuit Identification Code for this user part
- Returns:
- Length of the CIC field in octets
virtual void cleanup |
( |
const char * |
reason = "offline" |
) |
[virtual] |
Create a new MSU populated with type, routing label and space for fixed part
- Parameters:
-
| type | Type of ISUP message |
| ssf | Subservice Field |
| label | Routing label for the new MSU |
| cic | Circuit Identification Code |
| params | Optional parameter list |
- Returns:
- Pointer to the new MSU or NULL if an error occured
Reimplemented in SS7BICC.
Decode an ISUP message buffer to a list of parameters
- Parameters:
-
| msg | Destination list of parameters |
| msgType | The message type |
| pcType | The point code type (message version) |
| paramPtr | Pointer to the Parameter area (just after the message type) |
| paramLen | Length of the Parameter area |
- Returns:
- True if the mesage was succesfully parsed
virtual void destruct |
( |
|
) |
[virtual] |
Remove all links with other layers. Disposes the memory
Reimplemented from GenObject.
Encode an ISUP list of parameters to a buffer. The input list may contain a 'message-prefix' parameter to override this controller's prefix
- Parameters:
-
| buf | Destination buffer |
| msgType | The message type |
| pcType | The point code type (message version) |
| params | Message list of parameters |
| cic | Optional cic to be added before mesage |
- Returns:
- True if the mesage was succesfully encoded
const String& format |
( |
|
) |
const [inline] |
Get the default data format
- Returns:
- The default data format
virtual void* getObject |
( |
const String & |
name |
) |
const [virtual] |
Get a pointer to this object or other data
- Parameters:
-
- Returns:
- The requested pointer or 0 if not exists
Reimplemented from GenObject.
Reimplemented in SS7BICC.
Check if the given point code is serviced by this controller
- Parameters:
-
| pc | The point code to check |
- Returns:
- SS7PointCode pointer or 0 if not found
virtual void notify |
( |
SS7Layer3 * |
link, |
|
|
int |
sls | |
|
) |
| | [protected, virtual] |
Process a notification generated by the attached network layer
- Parameters:
-
| link | Network or linkset that generated the notification |
| sls | Signalling Link that generated the notification, negative if none |
Reimplemented from SS7L3User.
Process an event received from a non-reserved circuit
- Parameters:
-
| event | The event |
| call | Optional signalling call whose circuit generated the event |
- Returns:
- Signalling event pointer or 0
Reimplemented from SignallingCallControl.
virtual bool processMSU |
( |
SS7MsgISUP::Type |
type, |
|
|
unsigned int |
cic, |
|
|
const unsigned char * |
paramPtr, |
|
|
unsigned int |
paramLen, |
|
|
const SS7Label & |
label, |
|
|
SS7Layer3 * |
network, |
|
|
int |
sls | |
|
) |
| | [protected, virtual] |
Process a MSU received from a Layer 3 component
- Parameters:
-
| type | Type of ISUP message |
| cic | Circuit Identification Code |
| paramPtr | Pointer to the Parameter area |
| paramLen | Length of the Parameter area |
| label | Routing label of the received MSU |
| network | Network layer that delivered the MSU |
| sls | Signalling Link the MSU was received from |
- Returns:
- True if the MSU was processed
virtual bool receivedMSU |
( |
const SS7MSU & |
msu, |
|
|
const SS7Label & |
label, |
|
|
SS7Layer3 * |
network, |
|
|
int |
sls | |
|
) |
| | [protected, virtual] |
Process a MSU received from a Layer 3 component
- Parameters:
-
| msu | Message data, starting with Service Indicator Octet |
| label | Routing label of the received MSU |
| network | Network layer that delivered the MSU |
| sls | Signalling Link the MSU was received from |
- Returns:
- True if the MSU was processed
Implements SS7L3User.
Reimplemented in SS7BICC.
Set a routing label to be used for outgoing messages
- Parameters:
-
| label | Routing label to set |
| opc | Originating point code |
| dpc | Destination point code |
| sls | Signalling Link Selection |
References SS7Label::assign().
Append a point code to the list of point codes serviced by this controller if not already there. Set default point code if requested. If the list is empty, the default point code is set to the first point code added
- Parameters:
-
| pc | The point code to append |
| def | True if this point code is the default for outgoing calls |
- Returns:
- False if the point code is invalid for this call controller type. If true is returned, don't reuse the pointer
virtual void timerTick |
( |
const Time & |
when |
) |
[protected, virtual] |
Send CGU if not already done. Check timeouts
- Parameters:
-
| when | Time to use as computing base for timeouts |
Reimplemented from SignallingComponent.
int transmitMessage |
( |
SS7MsgISUP * |
msg, |
|
|
const SS7Label & |
label, |
|
|
bool |
recvLbl, |
|
|
int |
sls = -1 | |
|
) |
| | |
Converts an ISUP message to a Message Signal Unit and push it down the protocol stack. The given message is consumed
- Parameters:
-
| msg | The message to send |
| label | The routing label for the message |
| recvLbl | True if the given label is from a received message. If true, a new routing label will be created from the received one |
| sls | Signalling Link to use for the new routing label. Ignored if recvLbl is false |
- Returns:
- Link the message was successfully queued to, negative for error
Member Data Documentation
Length of the Circuit Identification Code in octets
The documentation for this class was generated from the following file: