Provides core messaging functionality and a framework for providing support for new messaging protocols. The API is used by both client applications and protocol providers.
The Messaging Architecture provides base classes, which define the component interfaces for MTM implementations. Using the base class interfaces allows client applications to discover and use dynamically the available messaging protocols.
Protocol providers develop new libraries for their MTM implementations. These implementations access lower-level communications libraries as needed by the protocol.
This is a simple to use interface that allows applications to
create outgoing messages. Note that device families may provide a user
interface layer over this interface. It is provided by CSendAs
and
MSendAsObserver
.
MTM base classes are sub-classed to provide support for a messaging protocol. The four base classes are:
User Interface MTM (CBaseMtmUi
): offers user
interface capabilities, such as viewing and editing messages
Client-side MTM (CBaseMtm
): handles the
interface between the internal representation of a message’s data and
the User Interface MTM
UI Data MTM (CBaseMtmUiData
): provides access to
certain UI MTM-specific resources
Server-side MTM (CBaseServerMtm
): provides
message transport over the relevant communications protocol
The Message server controls access to message data and delegates
protocol-specific requests to Server-side MTMs. Its key classes are
CMsvEntry
, which encapsulates actions to manipulate a message;
TMsvEntry
, which encapsulates state and generic message header
information; and CMsvStore
, which encapsulates a direct file
stream store that holds message body text, and protocol-specific data.
A record of the installed MTMs is held in the MTM Registry.
Registry classes allow MTM components to be identified and instantiated. Key
classes are CClient
, MtmRegistry
, and
MtmRegistry
CMtmUiDataRegistry
.