# Release 23/09/25

As principais funcionalidades, estão destacadas com ⭐️

## Hyperflow Builder

**Builder - Atualização de 'Configurações' dos aplicativos**

* O layout da tela de **Configurações** dos aplicativos foi atualizado para oferecer uma experiência mais fluida, moderna e intuitiva.
* A nova interface está mais limpa, organizada e agradável de visualizar, facilitando a navegação e o gerenciamento dos recursos disponíveis.

<figure><img src="/files/9xV5NyRsXw2BX3MAcwF1" alt=""><figcaption><p>Imagem 1 - Configurações dos fluxos automáticos.</p></figcaption></figure>

**Builder - Novo fluxo para tratamento de timeout** ⭐️

* Implementamos um fluxo específico para lidar com situações de **timeout em outros fluxos**.
* Esse fluxo será acionado automaticamente sempre que o sistema não receber resposta dentro do tempo limite, garantindo o encerramento adequado do atendimento interrompido por tempo excedido.&#x20;

<figure><img src="/files/r2dWDpjZZwsLs3wZy5hQ" alt=""><figcaption><p>Imagem 2 - Configuração de fluxo de timeout.</p></figcaption></figure>

**Builder - Melhoria na seleção de fluxos**

* Ao selecionar um input de fluxos, inicialmente são carregados **15 itens**.\
  Conforme o usuário rola a lista para baixo, novos itens são carregados automaticamente (**scroll infinito**).
* Além disso, ao digitar o nome de um fluxo específico, é feita uma requisição para retornar apenas os resultados correspondentes à pesquisa.

<figure><img src="/files/QAXp6gm0UGy1Ew8fT4CA" alt=""><figcaption><p>Imagem 3 - Visualização de busca dos fluxos.</p></figcaption></figure>

**Builder - Novos módulos e integração '**[**Firebase**](https://help.hyperflow.global/docs/builder-hyperflow/gerenciamento-de-bots-e-integracoes/integracoes/firebase)**'.**

