From 1e1a0245148b355fb1ae56c418776e76da1afb2a Mon Sep 17 00:00:00 2001 From: Ilyass Karroumi Date: Fri, 18 Jul 2025 22:35:44 +0100 Subject: [PATCH 1/4] Translate to English with formatting improvements --- README.md | 164 +++--- README_TEMPLATE.md | 164 +++--- credentials/EvolutionApi.credentials.ts | 8 +- nodes/EvolutionApi/EvolutionApi.node.ts | 20 +- .../EvolutionApi/execute/chat/blockContact.ts | 2 +- .../EvolutionApi/execute/chat/checkNumber.ts | 2 +- .../execute/chat/deleteMessage.ts | 2 +- .../execute/chat/fetchProfilePicture.ts | 2 +- nodes/EvolutionApi/execute/chat/findChats.ts | 2 +- .../EvolutionApi/execute/chat/findContacts.ts | 2 +- .../EvolutionApi/execute/chat/findMessages.ts | 2 +- .../execute/chat/findStatusMessages.ts | 2 +- .../execute/chat/getMediaBase64.ts | 2 +- .../execute/chat/manageArchive.ts | 2 +- .../execute/chat/markChatUnread.ts | 2 +- .../EvolutionApi/execute/chat/readMessages.ts | 2 +- .../EvolutionApi/execute/chat/sendPresence.ts | 2 +- .../execute/chat/updateMessage.ts | 2 +- nodes/EvolutionApi/execute/events/setProxy.ts | 6 +- .../execute/events/setRabbitMQ.ts | 10 +- .../EvolutionApi/execute/events/setWebhook.ts | 12 +- .../execute/groups/createGroup.ts | 2 +- .../execute/groups/fetchGroups.ts | 4 +- .../execute/groups/fetchInviteCode.ts | 2 +- .../execute/groups/findParticipants.ts | 2 +- .../EvolutionApi/execute/groups/joinGroup.ts | 2 +- .../EvolutionApi/execute/groups/leaveGroup.ts | 2 +- .../execute/groups/revokeInviteCode.ts | 2 +- .../execute/groups/sendInviteLink.ts | 2 +- .../execute/groups/toggleEphemeral.ts | 2 +- .../execute/groups/updateGroupDescription.ts | 2 +- .../execute/groups/updateGroupName.ts | 2 +- .../execute/groups/updateGroupPicture.ts | 2 +- .../execute/groups/updateParticipants.ts | 2 +- .../execute/groups/updateSettings.ts | 2 +- nodes/EvolutionApi/execute/index.ts | 2 +- .../execute/instance/createInstanceBasic.ts | 18 +- .../execute/instance/deleteInstance.ts | 6 +- .../execute/instance/fetchInstances.ts | 6 +- .../execute/instance/instanceConnect.ts | 6 +- .../execute/instance/instanceSettings.ts | 6 +- .../execute/instance/logoutInstance.ts | 6 +- .../execute/instance/restartInstance.ts | 6 +- .../execute/instance/setPresence.ts | 6 +- .../EvolutionApi/execute/instance/setProxy.ts | 10 +- .../execute/integrations/setChatwoot.ts | 10 +- .../execute/integrations/setDifyBot.ts | 10 +- .../execute/integrations/setEvolutionBot.ts | 10 +- .../execute/integrations/setFlowiseBot.ts | 10 +- .../execute/integrations/setTypebot.ts | 10 +- .../execute/messages/sendAudio.ts | 12 +- .../execute/messages/sendButtons.ts | 16 +- .../execute/messages/sendContact.ts | 14 +- .../execute/messages/sendDocument.ts | 20 +- .../execute/messages/sendImage.ts | 12 +- .../EvolutionApi/execute/messages/sendList.ts | 16 +- .../EvolutionApi/execute/messages/sendPix.ts | 14 +- .../EvolutionApi/execute/messages/sendPoll.ts | 20 +- .../execute/messages/sendReaction.ts | 14 +- .../execute/messages/sendStories.ts | 20 +- .../EvolutionApi/execute/messages/sendText.ts | 6 +- .../execute/messages/sendVideo.ts | 12 +- .../execute/profile/fetchBusinessProfile.ts | 2 +- .../execute/profile/fetchPrivacySettings.ts | 2 +- .../execute/profile/fetchProfile.ts | 2 +- .../execute/profile/removeProfilePicture.ts | 2 +- .../execute/profile/updatePrivacySettings.ts | 2 +- .../execute/profile/updateProfileName.ts | 2 +- .../execute/profile/updateProfilePicture.ts | 2 +- .../execute/profile/updateProfileStatus.ts | 2 +- nodes/EvolutionApi/properties/chat.fields.ts | 203 ++++--- .../properties/chat.operations.ts | 86 +-- .../EvolutionApi/properties/events.fields.ts | 49 +- .../properties/events.operations.ts | 14 +- .../EvolutionApi/properties/groups.fields.ts | 209 ++++--- .../properties/groups.operations.ts | 86 +-- nodes/EvolutionApi/properties/index.ts | 30 +- .../properties/instances.fields.ts | 254 ++++----- .../properties/instances.operations.ts | 80 +-- .../properties/integrations.fields.ts | 533 +++++++++--------- .../properties/integrations.operations.ts | 26 +- .../properties/messages.fields.ts | 533 +++++++++--------- .../properties/messages.operations.ts | 104 ++-- .../EvolutionApi/properties/profile.fields.ts | 76 +-- .../properties/profile.operations.ts | 66 +-- nodes/EvolutionApi/properties/readme.txt | 36 +- nodes/EvolutionApi/properties/resources.ts | 14 +- package.json | 2 +- 88 files changed, 1558 insertions(+), 1599 deletions(-) diff --git a/README.md b/README.md index 729fa1a..adc9ab3 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,12 @@ ![image](https://github.com/user-attachments/assets/813b7b34-377c-42e8-9f1a-12e27e682c7f)


-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.


- Dynamic JSON Badge + Total Downloads Badge

@@ -19,193 +19,193 @@ Este Community Nodes é uma solução 100% gratuita, criada com o intuito de sim

-

⚙️ Requisitos

+

⚙️ Requirements

-Para utilizar o nosso **Community Node**, é necessário atender aos seguintes requisitos: -- **N8N** na versão **1.54.4** ou superior -- **Evolution API** na versão **2.2.0** ou superior +To use our **Community Node**, you need to meet the following requirements: +- **N8N** version **1.54.4** or higher +- **Evolution API** version **2.2.0** or higher

-

📌 Recursos Disponíveis

+

📌 Available Resources

-

Instância

-🖥️ Este recurso oferece acesso completo às principais funcionalidades relacionadas às instâncias da Evolution API. Ele permite realizar operações essenciais, como criar novas instâncias, conectar-se a elas, obter informações detalhadas, personalizar comportamentos, monitorar presença, reiniciar e até mesmo excluir instâncias de forma prática e eficiente. +

Instance

+🖥️ This resource offers complete access to the main functionalities related to Evolution API instances. It allows essential operations such as creating new instances, connecting to them, obtaining detailed information, customizing behaviors, monitoring presence, restarting, and even deleting instances in a practical and efficient way.
- Lista de operações + List of operations
-    ✅ Criar Instancia +    ✅ Create Instance
-    ✅ Gerar Qr-Code +    ✅ Generate QR-Code
-    ✅ Buscar Instancia +    ✅ Find Instance
-    ✅ Definir Comportamento +    ✅ Set Behavior
-    ✅ Definir Presença +    ✅ Set Presence
-    ✅ Definir Proxy +    ✅ Set Proxy
-    ✅ Buscar Proxy +    ✅ Find Proxy
-    ✅ Desconectar WhatsApp +    ✅ Disconnect WhatsApp
-    ✅ Deletar Instancia +    ✅ Delete Instance
-

Mensagem

-✉️ Este recurso concentra todas as funcionalidades relacionadas ao envio e gerenciamento de mensagens através da Evolution API. Com ele, você pode enviar diversos tipos de conteúdo como textos, imagens, vídeos, áudios, documentos, contatos, listas interativas, botões e até mesmo mensagens PIX. Cada tipo de mensagem possui opções avançadas como delay, mentions, replies e formatações especiais. O recurso foi desenvolvido para proporcionar uma experiência completa de comunicação, permitindo explorar ao máximo os recursos nativos do WhatsApp de forma simples e eficiente. +

Message

+✉️ This resource concentrates all functionalities related to sending and managing messages through the Evolution API. With it, you can send various types of content such as texts, images, videos, audios, documents, contacts, interactive lists, buttons, and even PIX messages. Each message type has advanced options such as delay, mentions, replies, and special formatting. The resource was developed to provide a complete communication experience, allowing you to fully explore WhatsApp's native features simply and efficiently.
- Lista de operações + List of operations
-    ✅ Enviar Texto +    ✅ Send Text
-    ✅ Enviar Imagem +    ✅ Send Image
-    ✅ Enviar Video +    ✅ Send Video
-    ✅ Enviar Audio +    ✅ Send Audio
-    ✅ Enviar Documento +    ✅ Send Document
-    ✅ Enviar Enquete -
+    ✅ Send Poll +
-    ✅ Enviar Contato +    ✅ Send Contact
-    ✅ Enviar Lista +    ✅ Send List
-    ✅ Enviar Botão +    ✅ Send Button
-    ✅ Enviar Pix +    ✅ Send Pix
-    ✅ Enviar Status +    ✅ Send Status
-    ✅ Reagir a Mensagem +    ✅ React to Message
-

Grupo

-👥 Com este recurso, você conta com um conjunto completo de funcionalidades para gerenciamento de grupos no WhatsApp por meio da Evolution API. Ele abrange desde a criação e administração de grupos até o gerenciamento de participantes, configuração de permissões, links de convite e mensagens temporárias. Tudo foi projetado para oferecer controle eficiente e simplificado na administração de grupos. +

Group

+👥 With this resource, you have a complete set of functionalities for group management in WhatsApp through the Evolution API. It covers everything from creating and managing groups to managing participants, configuring permissions, invite links, and temporary messages. Everything has been designed to offer efficient and simplified control in group administration.
- Lista de operações + List of operations
-    ✅ Criar Grupo +    ✅ Create Group
-    ✅ Atualizar Imagem do Grupo +    ✅ Update Group Image
-    ✅ Atualizar Nome do Grupo +    ✅ Update Group Name
-    ✅ Atualizar Descrição do Grupo +    ✅ Update Group Description
-    ✅ Atualizar Configurações do Grupo +    ✅ Update Group Settings
-    ✅ Atualizar Membros +    ✅ Update Members
-    ✅ Buscar Link de convite do Grupo +    ✅ Fetch Group Invite Link
-    ✅ Revogar Link de convite do Grupo +    ✅ Revoke Group Invite Link
-    ✅ Enviar Link de Convite do Grupo +    ✅ Send Group Invite Link
-    ✅ Encontrar Participantes +    ✅ Find Participants
-    ✅ Mensagens Temporarias +    ✅ Temporary Messages
-    ✅ Sair do Grupo +    ✅ Leave Group
-    ✅ Entrar no Grupo +    ✅ Join Group

Chat

-💬 Este recurso disponibiliza um conjunto abrangente de ferramentas para o gerenciamento de conversas e interações utilizando a Evolution API. Com ele, é possível verificar números, enviar e gerenciar mensagens, manipular arquivos de mídia, controlar status de leitura, administrar contatos e monitorar presença. Todas as operações são desenvolvidas para proporcionar um controle completo e eficiente das comunicações, facilitando a gestão tanto de conversas individuais quanto em grupo. +💬 This resource provides a comprehensive set of tools for managing conversations and interactions using the Evolution API. With it, you can verify numbers, send and manage messages, manipulate media files, control read statuses, manage contacts, and monitor presence. All operations are developed to provide complete and efficient control over communications, facilitating the management of both individual and group conversations.
- Lista de operações + List of operations
-    ✅ Verificar Numero +    ✅ Check Number
-    ✅ Ler Mensagem +    ✅ Read Message
-    ✅ Gerenciar Arquivoo +    ✅ Manage Archive
-    ✅ Marcar como Não lido +    ✅ Mark as Unread
-    ✅ Deletar Mensagem +    ✅ Delete Message
-    ✅ Buscar Foto de Perfil +    ✅ Fetch Profile Picture
-    ✅ Obter Midia em Base64 +    ✅ Get Media in Base64
-    ✅ Editar Mensagem +    ✅ Edit Message
-    ✅ Enviar Presença +    ✅ Send Presence
-    ✅ Bloquear Contato +    ✅ Block Contact
-    ✅ Buscar Contatos +    ✅ Find Contacts
-    ✅ Procurar Mensagens +    ✅ Search Messages
-    ✅ Procurar Status +    ✅ Search Status
-    ✅ Procurar Chats +    ✅ Search Chats
-

Evento

-⚡ Este recurso oferece mecanismos avançados para integração e monitoramento em tempo real das atividades da Evolution API. Ele permite configurar e gerenciar Webhooks e RabbitMQ, possibilitando o acompanhamento de eventos como mensagens recebidas, alterações em grupos, status de conexão e muito mais. Essas funcionalidades foram projetadas para garantir uma comunicação ágil e automatizada entre sua aplicação e a API, promovendo respostas imediatas a diferentes eventos do WhatsApp. +

Event

+⚡ This resource offers advanced mechanisms for integration and real-time monitoring of Evolution API activities. It allows configuring and managing Webhooks and RabbitMQ, enabling the tracking of events such as received messages, group changes, connection statuses, and much more. These functionalities are designed to ensure agile and automated communication between your application and the API, promoting immediate responses to different WhatsApp events.
- Lista de operações + List of operations
   ✅ Webhook
@@ -214,11 +214,11 @@ Para utilizar o nosso **Community Node**, é necessário atender aos seguintes r
-

Integração

-🔗 Este recurso disponibiliza uma ampla gama de conectores para integrar a Evolution API a diversas plataformas e serviços externos. Entre as possibilidades estão conexões com Chatwoot para atendimento ao cliente, Evolution Bot para automações, Typebot para fluxos conversacionais, além de integrações com Flowise e Dify para soluções de inteligência artificial. Essas integrações ampliam as capacidades da API, permitindo criar soluções robustas e automatizadas para diferentes cenários de negócios. +

Integration

+🔗 This resource provides a wide range of connectors to integrate the Evolution API with various external platforms and services. Possibilities include connections with Chatwoot for customer service, Evolution Bot for automations, Typebot for conversational flows, as well as integrations with Flowise and Dify for artificial intelligence solutions. These integrations expand the API's capabilities, allowing the creation of robust and automated solutions for different business scenarios.
- Lista de operações + List of operations
   ✅ Chatwoot
@@ -232,23 +232,23 @@ Para utilizar o nosso **Community Node**, é necessário atender aos seguintes r    ✅ Dify
-    ✅ Floise +    ✅ Flowise

-

🤝 Contribuição

+

🤝 Contribution

-Contribua para o crescimento deste projeto! Você pode ajudar de diversas formas: -- **Pull Requests**: Envie melhorias, correções ou novas funcionalidades. -- **Issues**: Relate problemas ou sugira novas ideias. -- **Sugestões**: Compartilhe suas opiniões e feedbacks. -- **Documentação**: Ajude a melhorar ou expandir a documentação existente. +Contribute to the growth of this project! You can help in several ways: +- **Pull Requests**: Submit improvements, fixes, or new features. +- **Issues**: Report problems or suggest new ideas. +- **Suggestions**: Share your opinions and feedback. +- **Documentation**: Help improve or expand existing documentation.

-

📌 Principais contribuidores

+

📌 Main contributors

@@ -264,5 +264,5 @@ Contribua para o crescimento deste projeto! Você pode ajudar de diversas formas

-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 @@ ![image](https://github.com/user-attachments/assets/813b7b34-377c-42e8-9f1a-12e27e682c7f)


-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.


- Dynamic JSON Badge + Total Downloads Badge

@@ -19,193 +19,193 @@ Este Community Nodes é uma solução 100% gratuita, criada com o intuito de sim

-

⚙️ Requisitos

+

⚙️ Requirements

-Para utilizar o nosso **Community Node**, é necessário atender aos seguintes requisitos: -- **N8N** na versão **1.54.4** ou superior -- **Evolution API** na versão **2.2.0** ou superior +To use our **Community Node**, you need to meet the following requirements: +- **N8N** version **1.54.4** or higher +- **Evolution API** version **2.2.0** or higher

-

📌 Recursos Disponíveis

+

📌 Available Resources

-

Instância

-🖥️ Este recurso oferece acesso completo às principais funcionalidades relacionadas às instâncias da Evolution API. Ele permite realizar operações essenciais, como criar novas instâncias, conectar-se a elas, obter informações detalhadas, personalizar comportamentos, monitorar presença, reiniciar e até mesmo excluir instâncias de forma prática e eficiente. +

Instance

+🖥️ This resource offers complete access to the main functionalities related to Evolution API instances. It allows essential operations such as creating new instances, connecting to them, obtaining detailed information, customizing behaviors, monitoring presence, restarting, and even deleting instances in a practical and efficient way.
- Lista de operações + List of operations
-    ✅ Criar Instancia +    ✅ Create Instance
-    ✅ Gerar Qr-Code +    ✅ Generate QR-Code
-    ✅ Buscar Instancia +    ✅ Find Instance
-    ✅ Definir Comportamento +    ✅ Set Behavior
-    ✅ Definir Presença +    ✅ Set Presence
-    ✅ Definir Proxy +    ✅ Set Proxy
-    ✅ Buscar Proxy +    ✅ Find Proxy
-    ✅ Desconectar WhatsApp +    ✅ Disconnect WhatsApp
-    ✅ Deletar Instancia +    ✅ Delete Instance
-

Mensagem

-✉️ Este recurso concentra todas as funcionalidades relacionadas ao envio e gerenciamento de mensagens através da Evolution API. Com ele, você pode enviar diversos tipos de conteúdo como textos, imagens, vídeos, áudios, documentos, contatos, listas interativas, botões e até mesmo mensagens PIX. Cada tipo de mensagem possui opções avançadas como delay, mentions, replies e formatações especiais. O recurso foi desenvolvido para proporcionar uma experiência completa de comunicação, permitindo explorar ao máximo os recursos nativos do WhatsApp de forma simples e eficiente. +

Message

+✉️ This resource concentrates all functionalities related to sending and managing messages through the Evolution API. With it, you can send various types of content such as texts, images, videos, audios, documents, contacts, interactive lists, buttons, and even PIX messages. Each message type has advanced options such as delay, mentions, replies, and special formatting. The resource was developed to provide a complete communication experience, allowing you to fully explore WhatsApp's native features simply and efficiently.
- Lista de operações + List of operations
-    ✅ Enviar Texto +    ✅ Send Text
-    ✅ Enviar Imagem +    ✅ Send Image
-    ✅ Enviar Video +    ✅ Send Video
-    ✅ Enviar Audio +    ✅ Send Audio
-    ✅ Enviar Documento +    ✅ Send Document
-    ✅ Enviar Enquete -
+    ✅ Send Poll +
-    ✅ Enviar Contato +    ✅ Send Contact
-    ✅ Enviar Lista +    ✅ Send List
-    ✅ Enviar Botão +    ✅ Send Button
-    ✅ Enviar Pix +    ✅ Send Pix
-    ✅ Enviar Status +    ✅ Send Status
-    ✅ Reagir a Mensagem +    ✅ React to Message
-

Grupo

-👥 Com este recurso, você conta com um conjunto completo de funcionalidades para gerenciamento de grupos no WhatsApp por meio da Evolution API. Ele abrange desde a criação e administração de grupos até o gerenciamento de participantes, configuração de permissões, links de convite e mensagens temporárias. Tudo foi projetado para oferecer controle eficiente e simplificado na administração de grupos. +

Group

+👥 With this resource, you have a complete set of functionalities for group management in WhatsApp through the Evolution API. It covers everything from creating and managing groups to managing participants, configuring permissions, invite links, and temporary messages. Everything has been designed to offer efficient and simplified control in group administration.
- Lista de operações + List of operations
-    ✅ Criar Grupo +    ✅ Create Group
-    ✅ Atualizar Imagem do Grupo +    ✅ Update Group Image
-    ✅ Atualizar Nome do Grupo +    ✅ Update Group Name
-    ✅ Atualizar Descrição do Grupo +    ✅ Update Group Description
-    ✅ Atualizar Configurações do Grupo +    ✅ Update Group Settings
-    ✅ Atualizar Membros +    ✅ Update Members
-    ✅ Buscar Link de convite do Grupo +    ✅ Fetch Group Invite Link
-    ✅ Revogar Link de convite do Grupo +    ✅ Revoke Group Invite Link
-    ✅ Enviar Link de Convite do Grupo +    ✅ Send Group Invite Link
-    ✅ Encontrar Participantes +    ✅ Find Participants
-    ✅ Mensagens Temporarias +    ✅ Temporary Messages
-    ✅ Sair do Grupo +    ✅ Leave Group
-    ✅ Entrar no Grupo +    ✅ Join Group

Chat

-💬 Este recurso disponibiliza um conjunto abrangente de ferramentas para o gerenciamento de conversas e interações utilizando a Evolution API. Com ele, é possível verificar números, enviar e gerenciar mensagens, manipular arquivos de mídia, controlar status de leitura, administrar contatos e monitorar presença. Todas as operações são desenvolvidas para proporcionar um controle completo e eficiente das comunicações, facilitando a gestão tanto de conversas individuais quanto em grupo. +💬 This resource provides a comprehensive set of tools for managing conversations and interactions using the Evolution API. With it, you can verify numbers, send and manage messages, manipulate media files, control read statuses, manage contacts, and monitor presence. All operations are developed to provide complete and efficient control over communications, facilitating the management of both individual and group conversations.
- Lista de operações + List of operations
-    ✅ Verificar Numero +    ✅ Check Number
-    ✅ Ler Mensagem +    ✅ Read Message
-    ✅ Gerenciar Arquivoo +    ✅ Manage Archive
-    ✅ Marcar como Não lido +    ✅ Mark as Unread
-    ✅ Deletar Mensagem +    ✅ Delete Message
-    ✅ Buscar Foto de Perfil +    ✅ Fetch Profile Picture
-    ✅ Obter Midia em Base64 +    ✅ Get Media in Base64
-    ✅ Editar Mensagem +    ✅ Edit Message
-    ✅ Enviar Presença +    ✅ Send Presence
-    ✅ Bloquear Contato +    ✅ Block Contact
-    ✅ Buscar Contatos +    ✅ Find Contacts
-    ✅ Procurar Mensagens +    ✅ Search Messages
-    ✅ Procurar Status +    ✅ Search Status
-    ✅ Procurar Chats +    ✅ Search Chats
-

Evento

-⚡ Este recurso oferece mecanismos avançados para integração e monitoramento em tempo real das atividades da Evolution API. Ele permite configurar e gerenciar Webhooks e RabbitMQ, possibilitando o acompanhamento de eventos como mensagens recebidas, alterações em grupos, status de conexão e muito mais. Essas funcionalidades foram projetadas para garantir uma comunicação ágil e automatizada entre sua aplicação e a API, promovendo respostas imediatas a diferentes eventos do WhatsApp. +

Event

+⚡ This resource offers advanced mechanisms for integration and real-time monitoring of Evolution API activities. It allows configuring and managing Webhooks and RabbitMQ, enabling the tracking of events such as received messages, group changes, connection statuses, and much more. These functionalities are designed to ensure agile and automated communication between your application and the API, promoting immediate responses to different WhatsApp events.
- Lista de operações + List of operations
   ✅ Webhook
@@ -214,11 +214,11 @@ Para utilizar o nosso **Community Node**, é necessário atender aos seguintes r
-

Integração

-🔗 Este recurso disponibiliza uma ampla gama de conectores para integrar a Evolution API a diversas plataformas e serviços externos. Entre as possibilidades estão conexões com Chatwoot para atendimento ao cliente, Evolution Bot para automações, Typebot para fluxos conversacionais, além de integrações com Flowise e Dify para soluções de inteligência artificial. Essas integrações ampliam as capacidades da API, permitindo criar soluções robustas e automatizadas para diferentes cenários de negócios. +

Integration

+🔗 This resource provides a wide range of connectors to integrate the Evolution API with various external platforms and services. Possibilities include connections with Chatwoot for customer service, Evolution Bot for automations, Typebot for conversational flows, as well as integrations with Flowise and Dify for artificial intelligence solutions. These integrations expand the API's capabilities, allowing the creation of robust and automated solutions for different business scenarios.
- Lista de operações + List of operations
   ✅ Chatwoot
@@ -232,23 +232,23 @@ Para utilizar o nosso **Community Node**, é necessário atender aos seguintes r    ✅ Dify
-    ✅ Floise +    ✅ Flowise

-

🤝 Contribuição

+

🤝 Contribution

-Contribua para o crescimento deste projeto! Você pode ajudar de diversas formas: -- **Pull Requests**: Envie melhorias, correções ou novas funcionalidades. -- **Issues**: Relate problemas ou sugira novas ideias. -- **Sugestões**: Compartilhe suas opiniões e feedbacks. -- **Documentação**: Ajude a melhorar ou expandir a documentação existente. +Contribute to the growth of this project! You can help in several ways: +- **Pull Requests**: Submit improvements, fixes, or new features. +- **Issues**: Report problems or suggest new ideas. +- **Suggestions**: Share your opinions and feedback. +- **Documentation**: Help improve or expand existing documentation.

-

📌 Principais contribuidores

+

📌 Main contributors

@@ -264,5 +264,5 @@ Contribua para o crescimento deste projeto! Você pode ajudar de diversas formas

-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..1a4bded 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..e76f37c 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 WhatsApp', + 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..ba6e556 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,10 +49,10 @@ export const instancesFields: INodeProperties[] = [ }, }, { - displayName: 'Opções', + displayName: 'Options', name: 'options_Create_instance', type: 'collection', - placeholder: 'Adicionar Campo', + placeholder: 'Add Field', default: {}, options: [ { @@ -66,112 +65,110 @@ 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', + description: 'Chatwoot Settings', }, { - displayName: 'Comportamento', + displayName: 'Behavior', name: 'instanceSettings', type: 'fixedCollection', typeOptions: { @@ -180,54 +177,53 @@ export const instancesFields: INodeProperties[] = [ default: { settings: {} }, options: [ { - displayName: 'Comportamento Da Instancia', + displayName: 'Instance Behavior', name: 'settings', values: [ { - displayName: 'Rejeitar Ligações', + displayName: 'Reject Calls', name: 'rejectCall', type: 'boolean', default: false, description: 'Whether to automatically reject incoming calls', }, { - displayName: 'Mensagem Ao Rejeitar', + displayName: 'Message on Reject', name: 'msgCall', type: 'string', default: '', - description: - 'Whether to send a message after rejecting a call, and if so, what message', + description: 'Whether to send a message after rejecting a call, and if so, what message', }, { - displayName: 'Ignorar Grupos', + displayName: 'Ignore Groups', name: 'groupsIgnore', type: 'boolean', default: false, description: 'Whether to ignore messages from groups', }, { - displayName: 'Sempre Online', + displayName: 'Always Online', name: 'alwaysOnline', type: 'boolean', default: false, description: 'Whether to keep the status always set to Online', }, { - displayName: 'Ler Mensagens', + displayName: 'Read Messages', name: 'readMessages', type: 'boolean', default: false, description: 'Whether to automatically mark messages as read', }, { - displayName: 'Ler Status', + displayName: 'Read Status', name: 'readStatus', type: 'boolean', default: false, description: 'Whether to allow the API to view the Status of added contacts', }, { - displayName: 'Sincronizar Histórico', + displayName: 'Sync History', name: 'syncFullHistory', type: 'boolean', default: false, @@ -236,7 +232,7 @@ export const instancesFields: INodeProperties[] = [ ], }, ], - description: 'Comportamento da instância', + description: 'Instance Behavior', }, { 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'], 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..691caae 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,26 @@ 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', + description: 'Variable name', }, { - displayName: 'Valor Da Variavel', + displayName: 'Variable Value', name: 'value', type: 'string', default: '', - description: 'Valor da variável', + description: 'Variable value', }, ], }, ], - description: 'Variáveis para enviar ao typebot', + description: 'Variables to send to typebot', displayOptions: { show: { resource: ['integrations-api'], @@ -644,20 +641,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 +666,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 +681,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 +722,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 +742,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 +759,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 +774,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 +798,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 +824,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 +835,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 +851,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 +866,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 +881,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 +896,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 +911,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 +925,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 +939,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 +953,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 +971,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 +991,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 +1016,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 +1030,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 +1069,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 +1104,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 +1124,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 +1141,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 +1157,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 +1181,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 +1207,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 +1218,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 +1234,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 +1249,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 +1264,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 +1279,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 +1294,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 +1308,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 +1322,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 +1336,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 +1354,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 +1374,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 +1396,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 +1411,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 +1452,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 +1472,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 +1489,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 +1504,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 +1528,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 +1554,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 +1565,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 +1582,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 +1597,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 +1612,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 +1627,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 +1642,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 +1656,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 +1670,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 +1684,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 +1701,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 +1721,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 +1743,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 +1761,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 +1786,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..5ef6a4e 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..9e05deb 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", + "description": "Evolution API is a channel hub with a focus on WhatsApp", "keywords": [ "n8n-community-node-package" ], From bc188a7861ea04cc9032d4eb554cad1c6590a9c8 Mon Sep 17 00:00:00 2001 From: Ilyass Karroumi Date: Sat, 19 Jul 2025 02:40:05 +0100 Subject: [PATCH 2/4] Resolve ESLint errors for n8n-nodes-base rules --- nodes/EvolutionApi/properties/chat.fields.ts | 2 +- .../properties/chat.operations.ts | 2 +- .../properties/instances.fields.ts | 138 +++++++++--------- .../properties/integrations.fields.ts | 30 ++-- .../properties/messages.fields.ts | 8 +- 5 files changed, 89 insertions(+), 91 deletions(-) diff --git a/nodes/EvolutionApi/properties/chat.fields.ts b/nodes/EvolutionApi/properties/chat.fields.ts index 1a4bded..f7aa851 100644 --- a/nodes/EvolutionApi/properties/chat.fields.ts +++ b/nodes/EvolutionApi/properties/chat.fields.ts @@ -23,7 +23,7 @@ export const chatFields: INodeProperties[] = [ type: 'string' as NodePropertyTypes, default: '', required: true, - description: 'List of numbers to check (comma separated)', + description: 'List of numbers to check (comma-separated)', displayOptions: { show: { resource: ['chat-api'], diff --git a/nodes/EvolutionApi/properties/chat.operations.ts b/nodes/EvolutionApi/properties/chat.operations.ts index e76f37c..7c04ae3 100644 --- a/nodes/EvolutionApi/properties/chat.operations.ts +++ b/nodes/EvolutionApi/properties/chat.operations.ts @@ -13,7 +13,7 @@ export const chatOperations: INodeProperties = { options: [ { name: 'Check Number', - action: 'Check number on WhatsApp', + action: 'Check number on whats app', description: 'Checks if a number is registered on WhatsApp', value: 'check-number', }, diff --git a/nodes/EvolutionApi/properties/instances.fields.ts b/nodes/EvolutionApi/properties/instances.fields.ts index ba6e556..3367549 100644 --- a/nodes/EvolutionApi/properties/instances.fields.ts +++ b/nodes/EvolutionApi/properties/instances.fields.ts @@ -55,6 +55,73 @@ export const instancesFields: INodeProperties[] = [ 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', @@ -142,7 +209,7 @@ export const instancesFields: INodeProperties[] = [ description: 'Whether to import messages to Chatwoot', }, { - displayName: 'Import Messages from How Many Days to Chatwoot', + displayName: 'Import Messages From How Many Days to Chatwoot', name: 'chatwootDaysLimitImportMessages', type: 'number', default: 0, @@ -167,73 +234,6 @@ export const instancesFields: INodeProperties[] = [ ], description: 'Chatwoot Settings', }, - { - 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: 'Proxy', name: 'proxy', @@ -940,4 +940,4 @@ export const instancesFields: INodeProperties[] = [ }, }, }, -]; +]; \ No newline at end of file diff --git a/nodes/EvolutionApi/properties/integrations.fields.ts b/nodes/EvolutionApi/properties/integrations.fields.ts index 691caae..2ef8ce8 100644 --- a/nodes/EvolutionApi/properties/integrations.fields.ts +++ b/nodes/EvolutionApi/properties/integrations.fields.ts @@ -17,7 +17,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'What do you want to do', + displayName: 'What Do You Want to Do', name: 'resourceForChatwoot', type: 'options', options: [ @@ -200,7 +200,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'Import Messages from How Many Days to Chatwoot', + displayName: 'Import Messages From How Many Days to Chatwoot', name: 'chatwootDaysLimitImportMessages', type: 'number', default: 0, @@ -273,7 +273,7 @@ export const integrationsFields: INodeProperties[] = [ }, { - displayName: 'What do you want to do', + displayName: 'What Do You Want to Do', name: 'resourceForTypebot', type: 'options', options: [ @@ -407,11 +407,11 @@ export const integrationsFields: INodeProperties[] = [ value: 'equals', }, { - name: 'Starts with', + name: 'Starts With', value: 'startsWith', }, { - name: 'Ends with', + name: 'Ends With', value: 'endsWith', }, { @@ -612,14 +612,12 @@ export const integrationsFields: INodeProperties[] = [ name: 'name', type: 'string', default: '', - description: 'Variable name', }, { displayName: 'Variable Value', name: 'value', type: 'string', default: '', - description: 'Variable value', }, ], }, @@ -681,7 +679,7 @@ export const integrationsFields: INodeProperties[] = [ }, { - displayName: 'What do you want to do', + displayName: 'What Do You Want to Do', name: 'resourceForEvolutionBot', type: 'options', options: [ @@ -811,11 +809,11 @@ export const integrationsFields: INodeProperties[] = [ value: 'equals', }, { - name: 'Starts with', + name: 'Starts With', value: 'startsWith', }, { - name: 'Ends with', + name: 'Ends With', value: 'endsWith', }, { @@ -1030,7 +1028,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'What do you want to do', + displayName: 'What Do You Want to Do', name: 'resourceForDifyBot', type: 'options', options: [ @@ -1194,11 +1192,11 @@ export const integrationsFields: INodeProperties[] = [ value: 'equals', }, { - name: 'Starts with', + name: 'Starts With', value: 'startsWith', }, { - name: 'Ends with', + name: 'Ends With', value: 'endsWith', }, { @@ -1411,7 +1409,7 @@ export const integrationsFields: INodeProperties[] = [ }, }, { - displayName: 'What do you want to do', + displayName: 'What Do You Want to Do', name: 'resourceForFlowiseBot', type: 'options', options: [ @@ -1541,11 +1539,11 @@ export const integrationsFields: INodeProperties[] = [ value: 'equals', }, { - name: 'Starts with', + name: 'Starts With', value: 'startsWith', }, { - name: 'Ends with', + name: 'Ends With', value: 'endsWith', }, { diff --git a/nodes/EvolutionApi/properties/messages.fields.ts b/nodes/EvolutionApi/properties/messages.fields.ts index 5ef6a4e..ffcbce6 100644 --- a/nodes/EvolutionApi/properties/messages.fields.ts +++ b/nodes/EvolutionApi/properties/messages.fields.ts @@ -120,7 +120,7 @@ export const messagesFields: INodeProperties[] = [ mentionsEveryOne: [false], }, }, - description: 'List of numbers to mention (comma separated)', + description: 'List of numbers to mention (comma-separated)', }, ], }, @@ -274,7 +274,7 @@ export const messagesFields: INodeProperties[] = [ mentionsEveryOne: [false], }, }, - description: 'List of numbers to mention (comma separated)', + description: 'List of numbers to mention (comma-separated)', }, ], }, @@ -421,7 +421,7 @@ export const messagesFields: INodeProperties[] = [ mentionsEveryOne: [false], }, }, - description: 'List of numbers to mention (comma separated)', + description: 'List of numbers to mention (comma-separated)', }, ], }, @@ -1822,7 +1822,7 @@ export const messagesFields: INodeProperties[] = [ type: 'string', default: '', required: true, - description: 'List of contacts who will receive the status (comma separated)', + description: 'List of contacts who will receive the status (comma-separated)', displayOptions: { show: { resource: ['messages-api'], From f740159469c56074e13ba34c53b9db7edf57302a Mon Sep 17 00:00:00 2001 From: Ilyass Karroumi Date: Sat, 19 Jul 2025 02:49:33 +0100 Subject: [PATCH 3/4] Fixing naming --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 9e05deb..307e873 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { - "name": "n8n-nodes-evolution-api", + "name": "n8n-nodes-evolution-api-eng", "version": "1.0.4", - "description": "Evolution API is a channel hub with a focus on WhatsApp", + "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/ilyasskarroumi/evolution-api-n8n-nodes" }, "engines": { "node": ">=18.10", From dc429011ca03f2860b05676d8c29d6c92cfea699 Mon Sep 17 00:00:00 2001 From: ilyasskarroumi <88594887+ilyasskarroumi@users.noreply.github.com> Date: Sun, 20 Jul 2025 00:00:34 +0100 Subject: [PATCH 4/4] Fixed package.json --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 307e873..613c9b5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { - "name": "n8n-nodes-evolution-api-eng", - "version": "1.0.4", + "name": "n8n-nodes-evolution-api", + "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/ilyasskarroumi/evolution-api-n8n-nodes" + "url": "https://github.com/oriondesign2015/n8n-nodes-evolution-api" }, "engines": { "node": ">=18.10",