OSID Specifications
messaging package
Version 3.0.0
Release Candidate Preview
TitleMessaging Open Service Interface Definitions

The Messaging OSID sends and receives messages.


Messages are structures that include a sender, recipients, and a timestamp. A Message is created using a MessageAdminSession. The text of the Message is displayable as text and may include a specific structure defined using a MessageRecord.

Until a Message is sent, it is stored and may be edited as a draft. Once a Message is sent, the Message includes the sending Agent as well as the addressed recipients represented by a list of Resources. A Message is received by a receiving Agent which generally is related to one of the recipients.

Sending Messages

Once a Message has been created, it may be sent from the authenticated Agent to a specified list of recipients using the MessagingSession. The same Message may be sent to additional recipients by returning to the MessagingSession and using the same Message Id.

Receiving Messages

The MessageLookupSession can be used to retrieve incoming Messages. From the point of view of the receiving Agent, Messages from the MessageLookupSession indicate a foreign Agent as the sender and at least one recipient related to the authenticated Agent which generally, but may not always, be the receiving Agent.

The same interfaces are used to receive Messages as well as examine created Messages. The Messages seen in the MessageLookupSession vary depending on the point of view implied by the Mailbox catalog.

Message Receipts

Once a Message has been received by a receiving Agent, a Receipt is be generated to include the time receive and the receiving Agent. A Receipt can be used to store additional data related to the received Message.

Receipts may only be visible to the receiving Agent or a Messaging OSID Provider may authorize Receipts to be visible to the sender or other parties.

Mailbox Catalogs

Messages are cataloged using Mailboxes. Mailboxes be may used to store messages for different users, and may also be used to provide message folders for each user. Like all OsidCatalogs, a Mailbox may belong to a federated hierarchy to provide fedeated and filtering views among multiple mailboxes.

On Resource & Agents

The Agent is the identity of an authenticated actor while the Resource represents a real-world entity such as a person or organization. The mapping between Agents and Resources is managed by the Resource OSID. In the Messaging OSID, an Agent sends a Message to a Resource, However, aspects of the service also examine messages from the recipient's point of view where the sender appears as an object instead of an actor. The Messaging OSID references both a sender as a Resource and asending agent as an Agent. The Messaging OSID Provider orchestrates the mapping between Agents and Resources as a messaging application would access a local address book for looking up full names corresponding to incoming email addresses.

Sub Packages

The Messaging OSID contains a Messaging Batch OSID for managing Messages and Mailboxes in bulk.