Returning callout responses to IMS

User-written IMS Connect clients return the callout response messages to IMS by using the send-only protocol for synchronous callout responses.

When you use the send-only protocol for synchronous callout responses, you can configure IMS to acknowledge receipt of the callout response, or you can suppress the acknowledgement for true send-only behavior.

The send-only message contains no transaction code and can contain either the response data or error information for the IMS application program.

A response to a synchronous callout request must be returned to the same IMS system in which the original DL/I ICAL call was issued. However, the response does not need to be returned by the same IMS Connect client that processed the original callout request. The response message can also be returned to IMS through a different IMS Connect instance than the instance that handled the outbound callout request. The correlation token included in the response message ensures that the response is returned to the correct IMS application program that is waiting for it.

The response message returned by IMS Connect client can be up to the length specified by the MAXSIZE parameter in the HWS configuration statement or the IMS Connect default of 10·MB.

The IMS Connect client must indicate in the IRM_F4 field of the message prefix that the message being returned is a synchronous callout response.

If the client requires IMS to return an acknowledgement after IMS receives the callout response, the client must specify an L in the IRM_F4 field of the IRM message prefix and switch to a receive state after sending the response.

If the client does not require IMS to return an acknowledgement, the client must specify an M in the IRM_F4 field.

If the client returns a synchronous callout response to IMS Connect, but either the IRM_ARCH is less than IRM_ARCH3 or the correlation token is not included in the IRM_CORTKN field, IMS Connect rejects the response and the synchronous callout request message times out.

When IMS acknowledges a callout response, IMS Connect returns a CSM (ACK) if delivery was successful and an RSM (NAK) if it was not successful. When the acknowledgements are disabled, IMS Connect does not return an RSM message to the client.

To code the callout response:

Specify the following field values in the IRM of the response message:
  • IRM_ARCH = X'03' (IRM_ARCH3)
  • IRM_F4 = L (IRM_F4_SYNRESPA) or M (IRM_F4_SYNRESP)
  • IRM_CORTKN = The 40-byte correlation token (CORTKN) that was included with the original callout request

Start of changeFor coding error responses for synchronous callout, see Returning an error response to IMS. End of change