Accept_Conversation (CPI-C)
Accept_Conversation调用 (函数名称 cmaccp) 由调用程序发出,以接受传入会话并设置某些会话特征。 有关初始聊天特征的列表,请参阅 初始对话特征。
语法
CM_ENTRY Accept_Conversation(
unsigned char FAR *conversation_ID,
CM_INT32 FAR *return_code
);
参数
conversation_ID
返回的参数。 指定会话的标识符。 它由后续的 CPI-C 调用使用,如果返回代码CM_OK或CM_OPERATION_INCOMPLETE,则返回。 如果返回代码CM_OPERATION_INCOMPLETE,则 应用程序可以使用 conversation_ID 参数来等待或取消会话。
return_code
从此调用返回的代码。 本主题后面列出了有效的返回代码。
返回代码
CM_OK
主返回代码;调用已成功执行。
CM_PROGRAM_STATE_CHECK
主返回代码;没有仅) 阻止模式 (传入会话,也没有 (TP) 名称设置本地事务程序。
CM_OPERATION_INCOMPLETE
主返回代码;已对会话启动非阻止操作,但未完成。 程序可以发出 Wait_For_Conversation 以等待操作完成或 Cancel_Conversation 取消操作和会话。
CM_PRODUCT_SPECIFIC_ERROR
主返回代码;发生特定于产品的错误,并且已记录在产品错误日志中。
状态更改
发出 Accept_Conversation 时,会话必须处于 RESET 状态。
如果调用成功,则会话将更改为 RECEIVE 状态。 如果调用失败,状态将保持不变。
注解
成功执行此调用后,CPI-C 将生成 8 字节会话标识符。 此标识符是此会话上调用的程序发出的所有其他 CPI-C 调用的必需参数。
将根据他们指定的目标 TP 名称接受传入对话,该名称必须与已设置的本地 TP 名称匹配。 本地 TP 名称可以通过依赖于实现的方法或调用 Specify_Local_TP_Name的程序进行设置。 这样一来,一个程序可以具有多个本地 TP 名称。 程序可以调用 Extract_TP_Name 来发现传入会话中指定的名称。
如果程序以前调用了 Specify_Local_TP_Name ,则操作在非阻止模式下执行;否则,它将在阻止模式下执行。