Compartilhar via


Elemento AdaptiveCard

Observação

Você está criando cenários de Copilot, Teams ou Outlook alimentados por Cartões Adaptáveis? Visite o Hub de Documentação do Cartão Adaptável, a nova loja única para todas as suas necessidades de Cartão Adaptável! Ele tem todos os recursos que você está procurando, incluindo documentação completa para muitas novas funcionalidades, como layout responsivo, Ícone, Badge, Carrossel, Gráficos e muito mais!

Esta página documenta o AdaptiveCard elemento, que é o elemento raiz de um Cartão Adaptável.

Observação importante sobre acessibilidade: Na versão 1.3 do esquema, introduzimos uma propriedade de rótulo em Entradas para melhorar a acessibilidade. Se o aplicativo Host que você está direcionando der suporte à v1.3, você deverá usar o rótulo em vez de um TextBlock , como visto em alguns exemplos abaixo. Depois que a maioria dos aplicativos host tiverem sido atualizados para a versão mais recente, atualizaremos os exemplos adequadamente.

AdaptiveCard

Um Cartão Adaptável, que contém um corpo de forma livre de elementos de cartão e um conjunto opcional de ações.

Propriedades AdaptiveCard

Propriedade Tipo Obrigatório Description Versão
type "AdaptiveCard" Yes Deve ser "AdaptiveCard". 1,0
version string Yes Versão de esquema que este cartão requer. Se um cliente for menor que essa versão, o fallbackText será renderizado. OBSERVAÇÃO: a versão não é necessária para cartões em um Action.ShowCard. No entanto, ele é necessário para o cartão de nível superior. 1,0
atualizar Refresh Não Define como o cartão pode ser atualizado fazendo uma solicitação para o Bot de destino. 1.4
autenticação Authentication Não Define informações de autenticação para habilitar o logon único em nome ou o OAuth just-in-time. 1.4
body Element[] Não Os elementos do cartão a serem mostrados na região principal do cartão. 1,0
actions Action[] Não As Ações a serem exibidas na barra de ações do cartão. 1,0
selectAction ISelectAction Não Uma ação que será invocada quando o cartão for tocado ou selecionado. Não há suporte para Action.ShowCard. 1.1
fallbackText string Não Texto mostrado quando o cliente não dá suporte à versão especificada (pode conter markdown). 1,0
backgroundImage BackgroundImage, uri Não Especifica a imagem de plano 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
minHeight string Não Especifica a altura mínima do cartão. 1,2
Rtl boolean? Não Quando true o conteúdo neste Cartão Adaptável deve ser apresentado da direita para a esquerda. Quando o conteúdo 'false' neste Cartão Adaptável deve ser apresentado da esquerda para a direita. Se não definido, o comportamento da plataforma padrão será aplicado. 1.5
falar string Não Especifica o que deve ser falado para este cartão inteiro. Esse é um texto simples ou um fragmento SSML. 1,0
Idioma string Não O idioma ISO-639-1 de 2 letras usado 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 contêiner. Relevante apenas para cartões de altura fixa ou cartões com um minHeight especificado. 1.1
Esquema uri Não O esquema do Adaptive Card. 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 de esquema que este cartão requer. Se um cliente for menor que essa versão, fallbackText será renderizado. OBSERVAÇÃO: a versão não é necessária para cartões em um Action.ShowCard. No entanto, ele é necessário para o cartão de nível superior.

  • Tipo: string
  • Obrigatório: Não

atualizar

Define como o cartão pode ser atualizado fazendo uma solicitação para o Bot de destino.

  • 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ções de autenticação para habilitar o logon único em nome 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 do cartão a serem mostrados na região principal do cartão.

  • Tipo: Element[]
  • Obrigatório: Não
  • Valores permitidos:
    • ActionSet
    • ColumnSet
    • Container
    • FactSet
    • Image
    • ImageSet
    • Input.ChoiceSet
    • Input.Date
    • Input.Number
    • Input.Text
    • Input.Time
    • Input.Toggle
    • Media
    • RichTextBlock
    • Table
    • TextBlock

Ações

As Ações a serem exibidas na barra de ações do cartão.

  • Tipo: Action[]
  • Obrigatório: Não
  • Valores permitidos:
    • Action.Execute
    • Action.OpenUrl
    • Action.ShowCard
    • Action.Submit
    • Action.ToggleVisibility

selectAction

Uma ação que será invocada quando o cartão for tocado ou selecionado. Não há suporte para Action.ShowCard.

  • Tipo: ISelectAction
  • Versão: 1.1
  • Obrigatório: Não
  • Valores permitidos:
    • Action.Execute
    • Action.OpenUrl
    • Action.Submit
    • Action.ToggleVisibility

fallbackText

Texto mostrado quando o cliente não dá suporte à versão especificada (pode conter markdown).

  • Tipo: string
  • Obrigatório: Não

backgroundImage

Especifica a imagem de plano de fundo do cartão.

  • Tipo: BackgroundImage, uri
  • Versão: 1.2, 1.0
  • Obrigatório: Não
  • Valores permitidos:
    • BackgroundImage
    • uri

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

minHeight

Especifica a altura mínima do cartão.

  • 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 true o conteúdo neste Cartão Adaptável deve ser apresentado da direita para a esquerda. Quando o conteúdo 'false' neste Cartão Adaptivo deve ser apresentado da esquerda para a direita. Se não definido, o comportamento da plataforma padrão será aplicado.

  • 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 falado para este cartão inteiro. Esse é um texto simples ou um fragmento SSML.

  • Tipo: string
  • Obrigatório: Não

lang

O idioma ISO-639-1 de 2 letras usado 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 contêiner. Relevante apenas para cartões de altura fixa ou cartões com um minHeight especificado.

  • Tipo: VerticalContentAlignment
  • Versão: 1.1
  • Obrigatório: Não
  • Valores permitidos:
    • "top"
    • "center"
    • "bottom"

$schema

O esquema do Adaptive Card.

  • Tipo: uri
  • Obrigatório: Não