Node-Red
Node-RED是一个基于流程的编程工具,可以让您轻松地将物联网设备、API和在线服务连接在一起。它使用一种基于浏览器的编辑器让用户可以将不同的节点拖放到画布上,并连接它们来创建流程。Node-RED还提供了大量的节点,使用户可以轻松地与各种设备和服务进行交互。
详情请查阅其官网 https://Node-Red.org/。
整合Node-Red项目
想要在Steedos项目中使用Node-Red来实现具体业务,首先需要把它集成到Steedos项目中。
创建应用
具体创建应用详情可以参考Steedostemplate项目:https://gitlab.steedos.cn/steedos/steedos-project-template.git
运行
我们可以在刚创建的node-red-app
文件夹内看到package.json
文件,这是一个独立的NPM项目,我们接下来cd
到该文件夹,执行yarn
安装该项目依赖包,最后执行yarn start
即可运行该Node-Red
项目。
运行成功后,可以通过1880端口地址来访问服务。
静态资源存储
如需存放静态资源,可以在node-red-app
文件夹下创建一个静态资源目录,文件名自拟,这里以public为例。同时在node-red-app
文件夹下的 setting.js 中添加以下代码:
httpStatic: path.join(__dirname, 'public'),
httpAdminRoot: "/admin"
其案例图如下:
其访问资源url只需以/访问。其node-red控制页面url改为http://127.0.0.1:1880/admin
初始化配置
Node-Red服务跑起来后,我们可以在浏览器中输入控制台中提示的地址访问Node-Red,第一次访问服务的话,会看到初始化配置向导界面,比如设置访问Node-Red服务的账户和密码等,我们只要按向导提示来配置即可。
初始化配置设置完成后,会自动跳转到名为“Node-RED on Steedos”的首页,在该界面可以看到如何定制Node-Red的简易教程。
流程设计器
在跑起的Node-Red服务首页,我们看到右侧有一个名为“Go to your Node-RED flow editor”的按钮,点击它即可打开一个名为“Flow Builder”的编辑器,可以访问Node-Red的官网教程 https://Node-Red.org/docs/user-guide/ 来学习如何在该编辑器中配置、调式和部署流程。
Steedos节点
我们可以使用上面提到的流程设计器来配置整合现有业务系统,如果需要让Steedos连接SAP、用友、金蝶等主流业务系统,以整合集成相关业务到Steedos,请使用我们特意开发的各种Node节点,可以很方便的实现各种集成业务需求。
steedos-event节点
Steedos Event 是指在Steedos平台中,使用 Steedos Event 服务来进行事件订阅和发布的功能。通过 Steedos Event,我们可以订阅特定的事件,例如记录创建、记 录更新或记录删除等事件,以便在事件发生时执行自定义操作。在 Steedos Event 中,我们需要指定以下参数:
Broker
是在Node-RED
中用来指定使用的消息代理的参数。在Node-RED
中,我们可以通过配置Broker
来连接Steedos
项目。通常情况下,我们使用NATS
作为消息代理。为了配置Broker
,我们需要在Node-RED-app
文件夹下的.env
文件中进行相应的配置,并在Node-RED
中进行引用。更多关于NATS
作为消息代理的详细内容,可以参考以下链接:https://moleculer.services/zh/docs/0.14/networking.html#NATS-Transporter。- Service:指定使用的服务名称。
- Name:指定节点的名称,例如订阅事件的节点名称。
- Topic:指定订阅的主题或事件名称,例如创建记录事件或更新记录事件。
- Group:指定订阅事件的组,可以是一个或多个组,以逗号分隔。
通过配置这些参数,我们可以在Steedos平台中使用 Steedos Event 来实现事件订阅和发布的功能,以便在事件发生时执行自定义操作。例如,我们可以订阅创建记录事件,并在事件发生时向 Slack 或微信发送通知,或者在事件发生时执行自定义的 JavaScript 代码来实现更复杂的操作。