Certified Message Delivery

Although Rendezvous communications are highly reliable, some applications require even stronger assurances of delivery. Certified delivery features offers greater certainty of delivery—even in situations where processes and their network connections are unstable.

See Also

This API implements Rendezvous certified delivery features. For a complete discussion, see Certified Message Delivery in TIBCO Rendezvous Concepts.

Certified delivery software uses advisory messages extensively. For example, advisories inform sending and receiving programs of the delivery status of each message. For complete details, see Certified Message Delivery (RVCM) Advisory Messages in TIBCO Rendezvous Concepts.

If your application sends or receives certified messages across network boundaries, you must configure the Rendezvous routing daemons to exchange _RVCM administrative messages. For details, see Certified Message Delivery in TIBCO Rendezvous Administration.

Some programs require certified delivery to one of n listeners. See Distributed Queue in TIBCO Rendezvous Concepts.

Operations by Functional Group

Function

Description

Listening for Messages

tibrvcmEvent_CreateListener()

Listen for messages that match the subject, and request certified delivery when available.

tibrvcmEventCallback

Programs define functions of this type to process inbound certified or labeled messages.

tibrvcmEvent_Destroy()

Destroy a certified delivery listener.

Sending Messages

tibrvcmTransport_Send()

Send a labeled message.

tibrvcmTransport_SendReply()

Send a labeled reply message.

tibrvcmTransport_SendRequest()

Send a labeled request message and wait for a reply.

Confirmation of Certified Messages

tibrvcmEvent_SetExplicitConfirm()

Override automatic confirmation of delivery for this listener.

tibrvcmEvent_ConfirmMsg()

Explicitly confirm delivery of a certified message.

Registration

tibrvcmTransport_AddListener()

Pre-register an anticipated listener.

tibrvcmTransport_AllowListener()

Invite the named receiver to reinstate certified delivery for its listeners, superseding the effect of any previous disallow calls.

tibrvcmTransport_DisallowListener()

Cancel certified delivery to all listeners at a specific correspondent. Deny subsequent certified delivery registration requests from those listeners.

tibrvcmTransport_RemoveListener()

Unregister a specific listener at a specific correspondent, and free associated storage in the sender’s ledger.

Ledger

tibrvcmTransport_RemoveSendState()

Reclaim ledger space from obsolete subjects.

tibrvcmTransport_ReviewLedger()

Query the ledger for stored items related to a subject name.

tibrvcmReviewCallback

Programs define functions of this type to process ledger review summary messages.

tibrvcmTransport_SyncLedger()

Synchronize the ledger to it its storage medium.

Listener Attributes

tibrvcmEvent_GetListenerSubject()

Extract the subject from a certified delivery listener event object.

tibrvcmEvent_GetListenerTransport()

Extract the certified delivery transport from a certified delivery listener event object.

tibrvcmEvent_GetQueue()

Extract the queue of a certified delivery listener object.

tibrvcmEvent_SetExplicitConfirm()

Override automatic confirmation of delivery for this listener.

Transport Life Cycles

tibrvcmTransport_Create()

Create a transport for certified delivery.

tibrvcmTransport_Destroy()

Destroy a certified delivery transport.

tibrvcmTransportOnComplete

Destroying a CM or CMQ transport involves cleanup operations that can sometimes be lengthy. Programs can define functions of this type to discover when the cleanup has completed.

Transport Attributes

tibrvcmTransport_GetLedgerName()

Extract the ledger name of a certified delivery transport.

tibrvcmTransport_GetName()

Extract the correspondent name of a certified delivery transport.

tibrvcmTransport_GetRequestOld()

Extract the request old messages flag of a certified delivery transport.

tibrvcmTransport_GetSyncLedger()

Extract the sync ledger flag of a certified delivery transport.

tibrvcmTransport_GetTransport()

Extract the transport employed by a certified delivery transport.

tibrvcmTransport_SetDefaultCMTimeLimit()

Set the default message time limit for all outbound certified messages from a transport.

Message Attributes

tibrvMsg_GetCMSender()

Extract the correspondent name of the sender from a certified message.

tibrvMsg_GetCMSequence()

Extract the sequence number from a certified message.

tibrvMsg_GetCMTimeLimit()

Extract the message time limit from a certified message.

tibrvMsg_SetCMTimeLimit()

Set the message time limit of a certified message.

tibrvcmTransport_SetPublisherInactivityDiscardInterval()

Set a time limit after which a listening CM transport can discard state for inactive CM senders.

Types Related to Certified Delivery

tibrvcmEvent

A certified delivery event object listens for labeled messages and certified messages.

tibrvcmTransport

A certified delivery transport object implements the CM delivery protocol for messages.

tibrvcmEventCallback

Programs define functions of this type to process inbound certified or labeled messages.

tibrvcmReviewCallback

Programs define functions of this type to process ledger review summary messages.

Library Version

tibrvcm_Version()

Identify the CM API release number.