diff --git a/README.md b/README.md index 729fa1a..adc9ab3 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,12 @@ 
-Este Community Nodes é uma solução 100% gratuita, criada com o intuito de simplificar e auxiliar toda a comunidade a integrar e utilizar ao máximo os principais recursos oferecidos pela Evolution API v2.2+ em seus projetos no N8N. Desenvolvido por OrionDesign.
+This Community Nodes is a 100% free solution, created with the aim of simplifying and helping the entire community to integrate and make the most of the main features offered by Evolution API v2.2+ in their N8N projects. Developed by OrionDesign.
-Desenvolvido com ❤️ por OrionDesign +Developed with ❤️ by OrionDesign
diff --git a/README_TEMPLATE.md b/README_TEMPLATE.md index 729fa1a..adc9ab3 100644 --- a/README_TEMPLATE.md +++ b/README_TEMPLATE.md @@ -1,12 +1,12 @@ 
-Este Community Nodes é uma solução 100% gratuita, criada com o intuito de simplificar e auxiliar toda a comunidade a integrar e utilizar ao máximo os principais recursos oferecidos pela Evolution API v2.2+ em seus projetos no N8N. Desenvolvido por OrionDesign.
+This Community Nodes is a 100% free solution, created with the aim of simplifying and helping the entire community to integrate and make the most of the main features offered by Evolution API v2.2+ in their N8N projects. Developed by OrionDesign.
-Desenvolvido com ❤️ por OrionDesign +Developed with ❤️ by OrionDesign
diff --git a/credentials/EvolutionApi.credentials.ts b/credentials/EvolutionApi.credentials.ts index c97bc23..6f13ad7 100644 --- a/credentials/EvolutionApi.credentials.ts +++ b/credentials/EvolutionApi.credentials.ts @@ -8,15 +8,15 @@ import { export class EvolutionApi implements ICredentialType { name = 'evolutionApi'; displayName = 'Evolution API'; - documentationUrl = 'https://doc.evolution-api.com/pt'; + documentationUrl = 'https://doc.evolution-api.com/'; properties: INodeProperties[] = [ { displayName: 'Server Url', name: 'server-url', type: 'string', default: '', - placeholder: 'https://exemplo.com', - description: 'Digite a URL completa da sua Evolution API (ex: https://api.exemplo.com)', + placeholder: 'https://example.com', + description: 'Enter the full URL of your Evolution API (e.g., https://api.example.com)', }, { displayName: 'ApiKey', @@ -26,7 +26,7 @@ export class EvolutionApi implements ICredentialType { typeOptions: { password: true, }, - description: 'Digite a ApiKey da Instancia ou Global da sua Evolution API', + description: 'Enter the instance or Global ApiKey of your Evolution API', }, ]; diff --git a/nodes/EvolutionApi/EvolutionApi.node.ts b/nodes/EvolutionApi/EvolutionApi.node.ts index 41a6cb1..8dae7e0 100644 --- a/nodes/EvolutionApi/EvolutionApi.node.ts +++ b/nodes/EvolutionApi/EvolutionApi.node.ts @@ -38,10 +38,10 @@ export class EvolutionApi implements INodeType { 'Content-Type': 'application/json', }, }, - // A estrutura de propriedades do nó: - // • Resources: Recursos disponíveis (Instancia, Mensagens, Eventos, Integrações) - // • Operations: Operações de cada recurso (Ex: Criar instancia, Enviar mensagem, Definir Webhook) - // • Fields: Campos de cada operação + // The node's property structure: + // • Resources: Available resources (Instance, Messages, Events, Integrations) + // • Operations: Operations for each resource (e.g., Create instance, Send message, Set Webhook) + // • Fields: Fields for each operation properties: evolutionNodeProperties, }; @@ -49,21 +49,21 @@ export class EvolutionApi implements INodeType { const resource = this.getNodeParameter('resource', 0) as string; const operation = this.getNodeParameter('operation', 0) as string; - // Busca a função para o recurso e operação selecionados + // Search for the function for the selected resource and operation const fn = resourceOperationsFunctions[resource][operation]; - // Se não encontrar a função, retorna um erro + // If the function is not found, return an error if (!fn) { throw new NodeApiError(this.getNode(), { - message: 'Operação não suportada.', - description: `A função "${operation}" para o recurso "${resource}" não é suportada!`, + message: 'Unsupported operation.', + description: `The function "${operation}" for the resource "${resource}" is not supported!`, }); } - // Executa a função + // Execute the function const responseData = await fn(this); - // Retornar apenas o JSON + // Return only the JSON return [this.helpers.returnJsonArray(responseData)]; } } diff --git a/nodes/EvolutionApi/execute/chat/blockContact.ts b/nodes/EvolutionApi/execute/chat/blockContact.ts index 07126c7..41301cc 100644 --- a/nodes/EvolutionApi/execute/chat/blockContact.ts +++ b/nodes/EvolutionApi/execute/chat/blockContact.ts @@ -36,7 +36,7 @@ export async function blockContact(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao gerenciar bloqueio do contato', + details: 'Error managing contact block', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/checkNumber.ts b/nodes/EvolutionApi/execute/chat/checkNumber.ts index 97c1b7e..9c5263d 100644 --- a/nodes/EvolutionApi/execute/chat/checkNumber.ts +++ b/nodes/EvolutionApi/execute/chat/checkNumber.ts @@ -36,7 +36,7 @@ export async function checkNumber(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao verificar números no WhatsApp', + details: 'Error checking numbers on WhatsApp', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/deleteMessage.ts b/nodes/EvolutionApi/execute/chat/deleteMessage.ts index 2757481..78edc68 100644 --- a/nodes/EvolutionApi/execute/chat/deleteMessage.ts +++ b/nodes/EvolutionApi/execute/chat/deleteMessage.ts @@ -56,7 +56,7 @@ export async function deleteMessage(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao deletar mensagem', + details: 'Error deleting message', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/fetchProfilePicture.ts b/nodes/EvolutionApi/execute/chat/fetchProfilePicture.ts index 943c61f..cfc56ae 100644 --- a/nodes/EvolutionApi/execute/chat/fetchProfilePicture.ts +++ b/nodes/EvolutionApi/execute/chat/fetchProfilePicture.ts @@ -34,7 +34,7 @@ export async function fetchProfilePicture(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao buscar foto do perfil', + details: 'Error fetching profile picture', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/findChats.ts b/nodes/EvolutionApi/execute/chat/findChats.ts index d2c1af0..87ae7d0 100644 --- a/nodes/EvolutionApi/execute/chat/findChats.ts +++ b/nodes/EvolutionApi/execute/chat/findChats.ts @@ -42,7 +42,7 @@ export async function findChats(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao buscar chats', + details: 'Error fetching chats', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/findContacts.ts b/nodes/EvolutionApi/execute/chat/findContacts.ts index 5c44a40..c79ef74 100644 --- a/nodes/EvolutionApi/execute/chat/findContacts.ts +++ b/nodes/EvolutionApi/execute/chat/findContacts.ts @@ -41,7 +41,7 @@ export async function findContacts(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao buscar contatos', + details: 'Error fetching contacts', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/findMessages.ts b/nodes/EvolutionApi/execute/chat/findMessages.ts index f01b2a6..d4da5db 100644 --- a/nodes/EvolutionApi/execute/chat/findMessages.ts +++ b/nodes/EvolutionApi/execute/chat/findMessages.ts @@ -42,7 +42,7 @@ export async function findMessages(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao buscar mensagens', + details: 'Error fetching messages', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/findStatusMessages.ts b/nodes/EvolutionApi/execute/chat/findStatusMessages.ts index d3d1e78..839c0b8 100644 --- a/nodes/EvolutionApi/execute/chat/findStatusMessages.ts +++ b/nodes/EvolutionApi/execute/chat/findStatusMessages.ts @@ -43,7 +43,7 @@ export async function findStatusMessages(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao buscar status das mensagens', + details: 'Error fetching message status', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/getMediaBase64.ts b/nodes/EvolutionApi/execute/chat/getMediaBase64.ts index c1faea9..357619a 100644 --- a/nodes/EvolutionApi/execute/chat/getMediaBase64.ts +++ b/nodes/EvolutionApi/execute/chat/getMediaBase64.ts @@ -40,7 +40,7 @@ export async function getMediaBase64(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao obter mídia em Base64', + details: 'Error getting media in Base64', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/manageArchive.ts b/nodes/EvolutionApi/execute/chat/manageArchive.ts index 2db4672..d5c9c4c 100644 --- a/nodes/EvolutionApi/execute/chat/manageArchive.ts +++ b/nodes/EvolutionApi/execute/chat/manageArchive.ts @@ -45,7 +45,7 @@ export async function manageArchive(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao gerenciar arquivo da conversa', + details: 'Error managing chat archive', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/markChatUnread.ts b/nodes/EvolutionApi/execute/chat/markChatUnread.ts index 0279b7e..2f7eef9 100644 --- a/nodes/EvolutionApi/execute/chat/markChatUnread.ts +++ b/nodes/EvolutionApi/execute/chat/markChatUnread.ts @@ -43,7 +43,7 @@ export async function markChatUnread(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao marcar conversa como não lida', + details: 'Error marking chat as unread', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/readMessages.ts b/nodes/EvolutionApi/execute/chat/readMessages.ts index 2c98445..2cb9c53 100644 --- a/nodes/EvolutionApi/execute/chat/readMessages.ts +++ b/nodes/EvolutionApi/execute/chat/readMessages.ts @@ -42,7 +42,7 @@ export async function readMessages(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao marcar mensagens como lidas', + details: 'Error marking messages as read', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/sendPresence.ts b/nodes/EvolutionApi/execute/chat/sendPresence.ts index 75346cf..4d73b6b 100644 --- a/nodes/EvolutionApi/execute/chat/sendPresence.ts +++ b/nodes/EvolutionApi/execute/chat/sendPresence.ts @@ -38,7 +38,7 @@ export async function sendPresence(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao enviar presença', + details: 'Error sending presence', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/chat/updateMessage.ts b/nodes/EvolutionApi/execute/chat/updateMessage.ts index 9eef092..0754297 100644 --- a/nodes/EvolutionApi/execute/chat/updateMessage.ts +++ b/nodes/EvolutionApi/execute/chat/updateMessage.ts @@ -42,7 +42,7 @@ export async function updateMessage(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao editar mensagem', + details: 'Error editing message', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/events/setProxy.ts b/nodes/EvolutionApi/execute/events/setProxy.ts index 9636bd9..2aa1daf 100644 --- a/nodes/EvolutionApi/execute/events/setProxy.ts +++ b/nodes/EvolutionApi/execute/events/setProxy.ts @@ -44,10 +44,10 @@ export async function setProxy(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao configurar proxy', + ? 'Invalid or missing parameters' + : 'Error configuring proxy', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/events/setRabbitMQ.ts b/nodes/EvolutionApi/execute/events/setRabbitMQ.ts index 7f04105..351f2a5 100644 --- a/nodes/EvolutionApi/execute/events/setRabbitMQ.ts +++ b/nodes/EvolutionApi/execute/events/setRabbitMQ.ts @@ -40,8 +40,8 @@ export async function setRabbitMQ(ef: IExecuteFunctions) { const errorData = { success: false, error: { - message: 'Operação de RabbitMQ não reconhecida', - details: 'A operação solicitada não é válida para o recurso de RabbitMQ', + message: 'Unrecognized RabbitMQ operation', + details: 'The requested operation is not valid for the RabbitMQ resource', code: 'INVALID_OPERATION', timestamp: new Date().toISOString(), }, @@ -64,10 +64,10 @@ export async function setRabbitMQ(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao configurar RabbitMQ', + ? 'Invalid or missing parameters' + : 'Error configuring RabbitMQ', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/events/setWebhook.ts b/nodes/EvolutionApi/execute/events/setWebhook.ts index 64f512b..1825573 100644 --- a/nodes/EvolutionApi/execute/events/setWebhook.ts +++ b/nodes/EvolutionApi/execute/events/setWebhook.ts @@ -15,7 +15,7 @@ export async function setWebhook(ef: IExecuteFunctions) { if (resourceForWebhook === 'setWebhook') { const enabled = ef.getNodeParameter('enabled', 0); - const webhookUrl = ef.getNodeParameter('webhookUrl', 0) || 'vazio'; + const webhookUrl = ef.getNodeParameter('webhookUrl', 0) || ''; const webhookByEvents = ef.getNodeParameter('webhookByEvents', 0); const webhookBase64 = ef.getNodeParameter('webhookBase64', 0); const webhookEvents = ef.getNodeParameter('webhookEvents', 0) || []; @@ -46,8 +46,8 @@ export async function setWebhook(ef: IExecuteFunctions) { const errorData = { success: false, error: { - message: 'Operação de webhook não reconhecida', - details: 'A operação solicitada não é válida para o recurso de webhook', + message: 'Unrecognized webhook operation', + details: 'The requested operation is not valid for the webhook resource', code: 'INVALID_OPERATION', timestamp: new Date().toISOString(), }, @@ -70,10 +70,10 @@ export async function setWebhook(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao configurar webhook', + ? 'Invalid or missing parameters' + : 'Error configuring webhook', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/groups/createGroup.ts b/nodes/EvolutionApi/execute/groups/createGroup.ts index f951cdd..5759324 100644 --- a/nodes/EvolutionApi/execute/groups/createGroup.ts +++ b/nodes/EvolutionApi/execute/groups/createGroup.ts @@ -40,7 +40,7 @@ export async function createGroup(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao criar grupo', + details: 'Error creating group', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/fetchGroups.ts b/nodes/EvolutionApi/execute/groups/fetchGroups.ts index d0abc97..802e644 100644 --- a/nodes/EvolutionApi/execute/groups/fetchGroups.ts +++ b/nodes/EvolutionApi/execute/groups/fetchGroups.ts @@ -41,7 +41,7 @@ export async function fetchGroups(ef: IExecuteFunctions) { break; default: - throw new Error('Método de busca inválido'); + throw new Error('Invalid search method'); } const response = await evolutionRequest(ef, requestOptions); @@ -56,7 +56,7 @@ export async function fetchGroups(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao buscar informações do(s) grupo(s)', + details: 'Error fetching group(s) information', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/fetchInviteCode.ts b/nodes/EvolutionApi/execute/groups/fetchInviteCode.ts index 80534b2..6e53f7e 100644 --- a/nodes/EvolutionApi/execute/groups/fetchInviteCode.ts +++ b/nodes/EvolutionApi/execute/groups/fetchInviteCode.ts @@ -29,7 +29,7 @@ export async function fetchInviteCode(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao buscar código de convite do grupo', + details: 'Error fetching group invite code', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/findParticipants.ts b/nodes/EvolutionApi/execute/groups/findParticipants.ts index 495420f..06a1eee 100644 --- a/nodes/EvolutionApi/execute/groups/findParticipants.ts +++ b/nodes/EvolutionApi/execute/groups/findParticipants.ts @@ -29,7 +29,7 @@ export async function findParticipants(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao buscar participantes do grupo', + details: 'Error fetching group participants', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/joinGroup.ts b/nodes/EvolutionApi/execute/groups/joinGroup.ts index 4b96fe9..531d3d5 100644 --- a/nodes/EvolutionApi/execute/groups/joinGroup.ts +++ b/nodes/EvolutionApi/execute/groups/joinGroup.ts @@ -29,7 +29,7 @@ export async function joinGroup(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao entrar no grupo', + details: 'Error joining group', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/leaveGroup.ts b/nodes/EvolutionApi/execute/groups/leaveGroup.ts index e58fc2c..51e4eb1 100644 --- a/nodes/EvolutionApi/execute/groups/leaveGroup.ts +++ b/nodes/EvolutionApi/execute/groups/leaveGroup.ts @@ -29,7 +29,7 @@ export async function leaveGroup(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao sair do grupo', + details: 'Error leaving group', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/revokeInviteCode.ts b/nodes/EvolutionApi/execute/groups/revokeInviteCode.ts index ebcad6d..a58f2d3 100644 --- a/nodes/EvolutionApi/execute/groups/revokeInviteCode.ts +++ b/nodes/EvolutionApi/execute/groups/revokeInviteCode.ts @@ -29,7 +29,7 @@ export async function revokeInviteCode(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao revogar código de convite do grupo', + details: 'Error revoking group invite code', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/sendInviteLink.ts b/nodes/EvolutionApi/execute/groups/sendInviteLink.ts index a614930..a757b75 100644 --- a/nodes/EvolutionApi/execute/groups/sendInviteLink.ts +++ b/nodes/EvolutionApi/execute/groups/sendInviteLink.ts @@ -40,7 +40,7 @@ export async function sendInviteLink(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao enviar link de convite do grupo', + details: 'Error sending group invite link', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/toggleEphemeral.ts b/nodes/EvolutionApi/execute/groups/toggleEphemeral.ts index 748a91d..df0915d 100644 --- a/nodes/EvolutionApi/execute/groups/toggleEphemeral.ts +++ b/nodes/EvolutionApi/execute/groups/toggleEphemeral.ts @@ -35,7 +35,7 @@ export async function toggleEphemeral(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao configurar mensagens temporárias', + details: 'Error configuring temporary messages', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/updateGroupDescription.ts b/nodes/EvolutionApi/execute/groups/updateGroupDescription.ts index 3e1f501..d3bea51 100644 --- a/nodes/EvolutionApi/execute/groups/updateGroupDescription.ts +++ b/nodes/EvolutionApi/execute/groups/updateGroupDescription.ts @@ -35,7 +35,7 @@ export async function updateGroupDescription(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao atualizar descrição do grupo', + details: 'Error updating group description', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/updateGroupName.ts b/nodes/EvolutionApi/execute/groups/updateGroupName.ts index 4ff3891..885543e 100644 --- a/nodes/EvolutionApi/execute/groups/updateGroupName.ts +++ b/nodes/EvolutionApi/execute/groups/updateGroupName.ts @@ -35,7 +35,7 @@ export async function updateGroupName(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao atualizar nome do grupo', + details: 'Error updating group name', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/updateGroupPicture.ts b/nodes/EvolutionApi/execute/groups/updateGroupPicture.ts index 4dcfa0f..24dc47c 100644 --- a/nodes/EvolutionApi/execute/groups/updateGroupPicture.ts +++ b/nodes/EvolutionApi/execute/groups/updateGroupPicture.ts @@ -35,7 +35,7 @@ export async function updateGroupPicture(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao atualizar imagem do grupo', + details: 'Error updating group image', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/updateParticipants.ts b/nodes/EvolutionApi/execute/groups/updateParticipants.ts index 68cd2dc..20b843c 100644 --- a/nodes/EvolutionApi/execute/groups/updateParticipants.ts +++ b/nodes/EvolutionApi/execute/groups/updateParticipants.ts @@ -39,7 +39,7 @@ export async function updateParticipants(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao atualizar membros do grupo', + details: 'Error updating group members', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/groups/updateSettings.ts b/nodes/EvolutionApi/execute/groups/updateSettings.ts index 24d5dbc..688acfe 100644 --- a/nodes/EvolutionApi/execute/groups/updateSettings.ts +++ b/nodes/EvolutionApi/execute/groups/updateSettings.ts @@ -35,7 +35,7 @@ export async function updateSettings(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao atualizar configurações do grupo', + details: 'Error updating group settings', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/index.ts b/nodes/EvolutionApi/execute/index.ts index d91e471..801151c 100644 --- a/nodes/EvolutionApi/execute/index.ts +++ b/nodes/EvolutionApi/execute/index.ts @@ -69,7 +69,7 @@ type ResourceOperationFunctions = { }; }; -// este dicionario é utilizado para mapear as operações disponíveis para cada recurso e operação para cada função +// This dictionary is used to map the available operations for each resource and operation for each function export const resourceOperationsFunctions: ResourceOperationFunctions = { 'instances-api': { 'instance-basic': createInstanceBasic, diff --git a/nodes/EvolutionApi/execute/instance/createInstanceBasic.ts b/nodes/EvolutionApi/execute/instance/createInstanceBasic.ts index 8721cd8..6483774 100644 --- a/nodes/EvolutionApi/execute/instance/createInstanceBasic.ts +++ b/nodes/EvolutionApi/execute/instance/createInstanceBasic.ts @@ -24,7 +24,7 @@ export async function createInstanceBasic(ef: IExecuteFunctions) { body.number = number; } - // Verifica e adiciona configurações da instância se existirem + // Check and add instance settings if they exist const instanceSettings = ef.getNodeParameter( 'options_Create_instance.instanceSettings.settings', 0, @@ -42,7 +42,7 @@ export async function createInstanceBasic(ef: IExecuteFunctions) { Object.assign(body, instanceSettings); } - // Verifica e adiciona configurações de proxy se existirem + // Check and add proxy settings if they exist const proxySettings = ef.getNodeParameter( 'options_Create_instance.proxy.proxySettings', 0, @@ -64,7 +64,7 @@ export async function createInstanceBasic(ef: IExecuteFunctions) { }); } - // Verifica e adiciona configurações do Webhook se existirem + // Check and add Webhook settings if they exist const webhookSettings = ef.getNodeParameter( 'options_Create_instance.webhook.webhookSettings', 0, @@ -87,7 +87,7 @@ export async function createInstanceBasic(ef: IExecuteFunctions) { }); } - // Verifica e adiciona configurações do RabbitMQ se existirem + // Check and add RabbitMQ settings if they exist const rabbitmqSettings = ef.getNodeParameter( 'options_Create_instance.rabbitmq.rabbitmqSettings', 0, @@ -105,7 +105,7 @@ export async function createInstanceBasic(ef: IExecuteFunctions) { }); } - // Verifica e adiciona configurações do Chatwoot se existirem + // Check and add Chatwoot settings if they exist const chatwootSettings = ef.getNodeParameter( 'options_Create_instance.chatwoot.chatwootSettings', 0, @@ -126,7 +126,7 @@ export async function createInstanceBasic(ef: IExecuteFunctions) { chatwootLogo?: string; }; - // Adiciona todos os campos do Chatwoot + // Add all Chatwoot fields if (chatwootSettings && Object.keys(chatwootSettings).length > 0) { Object.assign(body, { chatwootAccountId: chatwootSettings.chatwootAccountId || '', @@ -155,10 +155,10 @@ export async function createInstanceBasic(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao criar instância', + ? 'Invalid or missing parameters' + : 'Error creating instance', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/instance/deleteInstance.ts b/nodes/EvolutionApi/execute/instance/deleteInstance.ts index 78be3de..d844210 100644 --- a/nodes/EvolutionApi/execute/instance/deleteInstance.ts +++ b/nodes/EvolutionApi/execute/instance/deleteInstance.ts @@ -28,10 +28,10 @@ export async function deleteInstance(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao deletar instância', + ? 'Invalid or missing parameters' + : 'Error deleting instance', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/instance/fetchInstances.ts b/nodes/EvolutionApi/execute/instance/fetchInstances.ts index 544e84d..4b25b22 100644 --- a/nodes/EvolutionApi/execute/instance/fetchInstances.ts +++ b/nodes/EvolutionApi/execute/instance/fetchInstances.ts @@ -28,10 +28,10 @@ export async function fetchInstances(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao buscar instâncias', + ? 'Invalid or missing parameters' + : 'Error fetching instances', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/instance/instanceConnect.ts b/nodes/EvolutionApi/execute/instance/instanceConnect.ts index 957ec74..b5f1357 100644 --- a/nodes/EvolutionApi/execute/instance/instanceConnect.ts +++ b/nodes/EvolutionApi/execute/instance/instanceConnect.ts @@ -28,10 +28,10 @@ export async function instanceConnect(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao conectar instância', + ? 'Invalid or missing parameters' + : 'Error connecting to instance', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/instance/instanceSettings.ts b/nodes/EvolutionApi/execute/instance/instanceSettings.ts index 9d32178..258d17d 100644 --- a/nodes/EvolutionApi/execute/instance/instanceSettings.ts +++ b/nodes/EvolutionApi/execute/instance/instanceSettings.ts @@ -53,10 +53,10 @@ export async function instanceSettings(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao definir configurações da instância', + ? 'Invalid or missing parameters' + : 'Error setting instance configurations', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/instance/logoutInstance.ts b/nodes/EvolutionApi/execute/instance/logoutInstance.ts index 4c48d6e..8aa2144 100644 --- a/nodes/EvolutionApi/execute/instance/logoutInstance.ts +++ b/nodes/EvolutionApi/execute/instance/logoutInstance.ts @@ -28,10 +28,10 @@ export async function logoutInstance(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao desconectar instância', + ? 'Invalid or missing parameters' + : 'Error disconnecting instance', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/instance/restartInstance.ts b/nodes/EvolutionApi/execute/instance/restartInstance.ts index 972aba0..d6f9e08 100644 --- a/nodes/EvolutionApi/execute/instance/restartInstance.ts +++ b/nodes/EvolutionApi/execute/instance/restartInstance.ts @@ -28,10 +28,10 @@ export async function restartInstance(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao reiniciar instância', + ? 'Invalid or missing parameters' + : 'Error restarting instance', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/instance/setPresence.ts b/nodes/EvolutionApi/execute/instance/setPresence.ts index e26974c..638258c 100644 --- a/nodes/EvolutionApi/execute/instance/setPresence.ts +++ b/nodes/EvolutionApi/execute/instance/setPresence.ts @@ -35,10 +35,10 @@ export async function setPresence(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao definir presença da instância', + ? 'Invalid or missing parameters' + : 'Error setting instance presence', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/instance/setProxy.ts b/nodes/EvolutionApi/execute/instance/setProxy.ts index 36e282c..cb00eba 100644 --- a/nodes/EvolutionApi/execute/instance/setProxy.ts +++ b/nodes/EvolutionApi/execute/instance/setProxy.ts @@ -46,8 +46,8 @@ export async function setProxy(ef: IExecuteFunctions) { const errorData = { success: false, error: { - message: 'Operação de Proxy não reconhecida', - details: 'A operação solicitada não é válida para o recurso de Proxy', + message: 'Unrecognized Proxy operation', + details: 'The requested operation is not valid for the Proxy resource', code: 'INVALID_OPERATION', timestamp: new Date().toISOString(), }, @@ -70,10 +70,10 @@ export async function setProxy(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao configurar proxy', + ? 'Invalid or missing parameters' + : 'Error configuring proxy', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/integrations/setChatwoot.ts b/nodes/EvolutionApi/execute/integrations/setChatwoot.ts index 3315005..8dec0a4 100644 --- a/nodes/EvolutionApi/execute/integrations/setChatwoot.ts +++ b/nodes/EvolutionApi/execute/integrations/setChatwoot.ts @@ -65,8 +65,8 @@ export async function setChatwoot(ef: IExecuteFunctions) { const errorData = { success: false, error: { - message: 'Operação do Chatwoot não reconhecida', - details: 'A operação solicitada não é válida para o recurso do Chatwoot', + message: 'Unrecognized Chatwoot operation', + details: 'The requested operation is not valid for the Chatwoot resource', code: 'INVALID_OPERATION', timestamp: new Date().toISOString(), }, @@ -89,10 +89,10 @@ export async function setChatwoot(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao configurar Chatwoot', + ? 'Invalid or missing parameters' + : 'Error configuring Chatwoot', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/integrations/setDifyBot.ts b/nodes/EvolutionApi/execute/integrations/setDifyBot.ts index 32bf236..89e9d50 100644 --- a/nodes/EvolutionApi/execute/integrations/setDifyBot.ts +++ b/nodes/EvolutionApi/execute/integrations/setDifyBot.ts @@ -128,8 +128,8 @@ export async function setDifyBot(ef: IExecuteFunctions) { const errorData = { success: false, error: { - message: 'Operação do Dify não reconhecida', - details: 'A operação solicitada não é válida para o recurso do Dify', + message: 'Unrecognized Dify operation', + details: 'The requested operation is not valid for the Dify resource', code: 'INVALID_OPERATION', timestamp: new Date().toISOString(), }, @@ -152,10 +152,10 @@ export async function setDifyBot(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao configurar Dify', + ? 'Invalid or missing parameters' + : 'Error configuring Dify', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/integrations/setEvolutionBot.ts b/nodes/EvolutionApi/execute/integrations/setEvolutionBot.ts index 1dc9bea..0a42b6a 100644 --- a/nodes/EvolutionApi/execute/integrations/setEvolutionBot.ts +++ b/nodes/EvolutionApi/execute/integrations/setEvolutionBot.ts @@ -137,8 +137,8 @@ export async function setEvolutionBot(ef: IExecuteFunctions) { const errorData = { success: false, error: { - message: 'Operação do Evolution Bot não reconhecida', - details: 'A operação solicitada não é válida para o recurso do Evolution Bot', + message: 'Unrecognized Evolution Bot operation', + details: 'The requested operation is not valid for the Evolution Bot resource', code: 'INVALID_OPERATION', timestamp: new Date().toISOString(), }, @@ -161,10 +161,10 @@ export async function setEvolutionBot(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao configurar Evolution Bot', + ? 'Invalid or missing parameters' + : 'Error configuring Evolution Bot', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/integrations/setFlowiseBot.ts b/nodes/EvolutionApi/execute/integrations/setFlowiseBot.ts index 6cafcb1..3340c68 100644 --- a/nodes/EvolutionApi/execute/integrations/setFlowiseBot.ts +++ b/nodes/EvolutionApi/execute/integrations/setFlowiseBot.ts @@ -137,8 +137,8 @@ export async function setFlowiseBot(ef: IExecuteFunctions) { 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', + message: 'Flowise operation not recognized', + details: 'The requested operation is not valid for the Flowise resource', code: 'INVALID_OPERATION', timestamp: new Date().toISOString(), }, @@ -161,10 +161,10 @@ export async function setFlowiseBot(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao configurar Flowise', + ? 'Invalid or missing parameters' + : 'Error configuring Flowise', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/integrations/setTypebot.ts b/nodes/EvolutionApi/execute/integrations/setTypebot.ts index 8419aed..d23ce1b 100644 --- a/nodes/EvolutionApi/execute/integrations/setTypebot.ts +++ b/nodes/EvolutionApi/execute/integrations/setTypebot.ts @@ -154,8 +154,8 @@ export async function setTypebot(ef: IExecuteFunctions) { const errorData = { success: false, error: { - message: 'Operação do Typebot não reconhecida', - details: 'A operação solicitada não é válida para o recurso do Typebot', + message: 'Typebot operation not recognized', + details: 'The requested operation is not valid for the Typebot resource', code: 'INVALID_OPERATION', timestamp: new Date().toISOString(), }, @@ -178,10 +178,10 @@ export async function setTypebot(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao configurar Typebot', + ? 'Invalid or missing parameters' + : 'Error configuring Typebot', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/messages/sendAudio.ts b/nodes/EvolutionApi/execute/messages/sendAudio.ts index 0024c56..ed7fd7a 100644 --- a/nodes/EvolutionApi/execute/messages/sendAudio.ts +++ b/nodes/EvolutionApi/execute/messages/sendAudio.ts @@ -8,16 +8,16 @@ import { evolutionRequest } from '../evolutionRequest'; export async function sendAudio(ef: IExecuteFunctions) { try { - // Parâmetros obrigatórios + // Required parameters const instanceName = ef.getNodeParameter('instanceName', 0) as string; const remoteJid = ef.getNodeParameter('remoteJid', 0) as string; const media = ef.getNodeParameter('media', 0) as string; - // Parâmetros opcionais com valores padrão + // Optional parameters with default values const mimetype = (ef.getNodeParameter('mimetype', 0, 'audio/mp3') as string) || 'audio/mp3'; const fileName = (ef.getNodeParameter('fileName', 0, 'audio.mp3') as string) || 'audio.mp3'; - // Opções adicionais + // Additional options const options = ef.getNodeParameter('options_message', 0, {}) as { delay?: number; quoted?: { @@ -88,10 +88,10 @@ export async function sendAudio(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao enviar áudio', + ? 'Invalid or missing parameters' + : 'Error sending audio', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/messages/sendButtons.ts b/nodes/EvolutionApi/execute/messages/sendButtons.ts index 18e8588..30fd80c 100644 --- a/nodes/EvolutionApi/execute/messages/sendButtons.ts +++ b/nodes/EvolutionApi/execute/messages/sendButtons.ts @@ -8,7 +8,7 @@ import { evolutionRequest } from '../evolutionRequest'; export async function sendButtons(ef: IExecuteFunctions) { try { - // Parâmetros obrigatórios + // Required parameters const instanceName = ef.getNodeParameter('instanceName', 0) as string; const remoteJid = ef.getNodeParameter('remoteJid', 0) as string; const title = ef.getNodeParameter('title', 0) as string; @@ -23,13 +23,13 @@ export async function sendButtons(ef: IExecuteFunctions) { phoneNumber?: string; }>; - // Validação dos botões + // Button validation if (!Array.isArray(buttons) || buttons.length === 0 || buttons.length > 3) { const errorData = { success: false, error: { - message: 'Lista de botões inválida', - details: 'É necessário fornecer entre 1 e 3 botões', + message: 'Invalid button list', + details: 'You must provide between 1 and 3 buttons', code: 'INVALID_BUTTONS', timestamp: new Date().toISOString(), }, @@ -40,7 +40,7 @@ export async function sendButtons(ef: IExecuteFunctions) { }; } - // Opções adicionais + // Additional options const options = ef.getNodeParameter('options_message', 0, {}) as { delay?: number; quoted?: { @@ -129,10 +129,10 @@ export async function sendButtons(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao enviar botões', + ? 'Invalid or missing parameters' + : 'Error sending buttons', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/messages/sendContact.ts b/nodes/EvolutionApi/execute/messages/sendContact.ts index b789d7c..b69441c 100644 --- a/nodes/EvolutionApi/execute/messages/sendContact.ts +++ b/nodes/EvolutionApi/execute/messages/sendContact.ts @@ -8,7 +8,7 @@ import { evolutionRequest } from '../evolutionRequest'; export async function sendContact(ef: IExecuteFunctions) { try { - // Parâmetros obrigatórios + // Required parameters const instanceName = ef.getNodeParameter('instanceName', 0); const remoteJid = ef.getNodeParameter('remoteJid', 0); const contacts = ef.getNodeParameter('contacts.contactValues', 0) as { @@ -20,13 +20,13 @@ export async function sendContact(ef: IExecuteFunctions) { url?: string; }[]; - // Validação dos contatos + // Contact validation if (!Array.isArray(contacts) || contacts.length === 0) { const errorData = { success: false, error: { - message: 'Lista de contatos inválida', - details: 'É necessário fornecer pelo menos um contato', + message: 'Invalid contact list', + details: 'You must provide at least one contact', code: 'INVALID_CONTACTS', timestamp: new Date().toISOString(), }, @@ -71,10 +71,10 @@ export async function sendContact(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao enviar contato', + ? 'Invalid or missing parameters' + : 'Error sending contact', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/messages/sendDocument.ts b/nodes/EvolutionApi/execute/messages/sendDocument.ts index 83865b0..5911b89 100644 --- a/nodes/EvolutionApi/execute/messages/sendDocument.ts +++ b/nodes/EvolutionApi/execute/messages/sendDocument.ts @@ -9,20 +9,20 @@ import { evolutionRequest } from '../evolutionRequest'; export async function sendDocument(ef: IExecuteFunctions) { try { - // Parâmetros obrigatórios + // Required parameters const instanceName = ef.getNodeParameter('instanceName', 0) as string; const remoteJid = ef.getNodeParameter('remoteJid', 0) as string; const media = ef.getNodeParameter('media', 0) as string; - // Validação do campo media + // Media field validation if (!media.startsWith('http') && !media.startsWith('data:') && !isBase64(media)) { throw new NodeApiError(ef.getNode(), { - message: 'Formato de mídia inválido', - description: 'O documento deve ser uma URL válida ou um base64', + message: 'Invalid media format', + description: 'The document must be a valid URL or a base64', }); } - // Função auxiliar para verificar se é base64 + // Helper function to verify if it's base64 function isBase64(str: string) { try { return Buffer.from(str, 'base64').toString('base64') === str; @@ -31,12 +31,12 @@ export async function sendDocument(ef: IExecuteFunctions) { } } - // Parâmetros opcionais com valores padrão + // Optional parameters with default values const mimetype = (ef.getNodeParameter('mimetype', 0, 'application/pdf') as string) || 'application/pdf'; const caption = ef.getNodeParameter('caption', 0, '') as string; const fileName = (ef.getNodeParameter('fileName', 0, 'document.pdf') as string) || 'document.pdf'; - // Opções adicionais + // Additional options const options = ef.getNodeParameter('options_message', 0, {}) as { delay?: number; quoted?: { @@ -103,10 +103,10 @@ export async function sendDocument(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao enviar documento', + ? 'Invalid or missing parameters' + : 'Error sending document', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/messages/sendImage.ts b/nodes/EvolutionApi/execute/messages/sendImage.ts index 54ed113..3a4c105 100644 --- a/nodes/EvolutionApi/execute/messages/sendImage.ts +++ b/nodes/EvolutionApi/execute/messages/sendImage.ts @@ -13,17 +13,17 @@ export async function sendImage(ef: IExecuteFunctions) { for (let i = 0; i < items.length; i++) { try { - // Parâmetros obrigatórios + // Required parameters const instanceName = ef.getNodeParameter('instanceName', i) as string; const remoteJid = ef.getNodeParameter('remoteJid', i) as string; const media = ef.getNodeParameter('media', i) as string; - // Parâmetros opcionais com valores padrão + // Optional parameters with default values const mimetype = (ef.getNodeParameter('mimetype', i, 'image/jpeg') as string) || 'image/jpeg'; const caption = ef.getNodeParameter('caption', i, '') as string; const fileName = (ef.getNodeParameter('fileName', i, 'image.jpg') as string) || 'image.jpg'; - // Opções adicionais + // Additional options const options = ef.getNodeParameter('options_message', i, {}) as { delay?: number; quoted?: { @@ -93,11 +93,11 @@ export async function sendImage(ef: IExecuteFunctions) { }); } catch (error) { const errorMessage = error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao enviar imagem'; + ? 'Invalid or missing parameters' + : 'Error sending image'; const errorDetails = error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message; if (!ef.continueOnFail()) { diff --git a/nodes/EvolutionApi/execute/messages/sendList.ts b/nodes/EvolutionApi/execute/messages/sendList.ts index f439ea4..e69a083 100644 --- a/nodes/EvolutionApi/execute/messages/sendList.ts +++ b/nodes/EvolutionApi/execute/messages/sendList.ts @@ -8,7 +8,7 @@ import { evolutionRequest } from '../evolutionRequest'; export async function sendList(ef: IExecuteFunctions) { try { - // Parâmetros obrigatórios + // Required parameters const instanceName = ef.getNodeParameter('instanceName', 0); const remoteJid = ef.getNodeParameter('remoteJid', 0); const title = ef.getNodeParameter('title', 0); @@ -25,13 +25,13 @@ export async function sendList(ef: IExecuteFunctions) { }; }[]; - // Validação das seções + // Section validation if (!Array.isArray(sections) || sections.length === 0) { const errorData = { success: false, error: { - message: 'Lista de seções inválida', - details: 'É necessário fornecer pelo menos uma seção com opções', + message: 'Invalid section list', + details: 'You must provide at least one section with options', code: 'INVALID_SECTIONS', timestamp: new Date().toISOString(), }, @@ -42,7 +42,7 @@ export async function sendList(ef: IExecuteFunctions) { }; } - // Opções adicionais + // Additional options const options = ef.getNodeParameter('options_message', 0, {}) as { footer?: string; delay?: number; @@ -122,10 +122,10 @@ export async function sendList(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao enviar lista', + ? 'Invalid or missing parameters' + : 'Error sending list', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/messages/sendPix.ts b/nodes/EvolutionApi/execute/messages/sendPix.ts index f281e61..2062c9d 100644 --- a/nodes/EvolutionApi/execute/messages/sendPix.ts +++ b/nodes/EvolutionApi/execute/messages/sendPix.ts @@ -8,21 +8,21 @@ import { evolutionRequest } from '../evolutionRequest'; export async function sendPix(ef: IExecuteFunctions) { try { - // Parâmetros obrigatórios + // Required parameters const instanceName = ef.getNodeParameter('instanceName', 0) as string; const remoteJid = ef.getNodeParameter('remoteJid', 0) as string; const name = ef.getNodeParameter('name', 0) as string; const keyType = ef.getNodeParameter('keyType', 0) as string; const key = ef.getNodeParameter('key', 0) as string; - // Validação do tipo de chave PIX + // PIX key type validation const validKeyTypes = ['cpf', 'cnpj', 'email', 'phone', 'random']; if (!validKeyTypes.includes(keyType)) { const errorData = { success: false, error: { - message: 'Tipo de chave PIX inválida', - details: 'O tipo de chave PIX deve ser: cpf, cnpj, email, phone ou random', + message: 'Invalid PIX key type', + details: 'The PIX key type must be: cpf, cnpj, email, phone or random', code: 'INVALID_PIX_KEY_TYPE', timestamp: new Date().toISOString(), }, @@ -68,10 +68,10 @@ export async function sendPix(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao enviar botão PIX', + ? 'Invalid or missing parameters' + : 'Error sending PIX button', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/messages/sendPoll.ts b/nodes/EvolutionApi/execute/messages/sendPoll.ts index b72dfc2..946d40e 100644 --- a/nodes/EvolutionApi/execute/messages/sendPoll.ts +++ b/nodes/EvolutionApi/execute/messages/sendPoll.ts @@ -8,7 +8,7 @@ import { evolutionRequest } from '../evolutionRequest'; export async function sendPoll(ef: IExecuteFunctions) { try { - // Parâmetros obrigatórios + // Required parameters const instanceName = ef.getNodeParameter('instanceName', 0); const remoteJid = ef.getNodeParameter('remoteJid', 0); const pollTitle = ef.getNodeParameter('caption', 0); @@ -16,7 +16,7 @@ export async function sendPoll(ef: IExecuteFunctions) { optionValue: string; }[]; - // Opções adicionais + // Additional options const options_message = ef.getNodeParameter('options_message', 0, {}) as { delay?: number; quoted?: { @@ -26,15 +26,15 @@ export async function sendPoll(ef: IExecuteFunctions) { }; }; - // Verifica se options é um array e não está vazio + // Checks if options is an array and is not empty const pollOptions = Array.isArray(options) ? options.map((option) => option.optionValue) : []; if (pollOptions.length === 0) { const errorData = { success: false, error: { - message: 'Opções da enquete inválidas', - details: 'A enquete precisa ter pelo menos uma opção', + message: 'Invalid poll options', + details: 'The poll must have at least one option', code: 'INVALID_POLL_OPTIONS', timestamp: new Date().toISOString(), }, @@ -52,12 +52,12 @@ export async function sendPoll(ef: IExecuteFunctions) { values: pollOptions, }; - // Adiciona delay se especificado + // Adds delay if specified if (options_message.delay) { body.delay = options_message.delay; } - // Adiciona quoted se especificado + // Adds quoted if specified if (options_message.quoted?.messageQuoted?.messageId) { body.quoted = { key: { @@ -88,10 +88,10 @@ export async function sendPoll(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao enviar enquete', + ? 'Invalid or missing parameters' + : 'Error sending poll', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/messages/sendReaction.ts b/nodes/EvolutionApi/execute/messages/sendReaction.ts index 1a8e60e..048f833 100644 --- a/nodes/EvolutionApi/execute/messages/sendReaction.ts +++ b/nodes/EvolutionApi/execute/messages/sendReaction.ts @@ -8,20 +8,20 @@ import { evolutionRequest } from '../evolutionRequest'; export async function sendReaction(ef: IExecuteFunctions) { try { - // Parâmetros obrigatórios + // Required parameters const instanceName = ef.getNodeParameter('instanceName', 0) as string; const remoteJid = ef.getNodeParameter('remoteJid', 0) as string; const messageId = ef.getNodeParameter('messageId', 0) as string; const fromMe = ef.getNodeParameter('fromMe', 0) as boolean; const reaction = ef.getNodeParameter('reaction', 0) as string; - // Validação da reação + // Reaction validation if (!reaction) { const errorData = { success: false, error: { - message: 'Reação inválida', - details: 'É necessário fornecer um emoji para a reação', + message: 'Invalid reaction', + details: 'You must provide an emoji for the reaction', code: 'INVALID_REACTION', timestamp: new Date().toISOString(), }, @@ -63,10 +63,10 @@ export async function sendReaction(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao enviar reação', + ? 'Invalid or missing parameters' + : 'Error sending reaction', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/messages/sendStories.ts b/nodes/EvolutionApi/execute/messages/sendStories.ts index d070a0b..359ecda 100644 --- a/nodes/EvolutionApi/execute/messages/sendStories.ts +++ b/nodes/EvolutionApi/execute/messages/sendStories.ts @@ -8,7 +8,7 @@ import { evolutionRequest } from '../evolutionRequest'; export async function sendStories(ef: IExecuteFunctions) { try { - // Parâmetros obrigatórios + // Required parameters const instanceName = ef.getNodeParameter('instanceName', 0) as string; const content = ef.getNodeParameter('content', 0) as string; const type = ef.getNodeParameter('type', 0) as 'text' | 'image' | 'video' | 'audio'; @@ -17,13 +17,13 @@ export async function sendStories(ef: IExecuteFunctions) { const backgroundColor = ef.getNodeParameter('backgroundColor', 0, '#000000') as string; const font = ef.getNodeParameter('font', 0, 1) as number; - // Validação da URL do conteúdo para tipos não texto + // Content URL validation for non-text types if (type !== 'text' && !content.startsWith('http') && !content.startsWith('data:')) { const errorData = { success: false, error: { - message: 'Formato de conteúdo inválido', - details: 'O conteúdo deve ser uma URL válida ou um base64', + message: 'Invalid content format', + details: 'Content must be a valid URL or a base64', code: 'INVALID_CONTENT_FORMAT', timestamp: new Date().toISOString(), }, @@ -42,12 +42,12 @@ export async function sendStories(ef: IExecuteFunctions) { allContacts }; - // Adiciona caption apenas para imagem ou vídeo + // Adds caption only for image or video if ((type === 'image' || type === 'video') && caption) { body.caption = caption; } - // Se não for para todos os contatos, pega a lista específica + // If not for all contacts, get the specific list if (!allContacts) { const statusJidList = ef.getNodeParameter('statusJidList', 0, '') as string; if (statusJidList) { @@ -70,7 +70,7 @@ export async function sendStories(ef: IExecuteFunctions) { const response = await evolutionRequest(ef, requestOptions); if (!response) { - throw new Error('Resposta vazia do servidor'); + throw new Error('Empty server response'); } return { @@ -84,10 +84,10 @@ export async function sendStories(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao enviar status', + ? 'Invalid or missing parameters' + : 'Error sending status', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/messages/sendText.ts b/nodes/EvolutionApi/execute/messages/sendText.ts index d465091..44dc72b 100644 --- a/nodes/EvolutionApi/execute/messages/sendText.ts +++ b/nodes/EvolutionApi/execute/messages/sendText.ts @@ -86,11 +86,11 @@ export async function sendText(ef: IExecuteFunctions) { }); } catch (error) { const errorMessage = error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao enviar mensagem de texto'; + ? 'Invalid or missing parameters' + : 'Error sending text message'; const errorDetails = error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message; if (!ef.continueOnFail()) { diff --git a/nodes/EvolutionApi/execute/messages/sendVideo.ts b/nodes/EvolutionApi/execute/messages/sendVideo.ts index 6653e91..a6bd296 100644 --- a/nodes/EvolutionApi/execute/messages/sendVideo.ts +++ b/nodes/EvolutionApi/execute/messages/sendVideo.ts @@ -8,17 +8,17 @@ import { evolutionRequest } from '../evolutionRequest'; export async function sendVideo(ef: IExecuteFunctions) { try { - // Parâmetros obrigatórios + // Required parameters const instanceName = ef.getNodeParameter('instanceName', 0) as string; const remoteJid = ef.getNodeParameter('remoteJid', 0) as string; const media = ef.getNodeParameter('media', 0) as string; - // Parâmetros opcionais com valores padrão + // Optional parameters with default values const mimetype = (ef.getNodeParameter('mimetype', 0, 'video/mp4') as string) || 'video/mp4'; const caption = ef.getNodeParameter('caption', 0, '') as string; const fileName = (ef.getNodeParameter('fileName', 0, 'video.mp4') as string) || 'video.mp4'; - // Opções adicionais + // Additional options const options = ef.getNodeParameter('options_message', 0, {}) as { delay?: number; quoted?: { @@ -91,10 +91,10 @@ export async function sendVideo(ef: IExecuteFunctions) { success: false, error: { message: error.message.includes('Could not get parameter') - ? 'Parâmetros inválidos ou ausentes' - : 'Erro ao enviar vídeo', + ? 'Invalid or missing parameters' + : 'Error sending video', details: error.message.includes('Could not get parameter') - ? 'Verifique se todos os campos obrigatórios foram preenchidos corretamente' + ? 'Check if all required fields have been filled correctly' : error.message, code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), diff --git a/nodes/EvolutionApi/execute/profile/fetchBusinessProfile.ts b/nodes/EvolutionApi/execute/profile/fetchBusinessProfile.ts index 5f07ebb..ed2668e 100644 --- a/nodes/EvolutionApi/execute/profile/fetchBusinessProfile.ts +++ b/nodes/EvolutionApi/execute/profile/fetchBusinessProfile.ts @@ -34,7 +34,7 @@ export async function fetchBusinessProfile(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao buscar perfil de negócio', + details: 'Error fetching business profile', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/profile/fetchPrivacySettings.ts b/nodes/EvolutionApi/execute/profile/fetchPrivacySettings.ts index bf60933..323cb31 100644 --- a/nodes/EvolutionApi/execute/profile/fetchPrivacySettings.ts +++ b/nodes/EvolutionApi/execute/profile/fetchPrivacySettings.ts @@ -28,7 +28,7 @@ export async function fetchPrivacySettings(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao buscar configurações de privacidade', + details: 'Error fetching privacy settings', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/profile/fetchProfile.ts b/nodes/EvolutionApi/execute/profile/fetchProfile.ts index a60c5e1..40b17fb 100644 --- a/nodes/EvolutionApi/execute/profile/fetchProfile.ts +++ b/nodes/EvolutionApi/execute/profile/fetchProfile.ts @@ -34,7 +34,7 @@ export async function fetchProfile(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao buscar perfil', + details: 'Error fetching profile', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/profile/removeProfilePicture.ts b/nodes/EvolutionApi/execute/profile/removeProfilePicture.ts index 1bcf040..cd46a84 100644 --- a/nodes/EvolutionApi/execute/profile/removeProfilePicture.ts +++ b/nodes/EvolutionApi/execute/profile/removeProfilePicture.ts @@ -28,7 +28,7 @@ export async function removeProfilePicture(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao remover foto do perfil', + details: 'Error removing profile picture', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/profile/updatePrivacySettings.ts b/nodes/EvolutionApi/execute/profile/updatePrivacySettings.ts index 5bee3ff..f83c59c 100644 --- a/nodes/EvolutionApi/execute/profile/updatePrivacySettings.ts +++ b/nodes/EvolutionApi/execute/profile/updatePrivacySettings.ts @@ -44,7 +44,7 @@ export async function updatePrivacySettings(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao atualizar configurações de privacidade', + details: 'Error updating privacy settings', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/profile/updateProfileName.ts b/nodes/EvolutionApi/execute/profile/updateProfileName.ts index 4fa1006..6912322 100644 --- a/nodes/EvolutionApi/execute/profile/updateProfileName.ts +++ b/nodes/EvolutionApi/execute/profile/updateProfileName.ts @@ -34,7 +34,7 @@ export async function updateProfileName(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao atualizar nome do perfil', + details: 'Error updating profile name', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/profile/updateProfilePicture.ts b/nodes/EvolutionApi/execute/profile/updateProfilePicture.ts index 52abfa5..6e045f1 100644 --- a/nodes/EvolutionApi/execute/profile/updateProfilePicture.ts +++ b/nodes/EvolutionApi/execute/profile/updateProfilePicture.ts @@ -34,7 +34,7 @@ export async function updateProfilePicture(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao atualizar foto do perfil', + details: 'Error updating profile picture', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/execute/profile/updateProfileStatus.ts b/nodes/EvolutionApi/execute/profile/updateProfileStatus.ts index 2fe533a..aa5485c 100644 --- a/nodes/EvolutionApi/execute/profile/updateProfileStatus.ts +++ b/nodes/EvolutionApi/execute/profile/updateProfileStatus.ts @@ -34,7 +34,7 @@ export async function updateProfileStatus(ef: IExecuteFunctions) { success: false, error: { message: error.message, - details: 'Erro ao atualizar status do perfil', + details: 'Error updating profile status', code: error.code || 'UNKNOWN_ERROR', timestamp: new Date().toISOString(), }, diff --git a/nodes/EvolutionApi/properties/chat.fields.ts b/nodes/EvolutionApi/properties/chat.fields.ts index 7c5cc15..f7aa851 100644 --- a/nodes/EvolutionApi/properties/chat.fields.ts +++ b/nodes/EvolutionApi/properties/chat.fields.ts @@ -1,14 +1,14 @@ import { INodeProperties, NodePropertyTypes } from 'n8n-workflow'; export const chatFields: INodeProperties[] = [ - // Campos comuns para todas as operações + // Common fields for all operations { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância', + description: 'Enter the instance name', displayOptions: { show: { resource: ['chat-api'], @@ -16,14 +16,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para verificar número + // Fields for checking number { - displayName: 'Números', + displayName: 'Numbers', name: 'numbers', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Lista de números para verificar (separados por vírgula)', + description: 'List of numbers to check (comma-separated)', displayOptions: { show: { resource: ['chat-api'], @@ -32,14 +32,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para ler mensagens + // Fields for reading messages { - displayName: 'Contato', + displayName: 'Contact', name: 'remoteJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato', + description: 'Contact number', displayOptions: { show: { resource: ['chat-api'], @@ -48,12 +48,11 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string' as NodePropertyTypes, default: '', required: true, - displayOptions: { show: { resource: ['chat-api'], @@ -62,12 +61,12 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Mensagem É Minha', + displayName: 'Message Is From Me', name: 'fromMe', type: 'boolean' as NodePropertyTypes, default: false, required: true, - description: 'Se a mensagem foi enviada pela instância', + description: 'If the message was sent by the instance', displayOptions: { show: { resource: ['chat-api'], @@ -76,14 +75,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para gerenciar arquivo + // Fields for managing archive { - displayName: 'Contato', + displayName: 'Contact', name: 'chat', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato', + description: 'Contact number', displayOptions: { show: { resource: ['chat-api'], @@ -92,22 +91,22 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Ação', + displayName: 'Action', name: 'archive', type: 'options' as NodePropertyTypes, options: [ { - name: 'Arquivar', + name: 'Archive', value: true, }, { - name: 'Desarquivar', + name: 'Unarchive', value: false, }, ], default: true, required: true, - description: 'Escolha se deseja arquivar ou desarquivar a conversa', + description: 'Choose whether to archive or unarchive the conversation', displayOptions: { show: { resource: ['chat-api'], @@ -116,12 +115,12 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID da última mensagem', + description: 'ID of the last message', displayOptions: { show: { resource: ['chat-api'], @@ -130,12 +129,12 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Mensagem É Minha', + displayName: 'Message Is From Me', name: 'fromMe', type: 'boolean' as NodePropertyTypes, default: false, required: true, - description: 'Se a mensagem foi enviada pela instância', + description: 'If the message was sent by the instance', displayOptions: { show: { resource: ['chat-api'], @@ -144,14 +143,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para marcar como não lido + // Fields for marking as unread { - displayName: 'Contato', + displayName: 'Contact', name: 'chat', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato', + description: 'Contact number', displayOptions: { show: { resource: ['chat-api'], @@ -160,12 +159,12 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID da última mensagem', + description: 'ID of the last message', displayOptions: { show: { resource: ['chat-api'], @@ -174,12 +173,12 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Mensagem É Minha', + displayName: 'Message Is From Me', name: 'fromMe', type: 'boolean' as NodePropertyTypes, default: false, required: true, - description: 'Se a mensagem foi enviada pela instância', + description: 'If the message was sent by the instance', displayOptions: { show: { resource: ['chat-api'], @@ -188,14 +187,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para deletar mensagem + // Fields for deleting message { - displayName: 'Contato', + displayName: 'Contact', name: 'remoteJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato', + description: 'Contact number', displayOptions: { show: { resource: ['chat-api'], @@ -204,12 +203,12 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID da mensagem que será deletada', + description: 'ID of the message to be deleted', displayOptions: { show: { resource: ['chat-api'], @@ -218,12 +217,12 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Mensagem É Minha', + displayName: 'Message Is From Me', name: 'fromMe', type: 'boolean' as NodePropertyTypes, default: false, required: true, - description: 'Se a mensagem foi enviada pela instância', + description: 'If the message was sent by the instance', displayOptions: { show: { resource: ['chat-api'], @@ -232,12 +231,12 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do Participante', + displayName: 'Participant Number', name: 'participant', type: 'string', default: '', required: true, - description: 'Número do participante que enviou a mensagem', + description: 'Number of the participant who sent the message', displayOptions: { show: { resource: ['chat-api'], @@ -247,14 +246,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para buscar foto do perfil + // Fields for fetching profile picture { - displayName: 'Contato', + displayName: 'Contact', name: 'number', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato (ex: 5511999999999)', + description: 'Contact number (e.g., 5511999999999)', displayOptions: { show: { resource: ['chat-api'], @@ -263,14 +262,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para obter mídia em Base64 + // Fields for getting media in Base64 { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID da mensagem que contém a mídia', + description: 'ID of the message containing the media', displayOptions: { show: { resource: ['chat-api'], @@ -279,12 +278,12 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Converter Para MP4', + displayName: 'Convert To MP4', name: 'convertToMp4', type: 'boolean' as NodePropertyTypes, default: false, required: true, - description: 'Se deve converter o vídeo para formato MP4', + description: 'Whether to convert the video to MP4 format', displayOptions: { show: { resource: ['chat-api'], @@ -293,14 +292,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para editar mensagem + // Fields for editing message { - displayName: 'Contato', + displayName: 'Contact', name: 'remoteJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato', + description: 'Contact number', displayOptions: { show: { resource: ['chat-api'], @@ -309,12 +308,12 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID da mensagem que será editada', + description: 'ID of the message to be edited', displayOptions: { show: { resource: ['chat-api'], @@ -323,12 +322,12 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Nova Mensagem', + displayName: 'New Message', name: 'text', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Novo texto da mensagem', + description: 'New message text', displayOptions: { show: { resource: ['chat-api'], @@ -337,14 +336,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para enviar presença + // Fields for sending presence { - displayName: 'Contato', + displayName: 'Contact', name: 'remoteJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato', + description: 'Contact number', displayOptions: { show: { resource: ['chat-api'], @@ -353,22 +352,22 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Presença', + displayName: 'Presence', name: 'presence', type: 'options', options: [ { - name: 'Escrevendo...', + name: 'Typing...', value: 'composing', }, { - name: 'Gravando...', + name: 'Recording...', value: 'recording', }, ], default: 'composing', required: true, - description: 'Tipo de presença a ser enviada', + description: 'Type of presence to be sent', displayOptions: { show: { resource: ['chat-api'], @@ -382,7 +381,7 @@ export const chatFields: INodeProperties[] = [ type: 'number' as NodePropertyTypes, default: 1200, required: true, - description: 'Tempo em milissegundos que a presença ficará ativa', + description: 'Time in milliseconds that the presence will be active', displayOptions: { show: { resource: ['chat-api'], @@ -391,14 +390,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para bloquear contato + // Fields for blocking contact { - displayName: 'Contato', + displayName: 'Contact', name: 'remoteJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato', + description: 'Contact number', displayOptions: { show: { resource: ['chat-api'], @@ -407,22 +406,22 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Ação', + displayName: 'Action', name: 'status', type: 'options', options: [ { - name: 'Bloquear', + name: 'Block', value: 'block', }, { - name: 'Desbloquear', + name: 'Unblock', value: 'unblock', }, ], default: 'block', required: true, - description: 'Ação a ser executada', + description: 'Action to be performed', displayOptions: { show: { resource: ['chat-api'], @@ -431,14 +430,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para listar contatos + // Fields for listing contacts { - displayName: 'Listar Todos', + displayName: 'List All', name: 'listAll', type: 'boolean' as NodePropertyTypes, default: true, required: true, - description: 'Se deve listar todos os contatos', + description: 'Whether to list all contacts', displayOptions: { show: { resource: ['chat-api'], @@ -447,12 +446,12 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Contato', + displayName: 'Contact', name: 'remoteJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato específico', + description: 'Specific contact number', displayOptions: { show: { resource: ['chat-api'], @@ -462,14 +461,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para procurar mensagens + // Fields for searching messages { - displayName: 'Contato', + displayName: 'Contact', name: 'remoteJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato', + description: 'Contact number', displayOptions: { show: { resource: ['chat-api'], @@ -478,12 +477,11 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Página', + displayName: 'Page', name: 'page', type: 'number' as NodePropertyTypes, default: 1, - - description: 'Número da página', + description: 'Page number', displayOptions: { show: { resource: ['chat-api'], @@ -492,12 +490,11 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Quantidade Por Página', + displayName: 'Quantity Per Page', name: 'offset', type: 'number' as NodePropertyTypes, default: 10, - - description: 'Quantidade de mensagens por página', + description: 'Number of messages per page', displayOptions: { show: { resource: ['chat-api'], @@ -506,14 +503,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para procurar status de mensagens + // Fields for searching message status { - displayName: 'Contato', + displayName: 'Contact', name: 'remoteJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato', + description: 'Contact number', displayOptions: { show: { resource: ['chat-api'], @@ -522,12 +519,11 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string' as NodePropertyTypes, default: '', required: true, - displayOptions: { show: { resource: ['chat-api'], @@ -536,12 +532,11 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Página', + displayName: 'Page', name: 'page', type: 'number' as NodePropertyTypes, default: 1, - - description: 'Número da página', + description: 'Page number', displayOptions: { show: { resource: ['chat-api'], @@ -550,12 +545,11 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Quantidade Por Página', + displayName: 'Quantity Per Page', name: 'offset', type: 'number' as NodePropertyTypes, default: 10, - - description: 'Quantidade de mensagens por página', + description: 'Number of messages per page', displayOptions: { show: { resource: ['chat-api'], @@ -564,14 +558,14 @@ export const chatFields: INodeProperties[] = [ }, }, - // Campos para procurar chats + // Fields for searching chats { - displayName: 'Contato', + displayName: 'Contact', name: 'remoteJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato', + description: 'Contact number', displayOptions: { show: { resource: ['chat-api'], @@ -580,12 +574,11 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string' as NodePropertyTypes, default: '', required: true, - displayOptions: { show: { resource: ['chat-api'], @@ -594,12 +587,11 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Página', + displayName: 'Page', name: 'page', type: 'number' as NodePropertyTypes, default: 1, - - description: 'Número da página', + description: 'Page number', displayOptions: { show: { resource: ['chat-api'], @@ -608,12 +600,11 @@ export const chatFields: INodeProperties[] = [ }, }, { - displayName: 'Quantidade Por Página', + displayName: 'Quantity Per Page', name: 'offset', type: 'number' as NodePropertyTypes, default: 10, - - description: 'Quantidade de chats por página', + description: 'Number of chats per page', displayOptions: { show: { resource: ['chat-api'], diff --git a/nodes/EvolutionApi/properties/chat.operations.ts b/nodes/EvolutionApi/properties/chat.operations.ts index 438cf08..7c04ae3 100644 --- a/nodes/EvolutionApi/properties/chat.operations.ts +++ b/nodes/EvolutionApi/properties/chat.operations.ts @@ -1,7 +1,7 @@ import { INodeProperties } from 'n8n-workflow'; export const chatOperations: INodeProperties = { - displayName: 'Operação', + displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, @@ -12,87 +12,87 @@ export const chatOperations: INodeProperties = { }, options: [ { - name: 'Verificar Número', - action: 'Verificar n mero no whats app', - description: 'Verifica se um número está registrado no WhatsApp', + name: 'Check Number', + action: 'Check number on whats app', + description: 'Checks if a number is registered on WhatsApp', value: 'check-number', }, { - name: 'Ler Mensagens', - action: 'Marcar mensagens como lidas', - description: 'Marca mensagens específicas como lidas', + name: 'Read Messages', + action: 'Mark messages as read', + description: 'Marks specific messages as read', value: 'read-messages', }, { - name: 'Gerenciar Arquivo', - action: 'Gerenciar arquivo de conversa', - description: 'Arquiva ou desarquiva uma conversa', + name: 'Manage Archive', + action: 'Manage conversation archive', + description: 'Archives or unarchives a conversation', value: 'manage-archive', }, { - name: 'Marcar Como Não Lido', - action: 'Marcar conversa como n o lida', - description: 'Marca uma conversa específica como não lida', + name: 'Mark As Unread', + action: 'Mark conversation as unread', + description: 'Marks a specific conversation as unread', value: 'mark-unread', }, { - name: 'Deletar Mensagem', - action: 'Deletar mensagem', - description: 'Deleta uma mensagem específica para todos', + name: 'Delete Message', + action: 'Delete message', + description: 'Deletes a specific message for everyone', value: 'delete-message', }, { - name: 'Buscar Foto Do Perfil', - action: 'Buscar foto do perfil', - description: 'Obtém a URL da foto do perfil de um contato', + name: 'Fetch Profile Picture', + action: 'Fetch profile picture', + description: 'Gets the URL of a contact\'s profile picture', value: 'fetch-profile-picture', }, { - name: 'Obter Mídia Em Base64', - action: 'Obter m dia em base64', - description: 'Obtém o conteúdo de uma mídia em formato Base64', + name: 'Get Media In Base64', + action: 'Get media in base64', + description: 'Gets the content of a media in Base64 format', value: 'get-media-base64', }, { - name: 'Editar Mensagem', - action: 'Editar mensagem', - description: 'Edita uma mensagem enviada anteriormente', + name: 'Update Message', + action: 'Update message', + description: 'Edits a previously sent message', value: 'update-message', }, { - name: 'Enviar Presença', - action: 'Enviar presen a', - description: 'Envia o status de presença (digitando/gravando) para um contato', + name: 'Send Presence', + action: 'Send presence', + description: 'Sends the presence status (typing/recording) to a contact', value: 'send-presence', }, { - name: 'Bloquear Contato', - action: 'Bloquear contato', - description: 'Bloqueia ou desbloqueia um contato', + name: 'Block Contact', + action: 'Block contact', + description: 'Blocks or unblocks a contact', value: 'block-contact', }, { - name: 'Listar Contatos', - action: 'Listar contatos', - description: 'Lista todos os contatos ou busca um contato específico', + name: 'Find Contacts', + action: 'Find contacts', + description: 'Lists all contacts or searches for a specific contact', value: 'find-contacts', }, { - name: 'Procurar Mensagens', - action: 'Procurar mensagens de um contato', - description: 'Busca mensagens de um contato específico', + name: 'Find Messages', + action: 'Find messages from a contact', + description: 'Searches for messages from a specific contact', value: 'find-messages', }, { - name: 'Procurar Status', - action: 'Procurar status de mensagens', - description: 'Busca status de mensagens de um contato específico', + name: 'Find Status Messages', + action: 'Find status of messages', + description: 'Searches for message status of a specific contact', value: 'find-status-messages', }, { - name: 'Procurar Chats', - action: 'Procurar chats', - description: 'Busca chats de um contato específico', + name: 'Find Chats', + action: 'Find chats', + description: 'Searches for chats of a specific contact', value: 'find-chats', }, ], diff --git a/nodes/EvolutionApi/properties/events.fields.ts b/nodes/EvolutionApi/properties/events.fields.ts index a48ec97..0024fba 100644 --- a/nodes/EvolutionApi/properties/events.fields.ts +++ b/nodes/EvolutionApi/properties/events.fields.ts @@ -1,15 +1,15 @@ import { INodeProperties } from 'n8n-workflow'; -// Campo das Eventos +// Events Fields export const eventsFields: INodeProperties[] = [ - // Campos = Webhook + // Fields = Webhook { - displayName: 'Nome Da Instancia', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar a mensagem', + description: 'Enter the name of the instance that will send the message', displayOptions: { show: { resource: ['events-api'], @@ -18,21 +18,21 @@ export const eventsFields: INodeProperties[] = [ }, }, { - displayName: 'O Que Deseja Fazer', + displayName: 'What Do You Want To Do', name: 'resourceForWebhook', type: 'options', options: [ { - name: 'Definir Webhook', + name: 'Set Webhook', value: 'setWebhook', }, { - name: 'Verificar Webhook', + name: 'Check Webhook', value: 'findWebhook', }, ], default: 'setWebhook', - description: 'Escolha entre definir um novo webhook ou verificar o webhook', + description: 'Choose between setting a new webhook or checking the webhook', displayOptions: { show: { resource: ['events-api'], @@ -41,7 +41,7 @@ export const eventsFields: INodeProperties[] = [ }, }, { - displayName: 'Ativar Webhook', + displayName: 'Enable Webhook', name: 'enabled', type: 'boolean', default: true, @@ -55,11 +55,11 @@ export const eventsFields: INodeProperties[] = [ }, }, { - displayName: 'Url Do Webhook', + displayName: 'Webhook URL', name: 'webhookUrl', type: 'string', default: '', - description: 'Digite a URL que vai receber os eventos do Webhook', + description: 'Enter the URL that will receive the Webhook events', displayOptions: { show: { resource: ['events-api'], @@ -69,12 +69,11 @@ export const eventsFields: INodeProperties[] = [ }, }, { - displayName: 'Webhook Por Eventos', + displayName: 'Webhook By Events', name: 'webhookByEvents', type: 'boolean', default: false, - description: - 'Whether to create a route for each event by appending the event name to the end of the URL', + description: 'Whether to create a route for each event by appending the event name to the end of the URL', displayOptions: { show: { resource: ['events-api'], @@ -84,7 +83,7 @@ export const eventsFields: INodeProperties[] = [ }, }, { - displayName: 'Base64 No Webhook', + displayName: 'Base64 In Webhook', name: 'webhookBase64', type: 'boolean', default: false, @@ -98,7 +97,7 @@ export const eventsFields: INodeProperties[] = [ }, }, { - displayName: 'Eventos', + displayName: 'Events', name: 'webhookEvents', type: 'multiOptions', displayOptions: { @@ -205,14 +204,14 @@ export const eventsFields: INodeProperties[] = [ ], }, - // Campos = RabbitMQ + // Fields = RabbitMQ { - displayName: 'Nome Da Instancia', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar a mensagem', + description: 'Enter the name of the instance that will send the message', displayOptions: { show: { resource: ['events-api'], @@ -221,21 +220,21 @@ export const eventsFields: INodeProperties[] = [ }, }, { - displayName: 'O Que Deseja Fazer', + displayName: 'What Do You Want To Do', name: 'resourceForRabbitMQ', type: 'options', options: [ { - name: 'Definir RabbitMQ', + name: 'Set RabbitMQ', value: 'setRabbitMQ', }, { - name: 'Verificar RabbitMQ', + name: 'Check RabbitMQ', value: 'findRabbitMQ', }, ], default: 'setRabbitMQ', - description: 'Escolha entre ativar/desativar RabbitMQ ou verificar o RabbitMQ', + description: 'Choose between enabling/disabling RabbitMQ or checking RabbitMQ', displayOptions: { show: { resource: ['events-api'], @@ -244,7 +243,7 @@ export const eventsFields: INodeProperties[] = [ }, }, { - displayName: 'Ativar RabbitMQ', + displayName: 'Enable RabbitMQ', name: 'enabled', type: 'boolean', default: true, @@ -258,7 +257,7 @@ export const eventsFields: INodeProperties[] = [ }, }, { - displayName: 'Eventos', + displayName: 'Events', name: 'rabbitMQEvents', type: 'multiOptions', displayOptions: { diff --git a/nodes/EvolutionApi/properties/events.operations.ts b/nodes/EvolutionApi/properties/events.operations.ts index 3ac614f..2fa78d0 100644 --- a/nodes/EvolutionApi/properties/events.operations.ts +++ b/nodes/EvolutionApi/properties/events.operations.ts @@ -1,33 +1,33 @@ import { INodeProperties } from 'n8n-workflow'; -// Opções da events-api (Eventos) +// Options for events-api (Events) export const eventsOperationsOptions: INodeProperties = { - displayName: 'Operação', + displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { - resource: ['events-api'], // Value do Resource + resource: ['events-api'], // Resource Value }, }, options: [ - // Opção = Enviar mensagem de Texto + // Option = Send Text Message { // Set/find Webhook name: 'Webhook', action: 'Webhook', - description: 'Define/Busca integração com Webhook', + description: 'Set/Find integration with Webhook', value: 'webhook', }, { // Set/find Rabbitmq name: 'RabbitMQ', action: 'Rabbitmq', - description: 'Define/Busca integração com RabbitMQ', + description: 'Set/Find integration with RabbitMQ', value: 'rabbitmq', }, ], - // Definindo como padrão a opção "Enviar Texto" + // Setting "Send Text" option as default default: 'webhook', }; diff --git a/nodes/EvolutionApi/properties/groups.fields.ts b/nodes/EvolutionApi/properties/groups.fields.ts index 70d7ba3..b548467 100644 --- a/nodes/EvolutionApi/properties/groups.fields.ts +++ b/nodes/EvolutionApi/properties/groups.fields.ts @@ -2,12 +2,12 @@ import { INodeProperties, NodePropertyTypes } from 'n8n-workflow'; export const groupsFields: INodeProperties[] = [ { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância que vai criar o grupo', + description: 'Enter the name of the instance that will create the group', displayOptions: { show: { resource: ['groups-api'], @@ -16,12 +16,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Do Grupo', + displayName: 'Group Name', name: 'subject', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome do grupo que será criado', + description: 'Enter the name of the group to be created', displayOptions: { show: { resource: ['groups-api'], @@ -30,12 +30,11 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Descrição', + displayName: 'Description', name: 'description', type: 'string' as NodePropertyTypes, default: '', - - description: 'Digite a descrição do grupo (opcional)', + description: 'Enter the group description (optional)', displayOptions: { show: { resource: ['groups-api'], @@ -44,12 +43,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Participantes', + displayName: 'Participants', name: 'participants', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite os números dos participantes separados por vírgula (ex: 5511999999999,5511888888888)', + description: 'Enter participant numbers separated by commas (e.g., 5511999999999,5511888888888)', displayOptions: { show: { resource: ['groups-api'], @@ -58,12 +57,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância que vai atualizar a imagem', + description: 'Enter the name of the instance that will update the image', displayOptions: { show: { resource: ['groups-api'], @@ -72,12 +71,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Do Grupo', + displayName: 'Group ID', name: 'groupJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID do grupo que terá a imagem atualizada', + description: 'ID of the group whose image will be updated', displayOptions: { show: { resource: ['groups-api'], @@ -86,12 +85,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'URL Da Imagem', + displayName: 'Image URL', name: 'image', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'URL da imagem que será definida como foto do grupo', + description: 'URL of the image to be set as the group photo', displayOptions: { show: { resource: ['groups-api'], @@ -100,12 +99,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância que vai atualizar o nome do grupo', + description: 'Enter the name of the instance that will update the group name', displayOptions: { show: { resource: ['groups-api'], @@ -114,12 +113,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Do Grupo', + displayName: 'Group ID', name: 'groupJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID do grupo que terá o nome atualizado', + description: 'ID of the group whose name will be updated', displayOptions: { show: { resource: ['groups-api'], @@ -128,12 +127,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Novo Nome Do Grupo', + displayName: 'New Group Name', name: 'subject', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Novo nome que será definido para o grupo', + description: 'New name to be set for the group', displayOptions: { show: { resource: ['groups-api'], @@ -142,12 +141,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância que vai atualizar a descrição', + description: 'Enter the name of the instance that will update the description', displayOptions: { show: { resource: ['groups-api'], @@ -156,12 +155,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Do Grupo', + displayName: 'Group ID', name: 'groupJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID do grupo que terá a descrição atualizada', + description: 'ID of the group whose description will be updated', displayOptions: { show: { resource: ['groups-api'], @@ -170,12 +169,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nova Descrição', + displayName: 'New Description', name: 'description', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Nova descrição que será definida para o grupo', + description: 'New description to be set for the group', displayOptions: { show: { resource: ['groups-api'], @@ -184,12 +183,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância que vai buscar o código', + description: 'Enter the name of the instance that will fetch the code', displayOptions: { show: { resource: ['groups-api'], @@ -198,12 +197,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Do Grupo', + displayName: 'Group ID', name: 'groupJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID do grupo para obter o código de convite', + description: 'ID of the group to get the invite code', displayOptions: { show: { resource: ['groups-api'], @@ -212,12 +211,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância que vai revogar o código', + description: 'Enter the name of the instance that will revoke the code', displayOptions: { show: { resource: ['groups-api'], @@ -226,12 +225,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Do Grupo', + displayName: 'Group ID', name: 'groupJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID do grupo para revogar o código de convite', + description: 'ID of the group to revoke the invite code', displayOptions: { show: { resource: ['groups-api'], @@ -240,12 +239,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância que vai enviar o convite', + description: 'Enter the name of the instance that will send the invite', displayOptions: { show: { resource: ['groups-api'], @@ -254,12 +253,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Do Grupo', + displayName: 'Group ID', name: 'groupJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID do grupo para enviar o convite', + description: 'ID of the group to send the invite', displayOptions: { show: { resource: ['groups-api'], @@ -268,12 +267,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Mensagem Do Convite', + displayName: 'Invite Message', name: 'description', type: 'string' as NodePropertyTypes, - default: 'Segue o link do grupo', + default: 'Here is the group link', required: true, - description: 'Mensagem que será enviada junto com o link do convite', + description: 'Message that will be sent along with the invite link', displayOptions: { show: { resource: ['groups-api'], @@ -282,12 +281,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Destinatários', + displayName: 'Recipients', name: 'numbers', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite os números dos destinatários separados por vírgula (ex: 5511999999999,5511888888888)', + description: 'Enter recipient numbers separated by commas (e.g., 5511999999999,5511888888888)', displayOptions: { show: { resource: ['groups-api'], @@ -296,12 +295,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância que vai buscar o grupo', + description: 'Enter the name of the instance that will fetch the group', displayOptions: { show: { resource: ['groups-api'], @@ -310,12 +309,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Código Do Convite', + displayName: 'Invite Code', name: 'inviteCode', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Código do convite do grupo (ex: JZNHJLvnNd04UvGefiEZAA)', + description: 'Group invite code (e.g., JZNHJLvnNd04UvGefiEZAA)', displayOptions: { show: { resource: ['groups-api'], @@ -324,12 +323,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância', + description: 'Enter the instance name', displayOptions: { show: { resource: ['groups-api'], @@ -338,26 +337,26 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Método De Busca', + displayName: 'Search Method', name: 'searchMethod', type: 'options' as NodePropertyTypes, options: [ { - name: 'Por Código De Convite', + name: 'By Invite Code', value: 'inviteCode', }, { - name: 'Por ID Do Grupo', + name: 'By Group ID', value: 'groupJid', }, { - name: 'Buscar Todos Os Grupos', + name: 'Fetch All Groups', value: 'fetchAll', }, ], default: 'inviteCode', required: true, - description: 'Escolha o método para buscar os grupos', + description: 'Choose the method to search for groups', displayOptions: { show: { resource: ['groups-api'], @@ -366,12 +365,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Código Do Convite', + displayName: 'Invite Code', name: 'inviteCode', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Código do convite do grupo (ex: JZNHJLvnNd04UvGefiEZAA)', + description: 'Group invite code (e.g., JZNHJLvnNd04UvGefiEZAA)', displayOptions: { show: { resource: ['groups-api'], @@ -381,12 +380,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Do Grupo', + displayName: 'Group ID', name: 'groupJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID do grupo para buscar informações', + description: 'Group ID to fetch information', displayOptions: { show: { resource: ['groups-api'], @@ -396,12 +395,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Obter Participantes', + displayName: 'Get Participants', name: 'getParticipants', type: 'boolean' as NodePropertyTypes, default: false, - description: 'Se deve obter a lista de participantes dos grupos', + description: 'Whether to get the list of group participants', displayOptions: { show: { resource: ['groups-api'], @@ -411,12 +410,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância', + description: 'Enter the instance name', displayOptions: { show: { resource: ['groups-api'], @@ -425,12 +424,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Do Grupo', + displayName: 'Group ID', name: 'groupJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID do grupo para buscar os participantes', + description: 'ID of the group to fetch participants', displayOptions: { show: { resource: ['groups-api'], @@ -439,12 +438,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância', + description: 'Enter the instance name', displayOptions: { show: { resource: ['groups-api'], @@ -453,12 +452,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Do Grupo', + displayName: 'Group ID', name: 'groupJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID do grupo para atualizar os membros', + description: 'ID of the group to update members', displayOptions: { show: { resource: ['groups-api'], @@ -467,30 +466,30 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Ação', + displayName: 'Action', name: 'action', type: 'options' as NodePropertyTypes, options: [ { - name: 'Adicionar Membro', + name: 'Add Member', value: 'add', }, { - name: 'Remover Membro', + name: 'Remove Member', value: 'remove', }, { - name: 'Promover a Administrador', + name: 'Promote to Admin', value: 'promote', }, { - name: 'Rebaixar Para Membro', + name: 'Demote to Member', value: 'demote', }, ], default: 'add', required: true, - description: 'Ação a ser executada com os membros', + description: 'Action to be performed with members', displayOptions: { show: { resource: ['groups-api'], @@ -499,12 +498,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Membros', + displayName: 'Members', name: 'participants', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Lista de números dos membros separados por vírgula (ex: 5511999999999,5511888888888)', + description: 'List of member numbers separated by commas (e.g., 5511999999999,5511888888888)', displayOptions: { show: { resource: ['groups-api'], @@ -513,12 +512,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância', + description: 'Enter the instance name', displayOptions: { show: { resource: ['groups-api'], @@ -527,12 +526,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Do Grupo', + displayName: 'Group ID', name: 'groupJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID do grupo para atualizar as configurações', + description: 'ID of the group to update settings', displayOptions: { show: { resource: ['groups-api'], @@ -541,30 +540,30 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Ação', + displayName: 'Action', name: 'action', type: 'options' as NodePropertyTypes, options: [ { - name: 'Somente Admins Enviam Mensagens', + name: 'Admins Only Send Messages', value: 'announcement', }, { - name: 'Todos Enviam Mensagens', + name: 'Everyone Sends Messages', value: 'not_announcement', }, { - name: 'Somente Admins Editam Configurações', + name: 'Admins Only Edit Settings', value: 'locked', }, { - name: 'Todos Editam Configurações', + name: 'Everyone Edits Settings', value: 'unlocked', }, ], default: 'not_announcement', required: true, - description: 'Configuração a ser aplicada no grupo', + description: 'Setting to be applied to the group', displayOptions: { show: { resource: ['groups-api'], @@ -573,12 +572,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância', + description: 'Enter the instance name', displayOptions: { show: { resource: ['groups-api'], @@ -587,12 +586,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Do Grupo', + displayName: 'Group ID', name: 'groupJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID do grupo para configurar mensagens temporárias', + description: 'ID of the group to configure temporary messages', displayOptions: { show: { resource: ['groups-api'], @@ -601,30 +600,30 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Expiração', + displayName: 'Expiration', name: 'expiration', type: 'options' as NodePropertyTypes, options: [ { - name: 'Desativado', + name: 'Disabled', value: 0, }, { - name: '24 Horas', + name: '24 Hours', value: 86400, }, { - name: '7 Dias', + name: '7 Days', value: 604800, }, { - name: '90 Dias', + name: '90 Days', value: 7776000, }, ], default: 0, required: true, - description: 'Tempo de expiração das mensagens', + description: 'Message expiration time', displayOptions: { show: { resource: ['groups-api'], @@ -633,12 +632,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância', + description: 'Enter the instance name', displayOptions: { show: { resource: ['groups-api'], @@ -647,12 +646,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Do Grupo', + displayName: 'Group ID', name: 'groupJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'ID do grupo que deseja sair', + description: 'ID of the group you want to leave', displayOptions: { show: { resource: ['groups-api'], @@ -661,12 +660,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância que vai entrar no grupo', + description: 'Enter the name of the instance that will join the group', displayOptions: { show: { resource: ['groups-api'], @@ -675,12 +674,12 @@ export const groupsFields: INodeProperties[] = [ }, }, { - displayName: 'Código Do Convite', + displayName: 'Invite Code', name: 'inviteCode', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o código do convite do grupo (ex: JZNHJLvnNd04UvGefiEZAA)', + description: 'Enter the group invite code (e.g., JZNHJLvnNd04UvGefiEZAA)', displayOptions: { show: { resource: ['groups-api'], diff --git a/nodes/EvolutionApi/properties/groups.operations.ts b/nodes/EvolutionApi/properties/groups.operations.ts index 3b8a0c4..05517b1 100644 --- a/nodes/EvolutionApi/properties/groups.operations.ts +++ b/nodes/EvolutionApi/properties/groups.operations.ts @@ -1,7 +1,7 @@ import { INodeProperties } from 'n8n-workflow'; export const groupsOperations: INodeProperties = { - displayName: 'Operação', + displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, @@ -12,87 +12,87 @@ export const groupsOperations: INodeProperties = { }, options: [ { - name: 'Criar Grupo', - action: 'Criar um novo grupo', - description: 'Cria um novo grupo no WhatsApp', + name: 'Create Group', + action: 'Create a new group', + description: 'Creates a new group in WhatsApp', value: 'create-group', }, { - name: 'Atualizar Imagem Do Grupo', - action: 'Atualizar imagem do grupo', - description: 'Atualiza a imagem de perfil do grupo', + name: 'Update Group Picture', + action: 'Update group picture', + description: 'Updates the group profile picture', value: 'update-group-picture', }, { - name: 'Atualizar Nome Do Grupo', - action: 'Atualizar nome do grupo', - description: 'Atualiza o nome/título do grupo', + name: 'Update Group Name', + action: 'Update group name', + description: 'Updates the group name/title', value: 'update-group-name', }, { - name: 'Atualizar Descrição Do Grupo', - action: 'Atualizar descri o do grupo', - description: 'Atualiza a descrição do grupo', + name: 'Update Group Description', + action: 'Update group description', + description: 'Updates the group description', value: 'update-group-description', }, { - name: 'Atualizar Configurações', - action: 'Atualizar configura es do grupo', - description: 'Atualiza as configurações de permissões do grupo', + name: 'Update Settings', + action: 'Update group settings', + description: 'Updates the group permission settings', value: 'update-settings', }, { - name: 'Atualizar Membros', - action: 'Atualizar membros do grupo', - description: 'Adiciona, remove ou atualiza permissões de membros', + name: 'Update Members', + action: 'Update group members', + description: 'Adds, removes, or updates member permissions', value: 'update-participants', }, { - name: 'Buscar Link De Convite', - action: 'Buscar link de convite', - description: 'Obtém o link de convite do grupo', + name: 'Fetch Invite Link', + action: 'Fetch invite link', + description: 'Gets the group invite link', value: 'fetch-invite-code', }, { - name: 'Revogar Link De Convite', - action: 'Revogar link de convite', - description: 'Revoga o link de convite atual do grupo', + name: 'Revoke Invite Link', + action: 'Revoke invite link', + description: 'Revokes the current group invite link', value: 'revoke-invite-code', }, { - name: 'Enviar Link De Convite', - action: 'Enviar link de convite', - description: 'Envia o link de convite do grupo para contatos', + name: 'Send Invite Link', + action: 'Send invite link', + description: 'Sends the group invite link to contacts', value: 'send-invite-link', }, { - name: 'Buscar Grupos', - action: 'Buscar grupos', - description: 'Busca informações de grupos por diferentes métodos', + name: 'Fetch Groups', + action: 'Fetch groups', + description: 'Fetches group information by different methods', value: 'fetch-groups', }, { - name: 'Encontrar Participantes', - action: 'Encontrar participantes do grupo', - description: 'Obtém a lista de participantes de um grupo', + name: 'Find Participants', + action: 'Find group participants', + description: 'Gets the list of participants in a group', value: 'find-participants', }, { - name: 'Mensagens Temporárias', - action: 'Configurar mensagens tempor rias', - description: 'Define o tempo de expiração das mensagens no grupo', + name: 'Temporary Messages', + action: 'Configure temporary messages', + description: 'Sets the message expiration time in the group', value: 'toggle-ephemeral', }, { - name: 'Entrar No Grupo', - action: 'Entrar no grupo', - description: 'Entra em um grupo usando o código de convite', + name: 'Join Group', + action: 'Join group', + description: 'Joins a group using the invite code', value: 'join-group', }, { - name: 'Sair Do Grupo', - action: 'Sair do grupo', - description: 'Remove a instância do grupo', + name: 'Leave Group', + action: 'Leave group', + description: 'Removes the instance from the group', value: 'leave-group', }, ], diff --git a/nodes/EvolutionApi/properties/index.ts b/nodes/EvolutionApi/properties/index.ts index e99db8b..b05f6d7 100644 --- a/nodes/EvolutionApi/properties/index.ts +++ b/nodes/EvolutionApi/properties/index.ts @@ -14,21 +14,21 @@ import { chatOperations } from './chat.operations'; import { profileFields } from './profile.fields'; import { profileOperationsOptions } from './profile.operations'; const resourcesOptions: INodeProperties = { - displayName: 'Recurso', + displayName: 'Resource', name: 'resource', type: 'options', noDataExpression: true, options: [ { - name: 'Instancia', + name: 'Instance', value: 'instances-api', }, { - name: 'Mensagem', + name: 'Message', value: 'messages-api', }, { - name: 'Grupo', + name: 'Group', value: 'groups-api', }, { @@ -36,15 +36,15 @@ const resourcesOptions: INodeProperties = { value: 'chat-api', }, { - name: 'Perfil', + name: 'Profile', value: 'profile-api', }, { - name: 'Evento', + name: 'Event', value: 'events-api', }, { - name: 'Integração', + name: 'Integration', value: 'integrations-api', }, ], @@ -53,21 +53,21 @@ const resourcesOptions: INodeProperties = { export const evolutionNodeProperties = [ resourcesOptions, - // Funções disponíveis quando selecionado o recurso "Instancias" + // Available functions when the "Instances" resource is selected instancesOperationsOptions, - // Funções disponíveis quando selecionado o recurso "Mensagens" + // Available functions when the "Messages" resource is selected messagesOperationsOptions, - // Funções disponíveis quando selecionado o recurso "Grupos" + // Available functions when the "Groups" resource is selected groupsOperations, - // Funções disponíveis quando selecionado o recurso "Eventos" + // Available functions when the "Events" resource is selected eventsOperationsOptions, - // Funções disponíveis quando selecionado o recurso "Integrações" + // Available functions when the "Integrations" resource is selected integrationsOperationsOptions, - // Funções disponíveis quando selecionado o recurso "Perfil" + // Available functions when the "Profile" resource is selected profileOperationsOptions, - // Funções disponíveis quando selecionado o recurso "Chat" + // Available functions when the "Chat" resource is selected chatOperations, - // Campos disponíveis quando selecionado o recurso e alguma operação + // Available fields when the resource and an operation are selected ...instancesFields, ...messagesFields, ...groupsFields, diff --git a/nodes/EvolutionApi/properties/instances.fields.ts b/nodes/EvolutionApi/properties/instances.fields.ts index 1c12d50..3367549 100644 --- a/nodes/EvolutionApi/properties/instances.fields.ts +++ b/nodes/EvolutionApi/properties/instances.fields.ts @@ -1,15 +1,15 @@ import { INodeProperties } from 'n8n-workflow'; -// Campos das instancias +// Instance fields export const instancesFields: INodeProperties[] = [ - // Campos = Criar Instancia + // Fields = Create Instance { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome para a instância', + description: 'Enter the name for the instance', displayOptions: { show: { resource: ['instances-api'], @@ -18,7 +18,7 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Apikey Para Instancia', + displayName: 'API Key For Instance', name: 'token', type: 'string', typeOptions: { @@ -26,7 +26,7 @@ export const instancesFields: INodeProperties[] = [ }, default: '', - description: 'Opicional: Digite um Token para a instancia', + description: 'Optional: Enter a Token for the instance', displayOptions: { show: { resource: ['instances-api'], @@ -35,13 +35,12 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do WhatsApp', + displayName: 'WhatsApp Number', name: 'number', type: 'string', default: '', - description: - 'Opicional: Numero que vai ser conectado na instancia, para receber o Código de pareamento', + description: 'Optional: Number that will be connected to the instance, to receive the pairing code', displayOptions: { show: { resource: ['instances-api'], @@ -50,12 +49,79 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Opções', + displayName: 'Options', name: 'options_Create_instance', type: 'collection', - placeholder: 'Adicionar Campo', + placeholder: 'Add Field', default: {}, options: [ + { + displayName: 'Behavior', + name: 'instanceSettings', + type: 'fixedCollection', + typeOptions: { + multipleValues: false, + }, + default: { settings: {} }, + options: [ + { + displayName: 'Instance Behavior', + name: 'settings', + values: [ + { + displayName: 'Reject Calls', + name: 'rejectCall', + type: 'boolean', + default: false, + description: 'Whether to automatically reject incoming calls', + }, + { + displayName: 'Message on Reject', + name: 'msgCall', + type: 'string', + default: '', + description: 'Whether to send a message after rejecting a call, and if so, what message', + }, + { + displayName: 'Ignore Groups', + name: 'groupsIgnore', + type: 'boolean', + default: false, + description: 'Whether to ignore messages from groups', + }, + { + displayName: 'Always Online', + name: 'alwaysOnline', + type: 'boolean', + default: false, + description: 'Whether to keep the status always set to Online', + }, + { + displayName: 'Read Messages', + name: 'readMessages', + type: 'boolean', + default: false, + description: 'Whether to automatically mark messages as read', + }, + { + displayName: 'Read Status', + name: 'readStatus', + type: 'boolean', + default: false, + description: 'Whether to allow the API to view the Status of added contacts', + }, + { + displayName: 'Sync History', + name: 'syncFullHistory', + type: 'boolean', + default: false, + description: 'Whether to synchronize the full message history with the API', + }, + ], + }, + ], + description: 'Instance Behavior', + }, { displayName: 'Chatwoot', name: 'chatwoot', @@ -66,177 +132,107 @@ export const instancesFields: INodeProperties[] = [ default: { settings: {} }, options: [ { - displayName: 'Configurações Do Chatwoot', + displayName: 'Chatwoot Settings', name: 'chatwootSettings', values: [ { - displayName: 'ID Da Conta Do Chatwoot', + displayName: 'Chatwoot Account ID', name: 'chatwootAccountId', type: 'string', default: '', - description: 'Digite o ID da conta do Chatwoot', + description: 'Enter the Chatwoot account ID', }, { - displayName: 'Token De Admin Do Chatwoot', + displayName: 'Chatwoot Admin Token', name: 'chatwootToken', type: 'string', typeOptions: { password: true, }, default: '', - description: 'Digite o token de admin do Chatwoot', + description: 'Enter the Chatwoot admin token', }, { - displayName: 'Link Do Chatwoot', + displayName: 'Chatwoot URL', name: 'chatwootUrl', type: 'string', default: '', - description: 'Digite o link do Chatwoot', + description: 'Enter the Chatwoot URL', }, { - displayName: 'Assinatura Do Agente Do Chatwoot', + displayName: 'Chatwoot Agent Signature', name: 'chatwootSignMsg', type: 'boolean', default: false, description: 'Whether to enable or disable the Chatwoot agent signature', }, { - displayName: 'Reabrir Mensagens No Chatwoot', + displayName: 'Reopen Messages in Chatwoot', name: 'chatwootReopenConversation', type: 'boolean', default: false, description: 'Whether to enable or disable reopening messages in Chatwoot', }, { - displayName: 'Iniciar Conversas Como Pendentes No Chatwoot', + displayName: 'Start Conversations as Pending in Chatwoot', name: 'chatwootConversationPending', type: 'boolean', default: false, description: 'Whether to start conversations as pending in Chatwoot', }, { - displayName: 'Importar Contatos Para O Chatwoot', + displayName: 'Import Contacts to Chatwoot', name: 'chatwootImportContacts', type: 'boolean', default: false, description: 'Whether to import contacts to Chatwoot', }, { - displayName: 'Nome Da Inbox Do Chatwoot', + displayName: 'Chatwoot Inbox Name', name: 'chatwootNameInbox', type: 'string', default: '', - description: 'Digite o nome da Inbox do Chatwoot', + description: 'Enter the Chatwoot Inbox name', }, { - displayName: 'Mesclar Contatos Brasileiros No Chatwoot', + displayName: 'Merge Brazilian Contacts in Chatwoot', name: 'chatwootMergeBrazilContacts', type: 'boolean', default: false, description: 'Whether to merge Brazilian contacts in Chatwoot', }, { - displayName: 'Importar Mensagens Para O Chatwoot', + displayName: 'Import Messages to Chatwoot', name: 'chatwootImportMessages', type: 'boolean', default: false, description: 'Whether to import messages to Chatwoot', }, { - displayName: 'Importar Mensagens De Quantos Dias Para O Chatwoot', + displayName: 'Import Messages From How Many Days to Chatwoot', name: 'chatwootDaysLimitImportMessages', type: 'number', default: 0, - description: - 'Digite o número de dias para limitar a importação de mensagens para o Chatwoot', + description: 'Enter the number of days to limit message import to Chatwoot', }, { - displayName: 'Nome Do Contato De QRCode No Chatwoot', + displayName: 'QRCode Contact Name in Chatwoot', name: 'chatwootOrganization', type: 'string', default: '', - description: 'Digite o nome do contato de QRCode no Chatwoot', + description: 'Enter the QRCode contact name in Chatwoot', }, { - displayName: 'Url Do Logo Para O Contato No Chatwoot', + displayName: 'Logo URL for Contact in Chatwoot', name: 'chatwootLogo', type: 'string', - default: - 'https://github.com/user-attachments/assets/4d1e9cd6-377a-4383-820a-9a97e6cfbb63', - description: 'Digite a URL do logo para o contato no Chatwoot', + default: 'https://github.com/user-attachments/assets/4d1e9cd6-377a-4383-820a-9a97e6cfbb63', + description: 'Enter the logo URL for the contact in Chatwoot', }, ], }, ], - description: 'Configurações do Chatwoot', - }, - { - displayName: 'Comportamento', - name: 'instanceSettings', - type: 'fixedCollection', - typeOptions: { - multipleValues: false, - }, - default: { settings: {} }, - options: [ - { - displayName: 'Comportamento Da Instancia', - name: 'settings', - values: [ - { - displayName: 'Rejeitar Ligações', - name: 'rejectCall', - type: 'boolean', - default: false, - description: 'Whether to automatically reject incoming calls', - }, - { - displayName: 'Mensagem Ao Rejeitar', - name: 'msgCall', - type: 'string', - default: '', - description: - 'Whether to send a message after rejecting a call, and if so, what message', - }, - { - displayName: 'Ignorar Grupos', - name: 'groupsIgnore', - type: 'boolean', - default: false, - description: 'Whether to ignore messages from groups', - }, - { - displayName: 'Sempre Online', - name: 'alwaysOnline', - type: 'boolean', - default: false, - description: 'Whether to keep the status always set to Online', - }, - { - displayName: 'Ler Mensagens', - name: 'readMessages', - type: 'boolean', - default: false, - description: 'Whether to automatically mark messages as read', - }, - { - displayName: 'Ler Status', - name: 'readStatus', - type: 'boolean', - default: false, - description: 'Whether to allow the API to view the Status of added contacts', - }, - { - displayName: 'Sincronizar Histórico', - name: 'syncFullHistory', - type: 'boolean', - default: false, - description: 'Whether to synchronize the full message history with the API', - }, - ], - }, - ], - description: 'Comportamento da instância', + description: 'Chatwoot Settings', }, { displayName: 'Proxy', @@ -248,25 +244,25 @@ export const instancesFields: INodeProperties[] = [ default: { settings: {} }, options: [ { - displayName: 'Configurações Do Proxy', + displayName: 'Proxy Settings', name: 'proxySettings', values: [ { - displayName: 'Host Do Proxy', + displayName: 'Proxy Host', name: 'proxyHost', type: 'string', default: '', - description: 'Digite o host do proxy', + description: 'Enter the proxy host', }, { - displayName: 'Porta Do Proxy', + displayName: 'Proxy Port', name: 'proxyPort', type: 'string', default: '1234', - description: 'Digite a porta do proxy', + description: 'Enter the proxy port', }, { - displayName: 'Protocolo Do Proxy', + displayName: 'Proxy Protocol', name: 'proxyProtocol', type: 'options', options: [ @@ -280,29 +276,29 @@ export const instancesFields: INodeProperties[] = [ }, ], default: 'http', - description: 'Selecione o protocolo do proxy', + description: 'Select the proxy protocol', }, { - displayName: 'Usuário Do Proxy', + displayName: 'Proxy Username', name: 'proxyUsername', type: 'string', default: '', - description: 'Digite o usuário do proxy', + description: 'Enter the proxy username', }, { - displayName: 'Senha Do Proxy', + displayName: 'Proxy Password', name: 'proxyPassword', type: 'string', typeOptions: { password: true, }, default: '', - description: 'Digite a senha do proxy', + description: 'Enter the proxy password', }, ], }, ], - description: 'Configurações do proxy', + description: 'Proxy Settings', }, { displayName: 'RabbitMQ', @@ -314,21 +310,21 @@ export const instancesFields: INodeProperties[] = [ default: { settings: {} }, options: [ { - displayName: 'Configurações Do RabbitMQ', + displayName: 'RabbitMQ Settings', name: 'rabbitmqSettings', values: [ { - displayName: 'Ativa Ou Desativa O RabbitMQ', + displayName: 'Enable/Disable RabbitMQ', name: 'rabbitmqEnabled', type: 'boolean', default: false, - description: 'Whether to send media data in base64 format in the RabbitMQ', // Atualizado + description: 'Whether to send media data in base64 format in the RabbitMQ', }, { - displayName: 'Eventos', + displayName: 'Events', name: 'rabbitmqEvents', type: 'multiOptions', - default: [], // Adicionado para resolver o erro + default: [], options: [ { name: 'CALL', @@ -427,7 +423,7 @@ export const instancesFields: INodeProperties[] = [ ], }, ], - description: 'Os eventos a serem monitorados', + description: 'The events to be monitored', }, { displayName: 'Webhook', @@ -439,36 +435,35 @@ export const instancesFields: INodeProperties[] = [ default: { settings: {} }, options: [ { - displayName: 'Configurações Do Webhook', + displayName: 'Webhook Settings', name: 'webhookSettings', values: [ { - displayName: 'Url Do Webhook', + displayName: 'Webhook URL', name: 'webhookUrl', type: 'string', default: '', - description: 'Digite a URL que vai receber os eventos do Webhook', + description: 'Enter the URL that will receive the Webhook events', }, { - displayName: 'Webhook Por Eventos', + displayName: 'Webhook by Events', name: 'webhookByEvents', type: 'boolean', default: false, - description: - 'Whether to create a route for each event by appending the event name to the end of the URL', // Atualizado + description: 'Whether to create a route for each event by appending the event name to the end of the URL', }, { - displayName: 'Base64 No Webhook', + displayName: 'Base64 in Webhook', name: 'webhookBase64', type: 'boolean', default: false, - description: 'Whether to send media data in base64 format in the webhook', // Atualizado + description: 'Whether to send media data in base64 format in the webhook', }, { - displayName: 'Eventos', + displayName: 'Events', name: 'webhookEvents', type: 'multiOptions', - default: [], // Adicionado para resolver o erro + default: [], options: [ { name: 'CALL', @@ -567,7 +562,7 @@ export const instancesFields: INodeProperties[] = [ ], }, ], - description: 'Os eventos a serem monitorados', + description: 'The events to be monitored', }, ], displayOptions: { @@ -578,14 +573,14 @@ export const instancesFields: INodeProperties[] = [ }, }, - // Campos = Conectar Instância + // Fields = Connect Instance { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que deseja pesquisar', + description: 'Enter the name of the instance you want to search for', displayOptions: { show: { resource: ['instances-api'], @@ -594,14 +589,14 @@ export const instancesFields: INodeProperties[] = [ }, }, - // Campos = Buscar Instancia + // Fields = Fetch Instance { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', - description: 'Digite o nome da instância que deseja pesquisar', + description: 'Enter the name of the instance you want to search for', displayOptions: { show: { resource: ['instances-api'], @@ -610,14 +605,14 @@ export const instancesFields: INodeProperties[] = [ }, }, - // Campos = Definir Comportamento + // Fields = Set Behavior { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome para a instância', + description: 'Enter the name for the instance', displayOptions: { show: { resource: ['instances-api'], @@ -626,7 +621,7 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Rejeitar Chamadas', + displayName: 'Reject Calls', name: 'rejectCall', type: 'boolean', default: false, @@ -639,12 +634,11 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Mensagem De Chamadas', + displayName: 'Call Message', name: 'msgCall', type: 'string', - default: 'Não aceitamos ligações telefônicas.', - - description: 'Mensagem a ser enviada se as chamadas forem rejeitadas', + default: 'We do not accept phone calls.', + description: 'Message to be sent if calls are rejected', displayOptions: { show: { resource: ['instances-api'], @@ -653,7 +647,7 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Ignorar Grupos', + displayName: 'Ignore Groups', name: 'groupsIgnore', type: 'boolean', default: false, @@ -666,7 +660,7 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Sempre Online', + displayName: 'Always Online', name: 'alwaysOnline', type: 'boolean', default: false, @@ -679,7 +673,7 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Ler Mensagens', + displayName: 'Read Messages', name: 'readMessages', type: 'boolean', default: false, @@ -692,7 +686,7 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Sincronizar Histórico Completo', + displayName: 'Sync Full History', name: 'syncFullHistory', type: 'boolean', default: false, @@ -705,7 +699,7 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Ler Status', + displayName: 'Read Status', name: 'readStatus', type: 'boolean', default: false, @@ -718,14 +712,14 @@ export const instancesFields: INodeProperties[] = [ }, }, - // Campos = Definir presença + // Fields = Set presence { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância', + description: 'Enter the instance name', displayOptions: { show: { resource: ['instances-api'], @@ -734,22 +728,22 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Presença', + displayName: 'Presence', name: 'presence', type: 'options', options: [ { - name: 'Disponível', + name: 'Available', value: 'available', }, { - name: 'Indisponível', + name: 'Unavailable', value: 'unavailable', }, ], default: 'available', required: true, - description: 'Status de presença da instância', + description: 'Instance presence status', displayOptions: { show: { resource: ['instances-api'], @@ -758,14 +752,14 @@ export const instancesFields: INodeProperties[] = [ }, }, - // Campos = Proxy + // Fields = Proxy { - displayName: 'Nome Da Instancia', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar a mensagem', + description: 'Enter the name of the instance that will send the message', displayOptions: { show: { resource: ['instances-api'], @@ -775,21 +769,21 @@ export const instancesFields: INodeProperties[] = [ }, { - displayName: 'O Que Deseja Fazer', + displayName: 'What to Do', name: 'resourceForProxy', type: 'options', options: [ { - name: 'Definir Proxy', + name: 'Set Proxy', value: 'setProxy', }, { - name: 'Verificar Proxy', + name: 'Check Proxy', value: 'findProxy', }, ], default: 'setProxy', - description: 'Escolha entre ativar/desativar proxy ou verificar o proxy', + description: 'Choose between enabling/disabling proxy or checking the proxy', displayOptions: { show: { resource: ['instances-api'], @@ -798,7 +792,7 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Ativar Proxy', + displayName: 'Enable Proxy', name: 'enabled', type: 'boolean', default: true, @@ -812,7 +806,7 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Protocolo Do Proxy', + displayName: 'Proxy Protocol', name: 'proxyProtocol', displayOptions: { show: { @@ -833,15 +827,15 @@ export const instancesFields: INodeProperties[] = [ }, ], default: 'http', - description: 'Selecione o protocolo do proxy', + description: 'Select the proxy protocol', }, { - displayName: 'Host Do Proxy', + displayName: 'Proxy Host', name: 'proxyHost', type: 'string', default: '', required: true, - description: 'Digite o host do proxy', + description: 'Enter the proxy host', displayOptions: { show: { resource: ['instances-api'], @@ -851,12 +845,12 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Porta Do Proxy', + displayName: 'Proxy Port', name: 'proxyPort', type: 'string', default: '1234', required: true, - description: 'Digite a porta do proxy', + description: 'Enter the proxy port', displayOptions: { show: { resource: ['instances-api'], @@ -866,12 +860,12 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Usuário Do Proxy', + displayName: 'Proxy Username', name: 'proxyUsername', type: 'string', default: '', required: true, - description: 'Digite o usuário do proxy', + description: 'Enter the proxy username', displayOptions: { show: { resource: ['instances-api'], @@ -881,7 +875,7 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Senha Do Proxy', + displayName: 'Proxy Password', name: 'proxyPassword', type: 'string', required: true, @@ -889,7 +883,7 @@ export const instancesFields: INodeProperties[] = [ password: true, }, default: '', - description: 'Digite a senha do proxy', + description: 'Enter the proxy password', displayOptions: { show: { resource: ['instances-api'], @@ -899,14 +893,14 @@ export const instancesFields: INodeProperties[] = [ }, }, - // Campos = Reiniciar instancia + // Fields = Restart instance { - displayName: 'Nome Da Insticância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que deseja pesquisar', + description: 'Enter the name of the instance you want to search for', displayOptions: { show: { resource: ['instances-api'], @@ -915,14 +909,14 @@ export const instancesFields: INodeProperties[] = [ }, }, - // Campos = Desconectar instancia + // Fields = Disconnect instance { - displayName: 'Nome Da Insticância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que deseja pesquisar', + description: 'Enter the name of the instance you want to search for', displayOptions: { show: { resource: ['instances-api'], @@ -931,14 +925,14 @@ export const instancesFields: INodeProperties[] = [ }, }, - // Campos = Deletar instancia + // Fields = Delete instance { - displayName: 'Nome Da Instancia', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai ser deletada', + description: 'Enter the name of the instance to be deleted', displayOptions: { show: { resource: ['instances-api'], @@ -946,4 +940,4 @@ export const instancesFields: INodeProperties[] = [ }, }, }, -]; +]; \ No newline at end of file diff --git a/nodes/EvolutionApi/properties/instances.operations.ts b/nodes/EvolutionApi/properties/instances.operations.ts index 954ea78..2f32e82 100644 --- a/nodes/EvolutionApi/properties/instances.operations.ts +++ b/nodes/EvolutionApi/properties/instances.operations.ts @@ -1,99 +1,99 @@ import { INodeProperties } from 'n8n-workflow'; -// Opções da instances-api (Instancias) +// Options for instances-api (Instances) export const instancesOperationsOptions: INodeProperties = { - displayName: 'Operação', + displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { - resource: ['instances-api'], // Value do Resource + resource: ['instances-api'], // Resource value }, }, - // Opções que serão vinculadas a Operação "Instancia" + // Options that will be linked to the "Instance" Operation options: [ - // Opção = Criar instancia + // Option = Create instance { // Create Instance Basic - name: 'Criar Instancia', - action: 'Criar instancia', - description: 'Cria uma nova Instancia', + name: 'Create Instance', + action: 'Create instance', + description: 'Creates a new Instance', value: 'instance-basic', }, - // Opção = Conectar Instância + // Option = Connect Instance { // Instance Connect - name: 'Conectar Instancia', - action: 'Conectar instancia', - description: 'Gera a conexão de uma Instancia (QR ou Base64)', + name: 'Connect Instance', + action: 'Connect instance', + description: 'Generates the connection of an Instance (QR or Base64)', value: 'instance-connect', }, - // Opção = Buscar Instancia + // Option = Fetch Instance { // Fetch Instances - name: 'Buscar Instancia', - action: 'Buscar instancia', - description: 'Busca e lista as Instancias criadas', + name: 'Fetch Instance', + action: 'Fetch instance', + description: 'Fetches and lists the created Instances', value: 'fetch-instances', }, - // Opção = Definir Comportamento da instancia + // Option = Set Instance Behavior { - name: 'Definir Comportamento', - action: 'Definir comportamento', - description: 'Define o comportamento da instancia', + name: 'Set Behavior', + action: 'Set behavior', + description: 'Sets the instance behavior', value: 'instance-settings', }, - // Opção = Definir presença + // Option = Set presence { // Set Presence - name: 'Definir Presença', - action: 'Definir presen a', - description: 'Define a presença na instancia', + name: 'Set Presence', + action: 'Set presence', + description: 'Sets the presence in the instance', value: 'set-presence', }, - // Opção = Definit Proxy + // Option = Set Proxy { // Set/find Proxy - name: 'Definir/Buscar Proxy', + name: 'Set/Fetch Proxy', action: 'Proxy', - description: 'Define um Proxy na instancia', + description: 'Sets a Proxy in the instance', value: 'set-proxy', }, - // Opção = Reiniciar instancia + // Option = Restart instance { // Restart Instance - name: 'Reiniciar Instancia', - action: 'Reiniciar instancia', - description: 'Reinicia o socket da Instancia', + name: 'Restart Instance', + action: 'Restart instance', + description: 'Restarts the Instance socket', value: 'restart-instance', }, - // Opção = Desconectar instancia + // Option = Disconnect instance { // Logout Instance - name: 'Desconectar Instancia', - action: 'Desconectar instancia', - description: 'Desconecta o WhatsApp da Instancia', + name: 'Disconnect Instance', + action: 'Disconnect instance', + description: 'Disconnects WhatsApp from the Instance', value: 'logout-instance', }, - // Opção = Deletar instancia + // Option = Delete instance { // Delete Instance - name: 'Deletar Instancia', - action: 'Deletar instancia', - description: 'Deleta uma Instancia', + name: 'Delete Instance', + action: 'Delete instance', + description: 'Deletes an Instance', value: 'delete-instance', }, ], - // Definindo como padrão a opção "Criar Instancia" + // Setting "Create Instance" as the default default: 'instance-basic', }; diff --git a/nodes/EvolutionApi/properties/integrations.fields.ts b/nodes/EvolutionApi/properties/integrations.fields.ts index 7a66b24..2ef8ce8 100644 --- a/nodes/EvolutionApi/properties/integrations.fields.ts +++ b/nodes/EvolutionApi/properties/integrations.fields.ts @@ -1,14 +1,14 @@ import { INodeProperties } from 'n8n-workflow'; export const integrationsFields: INodeProperties[] = [ - // Campos = Chatwoot + // Fields = Chatwoot { - displayName: 'Nome Da Instancia', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar a mensagem', + description: 'Enter the name of the instance that will send the message', displayOptions: { show: { resource: ['integrations-api'], @@ -17,21 +17,21 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'O Que Deseja Fazer', + displayName: 'What Do You Want to Do', name: 'resourceForChatwoot', type: 'options', options: [ { - name: 'Definir Chatwoot', + name: 'Set Chatwoot', value: 'setChatwoot', }, { - name: 'Verificar Chatwoot', + name: 'Check Chatwoot', value: 'findChatwoot', }, ], default: 'setChatwoot', - description: 'Escolha entre ativar/desativar Chatwoot ou verificar o Chatwoot', + description: 'Choose between enabling/disabling Chatwoot or checking Chatwoot', displayOptions: { show: { resource: ['integrations-api'], @@ -40,7 +40,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Ativar Chatwoot', + displayName: 'Enable Chatwoot', name: 'enabled', type: 'boolean', default: true, @@ -54,12 +54,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Link Do Chatwoot', + displayName: 'Chatwoot Link', name: 'chatwootUrl', type: 'string', default: '', required: true, - description: 'Digite o link do Chatwoot', + description: 'Enter the Chatwoot link', displayOptions: { show: { resource: ['integrations-api'], @@ -69,12 +69,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'ID Da Conta Do Chatwoot', + displayName: 'Chatwoot Account ID', name: 'chatwootAccountId', type: 'string', default: '', required: true, - description: 'Digite o ID da conta do Chatwoot', + description: 'Enter the Chatwoot account ID', displayOptions: { show: { resource: ['integrations-api'], @@ -84,7 +84,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Token De Admin Do Chatwoot', + displayName: 'Chatwoot Admin Token', name: 'chatwootToken', type: 'string', required: true, @@ -92,7 +92,7 @@ export const integrationsFields: INodeProperties[] = [ password: true, }, default: '', - description: 'Digite o token de admin do Chatwoot', + description: 'Enter the Chatwoot admin token', displayOptions: { show: { resource: ['integrations-api'], @@ -102,7 +102,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Assinatura Do Agente Do Chatwoot', + displayName: 'Chatwoot Agent Signature', name: 'chatwootSignMsg', type: 'boolean', default: false, @@ -116,7 +116,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Reabrir Mensagens No Chatwoot', + displayName: 'Reopen Messages in Chatwoot', name: 'chatwootReopenConversation', type: 'boolean', default: false, @@ -130,7 +130,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Iniciar Conversas Como Pendentes No Chatwoot', + displayName: 'Start Conversations as Pending in Chatwoot', name: 'chatwootConversationPending', type: 'boolean', default: false, @@ -144,7 +144,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Importar Contatos Para O Chatwoot', + displayName: 'Import Contacts to Chatwoot', name: 'chatwootImportContacts', type: 'boolean', default: false, @@ -158,11 +158,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Da Inbox Do Chatwoot', + displayName: 'Chatwoot Inbox Name', name: 'chatwootNameInbox', type: 'string', default: '', - description: 'Opicional: Digite o nome da Inbox do Chatwoot', + description: 'Optional: Enter the name of the Chatwoot Inbox', displayOptions: { show: { resource: ['integrations-api'], @@ -172,7 +172,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Mesclar Contatos Brasileiros No Chatwoot', + displayName: 'Merge Brazilian Contacts in Chatwoot', name: 'chatwootMergeBrazilContacts', type: 'boolean', default: false, @@ -186,7 +186,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Importar Mensagens Para O Chatwoot', + displayName: 'Import Messages to Chatwoot', name: 'chatwootImportMessages', type: 'boolean', default: false, @@ -200,12 +200,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Importar Mensagens De Quantos Dias Para O Chatwoot', + displayName: 'Import Messages From How Many Days to Chatwoot', name: 'chatwootDaysLimitImportMessages', type: 'number', default: 0, - description: - 'Opicional: Digite o número de dias para limitar a importação de mensagens para o Chatwoot', + description: 'Optional: Enter the number of days to limit the import of messages to Chatwoot', displayOptions: { show: { resource: ['integrations-api'], @@ -215,7 +214,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Criar Caixa De Entrada', + displayName: 'Create Inbox', name: 'chatwootAutoCreate', type: 'boolean', default: true, @@ -229,11 +228,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Do Contato De QRCode No Chatwoot', + displayName: 'QRCode Contact Name in Chatwoot', name: 'chatwootOrganization', type: 'string', default: '', - description: 'Opicional: Digite o nome do contato de QRCode no Chatwoot', + description: 'Optional: Enter the QRCode contact name in Chatwoot', displayOptions: { show: { resource: ['integrations-api'], @@ -243,11 +242,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Url Do Logo Para O Contato No Chatwoot', + displayName: 'Logo URL for Contact in Chatwoot', name: 'chatwootLogo', type: 'string', default: 'https://github.com/user-attachments/assets/4d1e9cd6-377a-4383-820a-9a97e6cfbb63', - description: 'Opicional: Digite a URL do logo para o contato no Chatwoot', + description: 'Optional: Enter the logo URL for the contact in Chatwoot', displayOptions: { show: { resource: ['integrations-api'], @@ -257,14 +256,14 @@ export const integrationsFields: INodeProperties[] = [ }, }, - // Campos = Typebot + // Fields = Typebot { - displayName: 'Nome Da Instancia', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar a mensagem', + description: 'Enter the name of the instance that will send the message', displayOptions: { show: { resource: ['integrations-api'], @@ -274,41 +273,41 @@ export const integrationsFields: INodeProperties[] = [ }, { - displayName: 'O Que Deseja Fazer', + displayName: 'What Do You Want to Do', name: 'resourceForTypebot', type: 'options', options: [ { - name: 'Adicionar Typebot', + name: 'Add Typebot', value: 'createTypebot', }, { - name: 'Verificar Typebot', + name: 'Check Typebot', value: 'findTypebot', }, { - name: 'Atualizar Typebot', + name: 'Update Typebot', value: 'updateTypebot', }, { - name: 'Deletar Typebot', + name: 'Delete Typebot', value: 'deleteTypebot', }, { - name: 'Iniciar Typebot', + name: 'Start Typebot', value: 'startTypebot', }, { - name: 'Procurar Sessão No Typebot', + name: 'Find Session in Typebot', value: 'fetchSessionsTypebot', }, { - name: 'Alterar Status Da Sessão No Typebot', + name: 'Change Session Status in Typebot', value: 'changeStatusTypebot', }, ], default: 'createTypebot', - description: 'Escolha uma opção para realizar com a integração do Typebot', + description: 'Choose an option to perform with the Typebot integration', displayOptions: { show: { resource: ['integrations-api'], @@ -319,11 +318,11 @@ export const integrationsFields: INodeProperties[] = [ // updateTypebot { - displayName: 'ID Do Typebot', + displayName: 'Typebot ID', name: 'typebotId', type: 'string', default: '', - description: 'Digite o ID do Typebot que deseja buscar, deixe vazio para procurar todos', + description: 'Enter the ID of the Typebot you want to search for, leave it empty to search for all', displayOptions: { show: { resource: ['integrations-api'], @@ -339,14 +338,14 @@ export const integrationsFields: INodeProperties[] = [ }, }, - //Se createTypebot ou updateTypebot + //If createTypebot or updateTypebot { - displayName: 'URL Da API Do Typebot', + displayName: 'Typebot API URL', name: 'url', type: 'string', default: '', required: true, - description: 'Digite a URL do seu typebot', + description: 'Enter your typebot URL', displayOptions: { show: { resource: ['integrations-api'], @@ -356,12 +355,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Do Typebot', + displayName: 'Typebot Name', name: 'typebot', type: 'string', default: '', required: true, - description: 'Digite o nome do seu fluxo no typebot', + description: 'Enter the name of your flow in typebot', displayOptions: { show: { resource: ['integrations-api'], @@ -371,21 +370,21 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Tipo De Gatilho', + displayName: 'Trigger Type', name: 'triggerType', type: 'options', options: [ { - name: 'Palavra Chave', + name: 'Keyword', value: 'keyword', }, { - name: 'Todos', + name: 'All', value: 'all', }, ], default: 'keyword', - description: 'Escolha uma opção para realizar com a integração do Typebot', + description: 'Choose an option to perform with the Typebot integration', displayOptions: { show: { resource: ['integrations-api'], @@ -395,24 +394,24 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Operador Do Gatilho', + displayName: 'Trigger Operator', name: 'triggerOperator', type: 'options', options: [ { - name: 'Contem', + name: 'Contains', value: 'contains', }, { - name: 'Igual À', + name: 'Equals', value: 'equals', }, { - name: 'Começa com', + name: 'Starts With', value: 'startsWith', }, { - name: 'Termina com', + name: 'Ends With', value: 'endsWith', }, { @@ -421,7 +420,7 @@ export const integrationsFields: INodeProperties[] = [ }, ], default: 'contains', - description: 'Escolha uma opção para realizar com a integração do Typebot', + description: 'Choose an option to perform with the Typebot integration', displayOptions: { show: { resource: ['integrations-api'], @@ -432,13 +431,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Gatilho', + displayName: 'Trigger', name: 'triggerValue', type: 'string', default: '', required: true, - description: - 'Digite a palavra/frase ou regex para ser usado como gatilho para iniciar o Typebot', + description: 'Enter the word/phrase or regex to be used as a trigger to start Typebot', displayOptions: { show: { resource: ['integrations-api'], @@ -449,12 +447,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Expira Em (Minutos)', + displayName: 'Expires In (Minutes)', name: 'expire', type: 'number', default: 0, required: true, - description: 'Digite quantos minutos sem respostas o bot devera ser desativado', + description: 'Enter how many minutes without answers the bot should be deactivated', displayOptions: { show: { resource: ['integrations-api'], @@ -464,12 +462,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Palavra Chave De Finalização', + displayName: 'Ending Keyword', name: 'keywordFinish', type: 'string', default: '#sair', required: true, - description: 'Digite a palavra/frase que sera usado para fechar o bot', + description: 'Enter the word/phrase that will be used to close the bot', displayOptions: { show: { resource: ['integrations-api'], @@ -479,12 +477,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Delay Padrão Da Mensagem (Em Milésimos)', + displayName: 'Default Message Delay (in Milliseconds)', name: 'delayMessage', type: 'number', default: 1000, required: true, - description: 'Digite quantos milisegundos o bot terá de delay', + description: 'Enter how many milliseconds the bot will have a delay', displayOptions: { show: { resource: ['integrations-api'], @@ -494,12 +492,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Palavra Chave De Finalização', + displayName: 'Ending Keyword', name: 'unknownMessage', type: 'string', - default: 'Mensagem não reconhecida', + default: 'Unrecognized message', required: true, - description: 'Digite a palavra/frase que sera usado para fechar o bot', + description: 'Enter the word/phrase that will be used to close the bot', displayOptions: { show: { resource: ['integrations-api'], @@ -509,11 +507,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Escuta Mensagens Enviadas Por Mim', + displayName: 'Listen to Messages Sent by Me', name: 'listeningFromMe', type: 'boolean', default: false, - description: 'Whether', + description: 'Whether to listen to messages sent by the current instance', displayOptions: { show: { resource: ['integrations-api'], @@ -523,11 +521,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Pausa O Bot Quando Eu Enviar Uma Mensagem', + displayName: 'Pause the Bot When I Send a Message', name: 'stopBotFromMe', type: 'boolean', default: false, - description: 'Whether', + description: 'Whether to pause the bot when the current instance sends a message', displayOptions: { show: { resource: ['integrations-api'], @@ -537,11 +535,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Mantem a Sessão Do Bot Aberta', + displayName: 'Keep the Bot Session Open', name: 'keepOpen', type: 'boolean', default: false, - description: 'Whether', + description: 'Whether to keep the bot session open after a conversation', displayOptions: { show: { resource: ['integrations-api'], @@ -551,13 +549,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Tempo De Espera (Em Segundos)', + displayName: 'Wait Time (in Seconds)', name: 'debounceTime', type: 'number', default: 0, required: true, - description: - 'Este é o tempo que o bot ficará esperando as proximas mensagens após receber uma mensagem, depois ele juntará todas as mensagens em uma só', + description: 'This is the time the bot will wait for the next messages after receiving a message, then it will join all the messages into one', displayOptions: { show: { resource: ['integrations-api'], @@ -567,14 +564,14 @@ export const integrationsFields: INodeProperties[] = [ }, }, - // startTypebot + // start Typebot { - displayName: 'Numero Do Destinatario', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - description: 'RemoteJid do destinarario', + description: 'Recipient\'s RemoteJid', displayOptions: { show: { resource: ['integrations-api'], @@ -584,7 +581,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Iniciar Seção', + displayName: 'Start Session', name: 'startSession', type: 'boolean', default: false, @@ -598,7 +595,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Variáveis', + displayName: 'Variables', name: 'variables', type: 'fixedCollection', typeOptions: { @@ -608,26 +605,24 @@ export const integrationsFields: INodeProperties[] = [ options: [ { name: 'variable', - displayName: 'Variável', + displayName: 'Variable', values: [ { - displayName: 'Nome Da Variavel', + displayName: 'Variable Name', name: 'name', type: 'string', default: '', - description: 'Nome da variável', }, { - displayName: 'Valor Da Variavel', + displayName: 'Variable Value', name: 'value', type: 'string', default: '', - description: 'Valor da variável', }, ], }, ], - description: 'Variáveis para enviar ao typebot', + description: 'Variables to send to typebot', displayOptions: { show: { resource: ['integrations-api'], @@ -644,20 +639,20 @@ export const integrationsFields: INodeProperties[] = [ type: 'options', options: [ { - name: 'Aberta', + name: 'Opened', value: 'opened', }, { - name: 'Pausada', + name: 'Paused', value: 'paused', }, { - name: 'Fechada', + name: 'Closed', value: 'closed', }, ], default: 'opened', - description: 'Escolha qual será o status da seção', + description: 'Choose what the status of the section will be', displayOptions: { show: { resource: ['integrations-api'], @@ -669,12 +664,12 @@ export const integrationsFields: INodeProperties[] = [ // EVOLUTION BOT { - displayName: 'Nome Da Instancia', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar a mensagem', + description: 'Enter the name of the instance that will send the message', displayOptions: { show: { resource: ['integrations-api'], @@ -684,37 +679,37 @@ export const integrationsFields: INodeProperties[] = [ }, { - displayName: 'O Que Deseja Fazer', + displayName: 'What Do You Want to Do', name: 'resourceForEvolutionBot', type: 'options', options: [ { - name: 'Adicionar Evolution Bot', + name: 'Add Evolution Bot', value: 'createEvolutionBot', }, { - name: 'Verificar Evolution Bot', + name: 'Check Evolution Bot', value: 'findEvolutionBot', }, { - name: 'Atualizar Evolution Bot', + name: 'Update Evolution Bot', value: 'updateEvolutionBot', }, { - name: 'Deletar Evolution Bot', + name: 'Delete Evolution Bot', value: 'deleteEvolutionBot', }, { - name: 'Procurar Sessão No Evolution Bot', + name: 'Find Session in Evolution Bot', value: 'fetchSessionsEvolutionBot', }, { - name: 'Alterar Status Da Sessão No Evolution Bot', + name: 'Change Session Status in Evolution Bot', value: 'changeStatusEvolutionBot', }, ], default: 'createEvolutionBot', - description: 'Escolha uma opção para realizar com a integração do EvolutionBot', + description: 'Choose an option to perform with the EvolutionBot integration', displayOptions: { show: { resource: ['integrations-api'], @@ -725,11 +720,11 @@ export const integrationsFields: INodeProperties[] = [ // update EvolutionBot { - displayName: 'ID Do Evolution Bot', + displayName: 'Evolution Bot ID', name: 'evolutionBotId', type: 'string', default: '', - description: 'Digite o ID do Evolution Bot que deseja buscar, deixe vazio para procurar todos', + description: 'Enter the ID of the Evolution Bot you want to search for, leave it empty to search for all', displayOptions: { show: { resource: ['integrations-api'], @@ -745,14 +740,14 @@ export const integrationsFields: INodeProperties[] = [ }, }, - //Se createEvolutionBot ou updateEvolutionBot + // If createEvolutionBot or updateEvolutionBot { - displayName: 'URL Da API Do Evolution Bot', + displayName: 'Evolution Bot API URL', name: 'apiUrl', type: 'string', default: '', required: true, - description: 'Digite a URL do seu Evolution Bot', + description: 'Enter your Evolution Bot URL', displayOptions: { show: { resource: ['integrations-api'], @@ -762,12 +757,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'ApiKey Da Evolution Bot', + displayName: 'Evolution Bot ApiKey', name: 'apiKeyBot', type: 'string', typeOptions: { password: true }, default: '', - description: 'Digite a ApiKey do seu Evolution Bot', + description: 'Enter your Evolution Bot ApiKey', displayOptions: { show: { resource: ['integrations-api'], @@ -777,21 +772,21 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Tipo De Gatilho', + displayName: 'Trigger Type', name: 'triggerType', type: 'options', options: [ { - name: 'Palavra Chave', + name: 'Keyword', value: 'keyword', }, { - name: 'Todos', + name: 'All', value: 'all', }, ], default: 'keyword', - description: 'Escolha uma opção para realizar com a integração do EvolutionBot', + description: 'Choose an option to perform with the EvolutionBot integration', displayOptions: { show: { resource: ['integrations-api'], @@ -801,24 +796,24 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Operador Do Gatilho', + displayName: 'Trigger Operator', name: 'triggerOperator', type: 'options', options: [ { - name: 'Contem', + name: 'Contains', value: 'contains', }, { - name: 'Igual À', + name: 'Equals', value: 'equals', }, { - name: 'Começa com', + name: 'Starts With', value: 'startsWith', }, { - name: 'Termina com', + name: 'Ends With', value: 'endsWith', }, { @@ -827,7 +822,7 @@ export const integrationsFields: INodeProperties[] = [ }, ], default: 'contains', - description: 'Escolha uma opção para realizar com a integração do EvolutionBot', + description: 'Choose an option to perform with the EvolutionBot integration', displayOptions: { show: { resource: ['integrations-api'], @@ -838,13 +833,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Gatilho', + displayName: 'Trigger', name: 'triggerValue', type: 'string', default: '', required: true, - description: - 'Digite a palavra/frase ou regex para ser usado como gatilho para iniciar o EvolutionBot', + description: 'Enter the word/phrase or regex to be used as a trigger to start EvolutionBot', displayOptions: { show: { resource: ['integrations-api'], @@ -855,12 +849,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Expira Em (Minutos)', + displayName: 'Expires In (Minutes)', name: 'expire', type: 'number', default: 0, required: true, - description: 'Digite quantos minutos sem respostas o bot devera ser desativado', + description: 'Enter how many minutes without answers the bot should be deactivated', displayOptions: { show: { resource: ['integrations-api'], @@ -870,12 +864,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Palavra Chave De Finalização', + displayName: 'Ending Keyword', name: 'keywordFinish', type: 'string', default: '#sair', required: true, - description: 'Digite a palavra/frase que sera usado para fechar o bot', + description: 'Enter the word/phrase that will be used to close the bot', displayOptions: { show: { resource: ['integrations-api'], @@ -885,12 +879,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Delay Padrão Da Mensagem (Em Milésimos)', + displayName: 'Default Message Delay (in Milliseconds)', name: 'delayMessage', type: 'number', default: 1000, required: true, - description: 'Digite quantos milisegundos o bot terá de delay', + description: 'Enter how many milliseconds the bot will have a delay', displayOptions: { show: { resource: ['integrations-api'], @@ -900,12 +894,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Palavra Chave De Finalização', + displayName: 'Ending Keyword', name: 'unknownMessage', type: 'string', - default: 'Mensagem não reconhecida', + default: 'Unrecognized message', required: true, - description: 'Digite a palavra/frase que sera usado para fechar o bot', + description: 'Enter the word/phrase that will be used to close the bot', displayOptions: { show: { resource: ['integrations-api'], @@ -915,11 +909,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Escuta Mensagens Enviadas Por Mim', + displayName: 'Listen to Messages Sent by Me', name: 'listeningFromMe', type: 'boolean', default: false, - description: 'Whether', + description: 'Whether to listen to messages sent by the current instance', displayOptions: { show: { resource: ['integrations-api'], @@ -929,11 +923,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Pausa O Bot Quando Eu Enviar Uma Mensagem', + displayName: 'Pause the Bot When I Send a Message', name: 'stopBotFromMe', type: 'boolean', default: false, - description: 'Whether', + description: 'Whether to pause the bot when the current instance sends a message', displayOptions: { show: { resource: ['integrations-api'], @@ -943,11 +937,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Mantem a Sessão Do Bot Aberta', + displayName: 'Keep the Bot Session Open', name: 'keepOpen', type: 'boolean', default: false, - description: 'Whether', + description: 'Whether to keep the bot session open after a conversation', displayOptions: { show: { resource: ['integrations-api'], @@ -957,13 +951,13 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Tempo De Espera (Em Segundos)', + displayName: 'Wait Time (in Seconds)', name: 'debounceTime', type: 'number', default: 0, required: true, description: - 'Este é o tempo que o bot ficará esperando as proximas mensagens após receber uma mensagem, depois ele juntará todas as mensagens em uma só', + 'This is the time the bot will wait for the next messages after receiving a message, then it will join all the messages into one', displayOptions: { show: { resource: ['integrations-api'], @@ -975,12 +969,12 @@ export const integrationsFields: INodeProperties[] = [ // Change Session Status EvolutionBot { - displayName: 'Numero Do Destinatario', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - description: 'RemoteJid do destinarario', + description: 'Recipient\'s RemoteJid', displayOptions: { show: { resource: ['integrations-api'], @@ -995,20 +989,20 @@ export const integrationsFields: INodeProperties[] = [ type: 'options', options: [ { - name: 'Aberta', + name: 'Opened', value: 'opened', }, { - name: 'Pausada', + name: 'Paused', value: 'paused', }, { - name: 'Fechada', + name: 'Closed', value: 'closed', }, ], default: 'opened', - description: 'Escolha qual será o status da seção', + description: 'Choose what the status of the section will be', displayOptions: { show: { resource: ['integrations-api'], @@ -1020,12 +1014,12 @@ export const integrationsFields: INodeProperties[] = [ // Dify { - displayName: 'Nome Da Instancia', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar a mensagem', + description: 'Enter the name of the instance that will send the message', displayOptions: { show: { resource: ['integrations-api'], @@ -1034,37 +1028,37 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'O Que Deseja Fazer', + displayName: 'What Do You Want to Do', name: 'resourceForDifyBot', type: 'options', options: [ { - name: 'Adicionar Dify', + name: 'Add Dify', value: 'createDify', }, { - name: 'Verificar Dify', + name: 'Check Dify', value: 'findDify', }, { - name: 'Atualizar Dify', + name: 'Update Dify', value: 'updateDify', }, { - name: 'Deletar Dify', + name: 'Delete Dify', value: 'deleteDify', }, { - name: 'Procurar Sessão No Dify', + name: 'Find Session in Dify', value: 'fetchSessionsDify', }, { - name: 'Alterar Status Da Sessão No Dify', + name: 'Change Session Status in Dify', value: 'changeStatusDify', }, ], default: 'createDify', - description: 'Escolha uma opção para realizar com a integração do Dify', + description: 'Choose an option to perform with the Dify integration', displayOptions: { show: { resource: ['integrations-api'], @@ -1073,30 +1067,30 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Tipo Do Bot', + displayName: 'Bot Type', name: 'botType', type: 'options', options: [ { - name: 'Bot De Chat', + name: 'Chat Bot', value: 'chatBot', }, { - name: 'Gerador De Texto', + name: 'Text Generator', value: 'textGenerator', }, { - name: 'Agente', + name: 'Agent', value: 'agent', }, { - name: 'Fluxo De Trabalho', + name: 'Workflow', value: 'workflow', }, ], default: 'chatBot', required: true, - description: 'Escolha o tipo do bot Dify', + description: 'Choose the Dify bot type', displayOptions: { show: { resource: ['integrations-api'], @@ -1108,11 +1102,11 @@ export const integrationsFields: INodeProperties[] = [ // update Dify { - displayName: 'ID Do Dify', + displayName: 'Dify ID', name: 'difyBotId', type: 'string', default: '', - description: 'Digite o ID do Dify que deseja buscar, deixe vazio para procurar todos', + description: 'Enter the ID of the Dify you want to search for, leave it empty to search for all', displayOptions: { show: { resource: ['integrations-api'], @@ -1128,14 +1122,14 @@ export const integrationsFields: INodeProperties[] = [ }, }, - //Se createDify ou updateDify + // If createDify or updateDify { - displayName: 'Url Do Dify', + displayName: 'Dify Url', name: 'apiUrl', type: 'string', default: '', required: true, - description: 'Digite a URL do seu Dify', + description: 'Enter your Dify URL', displayOptions: { show: { resource: ['integrations-api'], @@ -1145,13 +1139,13 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'ApiKey Do Dify', + displayName: 'Dify ApiKey', name: 'apiKeyBot', type: 'string', typeOptions: { password: true }, default: '', required: true, - description: 'Digite a ApiKey do seu bot do Dify', + description: 'Enter the ApiKey of your Dify bot', displayOptions: { show: { resource: ['integrations-api'], @@ -1161,21 +1155,21 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Tipo De Gatilho', + displayName: 'Trigger Type', name: 'triggerType', type: 'options', options: [ { - name: 'Palavra Chave', + name: 'Keyword', value: 'keyword', }, { - name: 'Todos', + name: 'All', value: 'all', }, ], default: 'keyword', - description: 'Escolha uma opção para realizar com a integração do Dify', + description: 'Choose an option to perform with the Dify integration', displayOptions: { show: { resource: ['integrations-api'], @@ -1185,24 +1179,24 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Operador Do Gatilho', + displayName: 'Trigger Operator', name: 'triggerOperator', type: 'options', options: [ { - name: 'Contem', + name: 'Contains', value: 'contains', }, { - name: 'Igual À', + name: 'Equals', value: 'equals', }, { - name: 'Começa com', + name: 'Starts With', value: 'startsWith', }, { - name: 'Termina com', + name: 'Ends With', value: 'endsWith', }, { @@ -1211,7 +1205,7 @@ export const integrationsFields: INodeProperties[] = [ }, ], default: 'contains', - description: 'Escolha uma opção para realizar com a integração do Dify', + description: 'Choose an option to perform with the Dify integration', displayOptions: { show: { resource: ['integrations-api'], @@ -1222,12 +1216,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Gatilho', + displayName: 'Trigger', name: 'triggerValue', type: 'string', default: '', required: true, - description: 'Digite a palavra/frase ou regex para ser usado como gatilho para iniciar o Dify', + description: 'Enter the word/phrase or regex to be used as a trigger to start Dify', displayOptions: { show: { resource: ['integrations-api'], @@ -1238,12 +1232,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Expira Em (Minutos)', + displayName: 'Expires In (Minutes)', name: 'expire', type: 'number', default: 0, required: true, - description: 'Digite quantos minutos sem respostas o bot devera ser desativado', + description: 'Enter how many minutes without answers the bot should be deactivated', displayOptions: { show: { resource: ['integrations-api'], @@ -1253,12 +1247,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Palavra Chave De Finalização', + displayName: 'Ending Keyword', name: 'keywordFinish', type: 'string', default: '#sair', required: true, - description: 'Digite a palavra/frase que sera usado para fechar o bot', + description: 'Enter the word/phrase that will be used to close the bot', displayOptions: { show: { resource: ['integrations-api'], @@ -1268,12 +1262,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Delay Padrão Da Mensagem (Em Milésimos)', + displayName: 'Default Message Delay (in Milliseconds)', name: 'delayMessage', type: 'number', default: 1000, required: true, - description: 'Digite quantos milisegundos o bot terá de delay', + description: 'Enter how many milliseconds the bot will have a delay', displayOptions: { show: { resource: ['integrations-api'], @@ -1283,12 +1277,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Palavra Chave De Finalização', + displayName: 'Ending Keyword', name: 'unknownMessage', type: 'string', - default: 'Mensagem não reconhecida', + default: 'Unrecognized message', required: true, - description: 'Digite a palavra/frase que sera usado para fechar o bot', + description: 'Enter the word/phrase that will be used to close the bot', displayOptions: { show: { resource: ['integrations-api'], @@ -1298,11 +1292,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Escuta Mensagens Enviadas Por Mim', + displayName: 'Listen to Messages Sent by Me', name: 'listeningFromMe', type: 'boolean', default: false, - description: 'Whether', + description: 'Whether to listen to messages sent by the current instance', displayOptions: { show: { resource: ['integrations-api'], @@ -1312,11 +1306,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Pausa O Bot Quando Eu Enviar Uma Mensagem', + displayName: 'Pause the Bot When I Send a Message', name: 'stopBotFromMe', type: 'boolean', default: false, - description: 'Whether', + description: 'Whether to pause the bot when the current instance sends a message', displayOptions: { show: { resource: ['integrations-api'], @@ -1326,11 +1320,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Mantem a Sessão Do Bot Aberta', + displayName: 'Keep the Bot Session Open', name: 'keepOpen', type: 'boolean', default: false, - description: 'Whether', + description: 'Whether to keep the bot session open after a conversation', displayOptions: { show: { resource: ['integrations-api'], @@ -1340,13 +1334,13 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Tempo De Espera (Em Segundos)', + displayName: 'Wait Time (in Seconds)', name: 'debounceTime', type: 'number', default: 0, required: true, description: - 'Este é o tempo que o bot ficará esperando as proximas mensagens após receber uma mensagem, depois ele juntará todas as mensagens em uma só', + 'This is the time the bot will wait for the next messages after receiving a message, then it will join all the messages into one', displayOptions: { show: { resource: ['integrations-api'], @@ -1358,12 +1352,12 @@ export const integrationsFields: INodeProperties[] = [ // Change Session Status Dify { - displayName: 'Numero Do Destinatario', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - description: 'RemoteJid do destinarario', + description: 'Recipient\'s RemoteJid', displayOptions: { show: { resource: ['integrations-api'], @@ -1378,20 +1372,20 @@ export const integrationsFields: INodeProperties[] = [ type: 'options', options: [ { - name: 'Aberta', + name: 'Opened', value: 'opened', }, { - name: 'Pausada', + name: 'Paused', value: 'paused', }, { - name: 'Fechada', + name: 'Closed', value: 'closed', }, ], default: 'opened', - description: 'Escolha qual será o status da seção', + description: 'Choose what the status of the section will be', displayOptions: { show: { resource: ['integrations-api'], @@ -1400,14 +1394,13 @@ export const integrationsFields: INodeProperties[] = [ }, }, }, - { - displayName: 'Nome Da Instancia', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar a mensagem', + description: 'Enter the name of the instance that will send the message', displayOptions: { show: { resource: ['integrations-api'], @@ -1416,37 +1409,37 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'O Que Deseja Fazer', + displayName: 'What Do You Want to Do', name: 'resourceForFlowiseBot', type: 'options', options: [ { - name: 'Adicionar Flowise', + name: 'Add Flowise', value: 'createFlowise', }, { - name: 'Verificar Flowise', + name: 'Check Flowise', value: 'findFlowise', }, { - name: 'Atualizar Flowise', + name: 'Update Flowise', value: 'updateFlowise', }, { - name: 'Deletar Flowise', + name: 'Delete Flowise', value: 'deleteFlowise', }, { - name: 'Procurar Sessão No Flowise', + name: 'Find Session in Flowise', value: 'fetchSessionsFlowise', }, { - name: 'Alterar Status Da Sessão No Flowise', + name: 'Change Session Status in Flowise', value: 'changeStatusFlowise', }, ], default: 'createFlowise', - description: 'Escolha uma opção para realizar com a integração do Flowise', + description: 'Choose an option to perform with the Flowise integration', displayOptions: { show: { resource: ['integrations-api'], @@ -1457,11 +1450,11 @@ export const integrationsFields: INodeProperties[] = [ // update Flowise { - displayName: 'ID Do Flowise', + displayName: 'Flowise ID', name: 'flowiseBotId', type: 'string', default: '', - description: 'Digite o ID do Flowise que deseja buscar, deixe vazio para procurar todos', + description: 'Enter the ID of the Flowise you want to search for, leave it empty to search for all', displayOptions: { show: { resource: ['integrations-api'], @@ -1477,14 +1470,14 @@ export const integrationsFields: INodeProperties[] = [ }, }, - //Se createFlowise ou updateFlowise + // If createFlowise or updateFlowise { - displayName: 'Url Do Flowise', + displayName: 'Flowise Url', name: 'apiUrl', type: 'string', default: '', required: true, - description: 'Digite a URL do seu Flowise', + description: 'Enter your Flowise URL', displayOptions: { show: { resource: ['integrations-api'], @@ -1494,12 +1487,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'ApiKey Do Flowise', + displayName: 'Flowise ApiKey', name: 'apiKeyBot', type: 'string', typeOptions: { password: true }, default: '', - description: 'Digite a ApiKey do seu bot do Flowise', + description: 'Enter the ApiKey of your Flowise bot', displayOptions: { show: { resource: ['integrations-api'], @@ -1509,21 +1502,21 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Tipo De Gatilho', + displayName: 'Trigger Type', name: 'triggerType', type: 'options', options: [ { - name: 'Palavra Chave', + name: 'Keyword', value: 'keyword', }, { - name: 'Todos', + name: 'All', value: 'all', }, ], default: 'keyword', - description: 'Escolha uma opção para realizar com a integração do Flowise', + description: 'Choose an option to perform with the Flowise integration', displayOptions: { show: { resource: ['integrations-api'], @@ -1533,24 +1526,24 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Operador Do Gatilho', + displayName: 'Trigger Operator', name: 'triggerOperator', type: 'options', options: [ { - name: 'Contem', + name: 'Contains', value: 'contains', }, { - name: 'Igual À', + name: 'Equals', value: 'equals', }, { - name: 'Começa com', + name: 'Starts With', value: 'startsWith', }, { - name: 'Termina com', + name: 'Ends With', value: 'endsWith', }, { @@ -1559,7 +1552,7 @@ export const integrationsFields: INodeProperties[] = [ }, ], default: 'contains', - description: 'Escolha uma opção para realizar com a integração do Flowise', + description: 'Choose an option to perform with the Flowise integration', displayOptions: { show: { resource: ['integrations-api'], @@ -1570,13 +1563,13 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Gatilho', + displayName: 'Trigger', name: 'triggerValue', type: 'string', default: '', required: true, description: - 'Digite a palavra/frase ou regex para ser usado como gatilho para iniciar o Flowise', + 'Enter the word/phrase or regex to be used as a trigger to start Flowise', displayOptions: { show: { resource: ['integrations-api'], @@ -1587,12 +1580,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Expira Em (Minutos)', + displayName: 'Expires In (Minutes)', name: 'expire', type: 'number', default: 0, required: true, - description: 'Digite quantos minutos sem respostas o bot devera ser desativado', + description: 'Enter how many minutes without answers the bot should be deactivated', displayOptions: { show: { resource: ['integrations-api'], @@ -1602,12 +1595,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Palavra Chave De Finalização', + displayName: 'Ending Keyword', name: 'keywordFinish', type: 'string', default: '#sair', required: true, - description: 'Digite a palavra/frase que sera usado para fechar o bot', + description: 'Enter the word/phrase that will be used to close the bot', displayOptions: { show: { resource: ['integrations-api'], @@ -1617,12 +1610,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Delay Padrão Da Mensagem (Em Milésimos)', + displayName: 'Default Message Delay (in Milliseconds)', name: 'delayMessage', type: 'number', default: 1000, required: true, - description: 'Digite quantos milisegundos o bot terá de delay', + description: 'Enter how many milliseconds the bot will have a delay', displayOptions: { show: { resource: ['integrations-api'], @@ -1632,12 +1625,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Palavra Chave De Finalização', + displayName: 'Ending Keyword', name: 'unknownMessage', type: 'string', - default: 'Mensagem não reconhecida', + default: 'Unrecognized message', required: true, - description: 'Digite a palavra/frase que sera usado para fechar o bot', + description: 'Enter the word/phrase that will be used to close the bot', displayOptions: { show: { resource: ['integrations-api'], @@ -1647,11 +1640,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Escuta Mensagens Enviadas Por Mim', + displayName: 'Listen to Messages Sent by Me', name: 'listeningFromMe', type: 'boolean', default: false, - description: 'Whether', + description: 'Whether to listen to messages sent by the current instance', displayOptions: { show: { resource: ['integrations-api'], @@ -1661,11 +1654,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Pausa O Bot Quando Eu Enviar Uma Mensagem', + displayName: 'Pause the Bot When I Send a Message', name: 'stopBotFromMe', type: 'boolean', default: false, - description: 'Whether', + description: 'Whether to pause the bot when the current instance sends a message', displayOptions: { show: { resource: ['integrations-api'], @@ -1675,11 +1668,11 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Mantem a Sessão Do Bot Aberta', + displayName: 'Keep the Bot Session Open', name: 'keepOpen', type: 'boolean', default: false, - description: 'Whether', + description: 'Whether to keep the bot session open after a conversation', displayOptions: { show: { resource: ['integrations-api'], @@ -1689,13 +1682,12 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Tempo De Espera (Em Segundos)', + displayName: 'Wait Time (in Seconds)', name: 'debounceTime', type: 'number', default: 0, required: true, - description: - 'Este é o tempo que o bot ficará esperando as proximas mensagens após receber uma mensagem, depois ele juntará todas as mensagens em uma só', + description: 'This is the time the bot will wait for the next messages after receiving a message, then it will join all the messages into one', displayOptions: { show: { resource: ['integrations-api'], @@ -1707,12 +1699,12 @@ export const integrationsFields: INodeProperties[] = [ // Change Session Status Flowise { - displayName: 'Numero Do Destinatario', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - description: 'RemoteJid do destinarario', + description: 'Recipient\'s RemoteJid', displayOptions: { show: { resource: ['integrations-api'], @@ -1727,20 +1719,20 @@ export const integrationsFields: INodeProperties[] = [ type: 'options', options: [ { - name: 'Aberta', + name: 'Opened', value: 'opened', }, { - name: 'Pausada', + name: 'Paused', value: 'paused', }, { - name: 'Fechada', + name: 'Closed', value: 'closed', }, ], default: 'opened', - description: 'Escolha qual será o status da seção', + description: 'Choose what the status of the section will be', displayOptions: { show: { resource: ['integrations-api'], @@ -1749,16 +1741,15 @@ export const integrationsFields: INodeProperties[] = [ }, }, }, - { - displayName: 'JIDs Ignorados', + displayName: 'Ignored JIDs', name: 'ignoreJids', type: 'string', typeOptions: { multipleValues: true, }, default: [], - description: 'Lista de JIDs que serão ignorados pelo bot', + description: 'List of JIDs that will be ignored by the bot', displayOptions: { show: { resource: ['integrations-api'], @@ -1768,24 +1759,24 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Tipo do Operador', + displayName: 'Operator Type', name: 'triggerOperator', type: 'options', options: [ { - name: 'Contém', + name: 'Contains', value: 'contains', }, { - name: 'Igual', + name: 'Equals', value: 'equals', }, { - name: 'Começa Com', + name: 'Starts With', value: 'startsWith', }, { - name: 'Termina Com', + name: 'Ends With', value: 'endsWith', }, { @@ -1793,12 +1784,12 @@ export const integrationsFields: INodeProperties[] = [ value: 'regex', }, { - name: 'Nenhum', + name: 'None', value: 'none', }, ], default: 'equals', - description: 'Escolha o tipo de operador para o gatilho', + description: 'Choose the operator type for the trigger', displayOptions: { show: { resource: ['integrations-api'], diff --git a/nodes/EvolutionApi/properties/integrations.operations.ts b/nodes/EvolutionApi/properties/integrations.operations.ts index 54d1b12..1da4872 100644 --- a/nodes/EvolutionApi/properties/integrations.operations.ts +++ b/nodes/EvolutionApi/properties/integrations.operations.ts @@ -1,14 +1,14 @@ import { INodeProperties } from 'n8n-workflow'; -// Opções da integrations-api (Integração) +// Options for the integrations-api (Integration) export const integrationsOperationsOptions: INodeProperties = { - displayName: 'Operação', + displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { - resource: ['integrations-api'], // Value do Resource + resource: ['integrations-api'], // Resource value }, }, options: [ @@ -16,38 +16,38 @@ export const integrationsOperationsOptions: INodeProperties = { // Set/find Chatwoot name: 'Chatwoot', action: 'Chatwoot', - description: 'Define/Busca integração com Chatwoot', + description: 'Set/find integration with Chatwoot', value: 'chatwoot', }, { - // Create/find/fetch/Update/Delete/Start/Change Status/Fetch Sessions da Evolution Bot + // Create/find/fetch/Update/Delete/Start/Change Status/Fetch Sessions of Evolution Bot name: 'Evolution Bot', action: 'Evolution bot', - description: 'Controla a integração com Evolution Bot', + description: 'Controls integration with Evolution Bot', value: 'evolution-bot', }, { - // Create/find/fetch/Update/Delete/Start/Change Status/Fetch Sessions do Typebot + // Create/find/fetch/Update/Delete/Start/Change Status/Fetch Sessions of Typebot name: 'Typebot', action: 'Typebot', - description: 'Controla a integração com Typebot', + description: 'Controls integration with Typebot', value: 'typebot', }, { - // Create/find/fetch/Update/Delete/Start/Change Status/Fetch Sessions da Dify + // Create/find/fetch/Update/Delete/Start/Change Status/Fetch Sessions of Dify name: 'Dify', action: 'Dify', - description: 'Controla a integração com Dify', + description: 'Controls integration with Dify', value: 'difyBot', }, { - // Create/find/fetch/Update/Delete/Start/Change Status/Fetch Sessions da Dify + // Create/find/fetch/Update/Delete/Start/Change Status/Fetch Sessions of Dify name: 'Flowise', action: 'Flowise', - description: 'Controla a integração com Flowise', + description: 'Controls integration with Flowise', value: 'flowiseBot', }, ], - // Definindo como padrão a opção "Enviar Texto" + // Setting the default option to "Send Text" default: 'chatwoot', }; diff --git a/nodes/EvolutionApi/properties/messages.fields.ts b/nodes/EvolutionApi/properties/messages.fields.ts index 534a214..ffcbce6 100644 --- a/nodes/EvolutionApi/properties/messages.fields.ts +++ b/nodes/EvolutionApi/properties/messages.fields.ts @@ -1,14 +1,13 @@ import { INodeProperties } from 'n8n-workflow'; export const messagesFields: INodeProperties[] = [ - // Campos = Enviar mensagem de texto + // Fields = Send text message { - displayName: 'Nome Da Instancia', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', - - description: 'Digite o nome da instância que vai enviar a mensagem', + description: 'Enter the name of the instance that will send the message', displayOptions: { show: { resource: ['messages-api'], @@ -17,12 +16,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Numero Do Destinatario', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - description: 'RemoteJid do destinarario', + description: 'Recipient\'s RemoteJid', displayOptions: { show: { resource: ['messages-api'], @@ -31,12 +30,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Mensagem', + displayName: 'Message', name: 'messageText', type: 'string', default: '', required: true, - description: 'Digite a mensagem de texto que será enviado', + description: 'Enter the text message to be sent', displayOptions: { show: { resource: ['messages-api'], @@ -45,10 +44,10 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Opções', + displayName: 'Options', name: 'options_message', type: 'collection', - placeholder: 'Adicionar Campo', + placeholder: 'Add Field', default: {}, options: [ { @@ -56,10 +55,10 @@ export const messagesFields: INodeProperties[] = [ name: 'delay', type: 'number', default: 1200, - description: 'Digite quantos milisegundos de delay a mensagem terá antes de ser enviada', + description: 'Enter how many milliseconds of delay the message will have before being sent', }, { - displayName: 'Responder Mensagem', + displayName: 'Reply Message', name: 'quoted', type: 'fixedCollection', typeOptions: { @@ -73,21 +72,21 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'messageQuoted', - displayName: 'Mensagem', + displayName: 'Message', values: [ { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string', default: '', - description: 'ID da mensagem que será respondida', + description: 'ID of the message to be replied to', }, ], }, ], }, { - displayName: 'Menções', + displayName: 'Mentions', name: 'mentions', type: 'fixedCollection', typeOptions: { @@ -102,17 +101,17 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'mentionsSettings', - displayName: 'Configurações', + displayName: 'Settings', values: [ { - displayName: 'Mencionar Todos', + displayName: 'Mention Everyone', name: 'mentionsEveryOne', type: 'boolean', default: false, description: 'Whether to mention all participants in the group', }, { - displayName: 'Números Para Mencionar', + displayName: 'Numbers to Mention', name: 'mentioned', type: 'string', default: '', @@ -121,14 +120,14 @@ export const messagesFields: INodeProperties[] = [ mentionsEveryOne: [false], }, }, - description: 'Lista de números para mencionar (separados por vírgula)', + description: 'List of numbers to mention (comma-separated)', }, ], }, ], }, { - displayName: 'Preview De Link', + displayName: 'Link Preview', name: 'linkPreview', type: 'boolean', default: true, @@ -143,14 +142,14 @@ export const messagesFields: INodeProperties[] = [ }, }, - // Campos = Enviar Imagem + // Fields = Send Image { - displayName: 'Nome Da Instancia', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar a mensagem', + description: 'Enter the name of the instance that will send the message', displayOptions: { show: { resource: ['messages-api'], @@ -159,12 +158,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do Destinatário', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - displayOptions: { show: { resource: ['messages-api'], @@ -173,12 +171,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Imagem', + displayName: 'Image', name: 'media', type: 'string', default: '', required: true, - description: 'URL ou base64 da imagem', + description: 'Image URL or base64', displayOptions: { show: { resource: ['messages-api'], @@ -191,8 +189,7 @@ export const messagesFields: INodeProperties[] = [ name: 'caption', type: 'string', default: '', - - description: 'Texto a ser enviado junto a imagem', + description: 'Text to be sent with the image', displayOptions: { show: { resource: ['messages-api'], @@ -201,10 +198,10 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Opções', + displayName: 'Options', name: 'options_message', type: 'collection', - placeholder: 'Adicionar Campo', + placeholder: 'Add Field', default: {}, options: [ { @@ -212,10 +209,10 @@ export const messagesFields: INodeProperties[] = [ name: 'delay', type: 'number', default: 1200, - description: 'Digite quantos milisegundos de delay a mensagem terá antes de ser enviada', + description: 'Enter how many milliseconds of delay the message will have before being sent', }, { - displayName: 'Responder Mensagem', + displayName: 'Reply Message', name: 'quoted', type: 'fixedCollection', typeOptions: { @@ -229,21 +226,21 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'messageQuoted', - displayName: 'Mensagem', + displayName: 'Message', values: [ { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string', default: '', - description: 'ID da mensagem que será respondida', + description: 'ID of the message to be replied to', }, ], }, ], }, { - displayName: 'Menções', + displayName: 'Mentions', name: 'mentions', type: 'fixedCollection', typeOptions: { @@ -258,17 +255,17 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'mentionsSettings', - displayName: 'Configurações', + displayName: 'Settings', values: [ { - displayName: 'Mencionar Todos', + displayName: 'Mention Everyone', name: 'mentionsEveryOne', type: 'boolean', default: false, description: 'Whether to mention all participants in the group', }, { - displayName: 'Números Para Mencionar', + displayName: 'Numbers to Mention', name: 'mentioned', type: 'string', default: '', @@ -277,7 +274,7 @@ export const messagesFields: INodeProperties[] = [ mentionsEveryOne: [false], }, }, - description: 'Lista de números para mencionar (separados por vírgula)', + description: 'List of numbers to mention (comma-separated)', }, ], }, @@ -292,14 +289,14 @@ export const messagesFields: INodeProperties[] = [ }, }, - // Campos = Enviar Video + // Fields = Send Video { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar o vídeo', + description: 'Enter the name of the instance that will send the video', displayOptions: { show: { resource: ['messages-api'], @@ -308,12 +305,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do Destinatário', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - displayOptions: { show: { resource: ['messages-api'], @@ -327,7 +323,7 @@ export const messagesFields: INodeProperties[] = [ type: 'string', default: '', required: true, - description: 'URL ou base64 do vídeo', + description: 'Video URL or base64', displayOptions: { show: { resource: ['messages-api'], @@ -340,8 +336,7 @@ export const messagesFields: INodeProperties[] = [ name: 'caption', type: 'string', default: '', - - description: 'Texto a ser enviado junto ao vídeo', + description: 'Text to be sent with the video', displayOptions: { show: { resource: ['messages-api'], @@ -350,10 +345,10 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Opções', + displayName: 'Options', name: 'options_message', type: 'collection', - placeholder: 'Adicionar Campo', + placeholder: 'Add Field', default: {}, options: [ { @@ -361,10 +356,10 @@ export const messagesFields: INodeProperties[] = [ name: 'delay', type: 'number', default: 1200, - description: 'Digite quantos milisegundos de delay a mensagem terá antes de ser enviada', + description: 'Enter how many milliseconds of delay the message will have before being sent', }, { - displayName: 'Responder Mensagem', + displayName: 'Reply Message', name: 'quoted', type: 'fixedCollection', typeOptions: { @@ -378,21 +373,21 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'messageQuoted', - displayName: 'Mensagem', + displayName: 'Message', values: [ { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string', default: '', - description: 'ID da mensagem que será respondida', + description: 'ID of the message to be replied to', }, ], }, ], }, { - displayName: 'Menções', + displayName: 'Mentions', name: 'mentions', type: 'fixedCollection', typeOptions: { @@ -407,17 +402,17 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'mentionsSettings', - displayName: 'Configurações', + displayName: 'Settings', values: [ { - displayName: 'Mencionar Todos', + displayName: 'Mention Everyone', name: 'mentionsEveryOne', type: 'boolean', default: false, description: 'Whether to mention all participants in the group', }, { - displayName: 'Números Para Mencionar', + displayName: 'Numbers to Mention', name: 'mentioned', type: 'string', default: '', @@ -426,7 +421,7 @@ export const messagesFields: INodeProperties[] = [ mentionsEveryOne: [false], }, }, - description: 'Digite os números que deseja mencionar separados por vírgula (ex: 5511999999999,5511888888888)', + description: 'List of numbers to mention (comma-separated)', }, ], }, @@ -441,14 +436,14 @@ export const messagesFields: INodeProperties[] = [ }, }, - // Campos = Enviar Audio + // Fields = Send Audio { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar o áudio', + description: 'Enter the name of the instance that will send the audio', displayOptions: { show: { resource: ['messages-api'], @@ -457,12 +452,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do Destinatário', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - displayOptions: { show: { resource: ['messages-api'], @@ -476,7 +470,7 @@ export const messagesFields: INodeProperties[] = [ type: 'string', default: '', required: true, - description: 'URL ou base64 do áudio', + description: 'Audio URL or base64', displayOptions: { show: { resource: ['messages-api'], @@ -485,10 +479,10 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Opções', + displayName: 'Options', name: 'options_message', type: 'collection', - placeholder: 'Adicionar Campo', + placeholder: 'Add Field', default: {}, options: [ { @@ -496,10 +490,10 @@ export const messagesFields: INodeProperties[] = [ name: 'delay', type: 'number', default: 1200, - description: 'Digite quantos milisegundos de delay a mensagem terá antes de ser enviada', + description: 'Enter how many milliseconds of delay the message will have before being sent', }, //{ - // displayName: 'Responder Mensagem', + // displayName: 'Reply Message', // name: 'quoted', // type: 'fixedCollection', // typeOptions: { @@ -513,14 +507,14 @@ export const messagesFields: INodeProperties[] = [ // options: [ // { // name: 'messageQuoted', - // displayName: 'Mensagem', + // displayName: 'Message', // values: [ // { - // displayName: 'ID da Mensagem', + // displayName: 'Message ID', // name: 'messageId', // type: 'string', // default: '', - // description: 'ID da mensagem que será respondida', + // description: 'ID of the message to be replied to', // }, // ], // }, @@ -528,7 +522,7 @@ export const messagesFields: INodeProperties[] = [ //}, //{ - // displayName: 'Menções', + // displayName: 'Mentions', // name: 'mentions', // type: 'fixedCollection', // typeOptions: { @@ -543,17 +537,17 @@ export const messagesFields: INodeProperties[] = [ // options: [ // { // name: 'mentionsSettings', - // displayName: 'Configurações', + // displayName: 'Settings', // values: [ // { - // displayName: 'Mencionar Todos', + // displayName: 'Mention Everyone', // name: 'mentionsEveryOne', // type: 'boolean', // default: false, - // description: 'Menciona todos os participantes do grupo', + // description: 'Whether to mention all participants in the group', // }, // { - // displayName: 'Números para Mencionar', + // displayName: 'Numbers to Mention', // name: 'mentioned', // type: 'string', // default: '', @@ -562,7 +556,7 @@ export const messagesFields: INodeProperties[] = [ // mentionsEveryOne: [false], // }, // }, - // description: 'Digite os números que deseja mencionar separados por vírgula (ex: 5511999999999,5511888888888)', + // description: 'Enter the numbers you want to mention separated by commas (e.g., 5511999999999,5511888888888)', // }, // ], // }, @@ -577,14 +571,14 @@ export const messagesFields: INodeProperties[] = [ }, }, - // Campos = Enviar Documento + // Fields = Send Document { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar o documento', + description: 'Enter the name of the instance that will send the document', displayOptions: { show: { resource: ['messages-api'], @@ -593,12 +587,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do Destinatário', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - displayOptions: { show: { resource: ['messages-api'], @@ -607,12 +600,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Documento', + displayName: 'Document', name: 'media', type: 'string', default: '', required: true, - description: 'URL ou base64 do documento', + description: 'Document URL or base64', displayOptions: { show: { resource: ['messages-api'], @@ -621,12 +614,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Mensagem', + displayName: 'Message', name: 'caption', type: 'string', default: '', - - description: 'Texto a ser enviado junto ao documento', + description: 'Text to be sent with the document', displayOptions: { show: { resource: ['messages-api'], @@ -635,12 +627,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Do Arquivo', + displayName: 'File Name', name: 'fileName', type: 'string', default: 'document.pdf', - - description: 'Nome do arquivo do documento', + description: 'Document file name', displayOptions: { show: { resource: ['messages-api'], @@ -649,10 +640,10 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Opções', + displayName: 'Options', name: 'options_message', type: 'collection', - placeholder: 'Adicionar Campo', + placeholder: 'Add Field', default: {}, options: [ { @@ -660,10 +651,10 @@ export const messagesFields: INodeProperties[] = [ name: 'delay', type: 'number', default: 1200, - description: 'Digite quantos milisegundos de delay a mensagem terá antes de ser enviada', + description: 'Enter how many milliseconds of delay the message will have before being sent', }, { - displayName: 'Responder Mensagem', + displayName: 'Reply Message', name: 'quoted', type: 'fixedCollection', typeOptions: { @@ -677,21 +668,21 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'messageQuoted', - displayName: 'Mensagem', + displayName: 'Message', values: [ { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string', default: '', - description: 'ID da mensagem que será respondida', + description: 'ID of the message to be replied to', }, ], }, ], }, { - displayName: 'Menções', + displayName: 'Mentions', name: 'mentions', type: 'fixedCollection', typeOptions: { @@ -706,17 +697,17 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'mentionsSettings', - displayName: 'Configurações', + displayName: 'Settings', values: [ { - displayName: 'Mencionar Todos', + displayName: 'Mention Everyone', name: 'mentionsEveryOne', type: 'boolean', default: false, description: 'Whether to mention all participants in the group', }, { - displayName: 'Números Para Mencionar', + displayName: 'Numbers to Mention', name: 'mentioned', type: 'string', default: '', @@ -725,7 +716,7 @@ export const messagesFields: INodeProperties[] = [ mentionsEveryOne: [false], }, }, - description: 'Digite os números que deseja mencionar separados por vírgula (ex: 5511999999999,5511888888888)', + description: 'Enter the numbers you want to mention separated by commas (e.g., 5511999999999,5511888888888)', }, ], }, @@ -740,14 +731,14 @@ export const messagesFields: INodeProperties[] = [ }, }, - // Campos = Enviar Enquete + // Fields = Send Poll { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar a enquete', + description: 'Enter the name of the instance that will send the poll', displayOptions: { show: { resource: ['messages-api'], @@ -756,12 +747,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do Destinatário', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - displayOptions: { show: { resource: ['messages-api'], @@ -770,12 +760,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Titulo Da Enquete', + displayName: 'Poll Title', name: 'caption', type: 'string', default: '', required: true, - description: 'Digite o titulo da sua enquete', + description: 'Enter the title of your poll', displayOptions: { show: { resource: ['messages-api'], @@ -784,7 +774,7 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Mínimo 2 opções, Máximo 12. Cada opção deve ser única.', + displayName: 'Minimum 2 options, Maximum 12. Each option must be unique.', name: 'notice', type: 'notice', default: '', @@ -796,7 +786,7 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Opções Da Enquete', + displayName: 'Poll Options', name: 'options_display', type: 'fixedCollection', default: { metadataValues: [] }, @@ -804,14 +794,14 @@ export const messagesFields: INodeProperties[] = [ typeOptions: { multipleValues: true, }, - description: 'Digite as opções da enquete (mínimo 2, máximo 12). Cada opção deve ser única.', + description: 'Enter the poll options (minimum 2, maximum 12). Each option must be unique.', options: [ { name: 'metadataValues', - displayName: 'Metadata', + displayName: 'Option', values: [ { - displayName: 'Opção', + displayName: 'Option', name: 'optionValue', type: 'string', default: '', @@ -827,10 +817,10 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Opções', + displayName: 'Options', name: 'options_message', type: 'collection', - placeholder: 'Adicionar Campo', + placeholder: 'Add Field', default: {}, options: [ { @@ -838,10 +828,10 @@ export const messagesFields: INodeProperties[] = [ name: 'delay', type: 'number', default: 1200, - description: 'Digite quantos milisegundos de delay a mensagem terá antes de ser enviada', + description: 'Enter how many milliseconds of delay the message will have before being sent', }, { - displayName: 'Responder Mensagem', + displayName: 'Reply Message', name: 'quoted', type: 'fixedCollection', typeOptions: { @@ -855,21 +845,21 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'messageQuoted', - displayName: 'Mensagem', + displayName: 'Message', values: [ { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string', default: '', - description: 'ID da mensagem que será respondida', + description: 'ID of the message to be replied to', }, ], }, ], }, { - displayName: 'Menções', + displayName: 'Mentions', name: 'mentions', type: 'fixedCollection', typeOptions: { @@ -884,17 +874,17 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'mentionsSettings', - displayName: 'Configurações', + displayName: 'Settings', values: [ { - displayName: 'Mencionar Todos', + displayName: 'Mention Everyone', name: 'mentionsEveryOne', type: 'boolean', default: false, description: 'Whether to mention all participants in the group', }, { - displayName: 'Números Para Mencionar', + displayName: 'Numbers to Mention', name: 'mentioned', type: 'string', default: '', @@ -903,7 +893,7 @@ export const messagesFields: INodeProperties[] = [ mentionsEveryOne: [false], }, }, - description: 'Digite os números que deseja mencionar separados por vírgula (ex: 5511999999999,5511888888888)', + description: 'Enter the numbers you want to mention separated by commas (e.g., 5511999999999,5511888888888)', }, ], }, @@ -918,14 +908,14 @@ export const messagesFields: INodeProperties[] = [ }, }, - // Campos = Enviar Status + // Fields = Send Status { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar o status', + description: 'Enter the name of the instance that will send the status', displayOptions: { show: { resource: ['messages-api'], @@ -934,10 +924,10 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Tipo Do Status', + displayName: 'Status Type', name: 'type', type: 'options', - description: 'Escolha o tipo de status você vai postar', + description: 'Choose the type of status you will post', displayOptions: { show: { resource: ['messages-api'], @@ -946,31 +936,31 @@ export const messagesFields: INodeProperties[] = [ }, options: [ { - name: 'Status De Texto', + name: 'Text Status', value: 'text', }, { - name: 'Status De Imagem', + name: 'Image Status', value: 'image', }, { - name: 'Status De Video', + name: 'Video Status', value: 'video', }, { - name: 'Status De Audio', + name: 'Audio Status', value: 'audio', }, ], default: 'text', }, { - displayName: 'Conteudo Ou URL', + displayName: 'Content Or URL', name: 'content', type: 'string', default: '', required: true, - description: 'Digite o conteudo ou URL da imagem/video/audio a ser postado', + description: 'Enter the content or URL of the image/video/audio to be posted', displayOptions: { show: { resource: ['messages-api'], @@ -979,12 +969,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Texto Para Status De Imagem/Video', + displayName: 'Text For Image/Video Status', name: 'caption', type: 'string', default: '', - - description: 'Digite o texto para status de Imagem/Video', + description: 'Enter the text for Image/Video status', displayOptions: { show: { resource: ['messages-api'], @@ -993,7 +982,7 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Cor Do Background', + displayName: 'Background Color', name: 'backgroundColor', type: 'color', default: '#000000', @@ -1005,10 +994,10 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Font Do Texto', + displayName: 'Font Of Text', name: 'font', type: 'options', - description: 'Escolha o tipo da font do seu texto', + description: 'Choose the font type for your text', displayOptions: { show: { resource: ['messages-api'], @@ -1040,14 +1029,14 @@ export const messagesFields: INodeProperties[] = [ default: 1, }, - // Campos = Enviar Documento + // Fields = Send Document { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar o documento', + description: 'Enter the name of the instance that will send the document', displayOptions: { show: { resource: ['messages-api'], @@ -1056,12 +1045,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do Destinatário', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - displayOptions: { show: { resource: ['messages-api'], @@ -1070,12 +1058,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Documento', + displayName: 'Document', name: 'media', type: 'string', default: '', required: true, - description: 'URL ou base64 do documento', + description: 'Document URL or base64', displayOptions: { show: { resource: ['messages-api'], @@ -1084,12 +1072,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Mensagem', + displayName: 'Message', name: 'caption', type: 'string', default: '', - - description: 'Texto a ser enviado junto ao documento', + description: 'Text to be sent with the document', displayOptions: { show: { resource: ['messages-api'], @@ -1098,12 +1085,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Do Arquivo', + displayName: 'File Name', name: 'fileName', type: 'string', default: 'document.pdf', - description: 'Nome do arquivo do documento', + description: 'Document file name', displayOptions: { show: { resource: ['messages-api'], @@ -1112,10 +1099,10 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Opções', + displayName: 'Options', name: 'options_message', type: 'collection', - placeholder: 'Adicionar Campo', + placeholder: 'Add Field', default: {}, options: [ { @@ -1123,10 +1110,10 @@ export const messagesFields: INodeProperties[] = [ name: 'delay', type: 'number', default: 1200, - description: 'Digite quantos milisegundos de delay a mensagem terá antes de ser enviada', + description: 'Enter how many milliseconds of delay the message will have before being sent', }, { - displayName: 'Responder Mensagem', + displayName: 'Reply Message', name: 'quoted', type: 'fixedCollection', typeOptions: { @@ -1140,21 +1127,21 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'messageQuoted', - displayName: 'Mensagem', + displayName: 'Message', values: [ { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string', default: '', - description: 'ID da mensagem que será respondida', + description: 'ID of the message to be replied to', }, ], }, ], }, { - displayName: 'Menções', + displayName: 'Mentions', name: 'mentions', type: 'fixedCollection', typeOptions: { @@ -1169,17 +1156,17 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'mentionsSettings', - displayName: 'Configurações', + displayName: 'Settings', values: [ { - displayName: 'Mencionar Todos', + displayName: 'Mention Everyone', name: 'mentionsEveryOne', type: 'boolean', default: false, description: 'Whether to mention all participants in the group', }, { - displayName: 'Números Para Mencionar', + displayName: 'Numbers to Mention', name: 'mentioned', type: 'string', default: '', @@ -1188,7 +1175,7 @@ export const messagesFields: INodeProperties[] = [ mentionsEveryOne: [false], }, }, - description: 'Digite os números que deseja mencionar separados por vírgula (ex: 5511999999999,5511888888888)', + description: 'Enter the numbers you want to mention separated by commas (e.g., 5511999999999,5511888888888)', }, ], }, @@ -1203,14 +1190,14 @@ export const messagesFields: INodeProperties[] = [ }, }, - // Campos = Enviar Contato + // Fields = Send Contact { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar o contato', + description: 'Enter the name of the instance that will send the contact', displayOptions: { show: { resource: ['messages-api'], @@ -1219,12 +1206,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do Destinatário', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - displayOptions: { show: { resource: ['messages-api'], @@ -1233,7 +1219,7 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Contatos', + displayName: 'Contacts', name: 'contacts', type: 'fixedCollection', typeOptions: { @@ -1243,38 +1229,38 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'contactValues', - displayName: 'Contato', + displayName: 'Contact', values: [ { - displayName: 'Nome Completo', + displayName: 'Full Name', name: 'fullName', type: 'string', default: '', required: true, - description: 'Nome completo do contato', + description: 'Full name of the contact', }, { - displayName: 'Número Do WhatsApp', + displayName: 'WhatsApp Number', name: 'wuid', type: 'string', default: '', required: true, - description: 'Número do WhatsApp (apenas números, ex: 559999999999)', + description: 'WhatsApp number (numbers only, e.g., 559999999999)', }, { - displayName: 'Número Formatado', + displayName: 'Formatted Number', name: 'phoneNumber', type: 'string', default: '', required: true, - description: 'Número formatado (ex: +55 99 9 9999-9999)', + description: 'Formatted number (e.g., +55 99 9 9999-9999)', }, { - displayName: 'Organização', + displayName: 'Organization', name: 'organization', type: 'string', default: '', - description: 'Nome da organização/empresa', + description: 'Name of the organization/company', }, { displayName: 'Email', @@ -1282,19 +1268,19 @@ export const messagesFields: INodeProperties[] = [ type: 'string', placeholder: 'name@email.com', default: '', - description: 'Endereço de email do contato', + description: 'Contact email address', }, { displayName: 'URL', name: 'url', type: 'string', default: '', - description: 'URL da página do contato', + description: 'Contact page URL', }, ], }, ], - description: 'Lista de contatos para enviar', + description: 'List of contacts to send', displayOptions: { show: { resource: ['messages-api'], @@ -1303,14 +1289,14 @@ export const messagesFields: INodeProperties[] = [ }, }, - // Campos = Enviar Lista + // Fields = Send List { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar a lista', + description: 'Enter the name of the instance that will send the list', displayOptions: { show: { resource: ['messages-api'], @@ -1319,12 +1305,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do Destinatário', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - displayOptions: { show: { resource: ['messages-api'], @@ -1333,12 +1318,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Título Da Lista', + displayName: 'List Title', name: 'title', type: 'string', default: '', required: true, - description: 'Título principal da lista', + description: 'Main title of the list', displayOptions: { show: { resource: ['messages-api'], @@ -1347,12 +1332,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Descrição', + displayName: 'Description', name: 'description', type: 'string', default: '', required: true, - description: 'Descrição da lista', + description: 'Description of the list', displayOptions: { show: { resource: ['messages-api'], @@ -1361,12 +1346,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Texto Do Botão', + displayName: 'Button Text', name: 'buttonText', type: 'string', - default: 'Ver Opções', + default: 'View Options', required: true, - description: 'Texto que aparecerá no botão da lista', + description: 'Text that will appear on the list button', displayOptions: { show: { resource: ['messages-api'], @@ -1375,12 +1360,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Texto Do Rodapé', + displayName: 'Footer Text', name: 'footerText', type: 'string', default: '', required: true, - description: 'Texto que aparecerá no rodapé da lista', + description: 'Text that will appear in the list footer', displayOptions: { show: { resource: ['messages-api'], @@ -1389,9 +1374,9 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Seções', + displayName: 'Sections', name: 'sections', - placeholder: 'Adicionar Seção', + placeholder: 'Add Section', type: 'fixedCollection', typeOptions: { multipleValues: true, @@ -1400,17 +1385,17 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'sectionValues', - displayName: 'Seção', + displayName: 'Section', values: [ { - displayName: 'Título Da Seção', + displayName: 'Section Title', name: 'title', type: 'string', default: '', }, { - displayName: 'Linhas', + displayName: 'Rows', name: 'rows', type: 'fixedCollection', typeOptions: { @@ -1420,29 +1405,29 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'rowValues', - displayName: 'Linha', + displayName: 'Row', values: [ { - displayName: 'Título', + displayName: 'Title', name: 'title', type: 'string', default: '', required: true, - description: 'Título da linha', + description: 'Row title', }, { - displayName: 'Descrição', + displayName: 'Description', name: 'description', type: 'string', default: '', - description: 'Descrição da linha (Opcional)', + description: 'Row description (Optional)', }, { - displayName: 'ID Da Linha', + displayName: 'Row ID', name: 'rowId', type: 'string', default: '', - description: 'ID único da opção', + description: 'Unique option ID', } ] } @@ -1459,10 +1444,10 @@ export const messagesFields: INodeProperties[] = [ } }, { - displayName: 'Opções', + displayName: 'Options', name: 'options_message', type: 'collection', - placeholder: 'Adicionar Campo', + placeholder: 'Add Field', default: {}, options: [ { @@ -1470,10 +1455,10 @@ export const messagesFields: INodeProperties[] = [ name: 'delay', type: 'number', default: 1200, - description: 'Digite quantos milisegundos de delay a mensagem terá antes de ser enviada', + description: 'Enter how many milliseconds of delay the message will have before being sent', }, { - displayName: 'Responder Mensagem', + displayName: 'Reply Message', name: 'quoted', type: 'fixedCollection', typeOptions: { @@ -1487,21 +1472,21 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'messageQuoted', - displayName: 'Mensagem', + displayName: 'Message', values: [ { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string', default: '', - description: 'ID da mensagem que será respondida', + description: 'ID of the message to be replied to', }, ], }, ], }, { - displayName: 'Menções', + displayName: 'Mentions', name: 'mentions', type: 'fixedCollection', typeOptions: { @@ -1516,17 +1501,17 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'mentionsSettings', - displayName: 'Configurações', + displayName: 'Settings', values: [ { - displayName: 'Mencionar Todos', + displayName: 'Mention Everyone', name: 'mentionsEveryOne', type: 'boolean', default: false, description: 'Whether to mention all participants in the group', }, { - displayName: 'Números Para Mencionar', + displayName: 'Numbers to Mention', name: 'mentioned', type: 'string', default: '', @@ -1535,7 +1520,7 @@ export const messagesFields: INodeProperties[] = [ mentionsEveryOne: [false], }, }, - description: 'Digite os números que deseja mencionar separados por vírgula (ex: 5511999999999,5511888888888)', + description: 'Enter the numbers you want to mention separated by commas (e.g., 5511999999999,5511888888888)', }, ], }, @@ -1550,14 +1535,14 @@ export const messagesFields: INodeProperties[] = [ }, }, - // Campos = Enviar Botões + // Fields = Send Buttons { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar os botões', + description: 'Enter the name of the instance that will send the buttons', displayOptions: { show: { resource: ['messages-api'], @@ -1566,12 +1551,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do Destinatário', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - displayOptions: { show: { resource: ['messages-api'], @@ -1580,12 +1564,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Título', + displayName: 'Title', name: 'title', type: 'string', default: '', required: true, - description: 'Título da mensagem com botões', + description: 'Title of the message with buttons', displayOptions: { show: { resource: ['messages-api'], @@ -1594,12 +1578,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Descrição', + displayName: 'Description', name: 'description', type: 'string', default: '', required: true, - description: 'Descrição da mensagem com botões', + description: 'Description of the message with buttons', displayOptions: { show: { resource: ['messages-api'], @@ -1608,12 +1592,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Rodapé', + displayName: 'Footer', name: 'footer', type: 'string', default: '', //required: false, - description: 'Texto do rodapé da mensagem', + description: 'Message footer text', displayOptions: { show: { resource: ['messages-api'], @@ -1622,9 +1606,9 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Botões', + displayName: 'Buttons', name: 'buttons', - placeholder: 'Adicionar Botão', + placeholder: 'Add Button', type: 'fixedCollection', typeOptions: { multipleValues: true, @@ -1634,19 +1618,19 @@ export const messagesFields: INodeProperties[] = [ options: [ { name: 'buttonValues', - displayName: 'Botão', + displayName: 'Button', values: [ { - displayName: 'Tipo', + displayName: 'Type', name: 'type', type: 'options', options: [ { - name: 'Resposta', + name: 'Reply', value: 'reply', }, { - name: 'Copiar', + name: 'Copy', value: 'copy', }, { @@ -1654,14 +1638,14 @@ export const messagesFields: INodeProperties[] = [ value: 'url', }, { - name: 'Ligar', + name: 'Call', value: 'call', }, ], default: 'reply', }, { - displayName: 'Texto Do Botão', + displayName: 'Button Text', name: 'displayText', type: 'string', default: '', @@ -1680,7 +1664,7 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Código Para Copiar', + displayName: 'Code To Copy', name: 'copyCode', type: 'string', default: '', @@ -1704,7 +1688,7 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Número De Telefone', + displayName: 'Phone Number', name: 'phoneNumber', type: 'string', default: '', @@ -1718,7 +1702,7 @@ export const messagesFields: INodeProperties[] = [ ], }, ], - description: 'Botões da mensagem (máximo 3)', + description: 'Message buttons (maximum 3)', displayOptions: { show: { resource: ['messages-api'], @@ -1727,14 +1711,14 @@ export const messagesFields: INodeProperties[] = [ }, }, - // Campos = Enviar PIX + // Fields = Send PIX { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância que vai enviar o PIX', + description: 'Enter the name of the instance that will send the PIX', displayOptions: { show: { resource: ['messages-api'], @@ -1743,12 +1727,11 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do Destinatário', + displayName: 'Recipient Number', name: 'remoteJid', type: 'string', default: '', required: true, - displayOptions: { show: { resource: ['messages-api'], @@ -1757,12 +1740,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Nome Do Beneficiário', + displayName: 'Beneficiary Name', name: 'name', type: 'string', default: '', required: true, - description: 'Nome do beneficiário do PIX', + description: 'Name of the PIX beneficiary', displayOptions: { show: { resource: ['messages-api'], @@ -1771,12 +1754,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Tipo Da Chave', + displayName: 'Key Type', name: 'keyType', type: 'options', options: [ { - name: 'Telefone', + name: 'Phone', value: 'phone', }, { @@ -1792,13 +1775,13 @@ export const messagesFields: INodeProperties[] = [ value: 'cnpj', }, { - name: 'Aleatória', + name: 'Random', value: 'random', }, ], default: 'email', required: true, - description: 'Tipo da chave PIX', + description: 'PIX key type', displayOptions: { show: { resource: ['messages-api'], @@ -1807,12 +1790,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Chave PIX', + displayName: 'Key PIX', name: 'key', type: 'string', default: '', required: true, - description: 'Chave PIX do beneficiário', + description: 'PIX key of the beneficiary', displayOptions: { show: { resource: ['messages-api'], @@ -1821,7 +1804,7 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Enviar Para Todos', + displayName: 'Send To All', name: 'allContacts', type: 'boolean', default: false, @@ -1834,12 +1817,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Lista De Contatos', + displayName: 'Contact List', name: 'statusJidList', type: 'string', default: '', required: true, - description: 'Lista de contatos que receberão o status (separados por vírgula)', + description: 'List of contacts who will receive the status (comma-separated)', displayOptions: { show: { resource: ['messages-api'], @@ -1849,14 +1832,14 @@ export const messagesFields: INodeProperties[] = [ }, }, - // Campos = Reagir Mensagem + // Fields = React to Message { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string', default: '', required: true, - description: 'Digite o nome da instância', + description: 'Enter the name of the instance', displayOptions: { show: { resource: ['messages-api'], @@ -1865,12 +1848,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Número Do Chat', + displayName: 'Chat Number', name: 'remoteJid', type: 'string', default: '', required: true, - description: 'Número do chat onde está a mensagem', + description: 'Chat number where the message is located', displayOptions: { show: { resource: ['messages-api'], @@ -1879,12 +1862,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'ID Da Mensagem', + displayName: 'Message ID', name: 'messageId', type: 'string', default: '', required: true, - description: 'ID da mensagem que receberá a reação', + description: 'ID of the message that will receive the reaction', displayOptions: { show: { resource: ['messages-api'], @@ -1893,7 +1876,7 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Mensagem Própria', + displayName: 'Own Message', name: 'fromMe', type: 'boolean', default: true, @@ -1906,12 +1889,12 @@ export const messagesFields: INodeProperties[] = [ }, }, { - displayName: 'Emoji Da Reação', + displayName: 'Reaction Emoji', name: 'reaction', type: 'string', default: '👍', required: true, - description: 'Emoji que será usado como reação', + description: 'Emoji that will be used as a reaction', displayOptions: { show: { resource: ['messages-api'], diff --git a/nodes/EvolutionApi/properties/messages.operations.ts b/nodes/EvolutionApi/properties/messages.operations.ts index eaea98e..0a706fe 100644 --- a/nodes/EvolutionApi/properties/messages.operations.ts +++ b/nodes/EvolutionApi/properties/messages.operations.ts @@ -1,119 +1,119 @@ import { INodeProperties } from 'n8n-workflow'; -// Opções da messages-api (Mensagens) +// Options for messages-api (Messages) export const messagesOperationsOptions: INodeProperties = { - displayName: 'Operação', + displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { - resource: ['messages-api'], // Value do Resource + resource: ['messages-api'], // Resource value }, }, options: [ - // Opção = Enviar mensagem de Texto + // Option = Send Text Message { // Send Text - name: 'Enviar Texto', - action: 'Enviar texto', - description: 'Envia mensagem de Texto', + name: 'Send Text', + action: 'Send text', + description: 'Sends a text message', value: 'send-text', }, - // Opção = Enviar Imagem + // Option = Send Image { // Send Media - name: 'Enviar Imagem', - action: 'Enviar imagem', - description: 'Envia mensagem de Imagem', + name: 'Send Image', + action: 'Send image', + description: 'Sends an image message', value: 'send-image', }, - // Opção = Enviar Video + // Option = Send Video { // Send Media - name: 'Enviar Video', - action: 'Enviar video', - description: 'Enviar mensagem de Video', + name: 'Send Video', + action: 'Send video', + description: 'Sends a video message', value: 'send-video', }, - // Opção = Enviar Audio + // Option = Send Audio { // Send Narrated Audio - name: 'Enviar Audio', - action: 'Enviar audio', - description: 'Enviar mensagem de Audio', + name: 'Send Audio', + action: 'Send audio', + description: 'Sends an audio message', value: 'send-audio', }, - // Opção = Enviar Documento + // Option = Send Document { // Send Media - name: 'Enviar Documento', - action: 'Enviar documento', - description: 'Enviar mensagem com Documento', + name: 'Send Document', + action: 'Send document', + description: 'Sends a message with a document', value: 'send-document', }, - // Opção = Enviar Enquete + // Option = Send Poll { // Send Poll - name: 'Enviar Enquete', - action: 'Enviar enquete', - description: 'Envia uma Enquete de até 12 opções', + name: 'Send Poll', + action: 'Send poll', + description: 'Sends a poll with up to 12 options', value: 'send-poll', }, - // Opção = Enviar Contato + // Option = Send Contact { - name: 'Enviar Contato', - action: 'Enviar contato', - description: 'Envia um contato no whatsapp', + name: 'Send Contact', + action: 'Send contact', + description: 'Sends a contact on WhatsApp', value: 'send-contact', }, - // Opção = Enviar Lista + // Option = Send List { - name: 'Enviar Lista', - action: 'Enviar lista', - description: 'Envia uma lista de opções interativa', + name: 'Send List', + action: 'Send list', + description: 'Sends an interactive list of options', value: 'send-list', }, - // Opção = Enviar Botões + // Option = Send Buttons { - name: 'Enviar Botões', - action: 'Enviar bot es', - description: 'Envia mensagem com botões interativos', + name: 'Send Buttons', + action: 'Send buttons', + description: 'Sends a message with interactive buttons', value: 'send-buttons', }, - // Opção = Enviar PIX + // Option = Send PIX { - name: 'Enviar PIX', - action: 'Enviar PIX', - description: 'Envia botão de pagamento PIX', + name: 'Send PIX', + action: 'Send PIX', + description: 'Sends a PIX payment button', value: 'send-pix', }, - // Opção = Enviar Status + // Option = Send Status { - name: 'Enviar Status', - action: 'Enviar status', - description: 'Publicar um Status/Stories', + name: 'Send Status', + action: 'Send status', + description: 'Publishes a Status/Story', value: 'send-stories', }, - // Opção = Reagir Mensagem + // Option = React to Message { - name: 'Reagir Mensagem', - action: 'Reagir mensagem', - description: 'Adiciona uma reação em uma mensagem', + name: 'React to Message', + action: 'React to message', + description: 'Adds a reaction to a message', value: 'send-reaction', }, ], - // Definindo como padrão a opção "Enviar Texto" + // Setting "Send Text" as the default option default: 'send-text', }; diff --git a/nodes/EvolutionApi/properties/profile.fields.ts b/nodes/EvolutionApi/properties/profile.fields.ts index 73fd6b0..8948cc3 100644 --- a/nodes/EvolutionApi/properties/profile.fields.ts +++ b/nodes/EvolutionApi/properties/profile.fields.ts @@ -2,12 +2,12 @@ import { INodeProperties, NodePropertyTypes } from 'n8n-workflow'; export const profileFields: INodeProperties[] = [ { - displayName: 'Nome Da Instância', + displayName: 'Instance Name', name: 'instanceName', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Digite o nome da instância', + description: 'Enter the instance name', displayOptions: { show: { resource: ['profile-api'], @@ -15,12 +15,12 @@ export const profileFields: INodeProperties[] = [ }, }, { - displayName: 'Nome', + displayName: 'Name', name: 'name', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Novo nome do perfil', + description: 'New profile name', displayOptions: { show: { resource: ['profile-api'], @@ -29,12 +29,12 @@ export const profileFields: INodeProperties[] = [ }, }, { - displayName: 'Contato', + displayName: 'Contact', name: 'remoteJid', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Número do contato', + description: 'Contact number', displayOptions: { show: { resource: ['profile-api'], @@ -52,7 +52,7 @@ export const profileFields: INodeProperties[] = [ type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'Novo status do perfil (máximo 139 caracteres)', + description: 'New profile status (maximum 139 characters)', typeOptions: { maxLength: 139, }, @@ -64,12 +64,12 @@ export const profileFields: INodeProperties[] = [ }, }, { - displayName: 'URL Da Imagem', + displayName: 'Image URL', name: 'picture', type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'URL da imagem que será definida como foto do perfil', + description: 'URL of the image that will be set as the profile picture', displayOptions: { show: { resource: ['profile-api'], @@ -78,22 +78,22 @@ export const profileFields: INodeProperties[] = [ }, }, { - displayName: 'Confirmação De Leitura', + displayName: 'Read Receipts', name: 'readreceipts', type: 'options' as NodePropertyTypes, options: [ { - name: 'Todos', + name: 'All', value: 'all', }, { - name: 'Ninguém', + name: 'None', value: 'none', }, ], default: 'all', required: true, - description: 'Quem pode ver quando você leu as mensagens', + description: 'Who can see when you have read messages', displayOptions: { show: { resource: ['profile-api'], @@ -102,30 +102,30 @@ export const profileFields: INodeProperties[] = [ }, }, { - displayName: 'Foto Do Perfil', + displayName: 'Profile Picture', name: 'profile', type: 'options' as NodePropertyTypes, options: [ { - name: 'Todos', + name: 'All', value: 'all', }, { - name: 'Meus Contatos', + name: 'My Contacts', value: 'contacts', }, { - name: 'Exceto Contatos Específicos', + name: 'Except Specific Contacts', value: 'contact_blacklist', }, { - name: 'Ninguém', + name: 'None', value: 'none', }, ], default: 'all', required: true, - description: 'Quem pode ver sua foto de perfil', + description: 'Who can see your profile picture', displayOptions: { show: { resource: ['profile-api'], @@ -139,25 +139,25 @@ export const profileFields: INodeProperties[] = [ type: 'options' as NodePropertyTypes, options: [ { - name: 'Todos', + name: 'All', value: 'all', }, { - name: 'Meus Contatos', + name: 'My Contacts', value: 'contacts', }, { - name: 'Exceto Contatos Específicos', + name: 'Except Specific Contacts', value: 'contact_blacklist', }, { - name: 'Ninguém', + name: 'None', value: 'none', }, ], default: 'contacts', required: true, - description: 'Quem pode ver seu status', + description: 'Who can see your status', displayOptions: { show: { resource: ['profile-api'], @@ -171,17 +171,17 @@ export const profileFields: INodeProperties[] = [ type: 'options' as NodePropertyTypes, options: [ { - name: 'Todos', + name: 'All', value: 'all', }, { - name: 'Igual Ao Visto Por Último', + name: 'Same as Last Seen', value: 'match_last_seen', }, ], default: 'all', required: true, - description: 'Quem pode ver quando você está online', + description: 'Who can see when you are online', displayOptions: { show: { resource: ['profile-api'], @@ -190,30 +190,30 @@ export const profileFields: INodeProperties[] = [ }, }, { - displayName: 'Visto Por Último', + displayName: 'Last Seen', name: 'last', type: 'options' as NodePropertyTypes, options: [ { - name: 'Todos', + name: 'All', value: 'all', }, { - name: 'Meus Contatos', + name: 'My Contacts', value: 'contacts', }, { - name: 'Exceto Contatos Específicos', + name: 'Except Specific Contacts', value: 'contact_blacklist', }, { - name: 'Ninguém', + name: 'None', value: 'none', }, ], default: 'contacts', required: true, - description: 'Quem pode ver seu último acesso', + description: 'Who can see your last seen', displayOptions: { show: { resource: ['profile-api'], @@ -222,26 +222,26 @@ export const profileFields: INodeProperties[] = [ }, }, { - displayName: 'Grupos', + displayName: 'Groups', name: 'groupadd', type: 'options' as NodePropertyTypes, options: [ { - name: 'Todos', + name: 'All', value: 'all', }, { - name: 'Meus Contatos', + name: 'My Contacts', value: 'contacts', }, { - name: 'Exceto Contatos Específicos', + name: 'Except Specific Contacts', value: 'contact_blacklist', }, ], default: 'all', required: true, - description: 'Quem pode te adicionar em grupos', + description: 'Who can add you to groups', displayOptions: { show: { resource: ['profile-api'], diff --git a/nodes/EvolutionApi/properties/profile.operations.ts b/nodes/EvolutionApi/properties/profile.operations.ts index 5fbfa74..625ad50 100644 --- a/nodes/EvolutionApi/properties/profile.operations.ts +++ b/nodes/EvolutionApi/properties/profile.operations.ts @@ -1,7 +1,7 @@ import { INodeProperties } from 'n8n-workflow'; export const profileOperationsOptions: INodeProperties = { - displayName: 'Operação', + displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, @@ -12,52 +12,52 @@ export const profileOperationsOptions: INodeProperties = { }, options: [ { - name: 'Buscar Perfil', + name: 'Fetch Profile', value: 'fetch-profile', - description: 'Busca informações do perfil', - action: 'Buscar perfil', + description: 'Fetches profile information', + action: 'Fetch profile', }, { - name: 'Buscar Perfil Profissional', + name: 'Fetch Business Profile', value: 'fetch-business-profile', - description: 'Busca informações do perfil profissional', - action: 'Buscar perfil profissional', + description: 'Fetches business profile information', + action: 'Fetch business profile', }, { - name: 'Atualizar Nome Do Perfil', - value: 'update-profile-name', - description: 'Atualiza o nome do perfil', - action: 'Atualizar nome do perfil', + name: 'Update Profile Name', + value: 'update-profile-name', + description: 'Updates the profile name', + action: 'Update profile name', }, - { - name: 'Atualizar Status', + { + name: 'Update Profile Status', value: 'update-profile-status', - description: 'Atualiza o status do perfil', - action: 'Atualizar status do perfil', - }, + description: 'Updates the profile status', + action: 'Update profile status', + }, { - name: 'Atualizar Foto Do Perfil', + name: 'Update Profile Picture', value: 'update-profile-picture', - description: 'Atualiza a foto do perfil', - action: 'Atualizar foto do perfil', - }, + description: 'Updates the profile picture', + action: 'Update profile picture', + }, + { + name: 'Remove Profile Picture', + value: 'remove-profile-picture', + description: 'Removes the profile picture', + action: 'Remove profile picture', + }, { - name: 'Remover Foto Do Perfil', - value: 'remove-profile-picture', - description: 'Remove a foto do perfil', - action: 'Remover foto do perfil', + name: 'Fetch Privacy Settings', + value: 'fetch-privacy-settings', + description: 'Fetches the instance privacy settings', + action: 'Fetch privacy settings', }, - { - name: 'Buscar Configurações De Privacidade', - value: 'fetch-privacy-settings', - description: 'Busca as configurações de privacidade da instância', - action: 'Buscar configura es de privacidade', - }, { - name: 'Atualizar Configurações De Privacidade', + name: 'Update Privacy Settings', value: 'update-privacy-settings', - description: 'Atualiza as configurações de privacidade da instância', - action: 'Atualizar configura es de privacidade', + description: 'Updates the instance privacy settings', + action: 'Update privacy settings', }, ], default: 'fetch-profile', diff --git a/nodes/EvolutionApi/properties/readme.txt b/nodes/EvolutionApi/properties/readme.txt index db449fe..6f32910 100644 --- a/nodes/EvolutionApi/properties/readme.txt +++ b/nodes/EvolutionApi/properties/readme.txt @@ -1,6 +1,6 @@ -Observação deste documento: -Este documento serve para a Definição de Operações que devem aparecer -em cada Resource, incluindo a criação de novos campos para cada Operation +Note on this document: +This document serves for the Definition of Operations that should appear +in each Resource, including the creation of new fields for each Operation ██████╗ ██████╗ ███████╗██████╗ █████╗ ████████╗██╗ ██████╗ ███╗ ██╗ ██╔═══██╗██╔══██╗██╔════╝██╔══██╗██╔══██╗╚══██╔══╝██║██╔═══██╗████╗ ██║ @@ -9,17 +9,17 @@ em cada Resource, incluindo a criação de novos campos para cada Operation ╚██████╔╝██║ ███████╗██║ ██║██║ ██║ ██║ ██║╚██████╔╝██║ ╚████║ ╚═════╝ ╚═╝ ╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝ -Operation = Funções/Opções de cada Resource (Instancia, Mensagens, Integração, Conversa, Perfil e Grupo) +Operation = Functions/Options of each Resource (Instance, Messages, Integration, Chat, Profile and Group) -"O que cada Resource vai apresentar ao ser selecionado" +"What each Resource will present when selected" -Exemplo: -Instancias: - • Criar instncia; - • Criar instancia com proxy; - • Conectar instancia; +Example: +Instances: + • Create instance; + • Create instance with proxy; + • Connect instance; -Cada Resource adicionada tera um desse para listar as opções/funções de cada Resource +Each added Resource will have one of these to list the options/functions of each Resource @@ -31,13 +31,13 @@ Cada Resource adicionada tera um desse para listar as opções/funções de cada ███████╗███████╗███████╗██║ ╚═╝ ██║███████╗██║ ╚████║ ██║ ███████║ ╚══════╝╚══════╝╚══════╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═══╝ ╚═╝ ╚══════╝ -Elements = Os campos que aparecem em cada Operation +Elements = The fields that appear in each Operation -"Cada Operation (ex: Enviar mensagem de Texto) tem campos que precisam ser preenchido para fazer uma requisição" +"Each Operation (ex: Send Text Message) has fields that need to be filled to make a request" -Exemplo: -Enviar Mensagem de Texto: - • Instancia que vai enviar; - • RemoteJid do destinatario; - • Mensagem que vai ser enviada; +Example: +Send Text Message: + • Instance that will send; + • RemoteJid of the recipient; + • Message that will be sent; diff --git a/nodes/EvolutionApi/properties/resources.ts b/nodes/EvolutionApi/properties/resources.ts index b4c8b0f..f2bf91a 100644 --- a/nodes/EvolutionApi/properties/resources.ts +++ b/nodes/EvolutionApi/properties/resources.ts @@ -1,17 +1,17 @@ import { INodeProperties } from 'n8n-workflow'; export const resources: INodeProperties = { - displayName: 'Recurso', + displayName: 'Resource', name: 'resource', type: 'options', noDataExpression: true, options: [ { - name: 'Instância', + name: 'Instance', value: 'instances-api', }, { - name: 'Mensagem', + name: 'Message', value: 'messages-api', }, { @@ -19,19 +19,19 @@ export const resources: INodeProperties = { value: 'chat-api', }, { - name: 'Grupo', + name: 'Group', value: 'groups-api', }, { - name: 'Perfil', + name: 'Profile', value: 'profile-api', }, { - name: 'Evento', + name: 'Event', value: 'events-api', }, { - name: 'Integração', + name: 'Integration', value: 'integrations-api', }, ], diff --git a/package.json b/package.json index df98000..613c9b5 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "n8n-nodes-evolution-api", - "version": "1.0.4", - "description": "A Evolution API é um hub de canais com foco no WhatsApp", + "version": "1.0.5", + "description": "Evolution API is a channel hub with a focus on WhatsApp (English version)", "keywords": [ "n8n-community-node-package" ], @@ -13,7 +13,7 @@ }, "repository": { "type": "git", - "url": "https://github.com/oriondesign2015/n8n-nodes-evolution-api.git" + "url": "https://github.com/oriondesign2015/n8n-nodes-evolution-api" }, "engines": { "node": ">=18.10",