概述
本教程在第一个教程的基础上创建一个流程,该流程开始从外部来源引入数据以在本地做一些有用的事情。
流程将:
定期从网站检索信息
将这些信息转换成有用的形式
在 Debug 侧边栏中显示结果
1.添加一个Inject节点
在上一个教程中,Inject 节点用于在单击其按钮时触发流程。对于本教程,Inject 节点将配置为定期触发流程。
将 Inject 节点从面板拖到工作区。
双击节点以弹出编辑对话框。将重复间隔设置为 every 5 minutes。
单击完成关闭对话框。
2.添加HTTP请求节点
HTTP 请求节点可用于在触发时检索网页。
将一个添加到工作区后,对其进行编辑以将URL属性设置为:
https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/significant_month.csv
然后单击完成关闭对话框。
此 URL 是来自美国地质调查局网站的上个月重大地震的提要。该站点提供了许多其他选项 ,您可能希望在完成本教程后尝试一下。
3.添加CSV节点
添加 CSV 节点并编辑其属性。启用“第一行包含列名”选项。
然后单击完成关闭。
4.添加Debug节点
在输出中添加一个 Debug 节点。
5. 将它们连接在一起
添加电线连接:
注入节点输出到 HTTP 请求节点输入。
HTTP 请求节点输出到 CSV 节点输入。
CSV 节点输出到 Debug 节点输入。
6.添加一个Switch节点
将 Switch 节点添加到工作区。编辑其属性并将其配置为msg.payload.mag使用测试检查属性,将>=其更改为测试 anumber和 value 7。单击完成关闭。
添加从 CSV 节点到此 Switch 节点的第二条连线。
7. 添加变更节点
添加一个 Change 节点,连接到 Switch 节点的输出。将其配置为设置msg.payload为 string PANIC!。
8.添加调试节点
将新的 Debug 节点连接到 Change 节点的输出
9. 部署
通过单击 Deploy 按钮将流部署到运行时。
打开 Debug 侧边栏选项卡,单击 Inject 按钮。您应该会看到一个条目列表,其中包含如下内容:
msg.payload : Object
{"time":"2017-11-19T15:09:03.120Z","latitude":-21.5167,"longitude":168.5426,"depth":14.19,"mag":6.6,"magType":"mww","gap":21,"dmin":0.478,"rms":0.86,"net":"us","id":"us2000brgk","updated":"2017-11-19T17:10:58.449Z","place":"68km E of Tadine, New Caledonia","type":"earthquake","horizontalError":6.2,"depthError":2.8,"magError":0.037,"magNst":72,"status":"reviewed","locationSource":"us","magSource":"us"}
您现在可以单击每个属性左侧的小箭头来展开它们并检查内容
如果有任何震级大于 7 的地震,您还会看到如下调试消息:
msg.payload : string(6)
"PANIC!"
您可以将开关值更改7为较小的值来测试您的程序。记得在更改后点击部署。***
概括
此流程每 5 分钟自动触发一次,并从 url 检索数据。它解析数据并显示在调试侧边栏中。它还检查数据中的幅度值,并为幅度大于或等于 7 的任何消息分支流。此类消息的有效负载被修改并显示在“调试”侧栏中。
资源
本教程中创建的流程由以下 json 表示。要将其导入编辑器,请将其复制到剪贴板,然后将其粘贴到“导入”对话框中。
[{"id":"e36406f2.8ef798","type":"inject","z":"f03b57d5.e525f8","name":"","topic":"","payload":"","payloadType":"str","repeat":"300","crontab":"","once":false,"x":130,"y":900,"wires":[["c3c50023.3bbed"]]},{"id":"c3c50023.3bbed","type":"http request","z":"f03b57d5.e525f8","name":"Recent Quakes","method":"GET","url":"https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/significant_month.csv","tls":"","x":300,"y":900,"wires":[["8afc6cac.e0812"]]},{"id":"8afc6cac.e0812","type":"csv","z":"f03b57d5.e525f8","name":"","sep":",","hdrin":true,"hdrout":"","multi":"one","ret":"\\n","temp":"","x":470,"y":900,"wires":[["44779781.4190f8","6f0eb546.9e208c"]]},{"id":"44779781.4190f8","type":"debug","z":"f03b57d5.e525f8","name":"","active":true,"complete":false,"x":630,"y":900,"wires":[]},{"id":"6f0eb546.9e208c","type":"switch","z":"f03b57d5.e525f8","name":"","property":"payload.mag","propertyType":"msg","rules":[{"t":"gte","v":"7","vt":"num"}],"checkall":"true","outputs":1,"x":510,"y":960,"wires":[["d78d4aa8.8c8208"]]},{"id":"d78d4aa8.8c8208","type":"change","z":"f03b57d5.e525f8","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"PANIC!","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":650,"y":1020,"wires":[["72fddece.fac0d"]]},{"id":"72fddece.fac0d","type":"debug","z":"f03b57d5.e525f8","name":"","active":true,"complete":false,"x":750,"y":960,"wires":[]}]