# H45011Handler Class Reference

`#include <h450pdu.h>`

Inheritance diagram for H45011Handler:

[legend]
Collaboration diagram for H45011Handler:
[legend]

## Public Types

| e_ci_Idle
| e_ci_WaitAck
| e_ci_GetCIPL
| e_ci_OrigInvoked
| e_ci_OrigIsolated
| e_ci_DestNotify
| e_ci_DestInvoked
| e_ci_DestIsolated
| e_ci_DestWOB
| e_ci_IsolationRequest
| e_ci_ForcedReleaseRequest
| e_ci_WOBRequest
| e_ci_gIdle
| e_ci_gConferenceRequest
| e_ci_gHeldRequest
| e_ci_gSilentMonitorRequest
| e_ci_gIsolationRequest
| e_ci_gForcedReleaseRequest
| e_ci_gWOBRequest
| e_ci_sIdle
| e_ci_sAttachToSetup
| e_ci_sAttachToAlerting
| e_ci_sAttachToConnect
| e_ci_sAttachToReleseComplete
| e_ci_rIdle
| e_ci_rCallIntrusionImpending
| e_ci_rCallIntruded
| e_ci_rCallIsolated
| e_ci_rCallForceReleased
| e_ci_rCallForceReleaseResult
| e_ci_rCallIntrusionComplete
| e_ci_rCallIntrusionEnd
| e_ci_rNotBusy
| e_ci_rTempUnavailable
| e_ci_rNotAuthorized
enum | State { e_ci_Idle, e_ci_WaitAck, e_ci_GetCIPL, e_ci_OrigInvoked, e_ci_OrigIsolated, e_ci_DestNotify, e_ci_DestInvoked, e_ci_DestIsolated, e_ci_DestWOB, e_ci_IsolationRequest, e_ci_ForcedReleaseRequest, e_ci_WOBRequest }
enum | Generate { e_ci_gIdle, e_ci_gConferenceRequest, e_ci_gHeldRequest, e_ci_gSilentMonitorRequest, e_ci_gIsolationRequest, e_ci_gForcedReleaseRequest, e_ci_gWOBRequest }
enum | SendState { e_ci_sIdle, e_ci_sAttachToSetup, e_ci_sAttachToAlerting, e_ci_sAttachToConnect, e_ci_sAttachToReleseComplete }
enum | ReturnState { e_ci_rIdle, e_ci_rCallIntrusionImpending, e_ci_rCallIntruded, e_ci_rCallIsolated, e_ci_rCallForceReleased, e_ci_rCallForceReleaseResult, e_ci_rCallIntrusionComplete, e_ci_rCallIntrusionEnd, e_ci_rNotBusy, e_ci_rTempUnavailable, e_ci_rNotAuthorized }

## Public Member Functions

| H45011Handler (H323Connection &connection, H450xDispatcher &dispatcher)
virtual void | AttachToSetup (H323SignalPDU &pdu)
virtual void | AttachToAlerting (H323SignalPDU &pdu)
virtual void | AttachToConnect (H323SignalPDU &pdu)
virtual void | AttachToReleaseComplete (H323SignalPDU &pdu)
virtual PBoolean | OnReceivedInvoke (int opcode, int invokeId, int linkedId, PASN_OctetString *argument)
virtual void | OnReceivedCallIntrusionRequest (int linkedId, PASN_OctetString *argument)
virtual void | OnReceivedCallIntrusionGetCIPL (int linkedId, PASN_OctetString *argument)
virtual void | OnReceivedCallIntrusionIsolate (int linkedId, PASN_OctetString *argument)
virtual PBoolean | OnReceivedCallIntrusionForcedRelease (int linkedId, PASN_OctetString *argument)
virtual void | OnReceivedCallIntrusionWOBRequest (int linkedId, PASN_OctetString *argument)
virtual void | OnReceivedCallIntrusionSilentMonitor (int linkedId, PASN_OctetString *argument)
virtual void | OnReceivedCallIntrusionNotification (int linkedId, PASN_OctetString *argument)
virtual void | OnReceivedCfbOverride (int linkedId, PASN_OctetString *argument)
virtual void | OnReceivedRemoteUserAlerting (int linkedId, PASN_OctetString *argument)
virtual void | OnReceivedCallWaiting (int linkedId, PASN_OctetString *argument)
virtual PBoolean | OnReceivedReturnResult (X880_ReturnResult &returnResult)
void | OnReceivedCIRequestResult ()
virtual PBoolean | OnReceivedReturnError (int errorCode, X880_ReturnError &returnError)
PBoolean | OnReceivedInvokeReturnError (int errorCode, const bool timerExpiry=false)
void | OnReceivedCIGetCIPLResult (X880_ReturnResult &returnResult)
PBoolean | OnReceivedGetCIPLReturnError (int errorCode, const bool timerExpiry=false)
void | IntrudeCall (int CICL)
void | AwaitSetupResponse (const PString &token, const PString &identity)
PBoolean | GetRemoteCallIntrusionProtectionLevel (const PString &intrusionCallToken, unsigned intrusionCICL)
void | SetIntrusionImpending ()
void | SetForcedReleaseAccepted ()
void | SetIntrusionNotAuthorized ()
virtual PBoolean | OnReceivedReject (int problemType, int problemNumber)
State | GetState () const
void | StartciTimer (const PTimeInterval value)
void | StopciTimer ()
PBoolean | IsctTimerRunning ()
| PDECLARE_NOTIFIER (PTimer, H45011Handler, OnCallIntrudeTimeOut)

