UNPKG

n8n-nodes-evolution-api

Version:
178 lines 7.39 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.setFlowiseBot = setFlowiseBot; const n8n_workflow_1 = require("n8n-workflow"); const evolutionRequest_1 = require("../evolutionRequest"); async function setFlowiseBot(ef) { try { const instanceName = ef.getNodeParameter('instanceName', 0); const resourceForFlowiseBot = ef.getNodeParameter('resourceForFlowiseBot', 0); let options; if (resourceForFlowiseBot === 'createFlowise') { const apiUrl = ef.getNodeParameter('apiUrl', 0); const apiKey = ef.getNodeParameter('apiKeyBot', 0); const triggerType = ef.getNodeParameter('triggerType', 0); const triggerOperator = ef.getNodeParameter('triggerOperator', 0); const triggerValue = ef.getNodeParameter('triggerValue', 0); const expire = ef.getNodeParameter('expire', 0); const keywordFinish = ef.getNodeParameter('keywordFinish', 0); const delayMessage = ef.getNodeParameter('delayMessage', 0); const unknownMessage = ef.getNodeParameter('unknownMessage', 0); const listeningFromMe = ef.getNodeParameter('listeningFromMe', 0); const stopBotFromMe = ef.getNodeParameter('stopBotFromMe', 0); const keepOpen = ef.getNodeParameter('keepOpen', 0); const debounceTime = ef.getNodeParameter('debounceTime', 0); const ignoreJids = ef.getNodeParameter('ignoreJids', 0); const body = { enabled: true, apiUrl, apiKey, triggerType, triggerOperator, triggerValue, expire, keywordFinish, delayMessage, unknownMessage, listeningFromMe, stopBotFromMe, keepOpen, debounceTime, ignoreJids: ignoreJids || [] }; options = { method: 'POST', uri: `/flowise/create/${instanceName}`, body, json: true, }; } else if (resourceForFlowiseBot === 'findFlowise') { const flowiseBotId = ef.getNodeParameter('flowiseBotId', 0); options = { method: 'GET', uri: flowiseBotId ? `/flowise/fetch/${flowiseBotId}/${instanceName}` : `/flowise/find/${instanceName}`, json: true, }; } else if (resourceForFlowiseBot === 'updateFlowise') { const flowiseBotId = ef.getNodeParameter('flowiseBotId', 0); const apiUrl = ef.getNodeParameter('apiUrl', 0); const apiKey = ef.getNodeParameter('apiKeyBot', 0); const triggerType = ef.getNodeParameter('triggerType', 0); const triggerOperator = ef.getNodeParameter('triggerOperator', 0); const triggerValue = ef.getNodeParameter('triggerValue', 0); const expire = ef.getNodeParameter('expire', 0); const keywordFinish = ef.getNodeParameter('keywordFinish', 0); const delayMessage = ef.getNodeParameter('delayMessage', 0); const unknownMessage = ef.getNodeParameter('unknownMessage', 0); const listeningFromMe = ef.getNodeParameter('listeningFromMe', 0); const stopBotFromMe = ef.getNodeParameter('stopBotFromMe', 0); const keepOpen = ef.getNodeParameter('keepOpen', 0); const debounceTime = ef.getNodeParameter('debounceTime', 0); const ignoreJids = ef.getNodeParameter('ignoreJids', 0); const body = { enabled: true, apiUrl, apiKey, triggerType, triggerOperator, triggerValue, expire, keywordFinish, delayMessage, unknownMessage, listeningFromMe, stopBotFromMe, keepOpen, debounceTime, ignoreJids: ignoreJids || [] }; options = { method: 'PUT', uri: `/flowise/update/${flowiseBotId}/${instanceName}`, body, json: true, }; } else if (resourceForFlowiseBot === 'deleteFlowise') { const flowiseBotId = ef.getNodeParameter('flowiseBotId', 0); options = { method: 'DELETE', uri: `/flowise/delete/${flowiseBotId}/${instanceName}`, json: true, }; } else if (resourceForFlowiseBot === 'fetchSessionsFlowise') { const flowiseBotId = ef.getNodeParameter('flowiseBotId', 0); options = { method: 'GET', uri: `/flowise/fetchSessions/${flowiseBotId}/${instanceName}`, json: true, }; } else if (resourceForFlowiseBot === 'changeStatusFlowise') { const remoteJid = ef.getNodeParameter('remoteJid', 0); const status = ef.getNodeParameter('status', 0); options = { method: 'POST', uri: `/flowise/changeStatus/${instanceName}`, body: { remoteJid, status, }, json: true, }; } else { const errorData = { success: false, error: { message: 'Operação do Flowise não reconhecida', details: 'A operação solicitada não é válida para o recurso do Flowise', code: 'INVALID_OPERATION', timestamp: new Date().toISOString(), }, }; throw new n8n_workflow_1.NodeOperationError(ef.getNode(), errorData.error.message, { message: errorData.error.message, description: errorData.error.details, }); } const response = await (0, evolutionRequest_1.evolutionRequest)(ef, options); return { json: { success: true, data: response, }, }; } catch (error) { const errorData = { success: false, error: { message: error.message.includes('Could not get parameter') ? 'Parâmetros inválidos ou ausentes' : 'Erro ao configurar Flowise', details: error.message.includes('Could not get parameter') ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, }; if (!ef.continueOnFail()) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), error.message, { message: errorData.error.message, description: errorData.error.details, }); } return { json: errorData, error: errorData, }; } } //# sourceMappingURL=setFlowiseBot.js.map