Home
  • Messaging
  • Contents

    Messaging

    Introduction

    The Messaging Framework provides the following messaging features:

    1. a library for developing applications that work with messages
    2. a server application supporting multiple messaging transport mechanisms
    3. an example client application supporting common messaging functionality

    The Client library provides classes giving access to all messages stored on the device, via a uniform interface. It simplifies the task of creating messaging client applications, and permits other Messaging Framework applications to interact with messaging data where appropriate. New types of messages can be supported by the library without modification to existing client applications.

    The MessageServer application is a daemon, designed to run continuously while providing services to client applications. It provides messaging transport functionality, communicating with external servers on behalf of Messaging Framework client applications. New types of messaging (such as Instant Messages or video messages) can be handled by the server application without modification to existing client applications.

    The Messages example client application provides an implementation of standard functionality for creating and viewing messages.

    Architecture

    The Messaging Framework uses a database to store all messaging-related data. Rather than providing access via Structured Query Language, the Client library wraps the database with classes providing structured, focussed access to the database. Clients can add, remove or update messaging data via the wrapper classes, with appropriate guarantees of isolation, and with automatic propagation of updates between clients.

    Clients access messaging data via the Client library which provides a direct connection to the messaging database. Notifications of database changes that occur as a result of other clients' actions are received by IPC, and the messaging library automatically reflects those changes in all clients.

    A set of model/view classes are provided for clients to access the messaging data content. A flexible system of filtering and sorting keys is provided, enabling clients to display a specific subset of the library's data with minimal resource overhead.

    Rather than requiring each client application to perform transmission and retrieval of messages from external sources, a server application provides these services to any Client library client. The server receives service requests from clients via IPC, and reports events and status information back over the same channel. However, to avoid the overhead of passing message data within the system, the server reads and writes messages directly to and from the messaging database, via the library class interface. Messaging clients do not need to communicate with the server directly.

    For detailed information refer to:

    Changes Between Messaging Framework Versions

    Historical changes in the Messaging Framework Client Library API are listed in CHANGES.qdoc.

    Historical changes in the Message Server Support Library API are listed in CHANGES.qdoc.


    Copyright © 2010 QtSoftware
    Messaging Framework