CardFactory class

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

注解

所有这些函数都返回一个 Attachment 对象,该对象可以直接添加到现有活动的 attachments 集合,也可以作为输入传递给 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

附件