# 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2FuoR6qZ6pVollnhGyCEvL%2Fimage.png?alt=media&#x26;token=62499e15-2fa8-401c-840b-19d2b3d95bcc" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2Fnl667tuACdkBJfia9pht%2Fimage.png?alt=media&#x26;token=cbb39a9a-c39f-48a7-a217-550d6331e5c1" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2FCYi7Mz3EEJRRBjeDJr3a%2Frecording%20(4).gif?alt=media&#x26;token=3092f552-82bd-4f39-bcc5-69fa10837a35" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2F2Dsi8gViCiSgzVAHtQ4r%2Fimage.png?alt=media&#x26;token=53b3ca6f-df3a-4081-9f6f-edd1217f196a" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2FsL4cUauRI6twmSwYpHdv%2Fimage.png?alt=media&#x26;token=a5b8016e-6128-47e3-b0d8-44010f14ce9a" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2FhZmGiGKcDsPMsUM20Bw8%2Fimage.png?alt=media&#x26;token=2ed3189b-d3d7-447d-88e3-2245dcd05f44" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2FNmv1U6cNmGfrBpCf9I4n%2Fimage.png?alt=media&#x26;token=2671930a-730d-40df-a8e9-d1c5c58d1795" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2F1U9Tx5KgANDHvx6Fepbg%2Fimage.png?alt=media&#x26;token=31e47217-0a20-40a0-b26d-501fd5be051e" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2F83h0X3PPC7Dg6ayJVrvg%2Fimage.png?alt=media&#x26;token=a9bfba46-fc20-45fe-ba11-07eb4d3ab346" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2FsywH1AeGa6OHMS7UL88u%2Fimage.png?alt=media&#x26;token=f3923cbd-e175-49d8-9f52-9d6d581b05f6" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2FdWcSYCkKtV884HUfkZSB%2Fimage.png?alt=media&#x26;token=bb20b625-9a7f-4d80-8224-1b757e8e86c0" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2FUXKKvVpQoe9HatqacBMk%2Fimage.png?alt=media&#x26;token=9df0d7a2-63ea-4174-8ba6-c50a7d2045fd" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2Fyj0bXITnJk4DaPcAUkVC%2Fimage.png?alt=media&#x26;token=03815892-4b7c-420b-8140-0473f60180b3" 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="https://3829578295-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRWteFkm020DS5IbXoSgj%2Fuploads%2FQs360ZqAJyGPMhUPCtq5%2Fimage.png?alt=media&#x26;token=a9ec8b8e-d5f0-4f6d-8c5c-af5dbc56c197" 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.
