【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. ...
随机推荐
- php基础-php基本语法
http://study.163.com/course/courseMain.htm?courseId=246003
- 一道VM的逆向所引发的符号执行思路
逆向虚拟机保护 虚拟机保护类的题目需要找到虚拟机的vm_code(字节码),各个handler,然后进一步分析虚拟机保护代码的流程. 用IDA打开程序,经分析后0x403040全局变量地址处存储的就是 ...
- SpringBoot系列——事件发布与监听
前言 日常开发中,我们经常会碰到这样的业务场景:用户注册,注册成功后需要发送邮箱.短信提示用户,通常我们都是这样写: /** * 用户注册 */ @GetMapping("/userRegi ...
- 在Linux系统中部署NodeJS项目
在Linux系统中部署NodeJS项目 安装NodeJS 首先进入 Node 官网,下载对应的 Node包 下载下来后是一个后缀为 xz 的压缩包,我们把这个包上传到 Linux 系统中的 /usr/ ...
- JSX语法详解
一.基础1.JSX是什么JSX是一种像下面这样的语法: const element = <h1>Hello, world!</h1>;1它是一种JavaScript语法扩展,在 ...
- lua编译为二进制方式
当不想使用户看到lua源码,文本文件可以通过luac,把lua文本文件"编译"成二进制的文件. lc@lc-virtual-machine:~/lua$ luac -o redis ...
- curl -O http://www.linux.com/hello.sh
2.3:可以使用curl的内置option:-O(大写)保存网页中的文件要注意这里后面的url要具体到某个文件,不然抓不下来 # curl -O http://www.linux.com/hello. ...
- [文章]Linux宕机故障分析案例
[文章]Linux宕机故障分析案例 已采纳 收藏 0 1669 0 马化辉 2018-07-01发布 背景 在Linux系统环境下,服务器宕机发生的频率比较小,但是不少工程师或多或少都会遇到这 ...
- Linux 内存 占用较高问题排查
Linux 内存 占用较高问题排查 niuhao307523005 2019-04-24 14:31:55 11087 收藏 11展开一 查看内存情况#按 k 查看 free #按兆M查看 free ...
- python实现UDP通讯
Environment Client:Windows Server:KaLi Linux(VM_virtul) Network:Same LAN Client UDPClient.py #-*- co ...