Compartilhar via


Fluxos de Trabalho Sequenciais

Agora, os Cartões Adaptáveis suportam Fluxos de Trabalho Sequenciais que são atualizados na ação do utilizador. Ao utilizar Fluxos de Trabalho Sequenciais, os Cartões Ajustáveis são atualizados na ação do utilizador e o utilizador pode progredir através de uma série de cartões que requerem a entrada do utilizador. Action.Execute suporta Fluxos de Trabalho Sequenciais, o que permite que os programadores de bots devolvam Cartões Ajustáveis em resposta a uma ação do utilizador.

Por exemplo, veja um cenário em que o refeitório quer fazer uma encomenda para uma equipa ou canal. Com Action.Execute a escolha do utilizador para vários itens, como comida e bebidas, pode ser gravado sequencialmente. O utilizador também pode percorrer os cartões de acordo com a lógica definida pelo programador de bots.

A imagem seguinte mostra o Fluxo de Trabalho Sequencial:

Fluxo de Trabalho Sequencial

Um utilizador pode progredir através do fluxo de trabalho sem modificar o cartão para outros utilizadores. O fluxo de trabalho também é útil para realizar questionários com Cartões Adaptáveis sequenciais. A imagem seguinte mostra que diferentes utilizadores podem estar em diferentes fases do fluxo de trabalho e estados do cartão:

Estados do bot de catering

Observação

Para sincronizar o progresso do utilizador entre dispositivos, utilize a refresh propriedade em JSON de Cartão Ajustável.

Fluxo de Trabalho Sequencial para Cartões Ajustáveis

O código seguinte fornece um exemplo de Cartões Ajustáveis:

{
  "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
  "type": "AdaptiveCard",
  "version": "1.4",
  "body": [
    {
      "type": "TextBlock",
      "text": "Select from food options"
    },
    { 
      "type": "ActionSet",
      "actions": [
        {
          "type": "Action.Execute",
          "title": "Chicken",
          "verb": "food",
          "data": {
              "item": "chicken"
          }
        },
        {
          "type": "Action.Execute",
          "title": "Beef",
          "verb": "food",
          "data": {
              "item": "beef"
          }
        },
        {
          "type": "Action.Execute",
          "title": "Vegan",
          "verb": "food",
          "data": {
              "item": "vegan"
          }
        }
      ]
    }
  ]
}

Action.Execute Invocar o bot pode devolver Cartões Ajustáveis como resposta, o que substitui o cartão existente no Teams. O exemplo seguinte fornece o que o bot devolve na seleção de alimentos ou bebidas ou confirmação da encomenda:

  • Na seleção de alimentos do Cartão 1, o bot pode devolver um cartão para seleção de bebidas que é Cartão 2.
  • Na seleção de bebidas do Cartão 2, o bot pode devolver um cartão de confirmação de encomenda que seja Cartão 3.
  • Na confirmação da encomenda do Cartão 3, o bot pode devolver um cartão confirmado por encomenda que seja Cartão 4.

Invocar pedido recebido no lado do bot

O código seguinte fornece um exemplo de um pedido de invocação recebido no lado do bot:

{ 
  "type": "invoke",
  "name": "adaptiveCard/action",

  // ... other properties omitted for brevity

  "value": { 
    "action": { 
      "type": "Action.Execute", 
      "id": "", 
      "verb": "food",
      "data": { 
            "item": "vegan"
      } 
    },
    "trigger": "manual" 
  }
}

Invocar resposta para devolver Cartões Ajustáveis

O código seguinte fornece um exemplo de uma resposta de invocação para devolver Cartões Ajustáveis:

string cardJson = "<adaptive card json>";
var card = JsonConvert.DeserializeObject(cardJson);

var adaptiveCardResponse = JObject.FromObject(new
 {
    statusCode = 200,
    type = "application/vnd.microsoft.adaptive.card",
    value = card
 });

Exemplos de código

Nome do exemplo Descrição .NET Node.js Manifesto
Bot de refeições do Teams Este exemplo mostra um bot que aceita a encomenda de alimentos com Cartões Ajustáveis. View NA NA
Cartões Adaptáveis de Fluxos de Trabalho Sequenciais Este exemplo demonstra a implementação de Fluxos de Trabalho Sequenciais, Vistas Específicas do Utilizador e Cartões Ajustáveis atuais em bots. View View Exibir

Confira também