Los ejemplos de código de esta sección se basan en 4,6 y versiones posteriores del SDK de bot Framework. Si está buscando documentación para versiones anteriores, vea la sección SDK de bots-V3 en la carpeta recursos de la documentación.
Actualizar mensajes
En lugar de que los mensajes sean instantáneas estáticas de los datos, el bot puede actualizar de forma dinámica los mensajes después de enviarlos. Puede usar actualizaciones de mensajes dinámicas para escenarios como sondeos de actualizaciones, modificación de acciones disponibles después de presionar un botón o cualquier otro cambio de estado asincrónico.
El nuevo mensaje no tiene que coincidir con el original en el tipo. Por ejemplo, si el mensaje original contenía datos adjuntos, el nuevo mensaje puede ser un mensaje de texto simple.
Para actualizar un mensaje existente, pase un nuevo Activity objeto con el identificador de actividad existente al UpdateActivityAsync método de la TurnContext clase. ConsulteTurnContextClass
var newActivity = MessageFactory.Text("The new text for the activity");
newActivity.Id = activityId;
await turnContext.UpdateActivityAsync(newActivity, cancellationToken);
Para actualizar un mensaje existente, pase un nuevo Activity objeto con el identificador de actividad existente al updateActivity método del TurnContext objeto. ConsulteupdateActivity
const newActivity = MessageFactory.text('The new text for the activity');
newActivity.id = activityId;
await turnContext.updateActivity(newActivity);
Para actualizar un mensaje existente, pase un nuevo Activity objeto con el identificador de actividad existente al update_activity método de la TurnContext clase. Consulte [TurnContextClass](link to Python API ref docs).
new_activity = MessageFactory.text("The new text for the activity")
new_activity.id = activity_id
update_result = await context.update_activity(new_activity)
Nota
Puede desarrollar las aplicaciones de Microsoft Teams en cualquier tecnología de programación web y llamar directamente a las API de REST del servicio de conector de bot. Para ello, deberá implementar los procedimientos de seguridad de autenticación con sus solicitudes de API.
Para actualizar una actividad existente dentro de una conversación, incluya conversationId el activityId y en el punto de conexión de la solicitud. Para completar este escenario, debe almacenar en caché el identificador de actividad devuelto por la llamada de publicación original.
PUT /v3/conversations/{conversationId}/activities/{activityId}
En el marco de bot, todos los mensajes tienen su propio identificador de actividad único.
Los mensajes se pueden eliminar mediante el método del DeleteActivity marco de trabajo de bot, como se muestra aquí.
Para eliminar ese mensaje, pase el DeleteActivityAsync identificador de la actividad al método de la TurnContext clase. Consultemétodo TurnContext. DeleteActivityAsync
foreach (var activityId in _list)
{
await turnContext.DeleteActivityAsync(activityId, cancellationToken);
}
Para eliminar ese mensaje, pase el deleteActivity identificador de la actividad al método del TurnContext objeto. ConsultedeleteActivity
for (let i = 0; i < activityIds.length; i++) {
await turnContext.deleteActivity(activityIds[i]);
}
Para eliminar ese mensaje, pase el delete_activity identificador de la actividad al método del TurnContext objeto. Consulte Activity-Update-and-Delete.
for each activity_id in _list:
await TurnContext.delete_activity(activity_id)
Para eliminar una actividad existente dentro de una conversación, incluya conversationId el activityId y en el extremo de la solicitud.