MessageFactory class
一组实用工具函数,可帮助机器人返回的各种消息类型的格式设置。
注解
以下示例演示如何发送包含单个主图卡的消息:
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);
方法
attachment(Attachment, string, string, Input |
返回包含附件的单个邮件活动。 |
carousel(Attachment[], string, string, Input |
返回一条消息,该邮件将使用轮播布局显示一组附件。 |
content |
返回一条消息,该消息将向用户显示单个图像或视频。 |
list(Attachment[], string, string, Input |
返回一条消息,该邮件将在列表窗体中显示一组附件。 |
suggested |
返回一条消息,其中包含一组建议的操作和可选文本。 |
text(string, string, Input |
返回一个简单的短信。 |
方法详细信息
attachment(Attachment, string, string, InputHints | string)
返回包含附件的单个邮件活动。
static function attachment(attachment: Attachment, text?: string, speak?: string, inputHint?: InputHints | string): Partial<Activity>
参数
- attachment
-
Attachment
要包含在消息中的自适应卡片。
- text
-
string
(可选)消息的文本。
- speak
-
string
(可选)要包含在消息中的 SSML。
- inputHint
-
InputHints | string
(可选)消息的输入提示。 默认为 acceptingInput
。
返回
Partial<Activity>
包含附件的邮件活动。
注解
此示例演示如何创建带有主卡附件的邮件:
const message = MessageFactory.attachment(
CardFactory.heroCard(
'White T-Shirt',
['https://example.com/whiteShirt.jpg'],
['buy']
)
);
carousel(Attachment[], string, string, InputHints | string)
返回一条消息,该邮件将使用轮播布局显示一组附件。
static function carousel(attachments: Attachment[], text?: string, speak?: string, inputHint?: InputHints | string): Partial<Activity>
参数
- attachments
-
Attachment[]
要包含在邮件中的附件数组。
- text
-
string
(可选)消息的文本。
- speak
-
string
(可选)要包含在消息中的 SSML。
- inputHint
-
InputHints | string
(可选)消息的输入提示。
返回
Partial<Activity>
一个邮件活动,它将使用轮播布局显示一组附件。
注解
此示例演示如何创建包含英雄卡轮播的消息:
const message = MessageFactory.carousel([
CardFactory.heroCard('title1', ['imageUrl1'], ['button1']),
CardFactory.heroCard('title2', ['imageUrl2'], ['button2']),
CardFactory.heroCard('title3', ['imageUrl3'], ['button3'])
]);
contentUrl(string, string, string, string, string, InputHints | string)
返回一条消息,该消息将向用户显示单个图像或视频。
static function contentUrl(url: string, contentType: string, name?: string, text?: string, speak?: string, inputHint?: InputHints | string): Partial<Activity>
参数
- url
-
string
要发送的图像/视频的 URL。
- contentType
-
string
图像/视频的 MIME 类型。
- name
-
string
(可选)图像/视频文件的名称。
- text
-
string
(可选)消息的文本。
- speak
-
string
(可选)要包含在消息中的 SSML。
- inputHint
-
InputHints | string
(可选)消息的输入提示。
返回
Partial<Activity>
向用户显示单个图像或视频的消息活动。
注解
此示例演示如何向用户发送图像:
const message = MessageFactory.contentUrl('https://example.com/hawaii.jpg', 'image/jpeg', 'Hawaii Trip', 'A photo from our family vacation.');
list(Attachment[], string, string, InputHints | string)
返回一条消息,该邮件将在列表窗体中显示一组附件。
static function list(attachments: Attachment[], text?: string, speak?: string, inputHint?: InputHints | string): Partial<Activity>
参数
- attachments
-
Attachment[]
要包含在邮件中的附件数组。
- text
-
string
(可选)消息的文本。
- speak
-
string
(可选)要包含在消息中的 SSML。
- inputHint
-
InputHints | string
(可选)消息的输入提示。
返回
Partial<Activity>
将在列表窗体中显示一组附件的邮件活动。
注解
此示例演示如何创建包含英雄卡片列表的消息:
const message = MessageFactory.list([
CardFactory.heroCard('title1', ['imageUrl1'], ['button1']),
CardFactory.heroCard('title2', ['imageUrl2'], ['button2']),
CardFactory.heroCard('title3', ['imageUrl3'], ['button3'])
]);
suggestedActions(string | CardAction[], string, string, InputHints | string)
返回一条消息,其中包含一组建议的操作和可选文本。
static function suggestedActions(actions: string | CardAction[], text?: string, speak?: string, inputHint?: InputHints | string): Partial<Activity>
参数
- actions
-
string | CardAction[]
要包含的卡片操作或字符串数组。 字符串将转换为 messageBack
操作。
- text
-
string
(可选)消息的文本。
- speak
-
string
(可选)要包含在消息中的 SSML。
- inputHint
-
InputHints | string
(可选)消息的输入提示。 默认为 acceptingInput
。
返回
Partial<Activity>
包含建议操作的消息活动。
注解
此示例演示如何创建包含建议操作的消息:
const message = MessageFactory.suggestedActions(['red', 'green', 'blue'], `Choose a color`);
text(string, string, InputHints | string)
返回一个简单的短信。
static function text(text: string, speak?: string, inputHint?: InputHints | string): Partial<Activity>
参数
- text
-
string
要包含在邮件中的文本。
- speak
-
string
(可选)要包含在消息中的 SSML。
- inputHint
-
InputHints | string
(可选)消息的输入提示。 默认为 acceptingInput
。
返回
Partial<Activity>
包含文本的消息活动。
注解
此示例演示如何发送简单的短信:
const message = MessageFactory.text('Greetings from example message');