Aktualisieren und Löschen von Nachrichten, die von Ihrem Bot gesendet wurden

Wichtig

Die Codebeispiele in diesem Abschnitt basieren auf Version 4.6 und neueren Versionen des Bot Framework SDK. Wenn Sie nach Dokumentation für frühere Versionen suchen, lesen Sie den Abschnitt "Bots - v3 SDK" im Ressourcenordner der Dokumentation.

Ihr Bot kann Nachrichten nach dem Senden dynamisch aktualisieren, anstatt sie als statische Momentaufnahmen von Daten zu verwenden. Nachrichten können auch mithilfe der Bot Framework-Methode gelöscht DeleteActivity werden.

Nachricht aktualisieren

Sie können dynamische Nachrichtenupdates für Szenarien verwenden, z. B. Abfragen von Updates, Ändern verfügbarer Aktionen nach einem Tastendruck oder andere asynchrone Zustandsänderungen.

Es ist nicht erforderlich, dass die neue Nachricht mit dem ursprünglichen Typ übereinstimmt. Wenn die ursprüngliche Nachricht beispielsweise eine Anlage enthält, kann es sich bei der neuen Nachricht um eine einfache Textnachricht handeln.

Um eine vorhandene Nachricht zu aktualisieren, übergeben Sie ein neues Activity Objekt mit der vorhandenen Aktivitäts-ID an die Methode der UpdateActivityAsync TurnContext Klasse. Weitere Informationen finden Sie unter TurnContextClass.

var newActivity = MessageFactory.Text("The new text for the activity");
newActivity.Id = activityId;
await turnContext.UpdateActivityAsync(newActivity, cancellationToken);

Nachdem Sie nun Nachrichten aktualisiert haben, aktualisieren Sie die vorhandene Auswahl der Schaltfläche "Karte" für eingehende Aktivitäten.

Karten aktualisieren

Um die vorhandene Karte auf der Schaltflächenauswahl zu aktualisieren, können Sie ReplyToId eingehende Aktivitäten verwenden.

Um vorhandene Karten in einer Schaltflächenauswahl zu aktualisieren, übergeben Sie ein neues Activity Objekt mit aktualisierter Karte und ReplyToId als Aktivitäts-ID an die UpdateActivityAsync Methode der TurnContext Klasse. Siehe TurnContextClass.

var activity = MessageFactory.Attachment(card.ToAttachment());
activity.Id = turnContext.Activity.ReplyToId;
await turnContext.UpdateActivityAsync(activity, cancellationToken);

Nachdem Sie nun Karten aktualisiert haben, können Sie Nachrichten mithilfe des Bot Frameworks löschen.

Löschen von Nachrichten

Im Bot Framework verfügt jede Nachricht über einen eindeutigen Aktivitätsbezeichner. Nachrichten können mithilfe der Bot Framework-Methode gelöscht DeleteActivity werden.

Um eine Nachricht zu löschen, übergeben Sie die ID dieser Aktivität an die DeleteActivityAsync Methode der TurnContext Klasse. Weitere Informationen finden Sie unter TurnContext.DeleteActivityAsync-Methode.

foreach (var activityId in _list)
{
    await turnContext.DeleteActivityAsync(activityId, cancellationToken);
}

Codebeispiel

Im folgenden Codebeispiel werden die Grundlagen von Unterhaltungen veranschaulicht:

Beispielname Beschreibung .NET Node.js Python
Teams Grundlagen zu Unterhaltungen Veranschaulicht die Grundlagen von Unterhaltungen in Teams einschließlich Nachrichtenaktualisierung und -löschung. View View View

Nächster Schritt