Freigeben über


ActivityHandler class

Ereignisausgebender Aktivitätshandler für Bots. Erweitert ActivityHandlerBase.

Extends

Hinweise

Dadurch wird eine erweiterbare Klasse für die ereignisgesteuerte Behandlung eingehender Aktivitäten bereitgestellt. Sie können einen beliebigen Satz von Handlern für jeden Ereignistyp registrieren.

Verwenden Sie zum Registrieren eines Handlers für ein Ereignis die entsprechende on-Ereignismethode . Wenn mehrere Handler für ein Ereignis registriert sind, werden sie in der Reihenfolge ausgeführt, in der sie registriert wurden.

Dieses Objekt gibt eine Reihe von Ereignissen aus, während es eine eingehende Aktivität verarbeitet. Ein Handler kann die Weitergabe des Ereignisses beenden, indem die Fortsetzungsfunktion nicht aufgerufen wird.

Ereignistyp BESCHREIBUNG
Drehen Wird zuerst für jede Aktivität ausgegeben.
Typspezifisch Wird für den spezifischen Aktivitätstyp ausgegeben, bevor ein Ereignis für einen beliebigen Untertyp ausgegeben wird.
Unterkategorie Wird für bestimmte spezielle Ereignisse basierend auf Aktivitätsinhalten ausgegeben.
Dialog Wird als letztes Aktivitätsverarbeitungsereignis ausgegeben.

Beispiel:

const bot = new ActivityHandler();

server.post('/api/messages', (req, res) => {
    adapter.processActivity(req, res, async (context) => {
        // Route to bot's activity logic.
        await bot.run(context);
    });
});

bot.onTurn(async (context, next) => {
        // Handle a "turn" event.
        await context.sendActivity(`${ context.activity.type } activity received.`);
        // Continue with further processing.
        await next();
    })
    .onMessage(async (context, next) => {
        // Handle a message activity.
        await context.sendActivity(`Echo: ${ context.activity.text }`);
        // Continue with further processing.
        await next();
    });

Weitere Informationen

Methoden

onCommand(BotHandler)

Registriert einen Aktivitätsereignishandler für die Befehlsaktivität .

onCommandResult(BotHandler)

Registriert einen Aktivitätsereignishandler für die CommandResult-Aktivität .

onConversationUpdate(BotHandler)

Registriert einen Aktivitätsereignishandler für das Unterhaltungsupdateereignis , der für jede eingehende Unterhaltungsaktualisierungsaktivität ausgegeben wird.

onDialog(BotHandler)

Registriert einen Aktivitätsereignishandler für das Dialogereignis , der als letztes Ereignis für eine eingehende Aktivität ausgegeben wird.

onEndOfConversation(BotHandler)

Registriert einen Aktivitätsereignishandler für das Ende der Konversationsaktivität .

onEvent(BotHandler)

Registriert einen Aktivitätsereignishandler für das Ereignisereignis , der für jede eingehende Ereignisaktivität ausgegeben wird.

onInstallationUpdate(BotHandler)

Registriert einen Aktivitätsereignishandler für die Aktivität installationupdate .

onInstallationUpdateAdd(BotHandler)

Registriert einen Aktivitätsereignishandler für die Aktivität installationupdate add .

onInstallationUpdateRemove(BotHandler)

Registriert einen Aktivitätsereignishandler für die Aktivität installationupdate remove .

onMembersAdded(BotHandler)

Registriert einen Aktivitätsereignishandler für das hinzugefügte Memberereignis , das für alle eingehenden Unterhaltungsaktualisierungsaktivitäten ausgegeben wird, die Mitglieder enthält, die der Unterhaltung hinzugefügt wurden.

onMembersRemoved(BotHandler)

Registriert einen Aktivitätsereignishandler für das Vom Member entfernte Ereignis, der für alle eingehenden Unterhaltungsaktualisierungsaktivitäten ausgegeben wird, die aus der Unterhaltung entfernte Mitglieder enthält.

onMessage(BotHandler)

Registriert einen Aktivitätsereignishandler für das Nachrichtenereignis , der für jede eingehende Nachrichtenaktivität ausgegeben wird.

onMessageReaction(BotHandler)

