CardFactory class

提供用于设置机器人可以返回的各种卡类型的格式的方法。

注解

所有这些函数都返回一个 Attachment 对象,该对象可以直接添加到现有活动的 附件 集合中,也可以作为输入传递给 MessageFactory 方法之一以生成新活动。

此示例发送包含单个主图卡的消息。

const { MessageFactory, CardFactory } = require('botbuilder');

const card = CardFactory.heroCard(
     'White T-Shirt',
     ['https://example.com/whiteShirt.jpg'],
     ['buy']
);
const message = MessageFactory.attachment(card);
await context.sendActivity(message);

属性

contentTypes

列出每个卡片样式的内容类型架构。

方法

actions(string | CardAction[] | undefined)

返回格式正确的操作数组。

adaptiveCard(any)

返回自适应卡片的附件。

animationCard(string, string | MediaUrl[], string | CardAction[], Partial<AnimationCard>)

返回动画卡的附件。

audioCard(string, string | MediaUrl[], string | CardAction[], Partial<AudioCard>)

返回音频卡的附件。

heroCard(string, string | CardImage[], string | CardAction[], Partial<HeroCard>)

返回主图卡的附件。

heroCard(string, string, string | CardImage[], string | CardAction[], Partial<HeroCard>)

返回主图卡的附件。

images(string | CardImage[] | undefined)

返回格式正确的卡片图像数组。

media(string | MediaUrl[] | undefined)

返回格式正确的媒体 URL 对象数组。

o365ConnectorCard(O365ConnectorCard)

返回 Office 365 连接器卡的附件。

oauthCard(string, string, string, string, TokenExchangeResource)

返回 OAuth 卡的附件。

receiptCard(ReceiptCard)

返回收据卡的附件。

signinCard(string, string, string)

返回登录卡的附件。

thumbnailCard(string, string | CardImage[], string | CardAction[], Partial<ThumbnailCard>)

返回缩略图卡的附件。

thumbnailCard(string, string, string | CardImage[], string | CardAction[], Partial<ThumbnailCard>)

返回缩略图卡的附件。

videoCard(string, string | MediaUrl[], string | CardAction[], Partial<VideoCard>)

返回视频卡的附件。

属性详细信息

contentTypes

列出每个卡片样式的内容类型架构。

static contentTypes: any

属性值

any

方法详细信息

actions(string | CardAction[] | undefined)

返回格式正确的操作数组。

static function actions(actions: string | CardAction[] | undefined): CardAction[]

参数

actions

string | CardAction[] | undefined

要包含在卡片上的操作数组。 数组中的每个 string 都转换为一个 imBack 按钮,其标题和值设置为字符串的值。

返回

CardAction[]

操作数组的格式正确。

adaptiveCard(any)

返回自适应卡片的附件。

static function adaptiveCard(card: any): Attachment

参数

card

any

要返回的自适应卡片的说明。

返回

Attachment

附件

注解

自适应卡片是一种开放卡片交换格式,使开发人员能够以通用和一致的方式交换 UI 内容。 对于尚未本机支持自适应卡片的通道,Bot Framework 会将卡片向下呈现为在目标通道上看起来良好的图像。 对于支持 主卡的通道 可以继续包括自适应卡片操作,它们将作为按钮以及卡片的呈现版本发送。

有关自适应卡片和下载最新 SDK 的详细信息,请访问 adaptivecards.io

例如:

const card = CardFactory.adaptiveCard({
  "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
  "type": "AdaptiveCard",
  "version": "1.0",
  "body": [
      {
         "type": "TextBlock",
         "text": "Default text input"
      }
  ],
  "actions": [
      {
         "type": "Action.Submit",
         "title": "OK"
      }
  ]
});

animationCard(string, string | MediaUrl[], string | CardAction[], Partial<AnimationCard>)

返回动画卡的附件。

static function animationCard(title: string, media: string | MediaUrl[], buttons?: string | CardAction[], other?: Partial<AnimationCard>): Attachment

参数

title

string

卡片标题。

media

string | MediaUrl[]

卡片的媒体 URL。

buttons

string | CardAction[]