## Protected Attributes

State | ciState
PTimer | ciTimer
PString | intrudingCallToken
PString | intrudingCallIdentity
PString | activeCallToken
ReturnState | ciReturnState
SendState | ciSendState
Generate | ciGenerateState
int | ciCICL
unsigned | intrudingCallCICL

## Member Enumeration Documentation

enum H45011Handler::Generate

What to generate

Enumerator:

  e_ci_gIdle |
  e_ci_gConferenceRequest |
  e_ci_gHeldRequest |
  e_ci_gSilentMonitorRequest |
  e_ci_gIsolationRequest |
  e_ci_gForcedReleaseRequest |
  e_ci_gWOBRequest |

enum H45011Handler::ReturnState

What to return

Enumerator:

  e_ci_rIdle |
  e_ci_rCallIntrusionImpending |
  e_ci_rCallIntruded |
  e_ci_rCallIsolated |
  e_ci_rCallForceReleased |
  e_ci_rCallForceReleaseResult |
  e_ci_rCallIntrusionComplete |
  e_ci_rCallIntrusionEnd |
  e_ci_rNotBusy |
  e_ci_rTempUnavailable |
  e_ci_rNotAuthorized |

enum H45011Handler::SendState

When to send SS message

Enumerator:

  e_ci_sIdle |
  e_ci_sAttachToSetup |
  e_ci_sAttachToAlerting |
  e_ci_sAttachToConnect |
  e_ci_sAttachToReleseComplete |

enum H45011Handler::State

Sub-state for call intrusion.

Enumerator:

  e_ci_Idle |
  e_ci_WaitAck |
  e_ci_GetCIPL |
  e_ci_OrigInvoked |
  e_ci_OrigIsolated |
  e_ci_DestNotify |
  e_ci_DestInvoked |
  e_ci_DestIsolated |
  e_ci_DestWOB |
  e_ci_IsolationRequest |
  e_ci_ForcedReleaseRequest |
  e_ci_WOBRequest |

## Constructor & Destructor Documentation

H45011Handler::H45011Handler | ( | H323Connection & | connection,
|  | H450xDispatcher & | dispatcher |
| ) |  |  |

## Member Function Documentation

virtual void H45011Handler::AttachToAlerting | ( | H323SignalPDU & | pdu | ) | `[virtual]`

Reimplemented from H450xHandler.

virtual void H45011Handler::AttachToConnect | ( | H323SignalPDU & | pdu | ) | `[virtual]`

Reimplemented from H450xHandler.

virtual void H45011Handler::AttachToReleaseComplete | ( | H323SignalPDU & | pdu | ) | `[virtual]`

Reimplemented from H450xHandler.

virtual void H45011Handler::AttachToSetup | ( | H323SignalPDU & | pdu | ) | `[virtual]`

Reimplemented from H450xHandler.

void H45011Handler::AwaitSetupResponse | ( | const PString & | token,
|  | const PString & | identity |
| ) |  |  |

PBoolean H45011Handler::GetRemoteCallIntrusionProtectionLevel | ( | const PString & | intrusionCallToken,
|  | unsigned | intrusionCICL |
| ) |  |  |

State H45011Handler::GetState | ( |  | ) | const`[inline]`

Get the current call intrusion state.

void H45011Handler::IntrudeCall | ( | int | CICL | ) |

PBoolean H45011Handler::IsctTimerRunning | ( |  | ) | `[inline]`

Is the Call Intrusion Timer running?

virtual PBoolean H45011Handler::OnReceivedCallIntrusionForcedRelease | ( | int | linkedId,
|  | PASN_OctetString * | argument |
| ) |  |  | `[virtual]`

Handle an incoming Call Intrusion Forced Release operation

virtual void H45011Handler::OnReceivedCallIntrusionGetCIPL | ( | int | linkedId,
|  | PASN_OctetString * | argument |
| ) |  |  | `[virtual]`

Handle an incoming Call Intrusion GetCIPL operation

virtual void H45011Handler::OnReceivedCallIntrusionIsolate | ( | int | linkedId,
|  | PASN_OctetString * | argument |
| ) |  |  | `[virtual]`