Registriert einen Aktivitätsereignishandler für das Nachrichtenreaktionsereignis , das für jede eingehende Nachrichtenreaktionsaktivität ausgegeben wird.

onReactionsAdded(BotHandler)

Registriert einen Aktivitätsereignishandler für das hinzugefügte Reaktionsereignis , das für jede eingehende Nachrichtenreaktionsaktivität ausgegeben wird, die zu einer Nachricht hinzugefügte Reaktionen beschreibt.

onReactionsRemoved(BotHandler)

Registriert einen Aktivitätsereignishandler für das Ereignis " Reaktionen entfernt" , der für jede eingehende Nachrichtenreaktionsaktivität ausgegeben wird, die reaktionen beschreibt, die aus einer Nachricht entfernt wurden.

onTokenResponseEvent(BotHandler)

Registriert einen Aktivitätsereignishandler für das token-response-Ereignis , das für jede eingehende tokens/response Ereignisaktivität ausgegeben wird. Diese werden im Rahmen des OAuth-Authentifizierungsflows generiert.

onTurn(BotHandler)

Registriert einen Aktivitätsereignishandler für das Turn-Ereignis , der unabhängig vom Typ für jede eingehende Aktivität ausgegeben wird.

onTyping(BotHandler)

Registriert einen Aktivitätsereignishandler für die Eingabeaktivität .

onUnrecognizedActivityType(BotHandler)

Registriert einen Aktivitätsereignishandler für das nicht erkannte Aktivitätstypereignis , das für eine eingehende Aktivität mit einem Typ ausgegeben wird, für den der ActivityHandler keinen Ereignishandler bereitstellt.

run(TurnContext)

Wird aufgerufen, um den Ereignisemissionsprozess zu initiieren.

Details zur Methode

onCommand(BotHandler)

Registriert einen Aktivitätsereignishandler für die Befehlsaktivität .

