|
|
Q.931 ISDN Layer 3 implementation on top of a Layer 2. Manage Q.931 monitors
| ISDNQ931Monitor (const NamedList& params, const char* name = 0)
| ISDNQ931Monitor |
Constructor Initialize this object and the component
Parameters:
| params | Layer's parameters and parser settings |
| name | Name of this component |
| ~ISDNQ931Monitor ()
| ~ISDNQ931Monitor |
[virtual]
Destructor Destroy all calls
| bool initialize (const NamedList* config)
| initialize |
[virtual]
Configure and initialize the Q.931 monitor and its interfaces
Parameters:
| config | Optional configuration parameters override |
Returns: True if Q.931 monitor and both interfaces were initialized properly
Reimplemented from SignallingComponent.
| const char* statusName ()
| statusName |
[const virtual]
Get the controller's status as text
Returns: Controller status name
Reimplemented from SignallingCallControl.
| void dataLinkState (u_int8_t tei, bool cmd, bool value, ISDNLayer2* layer2)
| dataLinkState |
[virtual]
Notification from layer 2 of data link set/release command or response
Parameters:
| tei | The TEI of the notification |
| cmd | True if received a command, false if received a response |
| value | The value of the notification If 'cmd' is true (command), the value is true if a request to establish data link was received or false if received a request to release data link If 'cmd' is false (response), the value is the response |
| layer2 | Pointer to the notifier |
Reimplemented from ISDNLayer3.
| void idleTimeout (ISDNLayer2* layer2)
| idleTimeout |
[virtual]
Notification from layer 2 of data link idle timeout
Parameters:
| layer2 | Pointer to the notifier |
Reimplemented from ISDNLayer3.
| void receiveData (const DataBlock& data, u_int8_t tei, ISDNLayer2* layer2)
| receiveData |
[virtual]
Implements Q.921 DL-DATA and DL-UNIT DATA indication primitives
Parameters:
| data | Received data |
| tei | The TEI of the Layer 2 |
| layer2 | Pointer to the sender |
Reimplemented from ISDNLayer3.
| ISDNQ921Passive* attach (ISDNQ921Passive* q921, bool net)
| attach |
[virtual]
Attach ISDN Q.921 pasive transport that monitors one side of the link This method is thread safe
Parameters:
| q921 | Pointer to the monitor to attach |
| net | True if this is the network side of the data link, false for user (CPE) side |
Returns: Pointer to detached monitor or NULL
Reimplemented from SignallingCallControl.
| SignallingCircuitGroup* attach (SignallingCircuitGroup* circuits, bool net)
| attach |
[virtual]
Attach a circuit group to this call controller This method is thread safe
Parameters:
| circuits | Pointer to the SignallingCircuitGroup to attach |
| net | True if this group belongs to the network side of the data link, false for user (CPE) side |
Returns: Pointer to the old group that was detached, NULL if none or no change
Reimplemented from SignallingCallControl.
| inline ISDNQ921Passive* circuits (bool net)
| circuits |
[const]
Get a pointer to the NET or CPE circuit group
Parameters:
| net | True to get the network side circuits, false for user (CPE) side |
Returns: Pointer to the circuit group requested, NULL if none attached
Reimplemented from SignallingCallControl.
| inline void setDebug (bool printMsg, bool extendedDebug)
| setDebug |
Set debug data of this call controller
Parameters:
| printMsg | Enable/disable message printing on output |
| extendedDebug | Enable/disable hex data dump if print messages is enabled |
| void cleanup (const char* reason = "offline")
| cleanup |
[virtual]
Terminate all monitors This method is thread safe
Parameters:
| reason | Cleanup reason |
Reimplemented from SignallingCallControl.
| void terminateMonitor (ISDNQ931CallMonitor* mon, const char* reason)
| terminateMonitor |
Terminate all monitors or only one This method is thread safe
Parameters:
| mon | The monitor to terminate, 0 to terminate all |
| reason | The termination reason |
| void destroyed ()
| destroyed |
[protected virtual]
Detach links. Disposes memory
Reimplemented from SignallingComponent.
| void timerTick (const Time& when)
| timerTick |
[protected virtual]
Method called periodically to check timeouts This method is thread safe
Parameters:
| when | Time to use as computing base for events and timeouts |
Reimplemented from SignallingComponent.
| bool reserveCircuit (unsigned int code, bool netInit,
SignallingCircuit** caller, SignallingCircuit** called)
| reserveCircuit |
[protected]
Reserve the same circuit code from both circuit groups This is an atomic operation: if one circuit fails to be reserved, both of them will fail Release both circuits on failure This method is thread safe
Parameters:
| code | The circuit code to reserve |
| netInit | True if the caller is from the network side of the link, false if it's from CPE side |
| caller | The destination caller circuit |
| called | The destination called circuit |
Returns: True on success
Reimplemented from SignallingCallControl.
| bool releaseCircuit (SignallingCircuit* circuit)
| releaseCircuit |
[protected]
Release a circuit This method is thread safe
Parameters:
| circuit | The circuit to release |
Returns: True on success
Reimplemented from SignallingCallControl.
| void processMsgRestart (ISDNQ931Message* msg)
| processMsgRestart |
[protected]
Process a restart or restart acknoledge message Terminate the monitor having the circuit given in restart message
Parameters:
| msg | The received message |
| Generated by: paulc on bussard on Thu Jul 24 18:41:02 2014, using kdoc 2.0a54. |