Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

PVXMLSession Class Reference

#include <vxml.h>

Inheritance diagram for PVXMLSession:

PIndirectChannel PVXMLChannelInterface PChannel PObject List of all members.

Public Member Functions

 PVXMLSession (PTextToSpeech *tts=NULL, BOOL autoDelete=FALSE)
 ~PVXMLSession ()
void SetFinishWhenEmpty (BOOL v)
PTextToSpeechSetTextToSpeech (PTextToSpeech *_tts, BOOL autoDelete=FALSE)
PTextToSpeechSetTextToSpeech (const PString &ttsName)
PTextToSpeechGetTextToSpeech ()
virtual BOOL Load (const PString &source)
virtual BOOL LoadFile (const PFilePath &file)
virtual BOOL LoadURL (const PURL &url)
virtual BOOL LoadVXML (const PString &xml)
virtual BOOL IsLoaded () const
virtual BOOL Open (BOOL isPCM)
virtual BOOL Open (const PString &mediaFormat)
virtual BOOL Close ()
BOOL Execute ()
PVXMLChannelGetVXMLChannel () const
BOOL LoadGrammar (PVXMLGrammar *grammar)
virtual BOOL PlayText (const PString &text, PTextToSpeech::TextType type=PTextToSpeech::Default, PINDEX repeat=1, PINDEX delay=0)
BOOL ConvertTextToFilenameList (const PString &_text, PTextToSpeech::TextType type, PStringArray &list, BOOL useCacheing)
virtual BOOL PlayFile (const PString &fn, PINDEX repeat=1, PINDEX delay=0, BOOL autoDelete=FALSE)
virtual BOOL PlayData (const PBYTEArray &data, PINDEX repeat=1, PINDEX delay=0)
virtual BOOL PlayCommand (const PString &data, PINDEX repeat=1, PINDEX delay=0)
virtual BOOL PlayResource (const PURL &url, PINDEX repeat=1, PINDEX delay=0)
virtual BOOL PlaySilence (PINDEX msecs=0)
virtual BOOL PlaySilence (const PTimeInterval &timeout)
virtual void SetPause (BOOL pause)
virtual void GetBeepData (PBYTEArray &data, unsigned ms)
virtual BOOL StartRecording (const PFilePath &fn, BOOL recordDTMFTerm, const PTimeInterval &recordMaxTime, const PTimeInterval &recordFinalSilence)
virtual BOOL EndRecording ()
virtual BOOL IsPlaying () const
virtual BOOL IsRecording () const
virtual BOOL OnUserInput (const PString &str)
PString GetXMLError () const
virtual void OnEndSession ()
virtual PString GetVar (const PString &str) const
virtual void SetVar (const PString &ostr, const PString &val)
virtual PString EvaluateExpr (const PString &oexpr)
virtual BOOL RetreiveResource (const PURL &url, PString &contentType, PFilePath &fn, BOOL useCache=TRUE)
 PDECLARE_NOTIFIER (PThread, PVXMLSession, VXMLExecute)
virtual BOOL DoTransfer (const PVXMLTransferOptions &)
virtual void OnTransfer (const PVXMLTransferResult &)
void SetCallingToken (PString &token)
PXMLElementFindHandler (const PString &event)
PWAVFileCreateWAVFile (const PFilePath &fn, PFile::OpenMode mode, int opts, unsigned fmt)
void OnEndRecording (const PString &channelName)
void RecordEnd ()
void Trigger ()

Protected Member Functions

void Initialise ()
void AllowClearCall ()
void ProcessUserInput ()
void ProcessNode ()
void ProcessGrammar ()
BOOL TraverseAudio ()
BOOL TraverseGoto ()
BOOL TraverseGrammar ()
BOOL TraverseRecord ()
BOOL TraverseIf ()
BOOL TraverseExit ()
BOOL TraverseVar ()
BOOL TraverseSubmit ()
BOOL TraverseMenu ()
BOOL TraverseChoice (const PString &grammarResult)
BOOL TraverseProperty ()
void SayAs (const PString &className, const PString &text)
PURL NormaliseResourceName (const PString &src)
PXMLElementFindForm (const PString &id)
virtual BOOL TraverseTransfer ()

Static Protected Member Functions

static PTimeInterval StringToTime (const PString &str)

Protected Attributes

PSyncPoint waitForEvent
PMutex sessionMutex
PXML xmlFile
PVXMLGrammaractiveGrammar
BOOL listening
int timeout
PStringToString sessionVars
PStringToString documentVars
PMutex userInputMutex
std::queue< char > userInputQueue
BOOL recording
PFilePath recordFn
BOOL recordDTMFTerm
PTimeInterval recordMaxTime
PTimeInterval recordFinalSilence
PSyncPoint recordSync
BOOL loaded
BOOL finishWhenEmpty
BOOL allowFinish
PURL rootURL
BOOL emptyAction
PThreadvxmlThread
BOOL threadRunning
BOOL forceEnd
PString mediaFormat
PVXMLChannelvxmlChannel
PTextToSpeechtextToSpeech
BOOL autoDeleteTextToSpeech
PXMLElementcurrentForm
PXMLElementcurrentField
PXMLObjectcurrentNode