function onCommand(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Verwenden Sie zum Behandeln eines Command-Ereignisses den typspezifischen OnCommand-Ereignishandler .

onCommandResult(BotHandler)

Registriert einen Aktivitätsereignishandler für die CommandResult-Aktivität .

function onCommandResult(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Verwenden Sie zum Behandeln eines CommandResult-Ereignisses den typspezifischen OnCommandResult-Ereignishandler .

onConversationUpdate(BotHandler)

Registriert einen Aktivitätsereignishandler für das Unterhaltungsupdateereignis , der für jede eingehende Unterhaltungsaktualisierungsaktivität ausgegeben wird.

function onConversationUpdate(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Unterhaltungsaktualisierungsaktivitäten beschreiben Änderungen an den Metadaten einer Unterhaltung, z. B. Titel, Teilnehmer oder andere kanalspezifische Informationen.

Verwenden Sie die Ereignishandler onMembersAdded und onMembersRemoved , um zu behandeln, wann Member zur Unterhaltung hinzugefügt oder aus dieser entfernt werden.

onDialog(BotHandler)

Registriert einen Aktivitätsereignishandler für das Dialogereignis , der als letztes Ereignis für eine eingehende Aktivität ausgegeben wird.

function onDialog(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

onEndOfConversation(BotHandler)

Registriert einen Aktivitätsereignishandler für das Ende der Konversationsaktivität .

function onEndOfConversation(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Diese Aktivität wird in der Regel von einem Skill an einen Skill-Aufrufer gesendet, der das Ende dieser bestimmten untergeordneten Unterhaltung angibt.

Verwenden Sie zum Behandeln eines Unterhaltungsendes den typspezifischen OnEndOfConversation-Ereignishandler .

onEvent(BotHandler)

Registriert einen Aktivitätsereignishandler für das Ereignisereignis , der für jede eingehende Ereignisaktivität ausgegeben wird.

function onEvent(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Ereignisaktivitäten (event) kommunizieren programmgesteuerte Informationen von einem Client oder Kanal an einen Bot. Die Bedeutung einer Ereignisaktivität wird durch die name-Eigenschaft der Aktivität definiert, die im Bereich eines Kanals von Bedeutung ist. Ereignisaktivitäten sind sowohl für interaktive Informationen (z.B. Klicks auf Schaltflächen) als auch für nicht interaktive Informationen (z.B. eine Benachrichtigung für einen Client zur automatischen Aktualisierung eines eingebetteten Sprachmodells) vorgesehen.

Verwenden Sie zum Behandeln eines tokens/response Ereignisereignisses den Untertypereignishandler onTokenResponseEvent . Um andere benannte Ereignisse zu behandeln, fügen Sie diesem Handler Logik hinzu.

onInstallationUpdate(BotHandler)

Registriert einen Aktivitätsereignishandler für die Aktivität installationupdate .

function onInstallationUpdate(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Verwenden Sie zum Behandeln eines InstallationsUpdate-Ereignisses den typspezifischen OnInstallationUpdate-Ereignishandler .

onInstallationUpdateAdd(BotHandler)

Registriert einen Aktivitätsereignishandler für die Aktivität installationupdate add .

function onInstallationUpdateAdd(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt . Verwenden Sie zum Behandeln eines InstallationsUpdateAdd-Ereignisses den typspezifischen Ereignishandler onInstallationUpdateAdd .

onInstallationUpdateRemove(BotHandler)

Registriert einen Aktivitätsereignishandler für die Aktivität installationupdate remove .

function onInstallationUpdateRemove(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Verwenden Sie zum Behandeln eines InstallationsUpdateRemove-Ereignisses den typspezifischen Ereignishandler onInstallationUpdateRemove .

onMembersAdded(BotHandler)

Registriert einen Aktivitätsereignishandler für das hinzugefügte Memberereignis , das für alle eingehenden Unterhaltungsaktualisierungsaktivitäten ausgegeben wird, die Mitglieder enthält, die der Unterhaltung hinzugefügt wurden.

function onMembersAdded(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Die membersAdded-Eigenschaft der Aktivität enthält die Mitglieder, die der Konversation hinzugefügt wurden, einschließlich des Bots.

Verwenden Sie den typspezifischen Ereignishandler onConversationUpdate, um Unterhaltungsaktualisierungsereignisse im Allgemeinen zu behandeln.

onMembersRemoved(BotHandler)

Registriert einen Aktivitätsereignishandler für das Vom Member entfernte Ereignis, der für alle eingehenden Unterhaltungsaktualisierungsaktivitäten ausgegeben wird, die aus der Unterhaltung entfernte Mitglieder enthält.

function onMembersRemoved(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Die membersRemoved-Eigenschaft der Aktivität enthält die Elemente, die aus der Unterhaltung entfernt wurden, einschließlich des Bots.

Verwenden Sie den typspezifischen Ereignishandler onConversationUpdate, um Unterhaltungsaktualisierungsereignisse im Allgemeinen zu behandeln.

onMessage(BotHandler)

Registriert einen Aktivitätsereignishandler für das Nachrichtenereignis , der für jede eingehende Nachrichtenaktivität ausgegeben wird.

function onMessage(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Nachrichtenaktivitäten stellen Inhalte dar, die innerhalb einer Konversationsoberfläche angezeigt werden sollen, und können Text, Sprache, interaktive Karten und binäre oder unbekannte Anlagen enthalten. Nicht alle Nachrichtenaktivitäten enthalten Text. Die Texteigenschaft der Aktivität kann oder undefinedseinnull.

onMessageReaction(BotHandler)

Registriert einen Aktivitätsereignishandler für das Nachrichtenreaktionsereignis , das für jede eingehende Nachrichtenreaktionsaktivität ausgegeben wird.

function onMessageReaction(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Aktivitäten zur Antwort auf eine Nachricht (messageReaction) stellen eine soziale Interaktion mit einer vorhandenen Nachrichtenaktivität innerhalb einer Konversation dar. Auf die ursprüngliche Aktivität wird durch die replyToId-Eigenschaft der Nachrichtenreaktionsaktivität verwiesen. Die from-Eigenschaft stellt die Quelle der Reaktion dar, z. B. den Benutzer, der auf die Nachricht reagiert hat.

Verwenden Sie die Ereignishandler onReactionsAdded und onReactionsRemoved , um zu behandeln, wann Reaktionen zu Nachrichten in der Unterhaltung hinzugefügt oder daraus entfernt werden.

onReactionsAdded(BotHandler)

Registriert einen Aktivitätsereignishandler für das hinzugefügte Reaktionsereignis , das für jede eingehende Nachrichtenreaktionsaktivität ausgegeben wird, die zu einer Nachricht hinzugefügte Reaktionen beschreibt.

function onReactionsAdded(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Die Reaktion der AktivitätAdded-Eigenschaft enthält eine oder mehrere Reaktionen, die hinzugefügt wurden.

Um Nachrichtenreaktionsereignisse im Allgemeinen zu behandeln, verwenden Sie den typspezifischen Ereignishandler onMessageReaction .

onReactionsRemoved(BotHandler)

Registriert einen Aktivitätsereignishandler für das Ereignis " Reaktionen entfernt" , der für jede eingehende Nachrichtenreaktionsaktivität ausgegeben wird, die reaktionen beschreibt, die aus einer Nachricht entfernt wurden.

function onReactionsRemoved(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Die Reaktion der AktivitätRemoved-Eigenschaft umfasst eine oder mehrere Reaktionen, die entfernt wurden.

Um Nachrichtenreaktionsereignisse im Allgemeinen zu behandeln, verwenden Sie den typspezifischen Ereignishandler onMessageReaction .

onTokenResponseEvent(BotHandler)

Registriert einen Aktivitätsereignishandler für das token-response-Ereignis , das für jede eingehende tokens/response Ereignisaktivität ausgegeben wird. Diese werden im Rahmen des OAuth-Authentifizierungsflows generiert.

function onTokenResponseEvent(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Die value-Eigenschaft der Aktivität enthält das Benutzertoken.

Wenn Ihr Bot die Authentifizierung mit einem OAuthPrompt innerhalb eines Dialogfelds verarbeitet, muss der Dialog diese Aktivität empfangen, um den Authentifizierungsablauf abzuschließen.

Um andere benannte Ereignisse und Ereignisereignisse im Allgemeinen zu behandeln, verwenden Sie den typspezifischen OnEvent-Ereignishandler .

onTurn(BotHandler)

Registriert einen Aktivitätsereignishandler für das Turn-Ereignis , der unabhängig vom Typ für jede eingehende Aktivität ausgegeben wird.

function onTurn(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

onTyping(BotHandler)

Registriert einen Aktivitätsereignishandler für die Eingabeaktivität .

function onTyping(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Verwenden Sie den typspezifischen Ereignishandler onTyping , um ein Typereignis zu behandeln.

onUnrecognizedActivityType(BotHandler)

Registriert einen Aktivitätsereignishandler für das nicht erkannte Aktivitätstypereignis , das für eine eingehende Aktivität mit einem Typ ausgegeben wird, für den der ActivityHandler keinen Ereignishandler bereitstellt.

function onUnrecognizedActivityType(handler: BotHandler): this

Parameter

handler
BotHandler

Der Ereignishandler.

Gibt zurück

this

Ein Verweis auf das ActivityHandler-Objekt .

Hinweise

Definiert ActivityHandler nicht Ereignisse für alle Aktivitätstypen, die im Bot Framework-Aktivitätsschema definiert sind. Darüber hinaus können Kanäle und benutzerdefinierte Adapter Aktivitäten mit Typen erstellen, die nicht im Schema enthalten sind. Wenn der Aktivitätshandler ein solches Ereignis empfängt, gibt er ein nicht erkanntes Aktivitätstypereignis aus.

Die Type-Eigenschaft der Aktivität enthält den Aktivitätstyp.

run(TurnContext)

Wird aufgerufen, um den Ereignisemissionsprozess zu initiieren.

function run(context: TurnContext): Promise<void>

Parameter

context
TurnContext

Das Kontextobjekt für den aktuellen Turn.

Gibt zurück

Promise<void>

Hinweise

In der Regel stellen Sie diese Methode als Funktionshandler bereit, den der Adapter aufruft, um die Logik des Bots auszuführen, nachdem die empfangene Aktivität vom Adapter vorverarbeitet und über eine beliebige Middleware weitergeleitet wurde.

Beispiel:

 server.post('/api/messages', (req, res) => {
     adapter.processActivity(req, res, async (context) => {
         // Route to bot's activity logic.
         await bot.run(context);
     });
});

Weitere Informationen