Public Types |
| enum | TransferType { BridgedTransfer,
BlindTransfer,
ConsultationTransfer
} |
Public Member Functions |
| | PVXMLSession (PTextToSpeech *tts=NULL, PBoolean autoDelete=false) |
| virtual | ~PVXMLSession () |
| PTextToSpeech * | SetTextToSpeech (PTextToSpeech *tts, PBoolean autoDelete=false) |
| PTextToSpeech * | SetTextToSpeech (const PString &ttsName) |
| PTextToSpeech * | GetTextToSpeech () const |
| virtual PBoolean | Load (const PString &source) |
| virtual PBoolean | LoadFile (const PFilePath &file, const PString &firstForm=PString::Empty()) |
| virtual PBoolean | LoadURL (const PURL &url) |
| virtual PBoolean | LoadVXML (const PString &xml, const PString &firstForm=PString::Empty()) |
| virtual PBoolean | IsLoaded () const |
| virtual PBoolean | Open (const PString &mediaFormat) |
| virtual PBoolean | Close () |
| | Close the channel.
|
| virtual PBoolean | Execute () |
| PVXMLChannel * | GetAndLockVXMLChannel () |
| void | UnLockVXMLChannel () |
| PMutex & | GetSessionMutex () |
| virtual PBoolean | LoadGrammar (PVXMLGrammar *grammar) |
| virtual PBoolean | PlayText (const PString &text, PTextToSpeech::TextType type=PTextToSpeech::Default, PINDEX repeat=1, PINDEX delay=0) |
| PBoolean | ConvertTextToFilenameList (const PString &text, PTextToSpeech::TextType type, PStringArray &list, PBoolean useCacheing) |
| virtual PBoolean | PlayFile (const PString &fn, PINDEX repeat=1, PINDEX delay=0, PBoolean autoDelete=false) |
| virtual PBoolean | PlayData (const PBYTEArray &data, PINDEX repeat=1, PINDEX delay=0) |
| virtual PBoolean | PlayCommand (const PString &data, PINDEX repeat=1, PINDEX delay=0) |
| virtual PBoolean | PlayResource (const PURL &url, PINDEX repeat=1, PINDEX delay=0) |
| virtual PBoolean | PlayTone (const PString &toneSpec, PINDEX repeat=1, PINDEX delay=0) |
| virtual PBoolean | PlayElement (PXMLElement &element) |
| virtual PBoolean | PlaySilence (PINDEX msecs=0) |
| virtual PBoolean | PlaySilence (const PTimeInterval &timeout) |
| virtual PBoolean | PlayStop () |
| virtual void | SetPause (PBoolean pause) |
| virtual void | GetBeepData (PBYTEArray &data, unsigned ms) |
| virtual PBoolean | StartRecording (const PFilePath &fn, PBoolean recordDTMFTerm, const PTimeInterval &recordMaxTime, const PTimeInterval &recordFinalSilence) |
| virtual PBoolean | EndRecording () |
| virtual void | OnUserInput (const PString &str) |
| PString | GetXMLError () const |
| virtual void | OnEndDialog () |
| virtual void | OnEndSession () |
| virtual bool | OnTransfer (const PString &, TransferType) |
| void | SetTransferComplete (bool state) |
| const PStringToString & | GetVariables () |
| virtual PCaselessString | GetVar (const PString &str) const |
| virtual void | SetVar (const PString &ostr, const PString &val) |
| virtual PString | EvaluateExpr (const PString &oexpr) |
| virtual PBoolean | RetreiveResource (const PURL &url, PString &contentType, PFilePath &fn, PBoolean useCache=true) |
| | PDECLARE_NOTIFIER (PThread, PVXMLSession, VXMLExecute) |
| bool | SetCurrentForm (const PString &id, bool fullURI) |
| bool | GoToEventHandler (PXMLElement &element, const PString &eventName) |
| virtual void | OnEndRecording () |
| virtual void | Trigger () |
| virtual PBoolean | TraverseAudio (PXMLElement &element) |
| virtual PBoolean | TraverseBreak (PXMLElement &element) |
| virtual PBoolean | TraverseValue (PXMLElement &element) |
| virtual PBoolean | TraverseSayAs (PXMLElement &element) |
| virtual PBoolean | TraverseGoto (PXMLElement &element) |
| virtual PBoolean | TraverseGrammar (PXMLElement &element) |
| virtual PBoolean | TraverseRecord (PXMLElement &element) |
| virtual PBoolean | TraversedRecord (PXMLElement &element) |
| virtual PBoolean | TraverseIf (PXMLElement &element) |
| virtual PBoolean | TraverseExit (PXMLElement &element) |
| virtual PBoolean | TraverseVar (PXMLElement &element) |
| virtual PBoolean | TraverseSubmit (PXMLElement &element) |
| virtual PBoolean | TraverseMenu (PXMLElement &element) |
| virtual PBoolean | TraversedMenu (PXMLElement &element) |
| virtual PBoolean | TraverseChoice (PXMLElement &element) |
| virtual PBoolean | TraverseProperty (PXMLElement &element) |
| virtual PBoolean | TraverseDisconnect (PXMLElement &element) |
| virtual PBoolean | TraverseForm (PXMLElement &element) |
| virtual PBoolean | TraversedForm (PXMLElement &element) |
| virtual PBoolean | TraversePrompt (PXMLElement &element) |
| virtual PBoolean | TraverseField (PXMLElement &element) |
| virtual PBoolean | TraversedField (PXMLElement &element) |
| virtual PBoolean | TraverseFilled (PXMLElement &element) |
| virtual PBoolean | TraverseNoInput (PXMLElement &element) |
| virtual PBoolean | TraverseNoMatch (PXMLElement &element) |
| virtual PBoolean | TraverseError (PXMLElement &element) |
| virtual PBoolean | TraverseCatch (PXMLElement &element) |
| virtual PBoolean | TraverseTransfer (PXMLElement &element) |
| virtual PBoolean | TraversedTransfer (PXMLElement &element) |
| __inline PVXMLChannel * | GetVXMLChannel () const |
Static Public Member Functions |
| static PTimeInterval | StringToTime (const PString &str) |
Protected Types |
| enum | { NotRecording,
RecordingInProgress,
RecordingComplete
} |
| enum | { NotTransfering,
TransferInProgress,
TransferFailed,
TransferSuccessful
} |
Protected Member Functions |
| virtual bool | ProcessNode () |
| virtual bool | ProcessEvents () |
| virtual bool | ProcessGrammar () |
| virtual bool | NextNode (bool skipChildren) |
| void | SayAs (const PString &className, const PString &text) |
| void | SayAs (const PString &className, const PString &text, const PString &voice) |
| PURL | NormaliseResourceName (const PString &src) |
Protected Attributes |
| PMutex | m_sessionMutex |
| PURL | m_rootURL |
| PXML | m_xml |
| PTextToSpeech * | m_textToSpeech |
| bool | m_autoDeleteTextToSpeech |
| PThread * | m_vxmlThread |
| bool | m_abortVXML |
| PSyncPoint | m_waitForEvent |
| PXMLObject * | m_currentNode |
| bool | m_xmlChanged |
| bool | m_speakNodeData |
| PVXMLGrammar * | m_grammar |
| char | m_defaultMenuDTMF |
| PStringToString | m_variables |
| PString | m_variableScope |
| std::queue< char > | m_userInputQueue |
| PMutex | m_userInputMutex |
| enum PVXMLSession:: { ... } | m_recordingStatus |
| bool | m_recordStopOnDTMF |
| enum PVXMLSession:: { ... } | m_transferStatus |
| PTime | m_transferStartTime |