Compare commits
2 commits
b01d56f421
...
1afbbfeee8
Author | SHA1 | Date | |
---|---|---|---|
1afbbfeee8 | |||
2848ef8f87 |
8 changed files with 2850 additions and 309 deletions
|
@ -3,7 +3,7 @@
|
|||
"name": "node-red",
|
||||
"version": "4.0.9-git",
|
||||
"local": false,
|
||||
"user": false,
|
||||
"user": true,
|
||||
"nodes": {
|
||||
"junction": {
|
||||
"name": "junction",
|
||||
|
@ -427,306 +427,6 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"node-red-contrib-aedes": {
|
||||
"name": "node-red-contrib-aedes",
|
||||
"version": "0.6.0",
|
||||
"local": false,
|
||||
"user": false,
|
||||
"nodes": {
|
||||
"aedes-mqtt-broker": {
|
||||
"name": "aedes-mqtt-broker",
|
||||
"types": [
|
||||
"aedes broker"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-contrib-aedes",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-contrib-aedes/aedes.js"
|
||||
}
|
||||
}
|
||||
},
|
||||
"node-red-contrib-mqtt-broker": {
|
||||
"name": "node-red-contrib-mqtt-broker",
|
||||
"version": "0.2.9",
|
||||
"local": false,
|
||||
"user": false,
|
||||
"nodes": {
|
||||
"mosca-mqtt-broker": {
|
||||
"name": "mosca-mqtt-broker",
|
||||
"types": [
|
||||
"mosca in"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-contrib-mqtt-broker",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-contrib-mqtt-broker/mosca.js"
|
||||
}
|
||||
}
|
||||
},
|
||||
"node-red-dashboard": {
|
||||
"name": "node-red-dashboard",
|
||||
"version": "3.6.5",
|
||||
"local": false,
|
||||
"user": false,
|
||||
"nodes": {
|
||||
"ui_base": {
|
||||
"name": "ui_base",
|
||||
"types": [
|
||||
"ui_base"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_base.js"
|
||||
},
|
||||
"ui_button": {
|
||||
"name": "ui_button",
|
||||
"types": [
|
||||
"ui_button"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_button.js"
|
||||
},
|
||||
"ui_dropdown": {
|
||||
"name": "ui_dropdown",
|
||||
"types": [
|
||||
"ui_dropdown"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_dropdown.js"
|
||||
},
|
||||
"ui_switch": {
|
||||
"name": "ui_switch",
|
||||
"types": [
|
||||
"ui_switch"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_switch.js"
|
||||
},
|
||||
"ui_slider": {
|
||||
"name": "ui_slider",
|
||||
"types": [
|
||||
"ui_slider"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_slider.js"
|
||||
},
|
||||
"ui_numeric": {
|
||||
"name": "ui_numeric",
|
||||
"types": [
|
||||
"ui_numeric"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_numeric.js"
|
||||
},
|
||||
"ui_text_input": {
|
||||
"name": "ui_text_input",
|
||||
"types": [
|
||||
"ui_text_input"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_text_input.js"
|
||||
},
|
||||
"ui_date_picker": {
|
||||
"name": "ui_date_picker",
|
||||
"types": [
|
||||
"ui_date_picker"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_date_picker.js"
|
||||
},
|
||||
"ui_colour_picker": {
|
||||
"name": "ui_colour_picker",
|
||||
"types": [
|
||||
"ui_colour_picker"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_colour_picker.js"
|
||||
},
|
||||
"ui_form": {
|
||||
"name": "ui_form",
|
||||
"types": [
|
||||
"ui_form"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_form.js"
|
||||
},
|
||||
"ui_text": {
|
||||
"name": "ui_text",
|
||||
"types": [
|
||||
"ui_text"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_text.js"
|
||||
},
|
||||
"ui_gauge": {
|
||||
"name": "ui_gauge",
|
||||
"types": [
|
||||
"ui_gauge"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_gauge.js"
|
||||
},
|
||||
"ui_chart": {
|
||||
"name": "ui_chart",
|
||||
"types": [
|
||||
"ui_chart"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_chart.js"
|
||||
},
|
||||
"ui_audio": {
|
||||
"name": "ui_audio",
|
||||
"types": [
|
||||
"ui_audio"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_audio.js"
|
||||
},
|
||||
"ui_toast": {
|
||||
"name": "ui_toast",
|
||||
"types": [
|
||||
"ui_toast"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_toast.js"
|
||||
},
|
||||
"ui_ui_control": {
|
||||
"name": "ui_ui_control",
|
||||
"types": [
|
||||
"ui_ui_control"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_ui_control.js"
|
||||
},
|
||||
"ui_template": {
|
||||
"name": "ui_template",
|
||||
"types": [
|
||||
"ui_template"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_template.js"
|
||||
},
|
||||
"ui_link": {
|
||||
"name": "ui_link",
|
||||
"types": [
|
||||
"ui_link"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_link.js"
|
||||
},
|
||||
"ui_tab": {
|
||||
"name": "ui_tab",
|
||||
"types": [
|
||||
"ui_tab"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_tab.js"
|
||||
},
|
||||
"ui_group": {
|
||||
"name": "ui_group",
|
||||
"types": [
|
||||
"ui_group"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_group.js"
|
||||
},
|
||||
"ui_spacer": {
|
||||
"name": "ui_spacer",
|
||||
"types": [
|
||||
"ui_spacer"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-dashboard",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-dashboard/nodes/ui_spacer.js"
|
||||
}
|
||||
}
|
||||
},
|
||||
"node-red-node-serialport": {
|
||||
"name": "node-red-node-serialport",
|
||||
"version": "2.0.3",
|
||||
"local": false,
|
||||
"user": false,
|
||||
"nodes": {
|
||||
"serialport": {
|
||||
"name": "serialport",
|
||||
"types": [
|
||||
"serial in",
|
||||
"serial out",
|
||||
"serial request",
|
||||
"serial-port",
|
||||
"serial control"
|
||||
],
|
||||
"enabled": true,
|
||||
"local": false,
|
||||
"user": false,
|
||||
"module": "node-red-node-serialport",
|
||||
"file": "/home/mrosero/devs/projects/webservices/node_modules/node-red-node-serialport/25-serial.js"
|
||||
}
|
||||
}
|
||||
},
|
||||
"@nickcuper/node-red-contrib-html-pro": {
|
||||
"name": "@nickcuper/node-red-contrib-html-pro",
|
||||
"version": "1.0.1",
|
||||
|
|
8
.node-red/.config.projects.json
Normal file
8
.node-red/.config.projects.json
Normal file
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
"projects": {
|
||||
"webservices": {
|
||||
"credentialSecret": false
|
||||
}
|
||||
},
|
||||
"activeProject": "webservices"
|
||||
}
|
|
@ -15,6 +15,19 @@
|
|||
"tours": {
|
||||
"welcome": "4.0.9-git"
|
||||
}
|
||||
},
|
||||
"git": {
|
||||
"globalUser": {
|
||||
"name": "Mauro Rosero P.",
|
||||
"email": "mauro@rosero.one"
|
||||
},
|
||||
"user": {
|
||||
"name": "Mauro Rosero P.",
|
||||
"email": "mauro@rosero.one"
|
||||
},
|
||||
"workflow": {
|
||||
"mode": "manual"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -7,6 +7,14 @@
|
|||
"info": "",
|
||||
"env": []
|
||||
},
|
||||
{
|
||||
"id": "ae43dc9d802ec4d9",
|
||||
"type": "tab",
|
||||
"label": "Flow 1",
|
||||
"disabled": false,
|
||||
"info": "",
|
||||
"env": []
|
||||
},
|
||||
{
|
||||
"id": "772316e0710af934",
|
||||
"type": "inject",
|
||||
|
|
2804
.node-red/package-lock.json
generated
2804
.node-red/package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
@ -5,6 +5,7 @@
|
|||
"private": true,
|
||||
"dependencies": {
|
||||
"@nickcuper/node-red-contrib-html-pro": "~1.0.1",
|
||||
"node-red": "~4.0.9",
|
||||
"node-red-contrib-google-sheets-advance": "~0.0.7",
|
||||
"node-red-contrib-json2csv": "~0.0.3"
|
||||
}
|
||||
|
|
|
@ -420,7 +420,7 @@ module.exports = {
|
|||
|
||||
projects: {
|
||||
/** To enable the Projects feature, set this value to true */
|
||||
enabled: false,
|
||||
enabled: true,
|
||||
workflow: {
|
||||
/** Set the default projects workflow mode.
|
||||
* - manual - you must manually commit changes
|
||||
|
|
21
README.md
21
README.md
|
@ -28,9 +28,8 @@ webservices/
|
|||
├── docs/ # Documentación del proyecto
|
||||
├── .node-red/ # Directorio de configuración de Node-RED
|
||||
│ ├── flows.json # Definición principal de flujos
|
||||
│ └── flows_cred.json # Credenciales de flujos (no incluido en el repositorio)
|
||||
│ └── settings.js # Configuración de Node-RED
|
||||
├── node-red # Script para iniciar/detener el servicio
|
||||
├── nodes/ # Nodos personalizados para Node-RED
|
||||
├── public/ # Archivos estáticos para la interfaz de usuario
|
||||
└── tests/ # Pruebas unitarias y de integración
|
||||
```
|
||||
|
@ -40,18 +39,26 @@ webservices/
|
|||
### Instalación Inicial
|
||||
|
||||
1. Instale las dependencias: `npm install`
|
||||
2. Configure las variables de entorno en `.env`
|
||||
3. Cree el directorio de flujos: `mkdir -p flows`
|
||||
2. Configure las variables de entorno en `.env` (si aplica)
|
||||
|
||||
### Iniciar el Servicio
|
||||
|
||||
#### Modo Desarrollo
|
||||
```bash
|
||||
# Iniciar Node-RED en modo desarrollo (interactivo)
|
||||
node-red --userDir ./flows
|
||||
node-red
|
||||
|
||||
# Para especificar un puerto diferente
|
||||
node-red --userDir ./flows -p 1881
|
||||
node-red -p 1881
|
||||
```
|
||||
|
||||
#### Modo con Proyectos (Recomendado)
|
||||
```bash
|
||||
# Iniciar Node-RED con soporte para proyectos
|
||||
node-red
|
||||
|
||||
# Acceder a la interfaz y seleccionar el proyecto "webservices"
|
||||
# en el menú de gestión de proyectos
|
||||
```
|
||||
|
||||
#### Modo Servicio (Producción)
|
||||
|
@ -60,7 +67,7 @@ node-red --userDir ./flows -p 1881
|
|||
npm install -g pm2
|
||||
|
||||
# Iniciar Node-RED como servicio
|
||||
pm2 start node-red -- --userDir ./flows -p 1880
|
||||
pm2 start node-red -- -p 1880
|
||||
|
||||
# Ver estado del servicio
|
||||
pm2 status
|
||||
|
|
Loading…
Reference in a new issue