IP Media Server for HMP Demo Guide — July 2005 37
Demo Details
State
Machine
CVoiceStateMachine
• Handles voice events and maintains
voice state machine(s)
Note: The public functions in this class
should only be accessed by the
classes inside the voice module.
Init()
• Opens vox files
• Creates mailbox utility object that
manages mailboxes
Exit()
• Closes vox files
• Deletes mailbox utility object that
manages mailboxes
ProcessEvent()
• Processes voice events
Misc CMailBoxUtil
• Provides utility function to manage
mailboxes
Note: The public functions in this class
should only be accessed by the
classes inside the voice module
InitMailBoxes()
• Initializes mailboxes
CheckAndConvertDigits()
• Checks if the extension number is in
allowed range. If it is, converts it into an
integer.
GetMailBox()
• Checks if the mailbox is ready to be used.
If it is, gets the mailbox.
CreateMailBoxFileName()
• Creates a filename for the mailbox
FreeMailBox()
• Frees the mailbox for future use
Table8. Voice Module Classes (Continued)
Category Class Name Interface
Table9. Fax Module Classes
Category Class Name Interface
Module CFaxModule
• Interacts with CFaxDevice.
• Exports Fax module functions to
CEventRouter.
Note: The public functions in this class can
be accessed by classes outside the
Fax module.
Init()
• Creates fax device objects
Exit()
• Deletes fax device objects
GetNumOfDevices()
• Gets the number of fax resources
GetDeviceHandle()
• Returns fax device handle
TSUserEventProcessEvent()
• Processes fax events from the Global
Call library
ProcessEvent()
• Processes the events from the other
modules