axetflow-shori-nodes
axetflow-shori-nodes
Nodos Axetflow/Node-RED para integrar flujos visuales con la plataforma Syntpony Process Management (Shori) de NTT DATA.
Instalación
Desde la UI de Axetflow/Node-RED
- Menú → Manage palette → Install
- Buscar:
axetflow-shori-nodes - Instalar → los nodos aparecen en la paleta bajo "Shori SDK"
Por línea de comandos
cd ~/.node-red
npm install axetflow-shori-nodes
# Reiniciar Node-RED / Axetflow
Nodos disponibles
| Nodo | Categoría | Descripción |
|---|---|---|
shori-config |
Shori SDK | Configura credenciales e inyecta msg.shoriClient en el flujo |
shori-add-comment |
Shori SDK | Agrega un comentario a un caso en Shori |
Uso
Flujo básico
[inject] ──→ [shori config] ──→ [shori add comment] ──→ [debug]
1. Nodo shori-config
Configura las credenciales de Shori una sola vez al inicio del flujo. Inyecta el cliente Shori en msg.shoriClient para que los nodos siguientes puedan usarlo automáticamente.
Campos:
| Campo | Tipo | Descripción |
|---|---|---|
| Nombre | string | Nombre descriptivo del nodo (opcional) |
| Ambiente | DEV / UAT / PROD | Entorno de Shori al que conectarse |
| Portal ID | string | UUID del portal Shori |
| Tenant ID | string | UUID del tenant Shori |
| API Key | password | Clave de autenticación (se almacena cifrada) |
2. Nodo shori-add-comment
Agrega un comentario a un caso en Shori usando el cliente inyectado por shori-config.
Entradas:
| Campo | Tipo | Descripción |
|---|---|---|
msg.shoriClient |
ShoriClient | Cliente inyectado por shori-config |
msg.payload.casoId |
string | UUID del caso (si el campo usa msg.) |
msg.payload.comment |
string | Texto del comentario (si el campo usa msg.) |
Campos configurables:
| Campo | Tipo | Descripción |
|---|---|---|
| Case ID | string | UUID del caso. Requerido. Puede ser valor fijo o msg.payload.casoId |
| Comentario | string | Texto del comentario. Requerido. |
| Origen | string | Origen del comentario. Por defecto: CASO |
| Task ID | string | UUID de la tarea asociada. Opcional. |
Salidas:
- Salida 1 (éxito):
msg.payload = { id: "uuid-del-comentario" } - Salida 2 (error):
msg.error = { message, name, stack }
Ejemplo
Flujo de Node-RED
[
{
"id": "inject1",
"type": "inject",
"name": "Trigger",
"payload": "{\"casoId\":\"mi-caso-uuid\",\"comment\":\"Comentario de prueba\"}",
"payloadType": "json"
},
{
"id": "config1",
"type": "shori-config",
"name": "Shori DEV",
"environment": "DEV",
"portalId": "tu-portal-id",
"tenantId": "tu-tenant-id"
},
{
"id": "comment1",
"type": "shori-add-comment",
"name": "Agregar comentario",
"casoId": "msg.payload.casoId",
"comment": "msg.payload.comment"
}
]
Código equivalente con el SDK TypeScript
import { ShoriClientBuilder, ShoriEnvironment } from "@nttdata/shori-api-client";
const client = new ShoriClientBuilder()
.environment(ShoriEnvironment.DEV)
.portalId("tu-portal-id")
.tenantId("tu-tenant-id")
.apiKey("tu-api-key")
.build();
const result = await client.caso().comment().add({
casoId: "caso-uuid",
comment: "Comentario de prueba",
});
Prerrequisitos
- Node-RED 3.x o Axetflow (basado en Node-RED)
- Node.js 18+
- Credenciales de acceso a la plataforma Shori (portalId, tenantId, apiKey)
SDK TypeScript
Este paquete usa @nttdata/shori-api-client como dependencia. El SDK TypeScript está disponible en:
- GitLab Package Registry:
https://gitlab.com/api/v4/projects/84253138/packages/npm/ - npm scope:
@nttdata/shori-api-client
Para usarlo directamente en tus proyectos TypeScript/JavaScript:
# .npmrc
@nttdata:registry=https://gitlab.com/api/v4/projects/84253138/packages/npm/
npm install @nttdata/shori-api-client
Plataforma Shori
Syntpony Process Management (Shori) es la plataforma BPM de NTT DATA para la gestión de casos, flujos de trabajo y procesos empresariales.
Licencia
MIT — NTT DATA · Equipo AITO PERÚ