This commit adds a new feature to fetch instances by key in the InstanceController. If the provided key does not match the environment key, the controller will search for instances with the matching token. If instances are found, the names are extracted and passed to the waMonitor to retrieve instance information.
Also, update the waMonitor's instanceInfo method to accept an array of instance names instead of a single name.
Fixes#990
The code changes in `whatsapp.baileys.service.ts` remove the unnecessary code that handles the case when a contact is not in WhatsApp. The code was previously sending a notification to Chatwoot, but it is no longer needed. This change improves the code by removing unnecessary complexity.
This commit refactors the code in ChatwootService to update the content_attributes when replyToIds are present. Instead of directly spreading the replyToIds object, the code now converts it to a JSON string and appends it to the data object.
Refactor the code to improve readability and maintainability.
A inclusão dos campos isCommunity, isCommunityAnnounce e linkedParent na integração do WhatsApp permite que o serviço manipule informações adicionais sobre grupos. Isso melhora a funcionalidade e a flexibilidade do serviço, possibilitando um melhor gerenciamento e interação com grupos comunitários no WhatsApp.
Adiciona o controlador de chamadas para oferecer chamadas falsas.
- Adiciona o arquivo `call.controller.ts` com a classe `CallController` que possui o método `offerCall` para oferecer chamadas falsas.
- Adiciona o arquivo `call.dto.ts` com as classes `Metadata` e `OfferCallDto` para definir os dados da chamada.
- Atualiza o arquivo `sendMessage.dto.ts` removendo a classe `OfferCallDto`.
- Atualiza o arquivo `whatsapp.baileys.service.ts` importando a classe `OfferCallDto` corretamente e atualizando o método `offerCall` para receber os parâmetros corretos.
- Adiciona o arquivo `call.router.ts` com a classe `CallRouter` para lidar com as rotas relacionadas a chamadas.
- Atualiza o arquivo `index.router.ts` para incluir as rotas relacionadas a chamadas.
Currently, we face an issue when a file with the same name is uploaded more than once:
1. It results in a unique key error in the database.
2. If the file is sent to S3, it overwrites the old file.
To resolve this problem, I've implemented a solution where we concatenate the message ID to the filename. This approach ensures uniqueness for each uploaded file, even if users upload files with identical names multiple times in a chat.
This change allows normal users to upload files with the same name multiple times in a chat without encountering errors or unintended file overwrites.