# Trabalhando com links

## Links com notificação de clique <a href="#dlya-raboty-s-ssylkami" id="dlya-raboty-s-ssylkami"></a>

proxy() | proxy\_date() | proxy\_timeout()

&#x20;<mark style="color:vermelho;">**LEGENDA:**</mark>

<mark style="color:vermelho;">**!**</mark> - Parâmetros obrigatórios

**proxy(lnk, one-shot)** - gera um link com notificação de clique. A função recebe os seguintes parâmetros:\ <mark style="color:vermelho;">!</mark> **link** - link \
**one-shot** - indicador de que o link é de uso único. Basta passar o valor 1.

**proxy\_date(lnk, date, time)** - gera um link com notificação de clique e um tempo de expiração especificado. A função recebe os seguintes parâmetros:\ <mark style="color:vermelho;">!</mark> **link** - link\ <mark style="color:vermelho;">!</mark> **date** - data de expiração do link \ <mark style="color:vermelho;">!</mark> **time** - horário de expiração do link\
**one-shot** - indicador de que o link é de uso único. Basta passar 1.

**proxy\_timeout(lnk, minutes, one-shot)** - gera um link com notificação de clique e um temporizador de acesso especificado. A função recebe os seguintes parâmetros:\ <mark style="color:vermelho;">!</mark> **link** - link\ <mark style="color:vermelho;">!</mark> **minutes** - o número de minutos que o link permanece ativo.\
**one-shot** - indicador de que o link é de uso único. Basta passar 1.

<details>

<summary>Exemplo</summary>

Vamos ver um exemplo simples:

<div data-with-frame="true"><figure><img src="/files/a0f7ff34eac25bed85efc1d8ed933c85d4fb3bfb" alt=""><figcaption></figcaption></figure></div>

Criamos dois links proxy e os inserimos em botões e no texto da mensagem. Como estamos testando no Telegram, é uma boa oportunidade para relembrar como formatar links corretamente usando Markdown. Para lidar com caracteres especiais, usamos a função tg\_escape().

É assim que o cliente os vê, por exemplo, no Telegram:

<div data-with-frame="true"><figure><img src="/files/f1381e1cac0c04a4a03dead4a017d380d8bd6447" alt="" width="188"><figcaption></figcaption></figure></div>

Quando o cliente clica no link, recebemos um callback:

<div data-with-frame="true"><figure><img src="/files/44829edf3fcf52f1fb9f2dd46dc76b9115a6fdaf" alt="" width="563"><figcaption></figcaption></figure></div>

Vamos configurar uma resposta para esse evento:

<div data-with-frame="true"><figure><img src="/files/d302b3ea8cde1ff8fb55aad60e2e51b3eb6f9909" alt="" width="563"><figcaption></figcaption></figure></div>

Agora, vamos testar as funções de remoção de links:

<div data-with-frame="true"><figure><img src="/files/e15d413d64bb4f9b732002814ffc6e883c6ae864" alt="" width="375"><figcaption></figcaption></figure></div>

Assim, se o cliente tentar usar o link de uso único depois que ele tiver sido excluído, receberá um erro porque o link não existe mais.

Vamos excluir o link com limite de tempo:

<div data-with-frame="true"><figure><img src="/files/e15d413d64bb4f9b732002814ffc6e883c6ae864" alt="" width="375"><figcaption></figcaption></figure></div>

Após executar a função, nenhum link proxy permanece no cartão do cliente, e qualquer tentativa de seguir o link retorna o mesmo erro.

</details>

<details>

<summary>Exemplo de código para copiar</summary>

Exemplo de código para o campo "Mensagem" (não se esqueça de ativar **Markdown** se você estiver trabalhando com o Telegram):

```
*Testando links:*
[Clique](#{link3})
```

ou teste usando o seguinte formato de saída:

<pre><code><strong>Testando links:
</strong>#{link2}
</code></pre>

Exemplo de código no campo "Calculadora":&#x20;

```
link1=proxy('https://mavibot.ai/', 1) 
link2=short_date('https://mavibot.ai/#tariff', '11.06.2025', '2pm') 
link3=tg_escape(link2)
```

</details>

{% hint style="info" %}
Quando um cliente clica em um link proxy, você receberá um callback na forma **link\_was\_pressed** . Isso permite configurar uma reação ao clique no link.

Para fazer isso, insira o callback recebido no campo "Condição" e defina o tipo de correspondência como Correspondência exata.
{% endhint %}

## Encurtamento de links

short() | short\_date() | short\_timeout()

&#x20;<mark style="color:vermelho;">**LEGENDA:**</mark>

<mark style="color:vermelho;">**!**</mark> - Parâmetros obrigatórios

**short(lnk, one-shot)** - gera um link sem notificação de clique. A função recebe os seguintes parâmetros:\ <mark style="color:vermelho;">!</mark> **link** - link \
**one-shot** - indicador de que o link é de uso único. Basta passar o valor 1.

