@growsalesai/n8n-nodes-datacrazy 3.8.2 → 3.8.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatacrazyTrigger.node.d.ts","sourceRoot":"","sources":["../../../../../nodes/Datacrazy/resources/triggers/DatacrazyTrigger.node.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EAErB,MAAM,cAAc,CAAC;AAEtB,qBAAa,gBAAiB,YAAW,SAAS;IAChD,WAAW,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"DatacrazyTrigger.node.d.ts","sourceRoot":"","sources":["../../../../../nodes/Datacrazy/resources/triggers/DatacrazyTrigger.node.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EAErB,MAAM,cAAc,CAAC;AAEtB,qBAAa,gBAAiB,YAAW,SAAS;IAChD,WAAW,EAAE,oBAAoB,CA6E/B;IAEI,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAyDtE"}
|
|
@@ -21,7 +21,7 @@ class DatacrazyTrigger {
|
|
|
21
21
|
name: 'default',
|
|
22
22
|
httpMethod: 'POST',
|
|
23
23
|
responseMode: 'onReceived',
|
|
24
|
-
path: '={{$parameter["path"]
|
|
24
|
+
path: '={{$parameter["customPath"] ? $parameter["path"] : "datacrazy-webhook"}}',
|
|
25
25
|
},
|
|
26
26
|
],
|
|
27
27
|
properties: [
|
|
@@ -31,22 +31,54 @@ class DatacrazyTrigger {
|
|
|
31
31
|
type: 'notice',
|
|
32
32
|
default: 'Copie a URL deste webhook (exibida quando o fluxo estiver ativo ou na aba Executar) e configure-a na ação de "Requisição HTTP" dentro de suas automações do Datacrazy.',
|
|
33
33
|
},
|
|
34
|
+
{
|
|
35
|
+
displayName: 'Personalizar Caminho do Webhook',
|
|
36
|
+
name: 'customPath',
|
|
37
|
+
type: 'boolean',
|
|
38
|
+
default: false,
|
|
39
|
+
description: 'Se deseja definir um caminho final personalizado para a URL do webhook',
|
|
40
|
+
},
|
|
34
41
|
{
|
|
35
42
|
displayName: 'Caminho do Webhook',
|
|
36
43
|
name: 'path',
|
|
37
44
|
type: 'string',
|
|
38
45
|
default: 'datacrazy-webhook',
|
|
39
|
-
required:
|
|
40
|
-
|
|
41
|
-
|
|
46
|
+
required: true,
|
|
47
|
+
displayOptions: {
|
|
48
|
+
show: {
|
|
49
|
+
customPath: [true],
|
|
50
|
+
},
|
|
51
|
+
},
|
|
52
|
+
placeholder: 'Ex: lead-criado',
|
|
53
|
+
description: 'O caminho final personalizado para a URL do webhook no n8n',
|
|
42
54
|
},
|
|
43
55
|
{
|
|
44
|
-
displayName: 'Cabeçalho de Segurança
|
|
56
|
+
displayName: 'Usar Cabeçalho de Segurança',
|
|
57
|
+
name: 'useSecurity',
|
|
58
|
+
type: 'boolean',
|
|
59
|
+
default: false,
|
|
60
|
+
description: 'Se deseja validar se a requisição veio do Datacrazy via cabeçalho X-Webhook-Secret',
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
displayName: 'Cabeçalho de Segurança',
|
|
45
64
|
name: 'secretToken',
|
|
46
65
|
type: 'string',
|
|
47
66
|
typeOptions: { password: true },
|
|
48
67
|
default: '',
|
|
49
|
-
|
|
68
|
+
required: true,
|
|
69
|
+
displayOptions: {
|
|
70
|
+
show: {
|
|
71
|
+
useSecurity: [true],
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
description: 'Adicione nas "Configurações Avançadas -> Cabeçalho" da automação do Datacrazy o header "X-Webhook-Secret" com este valor',
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
displayName: 'Simplificar Dados do Lead',
|
|
78
|
+
name: 'simplifyPayload',
|
|
79
|
+
type: 'boolean',
|
|
80
|
+
default: false,
|
|
81
|
+
description: 'Se ativado, organiza e limpa campos comuns de chatbot (nome, whatsapp, email, mensagem) diretamente na raiz do resultado',
|
|
50
82
|
},
|
|
51
83
|
],
|
|
52
84
|
};
|
|
@@ -55,8 +87,9 @@ class DatacrazyTrigger {
|
|
|
55
87
|
const req = this.getRequestObject();
|
|
56
88
|
const headers = req.headers;
|
|
57
89
|
const body = req.body;
|
|
58
|
-
const
|
|
59
|
-
if (
|
|
90
|
+
const useSecurity = this.getNodeParameter('useSecurity', false);
|
|
91
|
+
if (useSecurity) {
|
|
92
|
+
const secretToken = this.getNodeParameter('secretToken', '');
|
|
60
93
|
const incomingSecret = headers['x-webhook-secret'];
|
|
61
94
|
if (incomingSecret !== secretToken) {
|
|
62
95
|
throw new n8n_workflow_1.NodeApiError(this.getNode(), {
|
|
@@ -64,10 +97,39 @@ class DatacrazyTrigger {
|
|
|
64
97
|
});
|
|
65
98
|
}
|
|
66
99
|
}
|
|
100
|
+
const simplifyPayload = this.getNodeParameter('simplifyPayload', false);
|
|
101
|
+
let outputData = body;
|
|
102
|
+
if (simplifyPayload && typeof body === 'object' && body !== null) {
|
|
103
|
+
// Garante suporte a estruturas comuns enviadas por chatbots e CRM
|
|
104
|
+
const contact = body.contact || body.lead || body.customer || body.user || {};
|
|
105
|
+
const message = body.message || body.msg || {};
|
|
106
|
+
const nome = contact.name || contact.first_name || contact.fullName || body.name || body.fullName || '';
|
|
107
|
+
let telefone = contact.phone || contact.phoneNumber || contact.phone_number || body.phone || body.phoneNumber || '';
|
|
108
|
+
if (typeof telefone === 'string') {
|
|
109
|
+
// Remove sufixo de chat/WhatsApp e caracteres não numéricos
|
|
110
|
+
telefone = telefone.split('@')[0].replace(/\D/g, '');
|
|
111
|
+
}
|
|
112
|
+
else if (typeof telefone === 'number') {
|
|
113
|
+
telefone = String(telefone);
|
|
114
|
+
}
|
|
115
|
+
const email = contact.email || body.email || contact.mail || body.mail || '';
|
|
116
|
+
const textoMensagem = message.text || message.body || message.content || body.text || (typeof body.message === 'string' ? body.message : '');
|
|
117
|
+
const tipoMensagem = message.type || body.type || 'text';
|
|
118
|
+
const idContato = contact.id || contact.uuid || body.contactId || body.leadId || body.id || '';
|
|
119
|
+
outputData = {
|
|
120
|
+
nome_contato: nome,
|
|
121
|
+
whatsapp: telefone,
|
|
122
|
+
email: email,
|
|
123
|
+
mensagem: textoMensagem,
|
|
124
|
+
tipo_mensagem: tipoMensagem,
|
|
125
|
+
id_contato: idContato,
|
|
126
|
+
dados_brutos: body, // Mantém os dados originais acessíveis
|
|
127
|
+
};
|
|
128
|
+
}
|
|
67
129
|
return {
|
|
68
130
|
webhookResponse: 'Webhook received successfully',
|
|
69
131
|
workflowData: [
|
|
70
|
-
this.helpers.returnJsonArray(
|
|
132
|
+
this.helpers.returnJsonArray(outputData),
|
|
71
133
|
],
|
|
72
134
|
};
|
|
73
135
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatacrazyTrigger.node.js","sourceRoot":"","sources":["../../../../../nodes/Datacrazy/resources/triggers/DatacrazyTrigger.node.ts"],"names":[],"mappings":";;;AAAA,+CAMsB;AAEtB,MAAa,gBAAgB;IAA7B;QACE,gBAAW,GAAyB;YAClC,WAAW,EAAE,mBAAmB;YAChC,IAAI,EAAE,kBAAkB;YACxB,IAAI,EAAE,uCAAuC;YAC7C,KAAK,EAAE,CAAC,SAAS,CAAC;YAClB,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,kEAAkE;YAC/E,QAAQ,EAAE;gBACR,IAAI,EAAE,mBAAmB;aAC1B;YACD,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,CAAC,MAAM,CAAC;YACjB,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,SAAS;oBACf,UAAU,EAAE,MAAM;oBAClB,YAAY,EAAE,YAAY;oBAC1B,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"DatacrazyTrigger.node.js","sourceRoot":"","sources":["../../../../../nodes/Datacrazy/resources/triggers/DatacrazyTrigger.node.ts"],"names":[],"mappings":"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"}
|