欢迎来到微软机器人编辑器使用教程,从这里开始,创建一个简单的机器人。

在该系列文章中,每一篇都将通过添加更多的功能来构建机器人。当完成教程中的全部内容后,你将成功的创建一个天气机器人(Weather Bot)。在本系列中将学会以下内容:

1)创建一个简单的对话天气机器人

2)在机器人中提出问题,并获取从HTTP API获取响应

3)在机器人中增加帮助提示和取消功能

4)使用语言生成功能(LG: Language Generation)

5)把机器人的回复转换为卡片

6)添加LUIS功能,理解自然语言

准备条件

添加Button

Button作为一个建议操作添加在机器人与人之间的对话中,通过预设按钮,代替输入文字,改善用户体验。让我们在本文你中为输入邮政编码的提问部分增加“Help”和“Cancel”两个按钮。

第一步:启动Bot编辑器,打开 weather_bot 项目

第二步:在getWeather对话组件中,选择“BeginDialog”事件 ,在其第二个组件“Prompt for text”的右侧属性栏中,点击文本旁边的“+”号按钮。

第三步:在弹出的窗口中选择“建议的操作”。然后点击“Add suggested action”并在文本框中输入“ HELP ”. 重复点击“Add suggested action”,再次输入“ CANCEL

第三步(可选):也可以通过修改代码的方式添加SuggestedActions。操作步骤为:

在属性栏的右边,选择显示代码

在Activity中添加SuggestedActions属性。代码内容如下:

[Activity
Text = What is your postal code?
SuggestedActions = help | cancel
]

UI显示效果如:

让我们一起来观看添加动画及效果演示:

添加Cards

第一步:在getWeather对话的True分支下,选择"Send a response"组件

第二步:在右边的属性栏中,点击“+”号按钮,在下拉列表中选择“Attachments

第三步:在出现的附件栏中,点击 “ 添加新附件 ” --> “ 通过模板创建 ” --> “ 缩略图卡 

第四步:在代码编辑框中会列出缩略图模板所需要填充的内容。可以使用以下的内容替换:

[ThumbnailCard
title = Weather in ${dialog.city} in ${dialog.country}
text = ${DescribeWeather(dialog.weather)}
image = http://openweathermap.org/img/wn/${dialog.icon}@2x.png
]

完成以上4步后,一起观看添加Cards及效果演示:

在下一篇中将演示:添加LUIS功能,理解自然语言

(以上内容均是参考微软官方的机器人文档进行的中文操作步骤,原文连接见参考资料)

参考资料

Tutorial: Add cards and buttons to your bot:https://docs.microsoft.com/en-us/composer/tutorial/tutorial-cards?tabs=v2x

Design the user experience: https://docs.microsoft.com/en-us/azure/bot-service/bot-service-design-user-experience?view=azure-bot-service-4.0#cards

[完]

最新文章

  1. XAML UserControl的继承
  2. Linux[Fedora]查找文件包含的字段
  3. extJs学习基础4 Ext.each的用法
  4. python的win32操作
  5. Github克隆别人的库
  6. Codeforces 745C:Hongcow Builds A Nation(并查集)
  7. Maven相关: An internal error occurred during: "Updating Maven Project". java.lang.NullPointerException
  8. c#音乐播放器(欣赏)
  9. ASP.NET中@Page指令中的AutoEventWireup
  10. move file create directory.
  11. 让 Dreamweaver 支持 Emmet(原ZenCoding)
  12. DQL
  13. python文本文件,生成指定的文件格式
  14. js在(FF)中长字段溢出(自动换行)
  15. Mina源码阅读笔记(七)—Mina的拦截器FilterChain
  16. SqlServer 操作 JSON
  17. Appium 客户端类库
  18. sql yog出现2013错误
  19. day 7-19 Mysql索引原理与查询优化
  20. Windows Server 2008 R2 如何关闭防火墙

热门文章

  1. GUI基础知识点
  2. java之I/O流
  3. thinkphp之独立日志(tp5.1)
  4. 使用TK框架中 insert与insertSelective区别
  5. 手写一个LRU工具类
  6. Centos7下搭建gitbook环境踩坑记录
  7. Nacos C++客户端开发文章
  8. Java集合详解(二):ArrayList原理解析
  9. 一看就懂的MySQL的聚簇索引,以及聚簇索引是如何长高的
  10. [刷题] PTA 02-线性结构1 两个有序链表序列的合并