UNPKG

n8n-nodes-evolution-api

Version:
98 lines 4.14 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.sendImage = sendImage; const n8n_workflow_1 = require("n8n-workflow"); const evolutionRequest_1 = require("../evolutionRequest"); async function sendImage(ef) { var _a, _b, _c; const items = ef.getInputData(); const returnData = []; for (let i = 0; i < items.length; i++) { try { const instanceName = ef.getNodeParameter('instanceName', i); const remoteJid = ef.getNodeParameter('remoteJid', i); const media = ef.getNodeParameter('media', i); const mimetype = ef.getNodeParameter('mimetype', i, 'image/jpeg') || 'image/jpeg'; const caption = ef.getNodeParameter('caption', i, ''); const fileName = ef.getNodeParameter('fileName', i, 'image.jpg') || 'image.jpg'; const options = ef.getNodeParameter('options_message', i, {}); const body = { number: remoteJid, mediatype: 'image', media: media, mimetype: mimetype, caption: caption || '', fileName: fileName, }; if (options.delay) { body.delay = options.delay; } if ((_b = (_a = options.quoted) === null || _a === void 0 ? void 0 : _a.messageQuoted) === null || _b === void 0 ? void 0 : _b.messageId) { body.quoted = { key: { id: options.quoted.messageQuoted.messageId, }, }; } if ((_c = options.mentions) === null || _c === void 0 ? void 0 : _c.mentionsSettings) { const { mentionsEveryOne, mentioned } = options.mentions.mentionsSettings; if (mentionsEveryOne) { body.mentionsEveryOne = true; } else if (mentioned) { const mentionedNumbers = mentioned.split(',') .map(num => num.trim()) .map(num => num.includes('@s.whatsapp.net') ? num : `${num}@s.whatsapp.net`); body.mentioned = mentionedNumbers; } } const requestOptions = { method: 'POST', headers: { 'Content-Type': 'application/json', }, uri: `/message/sendMedia/${instanceName}`, body, json: true, }; const response = await (0, evolutionRequest_1.evolutionRequest)(ef, requestOptions); returnData.push({ json: { success: true, data: response, }, }); } catch (error) { const errorMessage = error.message.includes('Could not get parameter') ? 'Parâmetros inválidos ou ausentes' : 'Erro ao enviar imagem'; const errorDetails = error.message.includes('Could not get parameter') ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' : error.message; if (!ef.continueOnFail()) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), errorMessage, { message: errorMessage, description: errorDetails, }); } returnData.push({ json: { success: false, error: { message: errorMessage, details: errorDetails, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, }, error: new n8n_workflow_1.NodeOperationError(ef.getNode(), errorMessage, { message: errorMessage, description: errorDetails, }), }); } } return returnData; } //# sourceMappingURL=sendImage.js.map