31 #ifndef OPAL_H323_H450PDU_H 32 #define OPAL_H323_H450PDU_H 43 #include <asn/h4501.h> 44 #include <asn/h4502.h> 46 #include <asn/h4507.h> 53 class H4501_EndpointAddress;
54 class H4501_InterpretationApdu;
64 X880_Invoke&
BuildInvoke(
int invokeId,
int operation);
70 const PString & callIdentity,
71 const PString & alias,
77 const PString & callIdentity);
81 H4507_H323_MWI_Operations &mwiOp,
82 PASN_Sequence &argument);
84 H4507_MWIInterrogateRes &interrogateResult);
114 virtual void AttachToSetup(
118 virtual void AttachToAlerting(
122 virtual void AttachToConnect(
126 virtual void AttachToReleaseComplete(
130 virtual PBoolean OnReceivedInvoke(
134 PASN_OctetString * argument
137 virtual PBoolean OnReceivedReturnResult(
138 X880_ReturnResult & returnResult
141 virtual PBoolean OnReceivedReturnError(
143 X880_ReturnError & returnError
146 virtual PBoolean OnReceivedReject(
153 void SendReturnError(
int returnError);
155 void SendGeneralReject(
int problem);
157 void SendInvokeReject(
int problem);
159 void SendReturnResultReject(
int problem);
161 void SendReturnErrorReject(
int problem);
163 PBoolean DecodeArguments(
164 PASN_OctetString * argString,
165 PASN_Object & argObject,
198 virtual void AttachToSetup(
202 virtual void AttachToAlerting(
206 virtual void AttachToConnect(
210 virtual void AttachToReleaseComplete(
216 virtual PBoolean HandlePDU(
224 virtual PBoolean OnReceivedInvoke(X880_Invoke& invoke, H4501_InterpretationApdu& interpretation);
231 virtual PBoolean OnReceivedReturnResult(X880_ReturnResult& returnResult);
238 virtual PBoolean OnReceivedReturnError(X880_ReturnError& returnError);
245 virtual PBoolean OnReceivedReject(X880_Reject& reject);
249 void SendReturnError(
int invokeId,
int returnError);
251 void SendGeneralReject(
int invokeId,
int problem);
253 void SendInvokeReject(
int invokeId,
int problem);
255 void SendReturnResultReject(
int invokeId,
int problem);
257 void SendReturnErrorReject(
int invokeId,
int problem);
280 virtual void AttachToSetup(
284 virtual void AttachToAlerting(
288 virtual void AttachToConnect(
292 virtual void AttachToReleaseComplete(
296 virtual PBoolean OnReceivedInvoke(
300 PASN_OctetString * argument
305 virtual void OnReceivedCallTransferIdentify(
311 virtual void OnReceivedCallTransferAbandon(
317 virtual void OnReceivedCallTransferInitiate(
319 PASN_OctetString * argument
324 virtual void OnReceivedCallTransferSetup(
326 PASN_OctetString * argument
331 virtual void OnReceivedCallTransferUpdate(
333 PASN_OctetString * argument
338 virtual void OnReceivedSubaddressTransfer(
340 PASN_OctetString * argument
345 virtual void OnReceivedCallTransferComplete(
347 PASN_OctetString * argument
352 virtual void OnReceivedCallTransferActive(
354 PASN_OctetString * argument
357 virtual PBoolean OnReceivedReturnResult(
358 X880_ReturnResult & returnResult
365 void OnReceivedInitiateReturnResult();
372 void OnReceivedSetupReturnResult();
378 void OnReceivedIdentifyReturnResult(X880_ReturnResult &returnResult);
380 virtual PBoolean OnReceivedReturnError(
382 X880_ReturnError & returnError
389 void OnReceivedInitiateReturnError(
390 const bool timerExpiry =
false 399 void OnReceivedSetupReturnError(
401 const bool timerExpiry =
false 408 void OnReceivedIdentifyReturnError(
409 const bool timerExpiry =
false 417 const PString & remoteParty,
418 const PString & callIdentity
425 void ConsultationTransfer(
426 const PString & primaryCallToken
431 void HandleConsultationTransfer(
432 const PString & callIdentity,
436 void AwaitSetupResponse(
437 const PString & token,
438 const PString & identity
465 virtual void onReceivedAdmissionReject(
const int returnError);
469 void HandleCallTransferFailure(
470 const int returnError
487 PDECLARE_NOTIFIER(PTimer,
H4502Handler, OnCallTransferTimeOut);
531 virtual PBoolean OnReceivedInvoke(
535 PASN_OctetString * argument
540 virtual void OnReceivedLocalCallHold(
546 virtual void OnReceivedLocalCallRetrieve(
553 virtual void OnReceivedRemoteCallHold(
560 virtual void OnReceivedRemoteCallRetrieve(
603 virtual PBoolean OnReceivedInvoke(
607 PASN_OctetString * argument
612 virtual void OnReceivedCallWaitingIndication(
614 PASN_OctetString *argument
622 virtual void AttachToAlerting(
624 unsigned numberOfCallsWaiting = 0
653 virtual PBoolean OnReceivedInvoke(
657 PASN_OctetString * argument
665 H4507_H323_MWI_Operations &mwiOp,
666 PASN_Sequence &argument);
670 virtual void AttachInterrogateResultToPdu(
H323SignalPDU & pdu,
671 H4507_MWIInterrogateRes &interrogateResult);
673 H4507_MessageWaitingIndicationErrors error);
698 virtual void AttachToSetup(
702 virtual void AttachToAlerting(
706 virtual void AttachToConnect(
710 virtual void AttachToReleaseComplete(
714 virtual PBoolean OnReceivedInvoke(
718 PASN_OctetString * argument
723 virtual void OnReceivedCallIntrusionRequest(
725 PASN_OctetString *argument
730 virtual void OnReceivedCallIntrusionGetCIPL(
732 PASN_OctetString *argument
737 virtual void OnReceivedCallIntrusionIsolate(
739 PASN_OctetString *argument
744 virtual PBoolean OnReceivedCallIntrusionForcedRelease(
746 PASN_OctetString *argument
751 virtual void OnReceivedCallIntrusionWOBRequest(
753 PASN_OctetString *argument
758 virtual void OnReceivedCallIntrusionSilentMonitor(
760 PASN_OctetString *argument
765 virtual void OnReceivedCallIntrusionNotification(
767 PASN_OctetString *argument
772 virtual void OnReceivedCfbOverride(
774 PASN_OctetString *argument
779 virtual void OnReceivedRemoteUserAlerting(
781 PASN_OctetString *argument
786 virtual void OnReceivedCallWaiting(
788 PASN_OctetString *argument
791 virtual PBoolean OnReceivedReturnResult(
792 X880_ReturnResult & returnResult
795 void OnReceivedCIRequestResult();
797 virtual PBoolean OnReceivedReturnError(
799 X880_ReturnError & returnError
802 PBoolean OnReceivedInvokeReturnError (
804 const bool timerExpiry =
false 807 void OnReceivedCIGetCIPLResult(
808 X880_ReturnResult & returnResult
811 PBoolean OnReceivedGetCIPLReturnError(
813 const bool timerExpiry =
false 816 void IntrudeCall(
int CICL );
818 void AwaitSetupResponse(
819 const PString & token,
820 const PString & identity
823 PBoolean GetRemoteCallIntrusionProtectionLevel(
824 const PString & intrusionCallToken,
825 unsigned intrusionCICL
828 void SetIntrusionImpending();
830 void SetForcedReleaseAccepted();
832 void SetIntrusionNotAuthorized();
834 virtual PBoolean OnReceivedReject(
873 e_ci_sAttachToReleseComplete
909 PDECLARE_NOTIFIER(PTimer,
H45011Handler, OnCallIntrudeTimeOut);
927 #endif // OPAL_H323_H450PDU_H PString transferringCallToken
Definition: h450pdu.h:510
Definition: h450pdu.h:850
void BuildInterrogateResult(int invokeId, H4507_MWIInterrogateRes &interrogateResult)
void BuildMessageWaiting(int invokeId, H4507_H323_MWI_Operations &mwiOp, PASN_Sequence &argument)
PBoolean WriteFacilityPDU(H323Connection &connection)
SendState
Definition: h450pdu.h:868
Definition: h450pdu.h:630
PDICTIONARY(H450xHandlerDict, POrdinalKey, H450xHandler)
PARRAY(H450xHandlerArray, H450xHandler)
PTimer ctTimer
Definition: h450pdu.h:514
Definition: h450pdu.h:871
Definition: h450pdu.h:447
H450xDispatcher & dispatcher
Definition: h450pdu.h:175
PString activeCallToken
Definition: h450pdu.h:916
State GetState() const
Definition: h450pdu.h:586
PBoolean ctResponseSent
Definition: h450pdu.h:513
Definition: h450pdu.h:878
PBoolean IsctTimerRunning()
Definition: h450pdu.h:905
void AttachSupplementaryServiceAPDU(H323SignalPDU &pdu)
static void ParseEndpointAddress(H4501_EndpointAddress &address, PString &party)
State mwiState
Definition: h450pdu.h:685
Definition: h450pdu.h:848
Definition: h450pdu.h:183
Definition: h450pdu.h:858
State
Definition: h450pdu.h:841
Definition: h450pdu.h:884
H450xHandlerDict opcodeHandler
Definition: h450pdu.h:266
Definition: h450pdu.h:677
State holdState
Definition: h450pdu.h:590
Definition: h450pdu.h:862
const H323Connection & getAssociatedConnection() const
Definition: h450pdu.h:491
Definition: h450pdu.h:847
PString intrudingCallToken
Definition: h450pdu.h:914
Definition: h450pdu.h:579
PString CallToken
Definition: h450pdu.h:515
Definition: h450pdu.h:445
PBoolean consultationTransfer
Definition: h450pdu.h:517
void BuildCallIntrusionImpending(int invokeId)
Definition: h450pdu.h:852
Definition: h450pdu.h:271
PBoolean IsctTimerRunning()
Definition: h450pdu.h:483
void BuildCallTransferInitiate(int invokeId, const PString &callIdentity, const PString &alias, const H323TransportAddress &address)
Definition: h450pdu.h:886
Definition: h450pdu.h:843
void StartciTimer(const PTimeInterval value)
Definition: h450pdu.h:897
Definition: h450pdu.h:885
int ciCICL
Definition: h450pdu.h:920
void BuildCallTransferIdentify(int invokeId)
Definition: h450pdu.h:644
PBoolean isConsultationTransferSuccess()
Definition: h450pdu.h:507
State GetState() const
Definition: h450pdu.h:634
Definition: h450pdu.h:880
Definition: h450pdu.h:860
State
Definition: h450pdu.h:629
Definition: h450pdu.h:882
Definition: h450pdu.h:879
Definition: h450pdu.h:845
Definition: h450pdu.h:580
PString transferringCallIdentity
Definition: h450pdu.h:511
H323Connection & connection
Definition: h450pdu.h:264
X880_ReturnResult & BuildCallIntrusionForcedReleaseResult(int invokeId)
PString intrudingCallIdentity
Definition: h450pdu.h:915
Definition: h450pdu.h:861
State ctState
Definition: h450pdu.h:512
void SetAssociatedCallToken(const PString &token)
Definition: h450pdu.h:495
Definition: h450pdu.h:581
void SetConsultationTransferSuccess()
Definition: h450pdu.h:503
PTimer ciTimer
Definition: h450pdu.h:913
Definition: h450pdu.h:444
ReturnState ciReturnState
Definition: h450pdu.h:917
State GetState() const
Definition: h450pdu.h:893
void BuildCallIntrusionForcedReleaseError()
Definition: h450pdu.h:870
void BuildCallIntrusionForceRelesed(int invokeId)
Definition: h450pdu.h:883
State
Definition: h450pdu.h:578
Definition: h450pdu.h:887
Definition: h450pdu.h:844
Definition: h450pdu.h:849
Definition: h323con.h:130
unsigned intrudingCallCICL
Definition: h450pdu.h:921
Definition: h450pdu.h:881
void BuildCallWaiting(int invokeId, int numCallsWaiting)
void BuildCallIntrusionForcedRelease(int invokeId, int CICL)
Definition: h450pdu.h:582
State
Definition: h450pdu.h:676
void BuildCallIntrusionGetCIPL(int invokeId)
Definition: h450pdu.h:851
Generate ciGenerateState
Definition: h450pdu.h:919
void BuildCallTransferAbandon(int invokeId)
State GetState() const
Definition: h450pdu.h:681
X880_Invoke & BuildInvoke(int invokeId, int operation)
Definition: h450pdu.h:105
Generate
Definition: h450pdu.h:857
State cwState
Definition: h450pdu.h:638
Definition: h450pdu.h:872
void BuildCallTransferSetup(int invokeId, const PString &callIdentity)
Definition: h450pdu.h:869
Definition: h450pdu.h:594
Definition: h450pdu.h:846
Definition: h450pdu.h:446
unsigned nextInvokeId
Definition: h450pdu.h:267
State GetState() const
Definition: h450pdu.h:454
void StartctTimer(const PTimeInterval value)
Definition: h450pdu.h:475
ReturnState
Definition: h450pdu.h:877
Definition: h450pdu.h:859
X880_ReturnError & BuildReturnError(int invokeId, int error)
Definition: h450pdu.h:522
const PString & getTransferringCallToken() const
Definition: h450pdu.h:499
Definition: h450pdu.h:448
X880_ReturnResult & BuildReturnResult(int invokeId)
Definition: transaddr.h:66
State
Definition: h450pdu.h:443
H323EndPoint & endpoint
Definition: h450pdu.h:173
State ciState
Definition: h450pdu.h:912
Definition: h450pdu.h:689
SendState ciSendState
Definition: h450pdu.h:918
H450xHandlerArray handlers
Definition: h450pdu.h:265
unsigned currentInvokeId
Definition: h450pdu.h:176
H323Connection & connection
Definition: h450pdu.h:174
unsigned GetInvokeId() const
Definition: h450pdu.h:169
Definition: h450pdu.h:842
unsigned GetNextInvokeId() const
Definition: h450pdu.h:261
X880_Reject & BuildReject(int invokeId)
Definition: h450pdu.h:863