自选。 要包含在卡片上的按钮数组。 数组中的每个 string 都转换为一个 imBack 按钮,其标题和值设置为字符串的值。

other

Partial<AnimationCard>

自选。 要包含在卡片上的任何其他属性。

返回

Attachment

附件

audioCard(string, string | MediaUrl[], string | CardAction[], Partial<AudioCard>)

返回音频卡的附件。

static function audioCard(title: string, media: string | MediaUrl[], buttons?: string | CardAction[], other?: Partial<AudioCard>): Attachment

参数

title

string

卡片标题。

media

string | MediaUrl[]

卡的媒体 URL。

buttons

string | CardAction[]

自选。 要包含在卡片上的按钮数组。 数组中的每个 string 都转换为一个 imBack 按钮,其标题和值设置为字符串的值。

other

Partial<AudioCard>

自选。 要包含在卡片上的任何其他属性。

返回

Attachment

附件

heroCard(string, string | CardImage[], string | CardAction[], Partial<HeroCard>)

返回主图卡的附件。

static function heroCard(title: string, images?: string | CardImage[], buttons?: string | CardAction[], other?: Partial<HeroCard>): Attachment

参数

title

string

卡片标题。

images

string | CardImage[]

自选。 要包含在卡片上的图像数组。 每个元素可以是 CardImage 或要包含的图像的 URL。

buttons

string | CardAction[]

自选。 要包含在卡片上的按钮数组。 数组中的每个 string 都转换为一个 imBack 按钮,其标题和值设置为字符串的值。

other

Partial<HeroCard>

自选。 要包含在卡片上的任何其他属性。

返回

Attachment

附件

注解

英雄卡往往有一个占主导地位的全角图像。 通道通常呈现图像下方的卡片文本和按钮。

例如:

const card = CardFactory.heroCard(
     'White T-Shirt',
     ['https://example.com/whiteShirt.jpg'],
     ['buy']
);

heroCard(string, string, string | CardImage[], string | CardAction[], Partial<HeroCard>)

返回主图卡的附件。

static function heroCard(title: string, text: string, images?: string | CardImage[], buttons?: string | CardAction[], other?: Partial<HeroCard>): Attachment

参数

title

string

卡片标题。

text

string

卡片文本。

images

string | CardImage[]

自选。 要包含在卡片上的图像数组。 每个元素可以是 CardImage 或要包含的图像的 URL。

buttons

string | CardAction[]

自选。 要包含在卡片上的按钮数组。 数组中的每个 string 都转换为一个 imBack 按钮,其标题和值设置为字符串的值。

other

Partial<HeroCard>

自选。 要包含在卡片上的任何其他属性。

返回

Attachment

附件

注解

英雄卡往往有一个占主导地位的全角图像。 通道通常呈现图像下方的卡片文本和按钮。 例如:

const card = CardFactory.heroCard(
     'White T-Shirt',
     ['https://example.com/whiteShirt.jpg'],
     ['buy']
);

images(string | CardImage[] | undefined)

返回格式正确的卡片图像数组。

static function images(images: string | CardImage[] | undefined): CardImage[]

参数

images

string | CardImage[] | undefined

要包含在卡片上的图像数组。 每个元素可以是 CardImage 或要包含的图像的 URL。

返回

CardImage[]

格式正确的卡片图像数组。

media(string | MediaUrl[] | undefined)

返回格式正确的媒体 URL 对象数组。

static function media(links: string | MediaUrl[] | undefined): MediaUrl[]

参数

links

string | MediaUrl[] | undefined

媒体 URL。 每个 string 都转换为媒体 URL 对象。

返回

MediaUrl[]

媒体 URL 对象的格式正确的数组。

o365ConnectorCard(O365ConnectorCard)

返回 Office 365 连接器卡的附件。

static function o365ConnectorCard(card: O365ConnectorCard): Attachment

参数

card

O365ConnectorCard

要返回的 Office 365 连接器卡的说明。

返回

Attachment

附件

注解

例如:

