Retrieval of output on OTMA tpipe hold queues
OTMA uses tpipe hold queues to send output to IMS Connect that must be queued for delivery. To retrieve output from the tpipe hold queue, the IMS Connect client issues a RESUME TPIPE request that specifies the name of the tpipe on which the output messages are queued.
- Synchronous callout messages that IMS application programs send by issuing the DL/I ICAL call.
- Output, such as asynchronous callout messages, that IMS application programs send by issuing the DL/I ISRT call to an alternate PCB (ALTPCB).
- CM0 IOPCB output messages for which the receiving OTMA client returned a NAK.
- Response messages to CM0 SendOnly input.
- By the original client with the client ID that matches the tpipe name.
- If the original client terminated, by another client that uses the same client ID that matches the tpipe name.
- By another client that specifies the tpipe name as an alternate client ID in the RESUME TPIPE request.
For synchronous callout messages, the tpipe name is typically defined in IMS on an OTMA destination descriptor. For asynchronous callout messages, the tpipe name can be defined by either an OTMA destination descriptor or an OTMA routing exit routine. For both types of callout messages, the tpipe name is usually specified as an alternate client ID in the RESUME TPIPE request that retrieves the callout messages. The alternate client ID must match the tpipe name that is specified in the OTMA destination descriptor or in the OTMA routing exit routines.
Tpipe names are also specified as an alternate client ID when a tpipe supports parallel active RESUME TPIPE requests.
- By returning the flag
CSM_AMSG
in the CSM_FLG1 field in the CSM (complete status message). - By returning the flag
RSM_AMSG
in the RSM_FLG1 field in the RSM (request status message).
If you do not use IMS Connect to retrieve output from an OTMA tpipe hold queue, your client application does not need to analyze the CSM or the RSM. IMS Connect communicates the presence of asynchronous output regardless of whether a client application requests the asynchronous output.
Use the RESUME TPIPE call to retrieve the asynchronous output from the client. You can retrieve asynchronous output on both persistent and transaction sockets.