在 Tulip API 中使用 Node-RED
如果您在自己的设备上使用 Node-RED 并希望将数据发送至 Tulip API,Tulip 提供了用于 API 端点的 Node-RED 节点。
这些节点已预装在支持 Node-RED 的 Tulip 设备上,但如果您正在运行自己的 Node-RED 实例,仍可通过从 Node-RED 库安装@tulip/node-red-tulip-api包来安装这些节点。
在本文中,您将学习如何……
- 将 Tulip API 节点添加到您的 Node-RED 安装中
- 使用 Tulip 机器属性 API 将数据发送至 Tulip 机器
- 使用 Tulip Tables API 节点读取、写入和配置 Tulip Tables
先决条件:
- 您已在本地安装并运行了Node-RED
在 Tulip 的 Edge MC 上运行 Node-RED?请参阅此入门指南
安装
1. 将@tulip/node-red-tulip-api添加到您的 Node-RED 调色板中
打开 Node-RED 编辑器,依次点击“菜单”→“管理调色板”

点击**“安装**”选项卡,然后搜索@tulip/node-red-tulip-api

注意:您也可以通过命令行安装该包。请进入您的 Node-RED 用户目录(例如:cd ~/.node-red/),然后运行npm install @tulip/node-red-tulip-api
2. 检查安装是否成功
如果安装成功,在调色板(左侧边栏)**的“Tulip”**类别下将显示tulip-machine-attribute和tulip-tables节点。

使用 Tulip 机器属性节点
先决条件:您已阅读《如何使用机器属性 API》,并已配置了一个具有attributes:report权限的 API 服务账户,且有一个您希望向其发送数据的特定机器属性。
1. 将“Tulip 机器属性”节点拖放至流程中

注意:在右侧边栏中,选择 “帮助 ”选项卡可查看有关如何使用该节点的文档。
2. 配置该节点以匹配目标机器属性。
我们将以下机器属性作为示例。请注意,机器数据源为Tulip API。

Tulip 机器“Example Tulip API Machine”的整数机器属性。
双击该节点以打开其编辑器,然后配置该节点以匹配此机器属性。例如,您可以按以下方式配置该节点:

Tulip 机器属性节点的配置。
将“Tulip API 身份验证”节点配置如下(请填写您的身份验证凭据):

针对服务账户的 Tulip API 身份验证配置。
3. 测试数据发送。
创建流程的其余部分,将数据发送至“机器属性”端点。
一个简单的测试流程可以是将值0发送至一个整数端点。将机器属性节点的输入连接到一个配置为msg.payload=0 的注入节点(如下图所示)。将输出连接到一个会打印完整msg 的调试节点。

点击**“部署”以部署该流程。当您点击“注入”节点时,应看到一条状态码为204** 的调试消息。

将整数值 0 发送至整型机器属性的测试流程。
该数据还应显示在您的 Tulip 实例中的机器属性下。

使用 Tulip 表 API 节点
先决条件:您已阅读《如何使用表 API》,并已配置一个具有tables:read和tables:write权限的 API 服务账户,且已确定要向其发送数据的特定表。
1. 将一个 Tulip Tables 节点拖放至流程中。

注意:在右侧边栏中,选择 “帮助 ”选项卡以查看有关如何使用该节点的文档。
2. 为特定的 Tulip Tables API 查询配置该节点。
首先双击该节点以打开其编辑器。将“Tulip API 身份验证”配置节点设置为与具有tables:read和/或tables:write权限的 API 服务账户信息相匹配(具体取决于表查询是读取操作还是写入操作):

Tables API 服务账户配置
将**“查询类型”设置为您要执行的查询。随后,其余的“查询选项”**将根据该类型显示。
在此示例中,我们将选择“列出记录”来列出表 ID 为9YHHckKcFTXHQpXEu且 Status 字段值为“REVIEW”的表中的记录。

表 API 节点配置

展开“表 API”节点的“过滤器”字段中的 JSON 内容。
3. 测试数据发送。
创建流程的其余部分,将数据发送至 Tables API 端点。
一个示例测试流程可以将一个空的**“注入**”节点连接到“表 API”节点的输入端,以触发发送 API 请求。您还可以添加一个调试节点,用于打印msg.payload以查看已解析的响应。
下文展示了将配置好的 Tables API 请求发送至your-subdomain.tulip.co/tables/9YHHckKcFTXHQpXEu 上的以下表时获得的结果。请注意,响应返回了两个表条目,其 Status 字段均设置为 REVIEW。

包含多条记录的待查询表。其中包含一个可供筛选的 Status 字段。

向 Tulip 表发送“列出记录”Tables API 请求的流程,以及响应有效载荷。
进一步阅读
@tulip/node-red-tulip-api包的README- 如何使用表 API
- 如何使用机器属性 API
