次の方法で共有


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
プライマリ リターン コード。製品固有のエラーが発生し、製品エラー ログに記録されています。

State Changes (状態の変化)

Accept_Conversationが発行された場合、会話は RESET 状態である必要があります。

呼び出しが成功すると、会話は RECEIVE 状態に変わります。 呼び出しが失敗した場合、状態は変更されません。

注釈

この呼び出しが正常に実行されると、CPI-C は 8 バイトの会話識別子を生成します。 この識別子は、この会話で呼び出されたプログラムによって発行された他のすべての CPI-C 呼び出しに必要なパラメーターです。

受信した会話は、指定したターゲット TP 名に従って受け入れられます。これは、設定されているローカル TP 名と一致する必要があります。 ローカル TP 名は、実装に依存するメソッド、または Specify_Local_TP_Name を呼び出すプログラムによって設定できます。 このようにして、プログラムは複数のローカル TP 名を持つことができます。 プログラムは 、Extract_TP_Name を呼び出して、着信会話で指定された名前を検出できます。

プログラムが以前にSpecify_Local_TP_Nameを呼び出した場合、操作は非ブロッキング モード 実行されます。それ以外の場合は、ブロッキング モードで実行されます。