# Trabajar en mensajeros

## Comprobando la suscripción de Instagram

check\_insta\_subscription()

<details>

<summary>Descripción</summary>

<mark style="color:predeterminado;background-color:blue;">**Para comprobar la suscripción a una cuenta de Instagram**</mark>

**check\_insta\_subscription()**

Parámetros: Ninguno

La función devuelve lógico **True** si el usuario está suscrito a la cuenta, **Falso** si no.

</details>

<details>

<summary>Ejemplos</summary>

<figure><img src="/files/e21b009b5b4aa3d365f86006da92e505c48ce306" alt="" width="375"><figcaption></figcaption></figure>

</details>

<details>

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

`r=check_insta_subscription()`

</details>

## Trabajando con WhatsApp&#x20;

check\_whatsapp() | get\_whatsapp\_bot\_id\_by\_phone()

<details>

<summary>Descripción</summary>

{% hint style="warning" %}
Las funciones funcionan si un bot de WhatsApp está conectado a un proyecto.
{% endhint %}

<mark style="color:predeterminado;background-color:blue;">**Para comprobar si un número de teléfono tiene WhatsApp**</mark>

**check\_whatsapp(phone\_number)**\
método para comprobar si WhatsApp está conectado al número de teléfono dado

Parámetros:\
**phone\_number** - número de teléfono en el formato 79999999999 o 89999999999

La función devuelve lógico **True** si el número está registrado en WhatsApp, **Falso** si no lo está.

<mark style="color:predeterminado;background-color:blue;">**Para obtener el bot\_id de WhatsApp por número de teléfono**</mark>

**get\_whatsapp\_bot\_id\_by\_phone(bot\_phone)**\
función para encontrar el bot\_id de WhatsApp por número de teléfono

</details>

<details>

<summary>Ejemplos</summary>

Vamos a comprobar si WhatsApp está conectado a un número de teléfono:

<figure><img src="/files/f13976e697bacea19206fec3d49277e0dfd8014e" alt="" width="375"><figcaption><p>Ejemplo de uso de la función check_whatsapp()</p></figcaption></figure>

</details>

<details>

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

```
rs=check_whatsapp(79999999999)
```

</details>

## Eliminando el último mensaje

last\_message\_id() | remove\_last\_message()

<details>

<summary>Descripción</summary>

**last\_message\_id()**- para obtener el número del último mensaje del bot

{% hint style="info" %}
Si se han enviado tanto una imagen como texto, los números de los mensajes se separan con un guion bajo (\_).
{% endhint %}

{% hint style="warning" %}
Para obtener correctamente el número del último mensaje del bot, el mensaje debe guardarse en el historial del diálogo del cliente.

Esto significa que, en un bloque del embudo, debe estar habilitado el guardado del historial de mensajes si se envía a través del embudo, o al enviar una difusión, debe activarse la opción "guardar mensaje en el historial del diálogo".
{% endhint %}

**remove\_last\_message()** – para eliminar el último mensaje del bot

{% hint style="danger" %}
Funciona solo en Telegram y Facebook.
{% endhint %}

Si el **"Guardar en el historial del diálogo"** si el interruptor está activado, entonces para Telegram y FB puedes eliminar el último mensaje mediante un envío desde un bloque. Simplemente usa la función **remove\_last\_message()** en la calculadora. Esta función elimina el último mensaje enviado por el bot, pero solo si ese mensaje está guardado en el historial del diálogo.

</details>

<details>

<summary>Ejemplo</summary>

Ejemplo:

1. Crea un bloque de difusión:

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

{% hint style="success" %}
Configura los ajustes del envío como quieras, luego ve a **"Envío"** .
{% endhint %}

&#x20;2\. Activa la casilla de verificación **"Guardar el envío en el historial del diálogo del cliente"** en el **"Envío"** :

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

Ahora, siéntete libre de enviar el envío.

Si quieres eliminar el último mensaje (por ejemplo, un mensaje con un error), puedes hacerlo en un solo bloque usando la función **remove\_last\_message()**.

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

A continuación, envía el envío con la función para eliminar el último mensaje.

{% hint style="warning" %}
¡IMPORTANTE! ¡El último mensaje no se puede eliminar después de cierto tiempo!
{% endhint %}

Ejemplo con la obtención del ID del último mensaje.

<figure><img src="/files/f528709d0655f458eff553128411111a373663c0" alt="" width="375"><figcaption></figcaption></figure>

</details>

<details>

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

```
soob = last_message_id()
status = remove_last_message()
```

</details>

## Pausando la operación del bot

\| pause\_bot(minutes)

<details>

<summary>Descripción</summary>

pause\_bot(minutes) - pausa la operación del bot durante el número especificado de minutos.

minutes - parámetro obligatorio que representa el número de minutos. Puede pasarse como un entero o un número decimal.

La función funciona como hacer clic en el **"Pausa"** botón en un diálogo con el cliente, pero te permite especificar la duración de la pausa del bot. Devuelve **True** tras una ejecución exitosa.

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

</details>

## Eliminando mensajes programados

\| delete\_pended\_messages\_from\_list(message\_id\_list, with\_not\_delete)

<details>

<summary>Descripción</summary>

delete\_pended\_messages\_from\_list(message\_id\_list, with\_not\_delete)

La función ayuda a eliminar mensajes específicos de los programados.

<mark style="color:rojo;">!</mark> message\_id\_list - parámetro obligatorio; una lista de bloques cuyos mensajes deben eliminarse de los programados.

with\_not\_delete - parámetro opcional; elimina los mensajes marcados como **"No eliminar."** Se puede pasar cualquier valor a este parámetro.

El valor de retorno **"wrong message\_id\_list"** aparece si no se proporciona message\_id\_list o si no es un array.

Cómo pasar parámetros:

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

De dónde obtener el parámetro requerido:

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

</details>

## Comprobando el estado del operador

\| check\_operator\_status(email, with\_pause)

<details>

<summary>Descripción</summary>

check\_operator\_status(email, with\_pause) - comprueba si el operador está de turno. Devuelve **True** si el operador está de turno, y **Falso** si no.

<mark style="color:rojo;">**!**</mark> email - parámetro obligatorio; el correo electrónico de un empleado

with\_pause - parámetro opcional con valores 1 o 0. Si se establece en 1, la función devuelve un resultado positivo cuando el estado del operador es ya sea **"De turno"** o **"En pausa."** Si se establece en 0, devuelve un resultado positivo solo cuando el estado del operador es **"De turno."**&#x20;Valor predeterminado: 1.

</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/es/chatbot/functions/calculadora/messengers.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.
