【Azure 机器人】微软Azure Bot 编辑器系列(1) : 创建一个天气对话机器人(The Bot Framework Composer tutorials)
欢迎来到微软机器人编辑器使用教程,从这里开始,创建一个简单的机器人。
在该系列文章中,每一篇都将通过添加更多的功能来构建机器人。当完成教程中的全部内容后,你将成功的创建一个天气机器人(Weather Bot)。在本系列中将学会以下内容:
1)创建一个简单的对话天气机器人
2)在机器人中提出问题,并获取从HTTP API获取响应
3)在机器人中增加帮助提示和取消功能
4)使用语言生成功能(LG: Language Generation)
5)把机器人的回复转换为卡片
6)添加LUIS功能,理解自然语言
准备条件
- 对Bot Framwork Composer(机器人编辑器)有一定的了解,包含Composer中元素的命名约定(https://docs.microsoft.com/en-us/composer/introduction?tabs=v2x)
- 下载并安装 Bot Framwork Composer(https://docs.microsoft.com/en-us/composer/install-composer)
- 设置Composer的语言环境为“中文简体”,如使用英文,教程内容可参考官网(https://docs.microsoft.com/en-us/composer/tutorial/tutorial-introduction)

创建机器人
使用 Composer 创建机器人的第一步是从模板开始一个项目。 这将在本地计算机上创建一个新文件夹,其中包含构建、测试和运行机器人所需的所有文件。
第一步:启动编辑器
第二步:点击 “+ Create New”
第三步:选择 C# 语言 Empty Bot为模板,然后选择“下一步”
第四步:在创建机器人项目的窗口中填入下列的值
a. 名称:输入“weather_bot”
b. 机器人服务的Runtime类型:选择 Azure Web App
c. 位置:选择一个本地路径存储机器人的源文件
第五步:选择“创建”按钮,这一步会占用几分钟的时间从空模板中创建机器人
当创建完成后,编辑器的停留在机器人的创建页面(主页面)
注:一个对面包含一个或多个触发器(Trigger),这些触发器定义了机器人的对话行为。创建新机器人时,会默认创建一个“问候语(Greeting)”的触发器。
第六步:选择“问候语(Greeting)”触发器,选中它的底部的“Send a response”动作
第七步:在右边的“文本”属性中,使用下面的内容替换默认文字(Welcome to your bot)
Welcome to the weather bot! Say "weather" to get started.
欢迎来到天气机器人,请说“天气”来触发机器人指令!
当前这一步完成后的截图如下:

使用空模板的机器人创建完成。
请查看创建过程的演示动画:

添加一个对话
第一步:选中“weather_bot”机器人,点击“...” 选中“+ 添加对话框”

第二步:在弹出的“创建对话”窗口中输入名称和说明,点击 “确定”。
a. 名称: getWeather
b. 描述: Get the current weather conditions.
第三步:在BeginDialog的对话事件中,点击“+”号,添加一个“Send a response”,在它的“文本”属性中输入以下内容
Let's check the weather.
让我们来查看天气情况吧!
第四步:添加getWeather对话的触发器。重新选中“weather_bot”, 在右边的属性中改变识别器类型。由“默认识别器”改为“正则表达式识别器”
第五步:在第二级的“weather_bot”中,点击“...”,然后创建新的触发器“+ Add new trigger”
第六步:在“Create a trigger”的对话框中,为触发器的名字和触发关键字设置内容
a. 此触发器的名称是什么(RegEx): weather
b. 请输入regEx模式:weather|天气
c. 点击“提交”按钮
第七步:在“weather”的触发器编辑页面,点击“+”号按钮,选择“Dialog management” -> “Begin a new dialog”
第八步:在右边的属性栏中,在对话框名称下列框中选择第二步所创建的getWeather对话框。
通过以上步骤,天气对话框和触发器添加完成。
请查看对话框和触发器的演示动画:

测试机器人
第一步:在编辑器的右上角点击 “Start Bot”按钮,启动机器人
第二步:启动后,会弹出一个“Local bot runtime manager”的窗口,选择“Open Web Chat”,打开一个页面聊天窗口
第三步:在对话框中输入“weather” 或者“天气”来触发机器人的对话

在下一篇中将演示:机器人中提出问题,并获取从HTTP API获取响应
(以上内容均是参考微软官方的机器人文档进行的中文操作步骤,原文连接见参考资料)
参考资料
Introduction to Bot Framework Composer:https://docs.microsoft.com/en-us/composer/introduction?tabs=v2x
Install Bot Framework Composer:https://docs.microsoft.com/en-us/composer/install-composer
The Bot Framework Composer tutorials:https://docs.microsoft.com/en-us/composer/tutorial/tutorial-introduction
Tutorial: Create and test a bot:https://docs.microsoft.com/en-us/composer/tutorial/tutorial-create-bot?tabs=v2x
Tutorial: Add dialogs to your bot:https://docs.microsoft.com/en-us/composer/tutorial/tutorial-add-dialog?tabs=v2x
[完]
【Azure 机器人】微软Azure Bot 编辑器系列(1) : 创建一个天气对话机器人(The Bot Framework Composer tutorials)的更多相关文章
- 【Azure 机器人】微软Azure Bot 编辑器系列(6) : 添加LUIS,理解自然语言 (The Bot Framework Composer tutorials)
欢迎来到微软机器人编辑器使用教程,从这里开始,创建一个简单的机器人. 在该系列文章中,每一篇都将通过添加更多的功能来构建机器人.当完成教程中的全部内容后,你将成功的创建一个天气机器人(Weather ...
- 【Azure 机器人】微软Azure Bot 编辑器系列(5) : 机器人的卡片式回复 (The Bot Framework Composer tutorials)
欢迎来到微软机器人编辑器使用教程,从这里开始,创建一个简单的机器人. 在该系列文章中,每一篇都将通过添加更多的功能来构建机器人.当完成教程中的全部内容后,你将成功的创建一个天气机器人(Weather ...
- 【Azure 机器人】微软Azure Bot 编辑器系列(2) : 机器人/用户提问回答模式,机器人从API获取响应并组织答案 (The Bot Framework Composer tutorials)
欢迎来到微软机器人编辑器使用教程,从这里开始,创建一个简单的机器人. 在该系列文章中,每一篇都将通过添加更多的功能来构建机器人.当完成教程中的全部内容后,你将成功的创建一个天气机器人(Weather ...
- 【Azure 机器人】微软Azure Bot 编辑器系列(3) : 机器人对话流中加入帮助和取消按钮功能 (The Bot Framework Composer tutorials)
欢迎来到微软机器人编辑器使用教程,从这里开始,创建一个简单的机器人. 在该系列文章中,每一篇都将通过添加更多的功能来构建机器人.当完成教程中的全部内容后,你将成功的创建一个天气机器人(Weather ...
- 【Azure 机器人】微软Azure Bot 编辑器系列(4) : 使用语言生成功能[LG: Language Generation] (The Bot Framework Composer tutorials)
欢迎来到微软机器人编辑器使用教程,从这里开始,创建一个简单的机器人. 在该系列文章中,每一篇都将通过添加更多的功能来构建机器人.当完成教程中的全部内容后,你将成功的创建一个天气机器人(Weather ...
- 通过Azure bot framework composer 设计一个AI对话机器人bot(查询天气)
本文介绍通过机器人框架设计器 (Bot framework composer)接近拖拉拽的方式设计一个聊天机器人,该聊天机器人的主要功能是发起http请求查询天气.当然,稍微变通下,可以用来查询几乎任 ...
- NPOI-Excel系列-1000.创建一个标准的Excel文件
using NPOI.HSSF.UserModel; using Microsoft.VisualStudio.TestTools.UnitTesting; using System.IO; name ...
- ADF_General JSF系列1_创建一个简单的JSF Application
2015-02-17 Creatd By BaoXinjian
- Cordova 系列之创建一个iOS项目
1.打开终端 2.输入命令 $ cd Desktop (PS:Desktop表示放在桌面,你可以选择放任意位置) 3.$ cordova create HelloWorld com.example. ...
随机推荐
- 【Github搬砖】Python入门网络爬虫之精华版
Python学习网络爬虫主要分3个大的版块:抓取,分析,存储 另外,比较常用的爬虫框架Scrapy,这里最后也详细介绍一下. 首先列举一下本人总结的相关文章,这些覆盖了入门网络爬虫需要的基本概念和技巧 ...
- 【easyUI】取消easyui行点击选中事件,智能通过勾选checkbox才能选中行
背景:项目中使用easyui作为前端架子.datagrid默认是点击行就选中此行然后变色. 需求:点击行不让此行选中:只能通过点击复选框才能选中某一行. 解决思路: 1.写点击行函数function ...
- web自动化框架—BasePage 类的简单封装
优秀的框架都有属于自己的思想,在搭建web自动化测试框架时,我们通常都遵循 PO(Page Object)思想. 简单理解就是我们会把每个页面看成一个对象,一切皆对象,面向对象编码,这样会让我们更好的 ...
- iNeuOS工业互联平台,WEB组态(iNeuView)增加动态图元,例如液位
目 录 1. 概述... 2 2. 平台演示... 2 3. 应用过程... 2 4. 实现动态图元的效果... 3 1. 概述 最近,有潜在用 ...
- Matlab将数据存为文本文件
dlmwrite :将一个矩阵写到由分隔符分割的文件中. 在保存整数到文件时使用save存为ascii文件时,常常是文件里都是实型格式的数据(有小数点,和后面很多的0,看着很不方便).于是要保存此类数 ...
- 【Mysql】数据库事务,脏读、幻读、不可重复读
一.什么是数据库事务 数据库事务( transaction)是访问并可能操作各种数据项的一个数据库操作序列,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位.事务由事务开始与事务结束之间 ...
- Java集合详解(五):Hashtable原理解析
概述 本文是基于jdk8_271版本进行分析的. Hashtable与HashMap一样,是一个存储key-value的双列集合.底层是基于数组+链表实现的,没有红黑树结构.Hashtable默认初始 ...
- [bug] Importing maven project 卡在%9不动
参考 Importing maven project 卡在%9不动 https://blog.csdn.net/weixin_43197380/article/details/89220337
- 【转载】让KVM虚机能使用音箱与麦克风(vnc及ac97)
让KVM虚机能使用音箱与麦克风(vnc及ac97) 原 tantexian 发布于 2016/02/29 16:32 字数 462 阅读 164 收藏 0 点赞 1 评论 0 为什么80%的码农都做不 ...
- split命令_Linux split命令:切割(拆分)文件
<Linux就该这么学>是一本基于最新Linux系统编写的入门必读书籍,内容面向零基础读者,由浅入深渐进式教学,销量保持国内第一,年销售量预期超过10万本.点此免费在线阅读. 15 分钟之 ...