Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Observação
Estás a criar cenários para Copilot, Teams ou Outlook alimentados por Adaptive Cards? Visite o Adaptive Card Documentation Hub, o novo balcão único para todas as suas necessidades de Adaptive Card! Tem todos os recursos que procura, incluindo documentação completa para muitas novas funcionalidades, como layout responsivo, ícone, emblema, carrossel, gráficos e muito mais!
Esta página documenta o AdaptiveCard elemento, que é o elemento raiz de um Cartão Adaptativo.
Nota importante sobre acessibilidade: Na versão 1.3 do esquema introduzimos uma propriedade de rótulo nos Inputs para melhorar a acessibilidade. Se a aplicação Host a que está direcionada suporta v1.3, deve-se usar label em vez de um TextBlock, como se vê em alguns exemplos abaixo. Assim que a maioria das aplicações Host tiver atualizado para a versão mais recente, iremos atualizar as amostras em conformidade.
Cartão Adaptativo
Uma Carta Adaptativa, contendo um corpo livre de elementos da carta e um conjunto opcional de ações.
Propriedades do AdaptiveCard
| Propriedade | Tipo | Obrigatório | Description | Versão |
|---|---|---|---|---|
| type | "AdaptiveCard" |
Yes | Deve ser "AdaptiveCard". |
1.0 |
| Versão | string |
Yes | Versão do esquema que este cartão exige. Se um cliente estiver inferior a esta versão, o fallbackText será renderizado. NOTA: A versão não é necessária para cartões dentro de um Action.ShowCard. No entanto, é obrigatório para o cartão de nível superior. |
1.0 |
| atualizar | Refresh |
Não | Define como a carta pode ser atualizada fazendo um pedido ao Bot alvo. | 1.4 |
| Autenticação | Authentication |
Não | Define informação de autenticação para permitir o login único em nome de outrem ou o OAuth just-in-time. | 1.4 |
| body | Element[] |
Não | Os elementos da carta devem ser mostrados na região principal da carta. | 1.0 |
| actions | Action[] |
Não | As Ações devem aparecer na barra de ações da carta. | 1.0 |
| selectAction | ISelectAction |
Não | Uma Ação que será invocada quando a carta for tocada ou selecionada.
Action.ShowCard não é suportado. |
1.1 |
| fallbackText | string |
Não | Texto mostrado quando o cliente não suporta a versão especificada (pode conter markdown). | 1.0 |
| Imagem de fundo |
BackgroundImage, uri |
Não | Especifica a imagem de fundo do cartão. | 1.2, 1.0 |
| metadados | Metadata |
Não | Define várias propriedades de metadados normalmente não usadas para renderizar o cartão | 1.6 |
| Altura mínima | string |
Não | Especifica a altura mínima da carta. | 1.2 |
| RTL | boolean? |
Não | Quando o conteúdo neste cartão adaptativo true deve ser apresentado da direita para a esquerda. Quando o conteúdo 'falso' neste Cartão Adaptativo deve ser exibido da esquerda para a direita. Se não for definido, o comportamento padrão da plataforma aplicar-se-á. |
1.5 |
| falar | string |
Não | Especifica o que deve ser dito durante toda esta carta. Isto é texto simples ou fragmento SSML. | 1.0 |
| lang | string |
Não | A linguagem ISO-639-1 de 2 letras usada no cartão. Usado para localizar quaisquer funções de data/hora. | 1.0 |
| verticalContentAlignment | VerticalContentAlignment |
Não | Define como o conteúdo deve ser alinhado verticalmente dentro do contentor. Só é relevante para cartões de altura fixa, ou cartões com um minHeight especificado. |
1.1 |
| $schema | uri |
Não | O esquema do Cartão Adaptativo. | 1.0 |
Example
Exemplo Básico de AdaptiveCard (JSON)
{
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"type": "AdaptiveCard",
"version": "1.0",
"body": [
{
"type": "Container",
"items": [
{
"type": "TextBlock",
"text": "Publish Adaptive Card schema",
"weight": "bolder",
"size": "medium"
},
{
"type": "ColumnSet",
"columns": [
{
"type": "Column",
"width": "auto",
"items": [
{
"type": "Image",
"url": "https://pbs.twimg.com/profile_images/3647943215/d7f12830b3c17a5a9e4afcc370e3a37e_400x400.jpeg",
"altText": "Matt Hidinger",
"size": "small",
"style": "person"
}
]
},
{
"type": "Column",
"width": "stretch",
"items": [
{
"type": "TextBlock",
"text": "Matt Hidinger",
"weight": "bolder",
"wrap": true
},
{
"type": "TextBlock",
"spacing": "none",
"text": "Created {{DATE(2017-02-14T06:08:39Z, SHORT)}}",
"isSubtle": true,
"wrap": true
}
]
}
]
}
]
},
{
"type": "Container",
"items": [
{
"type": "TextBlock",
"text": "Now that we have defined the main rules and features of the format, we need to produce a schema and publish it to GitHub. The schema will be the starting point of our reference documentation.",
"wrap": true
},
{
"type": "FactSet",
"facts": [
{
"title": "Board:",
"value": "Adaptive Card"
},
{
"title": "List:",
"value": "Backlog"
},
{
"title": "Assigned to:",
"value": "Matt Hidinger"
},
{
"title": "Due date:",
"value": "Not set"
}
]
}
]
}
],
"actions": [
{
"type": "Action.ShowCard",
"title": "Comment",
"card": {
"type": "AdaptiveCard",
"body": [
{
"type": "Input.Text",
"id": "comment",
"isMultiline": true,
"placeholder": "Enter your comment"
}
],
"actions": [
{
"type": "Action.Submit",
"title": "OK"
}
]
}
},
{
"type": "Action.OpenUrl",
"title": "View",
"url": "https://adaptivecards.io"
}
]
}
Propriedades
versão
Versão do esquema que este cartão requer. Se um cliente estiver numa versão anterior a esta, o fallbackText será renderizado. NOTA: A versão não é necessária para cartões que estão em um Action.ShowCard. No entanto, é obrigatório para o cartão de nível superior.
-
Tipo:
string - Obrigatório: Não
actualizar
Define como a carta pode ser atualizada fazendo um pedido ao Bot alvo.
-
Tipo:
Refresh - Versão: 1.4
- Obrigatório: Não
-
Valores permitidos:
Refresh
Exemplo de Atualização (JSON)
{
"type": "AdaptiveCard",
"version": "1.3",
"refresh": {
"action": {
"type": "Action.Execute",
"verb": "refreshCard"
},
"userIds": [
"user1",
"user2"
]
},
"body": [
{
"type": "TextBlock",
"text": "This is a card that will be refreshed."
}
]
}
autenticação
Define informação de autenticação para permitir o login único em nome de outrem ou o OAuth just-in-time.
-
Tipo:
Authentication - Versão: 1.4
- Obrigatório: Não
-
Valores permitidos:
Authentication
Exemplo de Autenticação (JSON)
{
"type": "AdaptiveCard",
"version": "1.4",
"authentication": {
"connectionName": "myConnection",
"text": "Please Authenticate your account",
"tokenExchangeResource": {
"id": "myTokenId",
"providerId": "myProviderId",
"uri": "https: //mytoken.exchange/resource"
},
"buttons": [
{
"type": "signin",
"title": "Click here to Sign In!"
}
]
},
"body": [
{
"type": "TextBlock",
"text": "This is a card that has authentication"
}
]
}
body
Os elementos da carta devem ser mostrados na região principal da carta.
-
Tipo:
Element[] - Obrigatório: Não
-
Valores permitidos:
ActionSetColumnSetContainerFactSetImageImageSetInput.ChoiceSetInput.DateInput.NumberInput.TextInput.TimeInput.ToggleMediaRichTextBlockTableTextBlock
ações
As Ações devem aparecer na barra de ações da carta.
-
Tipo:
Action[] - Obrigatório: Não
-
Valores permitidos:
Action.ExecuteAction.OpenUrlAction.ShowCardAction.SubmitAction.ToggleVisibility
selectAction
Uma Ação que será invocada quando a carta for tocada ou selecionada.
Action.ShowCard não é suportado.
-
Tipo:
ISelectAction - Versão: 1.1
- Obrigatório: Não
-
Valores permitidos:
Action.ExecuteAction.OpenUrlAction.SubmitAction.ToggleVisibility
fallbackText
Texto mostrado quando o cliente não suporta a versão especificada (pode conter markdown).
-
Tipo:
string - Obrigatório: Não
Imagem de fundo
Especifica a imagem de fundo do cartão.
-
Tipo:
BackgroundImage,uri - Versão: 1.2, 1.0
- Obrigatório: Não
-
Valores permitidos:
BackgroundImageuri
metadados
Define várias propriedades de metadados normalmente não usadas para renderizar o cartão
-
Tipo:
Metadata - Versão: 1.6
- Obrigatório: Não
-
Valores permitidos:
Metadata
Altura mínima
Especifica a altura mínima da carta.
-
Tipo:
string - Versão: 1.2
- Obrigatório: Não
Exemplo de minHeight (JSON)
{
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"type": "AdaptiveCard",
"version": "1.2",
"minHeight": "100px",
"body": [
{
"type": "TextBlock",
"wrap": true,
"text": "This card has a minHeight of 100px"
}
]
}
RTL
Quando o conteúdo neste cartão adaptativo true deve ser apresentado da direita para a esquerda. Quando o conteúdo 'falso' neste Cartão Adaptativo deve ser apresentado da esquerda para a direita. Se não for definido, o comportamento padrão da plataforma aplicar-se-á.
-
Tipo:
boolean? - Versão: 1.5
- Obrigatório: Não
Exemplo RTL (JSON)
{
"type": "AdaptiveCard",
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"version": "1.5",
"rtl": true,
"body": [
{
"type": "TextBlock",
"text": "هذه كتلة نص",
"wrap": true
},
{
"type": "TextBlock",
"text": "זהו בלוק טקסט",
"wrap": true
},
{
"type": "TextBlock",
"text": "This is a text block",
"wrap": true
}
]
}
falar
Especifica o que deve ser dito durante toda esta carta. Isto é texto simples ou fragmento SSML.
-
Tipo:
string - Obrigatório: Não
idioma
A linguagem ISO-639-1 de 2 letras usada no cartão. Usado para localizar quaisquer funções de data/hora.
-
Tipo:
string - Obrigatório: Não
AlinhamentoVerticalDoConteúdo
Define como o conteúdo deve ser alinhado verticalmente dentro do contentor. Só é relevante para cartas de altura fixa, ou cartas com uma minHeight especificação.
-
Tipo:
VerticalContentAlignment - Versão: 1.1
- Obrigatório: Não
-
Valores permitidos:
"top""center""bottom"
$schema
O esquema do Cartão Adaptativo.
-
Tipo:
uri - Obrigatório: Não