本文介绍通过机器人框架设计器 (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,且不得用于商业目的。