阿凡达

数周前第一部分聊天Ops博客串,你创建你的第一个机器人但它什么也做不来 真可惜赶紧解决吧

时间查看代码 实现机器人逻辑将使用ython语言浮点因为它们提供简单便捷方法 你可以很容易地利用

请确认安装ython语言并存Flask库并准备审查代码 我们第一次刺入实施 所需机器人逻辑,可用.请使用您最喜爱编辑器或iDE创建新文件并调用内容相同的计算机1-Chatbot.py

将看到代码做下列简单步骤

  • 导入所需的Flask模块
  • TCP端口5005计算机监听POST消息
  • 分配接收JSON有效载荷进数据变量并显示屏幕

请求运行代码使用 :

ython 1_chatbot.py

终端窗口显示下位并不允许再交互

Service Flask应用1_Chatbot生产部署中不使用它。代之以生产WSGI服务器tbug模式:On*运行 http://0.0.0:5005(PressCTRL+C退出)Exbuger PIN:180-970-440

表示代码运行等待消息运抵5005港离开终端窗口运行代码并开新窗口继续工作

连通性webhoks

现在我们需要告诉机器人时间和方式 以连接机器人逻辑即定义事件或消息 触发Webex云中的bot发送通知消息实现方式是配置webhook系统.webhooks定义特定事件类型触发消息,以及目标地址(目标URL)等下 机体逻辑的目的地地址是什么

机器人逻辑运行自计算机必从Webex云获取, 实际机器人生活之地如何实现计算机通常居于NAT/PAT启动路由器和/或防火墙后方,这使得从互联网启动的入境连接几乎无法连接到您的系统

使用不同的变通方法解决无限可达性挑战IP+端口映射器或反向SSH通路Ngrok.

以这种方式,你能够告诉Webexbot公共可达端口地址,它可用以达到计算机本地托管的bot逻辑

聊天Ops2 webhoks

点火

求求您下载安装ngrok客户端电脑里点火需要定义计算机端口 机器人逻辑监听Webex机器人发文配置ngrok提供本地端口5005与运行一样简单:

ngrok网站5005

等会状态联机并写下显示为转发结束的 https URL.ngrok.io(i.e., https://f21570cefdf4.ngrok.io).URL可公开访问地址 通过互联网访问Webexbot访问bot逻辑(python脚本)

时间让你的Webex机器人知道我们感兴趣的事件 和可公开访问地址 机器人逻辑存放我们使用webhoks网路为了这个

webexAPIs配置 webhook

webexAPIs为使用RESTPST方法发送简单HTTP消息配置 webhook提供简单方式下方命令使用, 需要包括创建Webexbot和Ngrok URL时获取的令牌

Curl-XPOST/https://webexapis.com/v1/webhooks/-H'Actorization:Bearer
           
            \-HCent-Type:应用/json'-d-{名:Webhook聊天机
            
             "      }'
            
           

到现在你应该有几端窗口:一端运行带机器人逻辑的python脚本,二端运行ngrok客户端

webex客户端接口(ab、webbbase、move)搜索bot地址,地址以@webex.bot结束发消息表示HELLOBOT运行中的Ngrok应用POST法显示HTTP请求和200确定回答HTTP200确定成功状态响应码表示请求成功

不错收到消息后,Webex云中机手现在能发送 webhook通过Ngrok通知寄存于你笔记本机的机器人逻辑酷毙了

运行机器人逻辑的另一端窗口将显示JSON有效载荷和从Webex机器人接收的所有信息并连接到你发送给机器人的消息举个例子,你自找地址个人邮件webhook生成消息及其目标URL可你哪里都找不到HELLObOT消息 奇异吧

下游

下星期我们将探索如何获取所有消息细节回见
网络可编程性与思科网络平台访问DevNetingDev中心

问题或评论请通知我微博LinkedIn.

追加资源


我们想听听你的想法问题或留言下文
并保持连接思科DevNet社会

微博@CiscoDevNet|脸书|LinkedIn

访问新开发者视频通道



作者类

阿凡达

Julio gomez

可编程性引导EMEAR

系统工程师