A simple QAnywhere messaging setup is illustrated in the following diagram. For simplicity, only a single client is shown. However, a typical scenario has multiple clients with the server message store existing to transmit messages between them.
This setup includes the following components:
Server message store At the server, the messages are stored in a relational database. The database must be set up as a MobiLink consolidated database, and may be any supported consolidated database (SQL Anywhere, Adaptive Server Enterprise, Microsoft SQL Server, DB2, or Oracle).
Client message store The messages at each client are also stored in a relational database. This SQL Anywhere database is used exclusively for QAnywhere messaging.
QAnywhere server The QAnywhere server is a MobiLink server that is enabled for messaging. MobiLink synchronization provides the transport for transmitting and tracking messages between QAnywhere clients and the server. MobiLink provides security, authentication, encryption, and flexibility. It also allows messaging to be combined with data synchronization.
To start the QAnywhere server, start the MobiLink server with the -m option. See Starting the QAnywhere server.QAnywhere Agent The QAnywhere Agent manages the transmission of messages on the client side. This process is independent of QAnywhere client applications.
See Running the QAnywhere Agent.QAnywhere client application An application written using the QAnywhere C++, Java, or .NET API makes method calls to send and receive messages. The basic object used by the client application is the QAManager.
See Writing QAnywhere Client Applications.Messages are sent and received by QAnywhere clients. Messages at the server will not be picked up until the client initiates a message transmission. QAnywhere clients use policies to determine when to carry out a message transmission. Policies include on-demand, automatic, scheduled, and custom. The on-demand policy permits the user to control message transmission. The automatic policy initiates a message transmission whenever a message to or from the client is ready for delivery.
See Determining when message transmission should occur on the client.