Constructor & Destructor Documentation

PVXMLSession::PVXMLSession PTextToSpeech tts = NULL,
BOOL  autoDelete = FALSE
 

PVXMLSession::~PVXMLSession  ) 
 


Member Function Documentation

void PVXMLSession::AllowClearCall  )  [protected]
 

virtual BOOL PVXMLSession::Close  )  [virtual]
 

Close the channel. This will detach itself from the read and write channels and delete both of them if they are auto delete.

Returns:
TRUE if the channel is closed.

Reimplemented from PIndirectChannel.

BOOL PVXMLSession::ConvertTextToFilenameList const PString _text,
PTextToSpeech::TextType  type,
PStringArray list,
BOOL  useCacheing
 

PWAVFile* PVXMLSession::CreateWAVFile const PFilePath fn,
PFile::OpenMode  mode,
int  opts,
unsigned  fmt
[virtual]
 

Implements PVXMLChannelInterface.

virtual BOOL PVXMLSession::DoTransfer const PVXMLTransferOptions  )  [inline, virtual]
 

virtual BOOL PVXMLSession::EndRecording  )  [virtual]
 

virtual PString PVXMLSession::EvaluateExpr const PString oexpr  )  [virtual]
 

BOOL PVXMLSession::Execute  ) 
 

PXMLElement* PVXMLSession::FindForm const PString id  )  [protected]
 

PXMLElement* PVXMLSession::FindHandler const PString event  ) 
 

virtual void PVXMLSession::GetBeepData PBYTEArray data,
unsigned  ms
[virtual]
 

PTextToSpeech* PVXMLSession::GetTextToSpeech  )  [inline]
 

virtual PString PVXMLSession::GetVar const PString str  )  const [virtual]
 

PVXMLChannel* PVXMLSession::GetVXMLChannel  )  const [inline]
 

PString PVXMLSession::GetXMLError  )  const
 

void PVXMLSession::Initialise  )  [protected]
 

virtual BOOL PVXMLSession::IsLoaded  )  const [inline, virtual]
 

virtual BOOL PVXMLSession::IsPlaying  )  const [virtual]
 

virtual BOOL PVXMLSession::IsRecording  )  const [virtual]
 

virtual BOOL PVXMLSession::Load const PString source  )  [virtual]
 

virtual BOOL PVXMLSession::LoadFile const PFilePath file  )  [virtual]
 

BOOL PVXMLSession::LoadGrammar PVXMLGrammar grammar  ) 
 

virtual BOOL PVXMLSession::LoadURL const PURL url  )  [virtual]
 

virtual BOOL PVXMLSession::LoadVXML const PString xml  )  [virtual]
 

PURL PVXMLSession::NormaliseResourceName const PString src  )  [protected]
 

void PVXMLSession::OnEndRecording const PString channelName  )  [virtual]
 

Implements PVXMLChannelInterface.

virtual void PVXMLSession::OnEndSession  )  [inline, virtual]
 

virtual void PVXMLSession::OnTransfer const PVXMLTransferResult  )  [virtual]
 

virtual BOOL PVXMLSession::OnUserInput const PString str  )  [virtual]
 

virtual BOOL PVXMLSession::Open const PString mediaFormat  )  [virtual]
 

virtual BOOL PVXMLSession::Open BOOL  isPCM  )  [virtual]
 

PVXMLSession::PDECLARE_NOTIFIER PThread  ,
PVXMLSession  ,
VXMLExecute 
 

virtual BOOL PVXMLSession::PlayCommand const PString data,
PINDEX  repeat = 1,
PINDEX  delay = 0
[virtual]
 

virtual BOOL PVXMLSession::PlayData const PBYTEArray data,
PINDEX  repeat = 1,
PINDEX  delay = 0
[virtual]
 

virtual BOOL PVXMLSession::PlayFile const PString fn,
PINDEX  repeat = 1,
PINDEX  delay = 0,
BOOL  autoDelete = FALSE
[virtual]
 

virtual BOOL PVXMLSession::PlayResource const PURL url,
PINDEX  repeat = 1,
PINDEX  delay = 0
[virtual]
 

virtual BOOL PVXMLSession::PlaySilence const PTimeInterval timeout  )  [virtual]
 

virtual BOOL PVXMLSession::PlaySilence PINDEX  msecs = 0  )  [virtual]
 