const card = CardFactory.o365ConnectorCard({
  "title": "card title",
  "text": "card text",
  "summary": "O365 card summary",
  "themeColor": "#E67A9E",
  "sections": [
      {
          "title": "**section title**",
          "text": "section text",
          "activityTitle": "activity title",
      }
  ]
});

oauthCard(string, string, string, string, TokenExchangeResource)

返回 OAuth 卡的附件。

static function oauthCard(connectionName: string, title: string, text?: string, link?: string, tokenExchangeResource?: TokenExchangeResource): Attachment

参数

connectionName

string

要使用的 OAuth 连接的名称。

title

string

卡片登录按钮的标题。

text

string

自选。 要包含在卡片上的其他文本。

link

string

自选。 要使用的登录链接。

tokenExchangeResource

TokenExchangeResource

自选。 要尝试执行令牌交换的资源。

返回

Attachment

附件

注解

OAuth 卡支持 Bot Framework 的单一登录 (SSO) 服务。

receiptCard(ReceiptCard)

返回收据卡的附件。

static function receiptCard(card: ReceiptCard): Attachment

参数

card

ReceiptCard

要返回的收据卡的说明。

返回

Attachment

附件

signinCard(string, string, string)

返回登录卡的附件。

static function signinCard(title: string, url: string, text?: string): Attachment

参数

title

string

卡片登录按钮的标题。

url

string

要使用的登录页的 URL。

text

string

自选。 要包含在卡片上的其他文本。

返回

Attachment

附件

注解

对于本机不支持登录卡的通道,将呈现备用消息。

thumbnailCard(string, string | CardImage[], string | CardAction[], Partial<ThumbnailCard>)

返回缩略图卡的附件。

static function thumbnailCard(title: string, images?: string | CardImage[], buttons?: string | CardAction[], other?: Partial<ThumbnailCard>): Attachment

参数

title

string

卡片标题。

images

string | CardImage[]

自选。 要包含在卡片上的图像数组。 每个元素可以是 CardImage 或要包含的图像的 URL。

buttons

string | CardAction[]

自选。 要包含在卡片上的按钮数组。 数组中的每个 string 都转换为一个 imBack 按钮,其标题和值设置为字符串的值。

other

Partial<ThumbnailCard>

自选。 要包含在卡片上的任何其他属性。

返回

Attachment

附件

注解

缩略图卡类似于主图卡,而不是全角图像,它们通常以较小的缩略图版本呈现。 通道通常将卡片的文本呈现到图像的一侧,卡片下方显示的任何按钮。

thumbnailCard(string, string, string | CardImage[], string | CardAction[], Partial<ThumbnailCard>)

返回缩略图卡的附件。

static function thumbnailCard(title: string, text: string, images?: string | CardImage[], buttons?: string | CardAction[], other?: Partial<ThumbnailCard>): Attachment

参数

title

string

卡片标题。

text

string

卡片文本。

images

string | CardImage[]

自选。 要包含在卡片上的图像数组。 每个元素可以是 CardImage 或要包含的图像的 URL。

buttons

string | CardAction[]

自选。 要包含在卡片上的按钮数组。 数组中的每个 string 都转换为一个 imBack 按钮,其标题和值设置为字符串的值。

other

Partial<ThumbnailCard>

自选。 要包含在卡片上的任何其他属性。

返回

Attachment

附件

注解

缩略图卡类似于主图卡,而不是全角图像,它们通常以较小的缩略图版本呈现。 通道通常将卡片的文本呈现到图像的一侧,卡片下方显示的任何按钮。

videoCard(string, string | MediaUrl[], string | CardAction[], Partial<VideoCard>)

返回视频卡的附件。

static function videoCard(title: string, media: string | MediaUrl[], buttons?: string | CardAction[], other?: Partial<VideoCard>): Attachment

参数

title

string

卡片标题。

media

string | MediaUrl[]

卡片的媒体 URL。

buttons

string | CardAction[]

自选。 要包含在卡片上的按钮数组。 数组中的每个 string 都转换为一个 imBack 按钮,其标题和值设置为字符串的值。

other

Partial<VideoCard>

自选。 要包含在卡片上的任何其他属性。

返回

Attachment

附件