* Implementamos a integração com o [**Firebase**](https://help.hyperflow.global/docs/builder-hyperflow/gerenciamento-de-bots-e-integracoes/integracoes/firebase), permitindo que, após a configuração inicial, os usuários possam acessar e utilizar os dois novos módulos disponibilizados pela plataforma.

  <figure><img src="/files/Q6XSK5V10cigNktFK9WT" alt=""><figcaption><p>Imagem 4 - Integração com o Firebase.</p></figcaption></figure>

* **Incluímos dois novos módulos na plataforma**&#x20;
  * [**Firebase Cloud Storage**](https://help.hyperflow.global/docs/builder-de-chatbots/integracao/firebase-cloud-storage)**:** Esse conector possibilita a integração direta com o **Firebase Cloud Storage**, permitindo realizar o **upload, download e gerenciamento de arquivos** de forma simples e segura. Todas as operações são executadas em **Buckets**, que funcionam como contêineres principais para organizar e armazenar seus arquivos na nuvem.&#x20;

    <figure><img src="/files/JiMTyFxQdvhlwdyDiC4w" alt=""><figcaption><p>Imagem 5 - Firebase Cloud Storage</p></figcaption></figure>
  * [**Firebase Cloud Firestore**](https://help.hyperflow.global/docs/builder-de-chatbots/integracao/firebase-cloud-firestone)**:** Esse conector facilita a interação com o **Cloud Firestore**, o banco de dados em tempo real e escalável do Firebase. Com ele, você pode executar **operações de CRUD (criação, leitura, atualização e exclusão)** em dados estruturados, garantindo flexibilidade e alta performance para aplicações que exigem consistência e rapidez no acesso às informações.&#x20;

    <figure><img src="/files/U1lC3mKKZqR5o4jsT4AE" alt=""><figcaption><p>Imagem 6 - Firebase Cloud Firestone</p></figcaption></figure>

* Observações:&#x20;
  * **Conta de Serviço (Service Account):** Para utilizar esta integração, é necessário configurar uma **Conta de Serviço do Firebase**, que fornece credenciais de administrador.\
    ⚠️ Essas credenciais são **altamente sensíveis** e nunca devem ser expostas no lado do cliente (navegador).
  * **Conteúdo do Arquivo (Upload/Update):** Nas operações de **upload** ou **atualização**, o parâmetro `file` deve ser fornecido como um objeto do tipo **Buffer**.\
    Se for utilizada uma **URL**, a lógica para realizar o **download do arquivo** deve ser implementada diretamente no seu código antes de enviá-lo para o conector.
  * **URLs Assinadas (Access Links):** O método `get` gera uma **URL assinada**, válida por um tempo limitado (configurado para **1 hora**).\
    Essa URL pode ser usada para conceder **acesso temporário** ao arquivo armazenado.
  * **Validação de Bucket (Cloud Storage):** Antes de qualquer operação, o conector deve validar a existência do **Bucket**. Caso contrário, a ação não será executada.
  * **Validação de Caminhos (Cloud Firestore):** O Firestore **não cria documentos intermediários automaticamente**. Isso significa que, para inserir dados em uma **subcoleção** (ex.: `users/albert.einstein/posts`), o **documento pai** (`albert.einstein`) deve existir previamente.
  * Foi criada uma nova seção dedicada a esses dois módulos, reunindo todas as configurações e operações disponíveis do Firebase em um só lugar.

**Builder - Ofuscar dados confidenciais**

* Nesta atualização, adicionamos uma funcionalidade que permite ocultar dados confidenciais, distintos das variáveis sensíveis já existentes.&#x20;
* **Função:** Mascarar dados sensíveis nos logs, garantindo privacidade e evitando exposição.
* **Persistência:** Valores ofuscados são armazenados no banco já mascarados; mesmo desativando depois, registros antigos seguem como `************`.
* **Modos de correspondência**
  * **Caminho final:** Oculta qualquer chave com o mesmo último nome.\
    Ex.: `"password"` → `flow.password`, `request.body.password`, `response.password`.
  * **Caminho completo:** Oculta apenas o caminho exato informado.\
    Ex.: `"request.body.password"` não oculta `flow.password`.
* **Boas práticas**
  * Use **Caminho final** para chaves comuns.
  * Use **Caminho completo** para granularidade maior (ex.: `request.headers.authorization`).

⚡ Os valores ofuscados se aplicam apenas aos logs da requisição no **API Gateway**.

<figure><img src="/files/qCnGaZfkRMPkNh5DNX12" alt=""><figcaption><p>Imagem 7 - Configuração para ocultar dados confidenciais.</p></figcaption></figure>

**Builder - Geral**&#x20;

* Nesta atualização, também foram feitas correções menores e otimizações visando manter a plataforma Hyperflow Builder sempre atualizada, segura, e o mais robusta possível.

## Hyperflow Desk&#x20;

**Desk - Disparos em massa no Desk. ⭐️**

* **Passo 1:** Acesse o menu **“Lista de Transmissão”**.
* **Passo 2:** Clique em **“Nova Lista de Transmissão”**.
* **Passo 3:** Ao selecionar o canal, serão exibidos todos os contatos vinculados a ele. Também é possível pesquisar contatos diretamente (conforme o exemplo abaixo).
* Além disso, assim como no **Builder**, há a opção de importar novos contatos para compor a lista.

<figure><img src="/files/g9DV3nrurwQCCB50HpwM" alt=""><figcaption><p>Imagem 8 - Seleção de canal e contatos para criar lista de transmissão.</p></figcaption></figure>

* **Após esse processo, a lista de transmissão pode ser salva.**
* **Passo 4:** Depois de criada, a lista pode ser **editada** a qualquer momento, permitindo:
  * Adicionar novos membros.
  * Remover contatos já vinculados.

<figure><img src="/files/DHN3LoFVUrHuYRmLZHw5" alt=""><figcaption><p>Imagem 9 - Edição de lista de transmissão, com possibilidade de remoção/adição de outros contatos.</p></figcaption></figure>

* Ao realizar a edição, nota-se que não é possível efetuar edição do nome da lista e nem do canal, pois já estão vinculados a essa lista de transmissão.
* Ainda é possível adicionar novos contatos, importar contatos e também removê-los.
* Após a criação da lista, devemos efetuar o envio utilizando essa lista. Para isso, acessamos a tela de 'Mensagens agendadas' e clicamos em 'Novo envio'.

<figure><img src="/files/2RFoxOrCmI3qXRZpGOFt" alt=""><figcaption><p>Imagem 10 - Novo envio de mensagens agendadas.</p></figcaption></figure>

* Deve-se selecionar canal, e o template a ser usado.
* O segundo step clicando em 'Continuar', temos a opção de enviar uma mensagem de testes para visualizar como será recebido pelo cliente.

<figure><img src="/files/BUnjCXDhlpHPwtrfxtad" alt=""><figcaption><p>Imagem 11 - Possibilidade de envio de mensagem de testes.</p></figcaption></figure>

* O terceiro step é a seleção da lista para envio e também a possibilidade de agendamento ou envio na hora.&#x20;
* A configuração é igual a do [Builder](https://builder.hyperflow.global/), ou seja:
  * Para enviar agora, seleciono 'Usuários por lote' e 'Intervalo entre lotes (minutos)'.&#x20;

    <figure><img src="/files/IQQwZL1HTzTINRZGtwfm" alt=""><figcaption><p>Imagem 12 - Envio de mensagens no momento de criação do agendamento.</p></figcaption></figure>
  * Para agendar, além do 'Usuários por lote' e 'Intervalo entre lotes (minutos)', seleciona-se a data e hora de início.&#x20;

    <figure><img src="/files/pVo3v4CchxasnPVBuslk" alt=""><figcaption><p>Imagem 13 - Envio de mensagens selecionando uma data de início.</p></figcaption></figure>
  * Também é possível efetuar a configuração de 'Horário de envio'.

**Desk - Tela de 'Agentes de IA'. ⭐️**

* A aba **“Assistentes”**, que anteriormente estava localizada dentro da tela de **“Agentes”**, foi destacada para proporcionar uma melhor organização e visualização.&#x20;
* Além disso, seu nome foi atualizado para **“Agentes de IA”**, refletindo de forma mais precisa sua finalidade.&#x20;

<figure><img src="/files/RfrCmbpsYPD9YBiSYuyH" alt=""><figcaption><p>Imagem 14 - Tela de 'Agentes de IA'.</p></figcaption></figure>

**Desk - Geral**

* Nesta atualização, também foram feitas correções menores e otimizações visando manter a plataforma Hyperflow Desk sempre atualizada, segura, e o mais robusta possível.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.hyperflow.global/docs/novidades-release-notes/release-23-09-25.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