Handle an incoming Call Intrusion Isolate operation

virtual void H45011Handler::OnReceivedCallIntrusionNotification | ( | int | linkedId,
|  | PASN_OctetString * | argument |
| ) |  |  | `[virtual]`

Handle an incoming Call Intrusion Notification operation

virtual void H45011Handler::OnReceivedCallIntrusionRequest | ( | int | linkedId,
|  | PASN_OctetString * | argument |
| ) |  |  | `[virtual]`

Handle an incoming Call Intrusion operation

virtual void H45011Handler::OnReceivedCallIntrusionSilentMonitor | ( | int | linkedId,
|  | PASN_OctetString * | argument |
| ) |  |  | `[virtual]`

Handle an incoming Call Intrusion Silent Monitor operation

virtual void H45011Handler::OnReceivedCallIntrusionWOBRequest | ( | int | linkedId,
|  | PASN_OctetString * | argument |
| ) |  |  | `[virtual]`

Handle an incoming Call Intrusion WOB operation

virtual void H45011Handler::OnReceivedCallWaiting | ( | int | linkedId,
|  | PASN_OctetString * | argument |
| ) |  |  | `[virtual]`

Handle an incoming Call Intrusion Call Waiting operation

virtual void H45011Handler::OnReceivedCfbOverride | ( | int | linkedId,
|  | PASN_OctetString * | argument |
| ) |  |  | `[virtual]`

Handle an incoming Call Intrusion cfb Override operation

void H45011Handler::OnReceivedCIGetCIPLResult | ( | X880_ReturnResult & | returnResult | ) |

void H45011Handler::OnReceivedCIRequestResult | ( |  | ) |

PBoolean H45011Handler::OnReceivedGetCIPLReturnError | ( | int | errorCode,
|  | const bool | timerExpiry = `false` |
| ) |  |  |

Parameters:

  timerExpiry | Flag to indicate expiry

virtual PBoolean H45011Handler::OnReceivedInvoke | ( | int | opcode,
|  | int | invokeId,
|  | int | linkedId,
|  | PASN_OctetString * | argument |
| ) |  |  | `[virtual]`

Parameters:

  invokeId | InvokeId of operation (used in response)
  linkedId | InvokeId of associated operation (if any)
  argument | Parameters for the initiate operation

Implements H450xHandler.

PBoolean H45011Handler::OnReceivedInvokeReturnError | ( | int | errorCode,
|  | const bool | timerExpiry = `false` |
| ) |  |  |

Parameters:

  timerExpiry | Flag to indicate expiry

virtual PBoolean H45011Handler::OnReceivedReject | ( | int | problemType,
|  | int | problemNumber |
| ) |  |  | `[virtual]`

Reimplemented from H450xHandler.

virtual void H45011Handler::OnReceivedRemoteUserAlerting | ( | int | linkedId,
|  | PASN_OctetString * | argument |
| ) |  |  | `[virtual]`

Handle an incoming Call Intrusion Remote User Alerting operation

virtual PBoolean H45011Handler::OnReceivedReturnError | ( | int | errorCode,
|  | X880_ReturnError & | returnError |
| ) |  |  | `[virtual]`

Reimplemented from H450xHandler.

virtual PBoolean H45011Handler::OnReceivedReturnResult | ( | X880_ReturnResult & | returnResult | ) | `[virtual]`

Reimplemented from H450xHandler.

H45011Handler::PDECLARE_NOTIFIER | ( | PTimer | ,
|  | H45011Handler | ,
|  | OnCallIntrudeTimeOut |  |
| ) |  |  |

Callback mechanism for Call Intrusion Timers CI-T1, CI-T2, CI-T3 & CI-T4 & CI-T5 & CI-T6

void H45011Handler::SetForcedReleaseAccepted | ( |  | ) |

void H45011Handler::SetIntrusionImpending | ( |  | ) |

void H45011Handler::SetIntrusionNotAuthorized | ( |  | ) |

void H45011Handler::StartciTimer | ( | const PTimeInterval | value | ) | `[inline]`

Start the Call Intrusion Timer using the specified time interval.

void H45011Handler::StopciTimer | ( |  | ) |

Stop the Call Intrusion Timer

## Field Documentation

PString H45011Handler::activeCallToken `[protected]`

int H45011Handler::ciCICL `[protected]`

Generate H45011Handler::ciGenerateState `[protected]`

ReturnState H45011Handler::ciReturnState `[protected]`

SendState H45011Handler::ciSendState `[protected]`

State H45011Handler::ciState `[protected]`

PTimer H45011Handler::ciTimer `[protected]`

unsigned H45011Handler::intrudingCallCICL `[protected]`

PString H45011Handler::intrudingCallIdentity `[protected]`

PString H45011Handler::intrudingCallToken `[protected]`

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

- h450pdu.h