【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. ...
随机推荐
- nodejs-函数&路由
函数------------------------------------------------------------ 基本函数 function say(word) { console.log ...
- 【python】Leetcode每日一题-寻找旋转排序数组中的最小元素2
[python]Leetcode每日一题-寻找旋转排序数组中的最小元素2 [题目描述] 已知一个长度为 n 的数组,预先按照升序排列,经由 1 到 n 次 旋转 后,得到输入数组.例如,原数组nums ...
- Day004 顺序结构
顺序结构 JAVA的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行. 顺序结构是最简单的算法结构. 语句与语句之间,是按照从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它 ...
- Django(6)自定义路由转换器
自定义路径转换器 有时候上面的内置的url转换器并不能满足我们的需求,因此django给我们提供了一个接口可以让我们自己定义自己的url转换器 django内置的路径转换器源码解析 在我们自定义路由转 ...
- vue中的nextTick
今天在浏览elementUI官网时,又一次看到了nextTick,其实nextTIck我已经不是第一次看到了,但之前都没怎么弄懂,这次决定好好研究一番-- 异步说明 vue是异步执行DOM更新的. ...
- Django(21)migrate报错的解决方案
前言 在讲解如何解决migrate报错原因前,我们先要了解migrate做了什么事情,migrate:将新生成的迁移脚本.映射到数据库中.创建新的表或者修改表的结构. 问题1:migrate怎么判断哪 ...
- 成功的多项目管理都有哪些"制胜之道"?
实施多项目管理,一个重要原因就是提高项目的效率和管理水平.除了满足时间.成本.业绩和客户需求之外,项目管理办公室(PMO)经理的预期产出还包括有效利用组织资源.下面是影响多项目管理成功的几个关键因素, ...
- 如何使用GoLand debug
debug 常用操作 /* 如何使用 goland debug goroutine */ package main import ( "fmt" "runtime&quo ...
- Envoy:经过envoy代理后获取客户端真实IP
在envoy作为前端代理时,用户ip的获取很重要,一般获取ip的方式.都是通过Header中的 X-Forward-For. X-Real-IP或 Remote addr 等属性获取,但是如果确保En ...
- [bug] Unable to create initial connections of pool.
原因1 pom中mysql依赖的版本不对,导致无法连接mysql 原因2 SSL设置问题 参考 https://blog.csdn.net/qq_26346457/article/details/79 ...