**short\_date(lnk, date, time)** - gera um link sem notificação de clique e com um tempo de expiração especificado. A função recebe os seguintes parâmetros:\ <mark style="color:vermelho;">!</mark> **link** - link\ <mark style="color:vermelho;">!</mark> **date** - data de expiração do link \ <mark style="color:vermelho;">!</mark> **time** - horário de expiração do link\
**one-shot** - indicador de que o link é de uso único. Basta passar 1.

**short\_timeout(lnk, minutes, one-shot)** - gera um link sem notificação de clique e com um temporizador de acesso especificado. A função recebe os seguintes parâmetros:\ <mark style="color:vermelho;">!</mark> **link** - link\ <mark style="color:vermelho;">!</mark> **minutes** - o número de minutos que o link permanece ativo.\
**one-shot** - indicador de que o link é de uso único. Basta passar 1.

## **Remoção de links**

remove\_links() | remove\_one\_time\_links()| remove\_timer\_links()

<mark style="color:vermelho;">**LEGENDA:**</mark>

<mark style="color:vermelho;">**!**</mark> - Parâmetros obrigatórios

**remove\_links()** - desativação de todos os links encurtados enviados ao cliente

\
**remove\_one\_time\_links()** - desativação de todos os links de uso único enviados ao cliente<br>

**remove\_timer\_links()** - desativação de todos os links com limite de tempo enviados ao cliente

## Link de quiz do bot do Telegram

quiz\_link\_timeout() | quiz\_link\_date() | quiz\_link()

{% hint style="warning" %}
Por favor, observe!

Há um limite de 21 dias para a validade do link, então ele precisa ser renovado!
{% endhint %}

Para ativar a exibição do quiz no Telegram, você precisa:

1\. Copiar o ID de uma página do site. Para isso, vá até a seção "Sites" e selecione o site desejado:

<div data-with-frame="true"><figure><img src="/files/15db801a244c1549dc7e679f12754731caf2dd11" alt="" width="563"><figcaption></figcaption></figure></div>

Mais adiante no texto, nos referiremos a **mini\_landing\_page\_id** como nome da variável.

2\. No campo "Calculadora", use uma das seguintes funções:

<mark style="color:vermelho;">**LEGENDA:**</mark>

<mark style="color:vermelho;">**!**</mark> - Parâmetros obrigatórios

**quiz\_link\_timeout(mini\_landing\_page\_id, minutes)  -** gera um link com um limite de duração definido em minutos

Parâmetros:

<mark style="color:vermelho;">**!**</mark>**&#x20;mini\_landing\_page\_id** - ID da página do site\
**minutes -** duração do link em minutos (tipo: número)

**quiz\_link\_date(mini\_landing\_page\_id, date, time) -** gera um link com expiração limitada a uma data e hora específicas

Parâmetros:

<mark style="color:vermelho;">**!**</mark>**&#x20;mini\_landing\_page\_id** - ID da página do site\
**date** - data em que o link fica ativo (formato: dd.mm.aaaa)\
**time** - horário em que o link fica ativo (formato: hh:mm)

&#x20;**quiz\_link(mini\_landing\_page\_id)** - gera um link sem tempo de expiração

Parâmetros:

<mark style="color:vermelho;">**!**</mark>**&#x20;mini\_landing\_page\_id** - ID da página do site

<details>

<summary>Exemplo</summary>

<div data-with-frame="true"><figure><img src="/files/08c8cef7718f8316f18d5570d3b1833b82a3041a" alt="" width="563"><figcaption></figcaption></figure></div>

3\. Crie um **Telegram Web App** botão e especifique o nome da variável entre chaves com o símbolo de cerquilha.

<div data-with-frame="true"><figure><img src="/files/ad66a21169220da57ab353bb6cd7fd60e0304cfd" alt="" width="375"><figcaption></figcaption></figure></div>

<mark style="color:vermelho;">**Importante!**</mark> \
Certifique-se de que o valor da variável esteja salvo corretamente nas configurações avançadas.

<div data-with-frame="true"><figure><img src="/files/ef844fc3830288f4205e9658442897750ffdfdfc" alt="" width="563"><figcaption></figcaption></figure></div>

Se você usar **quiz\_link\_timeout** para redirecionar um cliente para uma página do site, você pode usar variáveis do cliente no título e na descrição da página. Por exemplo, se o cliente tiver uma variável **name** com o valor "John", e a descrição da página incluir **"Oi #{name}, como você está?"**, a saída será "Oi John, como você está?". No entanto, se o cliente não tiver essa variável, o valor será obtido das variáveis globais do projeto.

{% hint style="warning" %}
**Atenção!** Tenha cuidado ao usar links sem tempo de expiração. Se o link for compartilhado com outra pessoa e ela concluir o quiz, os resultados serão registrados no cliente para o qual o link foi originalmente gerado.
{% endhint %}

</details>


---

# 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.mavibot.ai/doc/pt/chatbot/functions/calculadora/links.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.
