# Робота в месенджерах

## Перевірка підписки в Instagram

check\_insta\_subscription()

<details>

<summary>Опис</summary>

<mark style="color:за замовчуванням;background-color:blue;">**Щоб перевірити підписку на акаунт Instagram**</mark>

**check\_insta\_subscription()**

Параметри: немає

Функція повертає логічне **True** якщо користувач підписаний на акаунт, **False** якщо ні.

</details>

<details>

<summary>Приклади</summary>

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

</details>

<details>

<summary>Приклад коду для копіювання</summary>

`r=check_insta_subscription()`

</details>

## Робота з WhatsApp&#x20;

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

<details>

<summary>Опис</summary>

{% hint style="warning" %}
Функції працюють, якщо до проєкту підключено бота WhatsApp.
{% endhint %}

<mark style="color:за замовчуванням;background-color:blue;">**Щоб перевірити, чи має номер телефону WhatsApp**</mark>

**check\_whatsapp(phone\_number)**\
метод для перевірки, чи підключено WhatsApp до вказаного номера телефону

Параметри:\
**phone\_number** - номер телефону у форматі 79999999999 або 89999999999

Функція повертає логічне **True** якщо номер зареєстровано в WhatsApp, **False** якщо ні.

<mark style="color:за замовчуванням;background-color:blue;">**Щоб отримати bot\_id WhatsApp за номером телефону**</mark>

**get\_whatsapp\_bot\_id\_by\_phone(bot\_phone)**\
функція для пошуку bot\_id WhatsApp за номером телефону

</details>

<details>

<summary>Приклади</summary>

Перевірмо, чи підключено WhatsApp до номера телефону:

<figure><img src="/files/03526e7760cc52f671e33af538446a816e0d50a6" alt="" width="375"><figcaption><p>Приклад використання функції check_whatsapp()</p></figcaption></figure>

</details>

<details>

<summary>Приклад коду для копіювання</summary>

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

</details>

## Видалення останнього повідомлення

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

<details>

<summary>Опис</summary>

**last\_message\_id()**- щоб отримати номер останнього повідомлення бота

{% hint style="info" %}
Якщо надіслано і зображення, і текст, номери повідомлень розділяються підкресленням (\_)
{% endhint %}

{% hint style="warning" %}
Щоб коректно отримати номер останнього повідомлення бота, повідомлення має бути збережене в історії діалогу клієнта.

Це означає, що в блоці воронки має бути увімкнено збереження історії повідомлень, якщо вони надсилаються через воронку, або під час надсилання розсилки потрібно увімкнути опцію "зберегти повідомлення в історії діалогу".
{% endhint %}

**remove\_last\_message()** – щоб видалити останнє повідомлення бота

{% hint style="danger" %}
Працює лише в Telegram і Facebook.
{% endhint %}

Якщо **"Зберегти в історії діалогу"** якщо перемикач увімкнено, то для Telegram і FB ви можете видалити останнє повідомлення через розсилку з блоку. Просто використайте функцію **remove\_last\_message()** у калькуляторі. Ця функція видаляє останнє повідомлення, надіслане ботом, але лише якщо це повідомлення збережено в історії діалогу.

</details>

<details>

<summary>Приклад</summary>

Приклад:

1. Створіть блок розсилки:

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

{% hint style="success" %}
Налаштуйте параметри розсилки на свій розсуд, а потім перейдіть до **"Надсилання"** .
{% endhint %}

&#x20;2\. Увімкніть прапорець **"Зберігати розсилку в історії діалогу клієнта"** у полі **"Надсилання"** :

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

Тепер можете сміливо надсилати розсилку.

Якщо ви хочете видалити останнє повідомлення (наприклад, повідомлення з помилкою), це можна зробити в одному блоці за допомогою функції **remove\_last\_message()**.

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

Далі надішліть розсилку з функцією для видалення останнього повідомлення.

{% hint style="warning" %}
ВАЖЛИВО! Останнє повідомлення не можна видалити через деякий час!
{% endhint %}

Приклад із отриманням ID останнього повідомлення.

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

</details>

<details>

<summary>Приклад коду для копіювання</summary>

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

</details>

## Пауза в роботі бота

\| pause\_bot(minutes)

<details>

<summary>Опис</summary>

pause\_bot(minutes) - призупиняє роботу бота на вказану кількість хвилин.

minutes - обов’язковий параметр, що означає кількість хвилин. Його можна передати як ціле число або десяткове число.

Функція працює так само, як натискання кнопки **"Пауза"** у діалозі з клієнтом, але дозволяє вказати тривалість паузи для бота. Вона повертає **True** у разі успішного виконання.

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

</details>

## Видалення запланованих повідомлень

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

<details>

<summary>Опис</summary>

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

Функція допомагає видалити конкретні повідомлення зі запланованих.

<mark style="color:red;">!</mark> message\_id\_list - обов’язковий параметр; список блоків, чиї повідомлення потрібно видалити зі запланованих.

with\_not\_delete - необов’язковий параметр; видаляє повідомлення, позначені як **"Не видаляти."** До цього параметра можна передати будь-яке значення.

Значення, що повертається **"wrong message\_id\_list"** з’являється, якщо message\_id\_list не передано або він не є масивом.

Як передавати параметри:

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

Де взяти потрібний параметр:

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

</details>

## Перевірка статусу оператора

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

<details>

<summary>Опис</summary>

check\_operator\_status(email, with\_pause) - перевіряє, чи оператор на зміні. Повертає **True** якщо оператор на зміні, і **False** якщо ні.

<mark style="color:red;">**!**</mark> email - обов’язковий параметр; email співробітника

with\_pause - необов’язковий параметр зі значеннями 1 або 0. Якщо встановлено 1, функція повертає позитивний результат, коли статус оператора **"На зміні"** або **"На перерві."** Якщо встановлено 0, вона повертає позитивний результат лише тоді, коли статус оператора **"На зміні."**&#x20;Значення за замовчуванням: 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/uk/chatbot/functions/kalkulyator/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.