virtual BOOL PVXMLSession::PlayText const PString text,
PTextToSpeech::TextType  type = PTextToSpeech::Default,
PINDEX  repeat = 1,
PINDEX  delay = 0
[virtual]
 

void PVXMLSession::ProcessGrammar  )  [protected]
 

void PVXMLSession::ProcessNode  )  [protected]
 

void PVXMLSession::ProcessUserInput  )  [protected]
 

void PVXMLSession::RecordEnd  )  [virtual]
 

Implements PVXMLChannelInterface.

virtual BOOL PVXMLSession::RetreiveResource const PURL url,
PString contentType,
PFilePath fn,
BOOL  useCache = TRUE
[virtual]
 

void PVXMLSession::SayAs const PString className,
const PString text
[protected]
 

void PVXMLSession::SetCallingToken PString token  )  [inline]
 

void PVXMLSession::SetFinishWhenEmpty BOOL  v  )  [inline]
 

virtual void PVXMLSession::SetPause BOOL  pause  )  [virtual]
 

PTextToSpeech* PVXMLSession::SetTextToSpeech const PString ttsName  ) 
 

PTextToSpeech* PVXMLSession::SetTextToSpeech PTextToSpeech _tts,
BOOL  autoDelete = FALSE
 

virtual void PVXMLSession::SetVar const PString ostr,
const PString val
[virtual]
 

virtual BOOL PVXMLSession::StartRecording const PFilePath fn,
BOOL  recordDTMFTerm,
const PTimeInterval recordMaxTime,
const PTimeInterval recordFinalSilence
[virtual]
 

static PTimeInterval PVXMLSession::StringToTime const PString str  )  [static, protected]
 

BOOL PVXMLSession::TraverseAudio  )  [protected]
 

BOOL PVXMLSession::TraverseChoice const PString grammarResult  )  [protected]
 

BOOL PVXMLSession::TraverseExit  )  [protected]
 

BOOL PVXMLSession::TraverseGoto  )  [protected]
 

BOOL PVXMLSession::TraverseGrammar  )  [protected]
 

BOOL PVXMLSession::TraverseIf  )  [protected]
 

BOOL PVXMLSession::TraverseMenu  )  [protected]
 

BOOL PVXMLSession::TraverseProperty  )  [protected]
 

BOOL PVXMLSession::TraverseRecord  )  [protected]
 

BOOL PVXMLSession::TraverseSubmit  )  [protected]
 

virtual BOOL PVXMLSession::TraverseTransfer  )  [protected, virtual]
 

BOOL PVXMLSession::TraverseVar  )  [protected]
 

void PVXMLSession::Trigger  )  [virtual]
 

Implements PVXMLChannelInterface.


Member Data Documentation

PVXMLGrammar* PVXMLSession::activeGrammar [protected]
 

BOOL PVXMLSession::allowFinish [protected]
 

BOOL PVXMLSession::autoDeleteTextToSpeech [protected]
 

PXMLElement* PVXMLSession::currentField [protected]
 

PXMLElement* PVXMLSession::currentForm [protected]
 

PXMLObject* PVXMLSession::currentNode [protected]
 

PStringToString PVXMLSession::documentVars [protected]
 

BOOL PVXMLSession::emptyAction [protected]
 

BOOL PVXMLSession::finishWhenEmpty [protected]
 

BOOL PVXMLSession::forceEnd [protected]
 

BOOL PVXMLSession::listening [protected]
 

BOOL PVXMLSession::loaded [protected]
 

PString PVXMLSession::mediaFormat [protected]
 

BOOL PVXMLSession::recordDTMFTerm [protected]
 

PTimeInterval PVXMLSession::recordFinalSilence [protected]
 

PFilePath PVXMLSession::recordFn [protected]
 

BOOL PVXMLSession::recording [protected]
 

PTimeInterval PVXMLSession::recordMaxTime [protected]
 

PSyncPoint PVXMLSession::recordSync [protected]
 

PURL PVXMLSession::rootURL [protected]
 

PMutex PVXMLSession::sessionMutex [protected]
 

PStringToString PVXMLSession::sessionVars [protected]
 

PTextToSpeech* PVXMLSession::textToSpeech [protected]
 

BOOL PVXMLSession::threadRunning [protected]
 

int PVXMLSession::timeout [protected]
 

PMutex PVXMLSession::userInputMutex [protected]
 

std::queue<char> PVXMLSession::userInputQueue [protected]
 

PVXMLChannel* PVXMLSession::vxmlChannel [protected]
 

PThread* PVXMLSession::vxmlThread [protected]
 

PSyncPoint PVXMLSession::waitForEvent [protected]
 

PXML PVXMLSession::xmlFile [protected]
 


The documentation for this class was generated from the following file:
Generated on Wed Sep 28 10:27:38 2005 for PWLib by  doxygen 1.4.4