Conversation States

The state of the conversation (as viewed by a particular TP) governs which APPC verbs can be issued by the TP at a particular time. For example, a TP cannot issue MC_SEND_DATA if the conversation is not in SEND state for that TP.

The state of a conversation depends on the TP from which it is viewed. A local TP can view a conversation as being in SEND state while the partner TP views the conversation as being in RECEIVE state. A particular TP can be in several conversations, each of which is in a different state.

The possible conversation states are summarized here.

CONFIRM
The TP has received a request for confirmation of receipt of data; it must respond positively or send error information to the partner TP.
CONFIRM_DEALLOCATE
The TP has received a request for confirmation; it must respond positively or send error information. If the TP responds positively, the conversation is automatically deallocated.
CONFIRM_SEND
The TP has received a request for confirmation; it must respond positively or send error information. After responding, the TP can begin to send data.
PENDING_POST
The TP is receiving data asynchronously. The TP can perform other processing not related to this conversation.
RECEIVE
The TP can receive application data and status information from the partner TP. When the conversation is in RECEIVE state, the TP can also send error information and request permission to send data.
RESET
The conversation has not started or has been terminated.
SEND
The TP can send data to the partner TP and request confirmation. When the conversation is in SEND state, the TP can also begin to receive data, which changes the state to RECEIVE.
SEND_PENDING
The TP issued a receive verb and the what_rcvd parameter returned by that verb indicated both data received and a status indication of SEND. This only affects the use of the err_dir parameter for SEND_ERROR and MC_SEND_ERROR.Otherwise, the state is the same as the SEND state.