通过Azure bot framework composer 设计一个AI对话机器人bot(查询天气)

本文介绍通过机器人框架设计器 (Bot framework composer)接近拖拉拽的方式设计一个聊天机器人,该聊天机器人的主要功能是发起http请求查询天气。当然,稍微变通下,可以用来查询几乎任何你想查询的内容,比如是否有新的日程,比如查询订单系统等等。

本文参照文档:https://docs.microsoft.com/zh-cn/composer/introduction

 

本文使用了一个模拟的天气查询api,该api提供北上广深的天气查询,其余城市返回404,具体见下图:

我们准备了一个测试用的API地址: http://get-weather-api.azurewebsites.net/api/GetWeatherByCityName?name=shanghai2

注意,如果测试API不可用,可以下载源码并自行部署:https://github.com/sean8544/bot-framework-get-weather-api

 

 

参数支持 beijing,shanghai,guangzhou,shenzhen

 

机器人的流程如下:

 

 

关键设计步骤如下图所示:

1. 询问要查询的城市:将输入结果存入变量

 

2. 输出要查询的城市,从变量读取数据:

关键语法${变量名称}

 

3. 调用http request:

URl 里采用 expression的方式传入参数,语法为${参数名}

Result Property :dialog.api_response

Response type:json

关于result property 的值,请参照文档:

https://docs.microsoft.com/zh-cn/composer/how-to-send-http-request#add-a-send-an-http-request-action

 

4. 判断http request 请求的结果是否为200或404

 

模拟器里的配置:

下载ngrok并解压到硬盘,设置ngrok的路径,确保状态如下图显示 active,本地的模拟器调试才可以正常使用。

 

边设计边测试:

点击rerstart bot,然后点击 test in emulator即可启动模拟器

 

模拟器运行效果:

 

 

详细的内容,还是看视频吧:

https://www.zhihu.com/zvideo/1306679816390148096


 


声明:

 

点击可查阅本站文章目录 《文章分类目录》

本站所有内容仅代表个人观点,如与官文档冲突,请以官方文档为准。

可在本页面下方留言或通过下方联系方式联系我:

微信:wxyusz;邮箱:shuzhen.yu@foxmail.com

欢迎关注公众号“云计算实战”,接收最新文章推送。

知识共享许可协议

本作品由Sean Yu 采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
欢迎转载、使用、重新发布,但务必保留文章链接:https://www.51azure.cloud,且不得用于商业目的。

posted @ 2020-11-03 15:31  shuzhen.yu  阅读(492)  评论(0编辑  收藏  举报