UNPKG

@poli-digital/n8n-nodes-poli

Version:
86 lines 3.45 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SendMessageByPhoneNumber = void 0; const n8n_workflow_1 = require("n8n-workflow"); const transport_1 = require("./transport"); const parameterUtils_1 = require("./utils/parameterUtils"); class SendMessageByPhoneNumber { constructor() { this.description = { displayName: 'Send Message By Phone Number', name: 'sendMessageByPhoneNumber', icon: 'file:poli.svg', group: ['output'], version: 1, description: 'Send a message to a phone number', defaults: { name: 'Send Message By Phone Number', }, inputs: ['main'], outputs: ['main'], credentials: [ { name: 'poliApi', required: true, }, ], properties: [ { displayName: 'Account UUID', name: 'accountIdMessage', type: 'string', default: '', required: true, }, { displayName: 'Phone Number', name: 'phoneNumber', type: 'string', default: '', required: true, }, { displayName: 'Account Channel UUID', name: 'accountChannelUuid', type: 'string', default: '', required: true, }, { displayName: 'Text', name: 'text', type: 'string', default: 'Teste de mensagem', }, ], }; } async execute() { const items = this.getInputData(); const returnData = []; for (let i = 0; i < items.length; i++) { try { const accountId = (0, parameterUtils_1.getParameterSafe)(this, 'accountIdMessage', i, '', true); const phoneNumber = (0, parameterUtils_1.getParameterSafe)(this, 'phoneNumber', i, '', true); const accountChannelUuid = (0, parameterUtils_1.getParameterSafe)(this, 'accountChannelUuid', i, '', true); const text = (0, parameterUtils_1.getParameterSafe)(this, 'text', i, 'Teste de mensagem'); const body = { provider: 'WHATSAPP', account_channel_uuid: accountChannelUuid, type: 'TEXT', version: 'v3', components: { body: { text } }, }; const endpoint = `/accounts/${accountId}/contacts/${encodeURIComponent((phoneNumber === null || phoneNumber === void 0 ? void 0 : phoneNumber.toString()) || '')}/messages?include=contact`; const responseData = await transport_1.apiRequest.call(this, 'POST', endpoint, body); returnData.push({ json: responseData }); } catch (error) { throw new n8n_workflow_1.NodeApiError(this.getNode(), error); } } return [returnData]; } } exports.SendMessageByPhoneNumber = SendMessageByPhoneNumber; //# sourceMappingURL=SendMessageByPhoneNumber.operation.js.map