Freigeben über


TUI Object Model (Windows CE 5.0)

Send Feedback

The TUI is implemented in a number of files, contained in the directories explained in TUI Source Code Directories. Although these files provide many functions and classes, a few have key roles in the implementation of the TUI. This section explains these elements.

Note   The TUI is a sample application and does not expose an external programmable API. For both of these reasons, the Windows CE documentation does not include an exhaustive TUI API reference section. The information in this section is not a replacement for an API reference; instead, it introduces developers working with the TUI to the most important elements of the code. For detailed information about any specific element, refer to the code itself.

Classes that play key roles in the implementation of the TUI are as follows:

  • CVoIPApp. This is the top-level class in the TUI object model. It owns references to and manages a number of other classes and COM components used by TUI to provide phone functionality.

    The class is the first class to receive events generated by a number of these classes and COM components (it then passes many of these events to other objects it manages).

    For more information about this class, see CVoIPApp.

  • TUISettings. This class provides access to configuration information stored in the registry that CVoIPApp does not provide.

    For more information about this class, see TUISettings.

  • CVoIPDesktopManager. This class defers control of the TUI user interface to the CVoIPDesktopManager class. CVoIPDesktopManager

    • Manages the UI controls and dialogs
    • Maintains z-order and focus information
    • Handles UI events, which are passed by the CVoIPApp instance

    For more information about this class, see CVoIPDesktopManager.

    The CVoIPDesktopManager class manages instances of a number of additional classes that provide UI functionality by subclassing Windows common controls, including

    • CVoIPDesktop
    • CVoIPMainDialog
    • CVoIPStateMgr
    • CVoIPState

    For more information about these classes, see TUI UI Object Model.

In addition, the TUI uses a number of Windows CE Catalog items for key functionality:

  • VoIP Application Interface Layer (VAIL) .Abstracts call control, using SIP, or another call control protocol, and other common IP phone functionality.

    Provides the IVoIPMgr and IVoIPConfigurationDataStore interfaces accessed using the global GetMgr and GetDataStore functions. GetMgr and GetDataStore are defined in %_WINCEROOT%\Public\VoIP\OAK\Phone\TUI\App\Main.cpp.

  • Exchange Client. Provides access to contact, free/busy, and global address list information retrieved from an Exchange server.

    This functionality is optional; the TUI can operate without interacting with an Exchange server.

  • Real-time Communications (RTC) Client API. Provides presence functionality.

    Also includes low-level IP phone communication functionality, including Session Initiation Protocol (SIP) and Real-time Transport Protocol (RTP) stacks.

    However, the TUI does not use this low-level functionality directly. Instead, the TUI uses the VAIL for call control and media transport. This separation enables you to change the call control or media transport implementation by modifying the VAIL, without changing the TUI.

    For more information about modifying VAIL in this manner, see Common IP Phone Customization Tasks.

  • PC Authentication. Connects an external PC to the phone so that potentially sensitive information, like contacts, is not available when the external PC is locked.

  • Phone IME. Maps numeric keypad button presses to alphanumeric and other characters.

For a diagram that shows how these pieces of functionality relate to the TUI and to each other, see IP Phone Functionality in Windows CE.

See Also

Examining the TUI Implementation

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.