# Ação

{% hint style="danger" %}
**A partir de 1º de outubro de 2024, todos os clientes da Chatlayer serão migrados para o novo widget da web, Web V2.** Para saber mais sobre as diferenças entre V1 e V2, confira [esta página.](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/channels/all-channels/web/web-v2/from-web-v1-to-v2) Para um mergulho técnico mais profundo, confira [esta página](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/channels/all-channels/web/web-v2/web-v2-methods-and-options).
{% endhint %}

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2F4obf4jz17cTJuiYwiHm7%2FScreenshot%202024-07-31%20at%2011.20.51.png?alt=media&#x26;token=9669a324-dc9e-48fa-a15e-a08ae836773b" alt="" width="336"><figcaption><p>Etapa do construtor JSON.</p></figcaption></figure>

Você pode usar o construtor JSON em combinação com o [Canal Web](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/channels/all-channels/webhook-api) para receber [eventos da janela](https://developer.mozilla.org/en-US/docs/Web/API/Window#events) na sua página. Esses eventos conterão os dados conforme configurado na sua ação do construtor JSON.&#x20;

Para fazer isso, você precisará marcar a opção **Enviar configuração para a janela pai** Isso permitirá enviar dados para o local onde o widget está, de forma estruturada.

Aqui está um exemplo:&#x20;

1. Configure sua ação do construtor JSON para enviar uma **idioma** chave, com uma variável recuperada da sessão.
2. Ative a chave **Enviar configuração para a janela pai** ligado.

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FnssPyj7E7urkHmt2ECnR%2FScreenshot%202024-07-31%20at%2011.24.24.png?alt=media&#x26;token=eaccfcd9-19f8-4daa-a949-a01e136901a7" alt=""><figcaption><p>Construtor JSON com um campo de idioma.</p></figcaption></figure>

Adicione um **Ação** bloco por [arrastar e soltar](https://docs.chatlayer.ai/buildabot/bot-navigation/bot-builder/flows/canvas-functionalities#drag-and-drop) no seu fluxo.

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FNNYIgG6hsdnWfNSVghmD%2FScreenshot%202024-07-31%20at%2016.35.15.png?alt=media&#x26;token=d3900b59-fd76-459c-998d-48f811d5aa6d" alt="" width="144"><figcaption><p>Aba Ação.</p></figcaption></figure>

**Ação** blocos permitem integrar serviços de terceiros, implementar lógica de codificação personalizada ou realizar operações especializadas dentro do seu bot

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2Fp2fQhCUI3pme8URDoTZi%2FScreenshot%202024-07-31%20at%2016.32.51.png?alt=media&#x26;token=686b5eee-7ee0-47eb-99fe-34f5d3165b60" alt="" width="370"><figcaption><p>Exemplo de um bloco de Ação.</p></figcaption></figure>

## Etapas de codificação

### Código

O editor de código permite que desenvolvedores construam rapidamente lógica personalizada sobre o bot escrevendo seus próprios blocos de código Javascript. Normalmente, o editor de código é usado para fazer solicitações a sistemas externos ou para realizar operações com variáveis.

Você pode encontrar mais informações sobre o editor de código aqui:

{% content-ref url="../../../integrateandcode/code-action" %}
[code-action](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/integrateandcode/code-action)
{% endcontent-ref %}

Também há dois tutoriais nos quais mostramos como o editor de código pode ser usado:

{% content-ref url="../../../integrateandcode/code-action/retrieving-data-from-airtable-get" %}
[retrieving-data-from-airtable-get](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/integrateandcode/code-action/retrieving-data-from-airtable-get)
{% endcontent-ref %}

{% content-ref url="../../../integrateandcode/code-action/airtable" %}
[airtable](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/integrateandcode/code-action/airtable)
{% endcontent-ref %}

### API

A [etapa de API ](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/integrateandcode/custom-back-end-integrations)é uma integração onde você integra o Chatlayer com seu back-end ou serviços de terceiros para compartilhar dados coletados na conversa com o bot, ou enriquecer o bot com dados capturados.

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FYwlMzrQjzCxZGmoSIZ8g%2FScreenshot%202024-07-31%20at%2017.42.42.png?alt=media&#x26;token=c2e88f41-c16d-4be2-aef4-9125e05587d2" alt=""><figcaption><p>Etapa de API.</p></figcaption></figure>

### Construtor JSON

Se o seu bot estiver publicado no [Webhook API](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/channels/all-channels/webhook-api) canal, você pode usar a ação Construtor JSON para enviar mensagens para a conversa que não precisam resultar em uma mensagem real para o usuário. Normalmente, é usado para enviar informações sobre o usuário ou a conversa do bot para o site onde o bot está publicado.

![](https://181262846-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LLTwFwbOqJj4dDhg8Ju%2F-M1dw5eMqNDrpjDngOe6%2F-M1dx9mzFppiXljhS6k-%2Fimage.png?alt=media\&token=3ef5dcd0-6d98-4e2d-9d95-631beacaa858)

#### Eventos de janela do site&#x20;

**Você pode usar a ação do construtor JSON** **em combinação com o canal do webwidget** para receber eventos de janela na sua página. Esses eventos conterão os dados conforme configurado na sua ação do construtor JSON.&#x20;

Aqui está um exemplo: \
Configure sua ação do construtor JSON para enviar uma **idioma** chave, com uma variável recuperada da sessão, e com "Enviar configuração para a janela pai" ativado.

![Ação do construtor JSON com um campo de idioma](https://181262846-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LLTwFwbOqJj4dDhg8Ju%2F-MKa3vnvkdS2-AigosWt%2F-MKa57sjNNmEoWB6CO2l%2Fimage.png?alt=media\&token=c4e9711d-7541-4f47-8ff3-4db02a33cd6b)

Seu widget acionará um evento para essa configuração à sua janela pai como um MessageEvent. O MessageEvent conterá um campo \`data\` que contém o resultado em string da configuração do construtor JSON. Aqui está um exemplo de como escutar esses eventos:

```javascript
// Manipulador de Evento do Construtor JSON da Chatlayer
window.addEventListener('message', (event) => {
    const data = event && event.data && JSON.parse(event.data) || {}
    const { type, payload } = data
    if (type !== 'CL_DISPATCH_EVENT') return;
    console.log('Idioma do Chatlayer recebido: ' + payload.language)
})
```

## Etapas de pausa

### Pausar bot

A **Pausar bot** etapa vai pausar seu bot quando alcançar este bloco.

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2Fmk0Q32CP2nloACqfI6dU%2FScreenshot%202024-07-31%20at%2016.59.05.png?alt=media&#x26;token=c1d01bbd-f8e6-4344-ad36-515420928b2b" alt="" width="374"><figcaption><p>Etapa Pausar bot.</p></figcaption></figure>

### Atraso

Às vezes você precisa de um pequeno atraso entre mensagens do bot, seja para criar uma pausa natural ou para fazer uma chamada de API sem que o bot fique em silêncio. Essas pausas podem melhorar significativamente a experiência do usuário.

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FVN14d22TXOkZ1rOrKorI%2FScreenshot%202024-07-31%20at%2017.00.21.png?alt=media&#x26;token=d77f1da5-84d4-47a0-9529-f4778983da6c" alt="" width="375"><figcaption><p>Etapa de Atraso.</p></figcaption></figure>

Você pode [por exemplo, usar Atraso antes de Fechar conversa](#example-delay-before-close-conversation) etapa.

## Etapas de variáveis

### Limpar dados da sessão: variáveis e contexto

Use uma **Limpar sessão** etapa para limpar [variáveis](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/navegacao/settings/secure-variables-gdpr) <img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FvIWue76T1iG2IKRsbCt7%2Fbrackets.png?alt=media&#x26;token=a39f7460-7e52-47cd-a9c8-fcc57f4d1eb6" alt="" data-size="line"> e/ou [contexto](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/nlp/natural-language-processing-nlp/using-context)  <img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FiIUrvuRY4hRNy36TWOR4%2Fdownload%20(1).png?alt=media&#x26;token=572d6e7c-4f3d-4700-8ee8-c7dfdb15fe51" alt="" data-size="line"> que você não precisa mais.

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FZmuzaJfQcekqXWJ5cXiv%2FScreenshot%202025-10-21%20at%2017.33.28.png?alt=media&#x26;token=043b2d53-7807-44f5-8f0e-ffbe7dbf3a78" alt=""><figcaption></figcaption></figure>

### Definir variáveis&#x20;

A **Definir variável** etapa facilita a criação, formatação e atribuição de valores a [variáveis](https://docs.chatlayer.ai/bot-answers/settings/secure-variables-gdpr).&#x20;

{% hint style="warning" %}
Recentemente, introduzimos uma [nova sintaxe de expressões](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/integrateandcode/expression-syntax). Para explorar toda a gama de expressões e funções disponíveis, confira a documentação abrangente fornecida [aqui](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/integrateandcode/expression-syntax).
{% endhint %}

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FzKeCLUKorTzRntUxnk3Z%2FScreenshot%202024-01-09%20at%2016.54.21.png?alt=media&#x26;token=c8ae7804-a221-4df1-86ba-476dfa518f91" alt="" width="375"><figcaption><p>Adicione uma operação dentro do valor da sua variável.</p></figcaption></figure>

Operações permitem realizar cálculos como adição, subtração, multiplicação, divisão ou encontrar o resto de dois números.

{% hint style="info" %}
Para uma lista abrangente de operações disponíveis, como adição (+), multiplicação (\*), divisão (/), e mais, consulte a documentação detalhada fornecida [aqui](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/integrateandcode/expression-syntax).
{% endhint %}

### Ir para diálogo de variável do bot

Use a **Ir para diálogo de variável do bot** etapa para navegar para um bloco que está contido dentro de uma variável.

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2Fw1cGbucKpkLK0QqMueRc%2FScreenshot%202024-07-31%20at%2016.42.48.png?alt=media&#x26;token=50afceb7-93ef-4f15-9227-b3f05c5eefe9" alt="" width="375"><figcaption><p>Etapa Ir para diálogo de variável do bot.</p></figcaption></figure>

## Etapas de e-mail

### Enviar e-mail

A **Enviar e-mail** etapa envia um e-mail com uma mensagem.

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FxywQEl1uC74aI2MnsMy2%2FScreenshot%202024-07-31%20at%2017.03.35.png?alt=media&#x26;token=3cf3e7cd-1a97-4d2a-b11f-cfd6d6bc5614" alt="" width="283"><figcaption><p>Etapa Enviar e-mail.</p></figcaption></figure>

### Relatório por e-mail

A **Relatório por e-mail** etapa envia 2 coisas:

* um e-mail com uma mensagem
* a conversa do bot no momento em que a mensagem foi enviada

Tudo o que você precisa fazer é definir o título do e-mail, destinatários e corpo. Aqui você também pode usar variáveis entre chaves, se precisar.

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FPauc1vs0pKO3NYUoqRg5%2FScreenshot%202024-07-31%20at%2017.08.51.png?alt=media&#x26;token=b4810605-6d15-411a-82e5-6599cd85cb5e" alt="" width="375"><figcaption><p>Etapa Relatório por e-mail.</p></figcaption></figure>

## Etapas de voicebot

### Iniciar gravação da chamada

A partir da **Iniciar gravação da chamada** etapa, a [conversa com seu voicebot está sendo gravada](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/voz/phone-and-voice).

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FVAsCGay1s7VyFsK0qzpJ%2FScreenshot%202024-08-01%20at%2010.54.32.png?alt=media&#x26;token=ec68b94f-1909-45eb-bbdc-d2e54d2e208f" alt="" width="375"><figcaption><p>Etapa Iniciar gravação da chamada.</p></figcaption></figure>

### Parar gravação da chamada

A partir da **Parar gravação da chamada** etapa, a conversa com seu [voicebot](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/voz) parará de ser gravada.

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2F1eEOWZT3G7LfTXvmIVMS%2FScreenshot%202024-08-01%20at%2010.56.42.png?alt=media&#x26;token=b13ad6d4-0178-4a9e-a381-c2ea3a824223" alt="" width="375"><figcaption><p>Etapa Parar gravação da chamada.</p></figcaption></figure>

### Encaminhar chamada

Você pode [encaminhe a chamada do seu voicebot para um número de telefone](https://docs.chatlayer.ai/voicebots/phone-and-voice#forwarding-and-closing-a-call) usando a **Encaminhar chamada** etapa.

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2F7CUDjPN64z8ZmswBx1bq%2FScreenshot%202024-08-01%20at%2010.53.44.png?alt=media&#x26;token=a1ced597-98e7-4504-8b04-eee0f2ea8e4b" alt="" width="375"><figcaption><p>Etapa Encaminhar chamada.</p></figcaption></figure>

{% hint style="info" %}
O número de telefone deve conter um código do país, mas sem zeros à esquerda, apenas o sinal '+'.\
Por exemplo: 0800 55 800 torna-se +32 800 55 80
{% endhint %}

Após configurar o número para o qual você deseja encaminhar sua chamada, o bot desligará automaticamente ao transferir. Para alcançar o bot novamente, desligue a chamada e ligue uma segunda vez.

## Outras etapas

### Rastrear evento

Uma **Rastrear evento** etapa pode ser usada para [criar painéis e funis personalizados para melhorar a análise do desempenho do seu bot](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/bot-answers/track-events-for-analytics).

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2Fmj4IE2fNV7PKFqU1hAuG%2FScreenshot%202024-07-31%20at%2016.51.14.png?alt=media&#x26;token=75dcf366-6ca8-4e59-8b99-b9a74d0d3eaf" alt="" width="375"><figcaption><p>Etapa Rastrear evento.</p></figcaption></figure>

### iFrame

Um iFrame é um elemento personalizado que pode ser usado para mostrar uma página da web diferente na conversa do chat. Ele também pode ser usado para se comunicar com a janela pai usando a [postMessage API](https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage).

Dê uma olhada neste exemplo básico:

```markup
<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8">
		</head>
		<body>
			<button onClick="window.parent.postMessage(JSON.stringify({target:'CL_API',type:'SEND_MESSAGE', payload:{text: 'You clicked the button'} }),'*')">
         SEND_MESSAGE
        </button>
		</body>
</html>
```

Se esse bloco de código estiver hospedado e incorporado em nosso plugin de iframe, ele enviará ao usuário uma mensagem de chat quando ele clicar no botão.

A postMessage API também pode lidar com `UPDATE_SESSION` e `GO_TO_DIALOGSTATE` eventos.

### Obter hora

A [**Obter hora** etapa](#get-time) é sobre orientar seu fluxo com base no momento atual. Você pode reutilizar essas [variáveis de tempo](#get-time-variables) dentro da sua conversa.

Quando você fornece um **deslocamento de fuso horário**, o resultado do plugin conterá propriedades de tempo iguais a UTC+`deslocamento`.

<details>

<summary>Obter variáveis de hora</summary>

Se você não fornecer um deslocamento de fuso horário, o momento atual será salvo no **Variável de destino** campo. No nosso exemplo, essa variável será chamada `time`. Nesse caso, seu **Variável de destino** ficará acessível com as seguintes variáveis:

* `(target).utc.year`
* `(target).utc.month`
* `(target).utc.dayOfMonth`
* `(target).utc.dayOfWeek`
* `(target).utc.hours`
* `(target).utc.minutes`
* `(target).utc.seconds`
* `(target).utc.ISO`

Por padrão, o resultado do plugin conterá propriedades relacionadas ao horário UTC.&#x20;

Quando você fornece um `deslocamento de fuso horário`, o resultado também conterá propriedades de tempo iguais a UTC+\<OFFSET>.

* `(target).offset.year`
* `(target).offset.month`
* `(target).offset.dayOfMonth`
* `(target).offset.dayOfWeek`
* `(target).offset.hours`
* `(target).offset.minutes`
* `(target).offset.seconds`
* `(target).offset.ISO`

Dentro de uma mensagem, você pode usar essas variáveis, por exemplo, assim:

*Hoje é `{time.offset.dayOfMonth}`/`{time.offset.month}`/`{time.offset.year}`*

</details>

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FEpN6rpPefETGfhX8CFXh%2FScreenshot%202024-07-31%20at%2017.06.13.png?alt=media&#x26;token=a21b9b7f-61e9-4af4-8598-01edd7fc4c6c" alt="" width="375"><figcaption><p>Etapa Obter hora.</p></figcaption></figure>

{% content-ref url="../../tips-and-best-practices/route-your-flow-depending-on-the-time" %}
[route-your-flow-depending-on-the-time](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/buildabot/tips-and-best-practices/route-your-flow-depending-on-the-time)
{% endcontent-ref %}

### Fechar conversa

O bot fechará a conversa ativa quando a **Fechar conversa** etapa for alcançada.

Isso significa que as variáveis da sessão são apagadas.&#x20;

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2F886CrUQlRgWJhpvXbvvb%2FScreenshot%202024-08-01%20at%2010.50.39.png?alt=media&#x26;token=73e1611f-e267-4543-9fc1-c6df66c1a872" alt="" width="375"><figcaption><p>Etapa Fechar conversas.</p></figcaption></figure>

<details>

<summary>Exemplo: Atraso antes de Fechar conversa</summary>

Você pode, por exemplo, usar a **Fechar conversa** etapa junto com uma [**Atraso**](#delay) etapa. Isso é útil em uma situação em que o usuário não responde por alguns minutos e você quer fechar a conversa a partir daí.

![](https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FIq8QY3yGhUdrrCY0j0YN%2FScreenshot%202024-09-24%20at%2010.40.14.png?alt=media\&token=9b049378-6830-4561-8045-055c0d111272)

</details>

{% hint style="success" %}
**Fechar conversa** está agora disponível no [Web](https://docs.chatlayer.ai/channels/channels/web-v2) canal, [Voz](https://docs.chatlayer.ai/voicebots/phone-and-voice#set-up-voice-channel) canal, e [Sinch Conversation API](https://docs.chatlayer.ai/channels/sinch-conversation-api-beta) canal.
{% endhint %}

### Operação de tabela

A **Operação de tabela** etapa é sobre usar suas [Tabelas](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/navegacao/tables).

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FHq89TXGf1jbd8fdiDo0A%2FScreenshot%202024-08-01%20at%2010.59.48.png?alt=media&#x26;token=c7d4a3ef-7670-4f60-a573-952b4e7466c6" alt="" width="375"><figcaption><p>Etapa Operação de tabela</p></figcaption></figure>

### Base de conhecimento IA

A **Base de conhecimento IA** etapa é sobre usar sua [Base de conhecimento IA](#knowledge-base-ai).

<figure><img src="https://181262846-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LLTwFwbOqJj4dDhg8Ju%2Fuploads%2FsoeAPS1nd7iK8nXyqbWq%2FScreenshot%202024-08-01%20at%2011.00.26.png?alt=media&#x26;token=1adc6c0e-49a7-4d30-84a0-e4bb6d3740dd" alt="" width="375"><figcaption><p>Etapa Base de conhecimento IA.</p></figcaption></figure>

### Enviar para provedor de offload <a href="#send-to-offload-provider" id="send-to-offload-provider"></a>

Um usuário que chegar a esta ação será encaminhado para um agente humano de suporte ao cliente.

{% hint style="warning" %}
Para conseguir ver esta etapa no seu bot, você precisará [configurar um provedor de offload.](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/integrateandcode/human-offloading-live-chat)
{% endhint %}

Dependendo do seu provedor de offload selecionado, pode ser necessária configuração adicional.


---

# 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://docs.chatlayer.ai/chatlayer-documentation-pt-br/buildabot/flow-logic/dialog-state/action-bot-dialog.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.
