Mettre à jour et supprimer les messages envoyés à partir de votre bot

Important

Les exemples de code de cette section sont basés sur la version 4.6 et les versions ultérieures du SDK Bot Framework. Si vous recherchez de la documentation pour les versions antérieures, consultez la section bots - V3 SDK dans le dossier Ressources de la documentation.

Votre bot peut mettre à jour dynamiquement les messages après les avoir envoyés au lieu de les avoir en tant que captures instantanées statiques des données. Les messages peuvent également être supprimés à l’aide de la méthode DeleteActivity Bot Framework.

Mettre à jour les messages

Vous pouvez utiliser les mises à jour dynamiques des messages pour des scénarios, tels que les mises à jour des sondages, la modification des actions disponibles après l’utilisation d’un bouton ou tout autre changement d’état asynchrone.

Il n’est pas nécessaire que le nouveau message corresponde au type d’origine. Par exemple, si le message d’origine contient une pièce jointe, le nouveau message peut être un message texte simple.

Pour mettre à jour un message existant, passez un nouvel objet avec l’ID d’activité existant à la Activity UpdateActivityAsync méthode de la TurnContext classe. Pour plus d’informations, voir TurnContextClass.

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

Maintenant que vous avez mis à jour les messages, mettez à jour la carte existante sur la sélection de bouton pour les activités entrantes.

Mettre à jour des cartes

Pour mettre à jour la carte existante sur la sélection de bouton, vous pouvez utiliser ReplyToId l’activité entrante.

Pour mettre à jour une carte existante sur une sélection de bouton, passez un nouvel objet avec carte mise à jour et en tant qu’ID d’activité à la méthode Activity ReplyToId de la UpdateActivityAsync TurnContext classe. Voir TurnContextClass.

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

Maintenant que vous avez mis à jour les cartes, vous pouvez supprimer des messages à l’aide de Bot Framework.

Suppression de messages

Dans Bot Framework, chaque message possède son identificateur d’activité unique. Les messages peuvent être supprimés à l’aide de la méthode DeleteActivity Bot Framework.

Pour supprimer un message, passez l’ID de cette activité à DeleteActivityAsync la méthode de la TurnContext classe. Pour plus d’informations, voir TurnContext.DeleteActivityAsync, méthode.

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

Exemple de code

L’exemple de code suivant illustre les principes de base des conversations :

Exemple de nom Description .NET Node.js Python
Teams Informations de base sur les conversations Présente les principes de base des conversations Teams la mise à jour et la suppression des messages. View View View

Étape suivante