Freigeben über


Ändern von Gesprächsstati

Eine Änderung des Unterhaltungszustands kann durch Folgendes ausgelöst werden:

  • Ein Verb, das vom lokalen TP ausgegeben wird.

  • Ein Verb, das vom Partner TP ausgestellt wurde.

  • Ein Fehlerzustand.

    Das folgende Beispiel zeigt, wie APPC-Verben den Status der Unterhaltung von SEND in RECEIVE und von RECEIVE zu SEND ändern können.

Hinweis

Jeder TP kann Daten senden oder empfangen, unabhängig davon, ob es sich um das aufrufende TP (das TP, das die Unterhaltung gestartet hat) oder das aufgerufene TP (das TP, das auf eine Anforderung zum Starten einer Unterhaltung geantwortet hat) handelt.

In diesem Beispiel wird gezeigt, wie APPC-Verben den Gesprächszustand ändern können. In dieser Tabelle wird jeder Gesprächszustand fett formatiert angezeigt und steht vor den APPC-Verben, die in diesem Zustand verwendet werden.

Ausgestellt vom aufrufenden TP Ausgestellt vom aufrufbaren TP
TP_STARTED
Unterhaltungszustand: ZURÜCKSETZEN
MC_ALLOCATE
(synclevel=AP_CONFIRM_SYNC_LEVL)
Unterhaltungsstatus: Senden
MC_DATEN_SENDEN
MC_VORBEREITEN_AUF_EMPFANG
(ptr_type=AP_SYNC_LEVEL)
Unterhaltungszustand: ZURÜCKSETZEN
EMPFANG_ZUWEISEN
Unterhaltungsstatus: EMPFANGEN
MC_EMPFANGEN_UND_WARTEN
(primary_rc=AP_OK)
(what_rcvd=AP_DATA_COMPLETE)
MC_EMPFANGEN_UND_WARTEN
(primary_rc=AP_OK)
(what_rcvd=AP_CONFIRM_SEND)
Gesprächszustand: BESTÄTIGEN_SENDE
MC_CONFIRMED
Unterhaltungsstatus: Senden
MC_DATEN_SENDEN
MC_CONFIRM
Unterhaltungsstatus: EMPFANGEN
MC_EMPFANGEN_UND_WARTEN
(primary_rc=AP_OK)
(what_rcvd=AP_DATA_COMPLETE)
MC_EMPFANGEN_UND_WARTEN
(primary_rc=AP_OK)
(what_rcvd=AP_CONFIRM_WHAT_RECEIVED)
Unterhaltungsstatus: BESTÄTIGUNG
MC_REQUEST_TO_SEND
MC_CONFIRMED
(rts_rcvd=AP_YES)
MC_VORBEREITEN_AUF_EMPFANG
(ptr_type=AP_SYNC_LEVEL)
Unterhaltungsstatus: EMPFANGEN
MC_EMPFANGEN_UND_WARTEN
(primary_rc=AP_OK)
(what_rcvd=AP_CONFIRM_SEND)
Gesprächszustand: CONFIRM_SEND
MC_CONFIRMED
Gesprächsstatus: SENDEN
MC_DATEN_SENDEN
MC_DEALLOCATE
(dealloc_type=AP_SYNC_LEVEL)
Unterhaltungsstatus: Empfangen
MC_EMPFANGEN_UND_WARTEN
(primary_rc=AP_OK)
(what_rcvd=AP_DATA_COMPLETE)
MC_EMPFANGEN_UND_WARTEN
(primary_rc=AP_OK)
(what_rcvd=AP_CONFIRM_DEALLOCATE)
Unterhaltungszustand: CONFIRM_DEALLOCATE
MC_CONFIRMED
Unterhaltungszustand: ZURÜCKGESETZT Unterhaltungszustand: ZURÜCKSETZEN
TP_ENDED TP_ENDED

Anfangszustände

Bevor das Gespräch zugewiesen wird, wird der Zustand für beide TPs zurückgesetzt.

Im Beispiel lautet nach der Zuteilung der Sitzung der anfängliche Zustand "SEND" für den aufrufenden TP und "RECEIVE" für den aufrufbaren TP.

Wechseln zum Empfangsmodus

MC_PREPARE_TO_RECEIVE ermöglicht es einem TP, die Kommunikation vom SEND- in den RECEIVE-Status zu ändern. Dieses Verb:

  • Löscht den Sendepuffer der lokalen LU.

  • Sendet den AP_CONFIRM_SEND Indikator über den parameter what_rcvd eines Empfangsverbs an den Partner-TP. Dieser Indikator teilt dem Partner-TP mit, dass eine MC_CONFIRMED Antwort erwartet wird, bevor der Partner-TP mit dem Senden von Daten beginnen kann.

    Die Bestätigungsverarbeitung wird ausgeführt, wenn die folgenden Bedingungen erfüllt sind:

  • Der parameter ptr_type wird auf AP_SYNC_LEVEL festgelegt.

  • Die Synchronisierungsebene der Unterhaltung wird auf AP_CONFIRM_SYNC_LEVEL festgelegt.

    Weitere Informationen zur Bestätigungsverarbeitung finden Sie unter Bestätigungsverarbeitung.

Hinweis

Das Ausführen von MC_RECEIVE_AND_WAIT, während sich die Sitzung im SEND-Zustand befindet, leert den Sendepuffer der LU und ändert den Sitzungszustand zu RECEIVE. Das Ändern des Unterhaltungszustands auf diese Weise unterstützt keine Bestätigungsverarbeitung.

In den SEND-Zustand wechseln

MC_REQUEST_TO_SEND informiert den Partner-TP (für den sich die Unterhaltung im SEND-Zustand befindet), dass die lokale TP (für die sich die Unterhaltung im EMPFANGSzustand befindet) Daten senden möchte. Diese Anforderung wird dem Partner-TP über den rts_rcvd Parameter MC_CONFIRM mitgeteilt. (Der parameter rts_rcvd wird auch an MC_SEND_DATA und andere Verben zurückgegeben.)

Wenn der Partner TP MC_PREPARE_TO_RECEIVE ausgibt, ändert sich der Unterhaltungsstatus in RECEIVE für den Partner-TP, sodass der lokale TP Daten senden kann.

Hinweis

Durch das Ausgeben von MC_REQUEST_TO_SEND wird der Status der Unterhaltung nicht geändert. Nach Erhalt einer Anforderung zum Senden ist das Partner-TP nicht verpflichtet, den Gesprächszustand zu ändern; es kann die Anforderung ignorieren.