# Як вручну керувати коментарями

{% hint style="success" %}
Це працює, коли Instagram увімкнено
{% endhint %}

## Налаштування відповіді на callback Instagram

Вам потрібно перемкнути перемикач у підключеному акаунті Instagram у розділі **Месенджери** щоб увімкнути відповідь вашого бота на коментарі.

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

Якщо Instagram показує "Перепідключіть для роботи з коментарями" під вашим офіційним підключенням Instagram, вам потрібно перепідключити Instagram, щоб оновити необхідні дозволи. Для цього натисніть значок кошика в нижньому правому куті (видалити бота).

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

Підключіть акаунт Instagram знову. Як підключити Instagram, [дивіться тут.](/doc/uk/chatbot/mesendzheri/instagram/chatbot.md)

{% hint style="warning" %}
Під час публікації дописів як співавтор усі сповіщення про коментарі надсилатимуться до акаунта **з якого ви створюєте** допис.
{% endhint %}

{% hint style="info" %}
Це працює з коментарями під Reels, а також під дописами.
{% endhint %}

Коли користувач коментує допис, до бота надсилається callback (ви можете переглянути його в розділі **"Клієнти"** у діалозі користувача).

Callback має формат: `client_wall_reply_new link id: text`

де:

* `посилання` це посилання на допис
* `id` це ID запису
* `text` це текст коментаря

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

Ми можемо працювати з коментарями двома способами: відповісти вашим коментарем або написати одне повідомлення в Direct.

**client\_wall\_reply\_new** - це спільна частина callback.&#x20;

**client\_wall\_reply\_new\_comment -** якщо нас цікавлять коментарі лише під дописом

**client\_wall\_reply\_new\_live -** якщо коментарі лише під час прямого ефіру

### Як налаштувати автовідповідь на коментарі в Direct

{% hint style="warning" %}
Автоматична відповідь на коментар НЕ відкриває 24-годинне вікно.
{% endhint %}

Скопіюйте callback і перейдіть у розділ Конструктор воронки. Створіть блок типу "Перевірка основної умови" або "Не-станова умова" та вставте скопійований callback в умову. Ми налаштовуємо перевірку "На наявність ключових слів"

{% hint style="warning" %}
УВАГА! **не рекомендується** використовувати **числа** як тригер для запуску бота. \
\
ID допису може містити ці числа. Бот може реагувати на будь-який callback, що містить ці числа, якщо він вибирає збіг за наявністю ключових слів.
{% endhint %}

Якщо ви хочете налаштувати реакцію на коментарі під будь-яким дописом для будь-якого коментаря, тоді в умовах указуйте лише **client\_wall\_reply\_new\_comment.**&#x20;

Під час вибору збігу встановлюється “Збіг ключових слі&#x432;**".**

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

{% hint style="danger" %}

#### **Важлива примітка:**<br>

Ми рекомендуємо використовувати **"Збіг ключових слів"** тип пошуку під час налаштування відповіді на callback.

Пам’ятайте, логіку збігу для умови блоку слід вибирати відповідно до налаштувань і вимог вашого проєкту. Тому обов’язково ретельно тестуйте сценарій вашого чат-бота!

Прочитайте про вибір збігу в умові блоку в статті "[Тригер і тип збігу](/doc/uk/chatbot/builder/setting/trigger/type.md)".
{% endhint %}

Якщо ви плануєте налаштувати реакцію на конкретний допис, включіть `client_wall_reply_new_comment` а потім ID допису в полі тригера.

{% hint style="warning" %}

#### **УВАГА!**

Не рекомендується використовувати числа як тригери для запуску вашого бота.

ID допису часто складається з чисел. Якщо ваш бот використовує збіг на основі ключових слів, він може помилково реагувати на *будь-який* callback, що містить ці числа.
{% endhint %}

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

Якщо ви плануєте налаштувати реакцію на конкретний допис, включіть `client_wall_reply_new_comment` а потім ID допису в полі тригера.

{% hint style="warning" %}

#### **УВАГА!**

Не рекомендується використовувати числа як тригери для запуску вашого бота.

ID допису часто складається з чисел. Якщо ваш бот використовує збіг на основі ключових слів, він може помилково реагувати на *будь-який* callback, що містить ці числа.
{% endhint %}

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

У полі відповіді введіть текст, який ви хочете надіслати як відповідь на цей коментар.

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

Над повідомленням буде вказано, що його надіслано у відповідь на коментар. Якщо ви натиснете на **"Переглянути допис"**, вас буде перенаправлено до допису, який ви прокоментували.

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

Якщо користувач залишає коментар, для якого ви не налаштували відповідь (або якщо ви взагалі не налаштували жодних відповідей), ви можете відповісти йому одним повідомленням у Direct у розділі **"Клієнти"** розділ.

{% hint style="warning" %}
Однак, якщо ви спробуєте надіслати користувачу ще одне повідомлення в Direct, друге повідомлення не буде доставлене, оскільки відповідь на коментар не відкриває повторно 24-годинне вікно для повідомлень.
{% endhint %}

### Як використовувати прямі посилання на дописи Instagram під час роботи з коментарями

{% hint style="info" %}
Щоб працювати з коментарями, вам потрібно увімкнути **"Відповідати на коментарі"** перемикач у розділі Канали Instagram.
{% endhint %}

Коли користувач коментує допис, у чаті в розділі **Клієнти** з’являється сповіщення з текстом коментаря, а змінна `instagram_media_url` створюється з посиланням на публікацію.

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

Ви можете використовувати `instagram_media_url` змінну для налаштування реакцій на коментарі до конкретних дописів Instagram.

Розгляньмо приклад.

#### Налаштування різних відповідей залежно від того, який допис було прокоментовано

**Завдання:** В акаунті є кілька дописів, зокрема три з товарами за різними цінами. Налаштуйте відповіді на коментарі до цих трьох дописів так, щоб у відповідь надсилалася точна ціна. Для всіх інших дописів відповідати "За домовленістю." Відповідь має надсилатися і як повідомлення в Direct, і як коментар під дописом.

**Рішення:**

1. Налаштуйте реакції на основі ключових слів для коментарів під дописами. Це означає, що бот реагуватиме на будь-який допис, де коментар містить указані ключові слова.
2. Використовуйте `insta_create_comment` функцію в **Калькуляторі** щоб залишити коментар під відповідним дописом, одночасно задавши текст відповіді в полі **Текст повідомлення** для надсилання повідомлення в Direct. Це дозволяє користувачеві одночасно отримати ціну і в коментарях, і в Direct-повідомленнях.
3. Якщо коментар, що містить ключові слова, з’явиться під будь-яким іншим дописом, користувач отримає повідомлення **"за домовленістю."**

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

Крок 1. У **блоці Start** полі тригера введіть `client_wall_reply_new` а потім ключові слова, які мають запускати відповідь. Установіть тип збігу на **"Збіг ключових слів"**.

Приклад для копіювання:

`client_wall_reply_new_comment (price|how many|cost|find out)`

{% hint style="info" %}
Якщо ви хочете відповідати лише на коментарі під дописами, використовуйте `client_wall_reply_new_comment`. Якщо ви хочете відповідати лише на коментарі під час прямого ефіру, використовуйте `client_wall_reply_new_live`.
{% endhint %}

{% hint style="info" %}
Коментарі під Reels працюють так само, як і під звичайними дописами.
{% endhint %}

Крок 2. У полі **"Калькулятор"** оголосіть `text` змінну. Її значення визначається умовою IF, яка перевіряє змінну `instagram_media_url` змінну.

*Приклад для копіювання (не забудьте замінити посилання на ваші реальні URL дописів). Ви можете скопіювати URL зі змінної `instagram_media_url` у чаті клієнта (розділ Clients) після того, як він прокоментує відповідний допис:*

`text = if(instagram_media_url == "https://www.instagram.com/reel/Cagzkx", "$10", if(instagram_media_url == "https://www.instagram.com/p/CqvCq4", "$29", if(instagram_media_url == "https://www.instagram.com/p/CocLhN", "$35", "Other")))`&#x20;

Крок 3. Використовуйте `insta_create_comment` метод, щоб опублікувати коментар.

Приклад для копіювання:&#x20;

`insta_create_comment("#{text}")`

де `#{text}` це текст відповіді, який ми надсилаємо користувачеві.

Крок 4. У полі **Текст повідомлення** введіть змінну, що містить відповідь для повідомлення в Direct.

У цьому прикладі змінна — `#{text}`. Та сама відповідь публікується як коментар і дублюється в повідомленні Direct. За потреби ви можете налаштувати для кожного різні відповіді.

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

{% hint style="info" %}
`client_wall_reply_new` це спільний префікс callback. Щоб націлитися лише на коментарі під дописами, використовуйте `client_wall_reply_new_comment`. Щоб націлитися лише на коментарі під час прямого ефіру, використовуйте `client_wall_reply_new_live`.
{% endhint %}

### Як опублікувати коментар у відповідь на повідомлення під дописом або під час прямого ефіру

{% hint style="info" %}
Під час роботи з коментарями та налаштування відповідей під дописом використовуйте випадкову функцію та надсилайте змінний текст. Якщо бот неодноразово надсилатиме однаковий текст, ви можете отримати помилку: "Цей API-виклик не підтримує запитаний формат відповіді." Детальніше про роботу з [випадковою функцією читайте тут.](/doc/uk/chatbot/builder/responses.md)
{% endhint %}

Крок 1. У **Клієнти** розділі скопіюйте callback (сповіщення), що вказує на публікацію коментаря, потім перейдіть до Конструктора.

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

Крок 2. Створіть **"Start"** або **"Trigger"** блок і вставте скопійований callback у поле **Тригер** .

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

Існує кілька способів налаштувати тригерну умову бота.

У цьому прикладі бот відповідає на коментарі під **усіма дописами** повідомленням "відповідь у коментарях." Для цього введіть основний префікс callback і ключове слово в поле умови:

`client_wall_reply_new_comment reply in comments`

**Важливо:** установіть тип збігу на **"Збіг ключових слів"**.

{% hint style="warning" %}

#### УВАГА!

Не рекомендується використовувати числа як тригери для запуску вашого бота.

ID допису часто складається з чисел. Якщо ваш бот використовує збіг на основі ключових слів, він може помилково реагувати на будь-який callback, що містить ці числа.
{% endhint %}

{% hint style="info" %}
`client_wall_reply_new` це спільний префікс callback, який спрацьовує як для дописів, так і для прямих ефірів.

Щоб відповідати лише на коментарі під дописами, використовуйте:\
`client_wall_reply_new_comment`

Щоб відповідати лише на коментарі під час прямого ефіру, використовуйте:\
`client_wall_reply_new_live`
{% endhint %}

{% hint style="warning" %}
Є одна особливість для callback прямих ефірів (`client_wall_reply_new_live`): бот реагуватиме лише **під час** прямого ефіру. Щойно прямий ефір завершиться, бот більше не виявлятиме коментарі під ним і не зможе відповісти.
{% endhint %}

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

Крок 3. У полі **відповідь** введіть `#{none}`.

Крок 4. У полі **"Калькулятор"** напишіть:

`insta_create_comment("текст відповіді у вашому коментарі")`

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

Потім натисніть **"Готово"**.

За такої конфігурації, як у прикладі, коментар, згенерований ботом, буде опублікований у відповідь на будь-який коментар під дописом, що містить ключові слова "відповісти в коментарях".

*Приклад відповіді бота на коментар у коментарях.*

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

*<mark style="color:green;">**Відповідь бота на БУДЬ-ЯКИЙ коментар під БУДЬ-ЯКИМ дописом.**</mark>*

Якщо ви введете лише загальний префікс callback `client_wall_reply_new` у полі **"Trigger"** ваш коментар буде опубліковано у відповідь на коментарі під **усіма дописами** (незалежно від того, який текст написав користувач).

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

*<mark style="color:green;">**Відповідь бота на КОНКРЕТНУ ФРАЗУ під БУДЬ-ЯКИМ дописом.**</mark>*

Якщо ви залишите в полі "Тригер" **`client_wall_reply_new`**` ``і ключове слово`, тоді ваш коментар буде надіслано **у відповідь на коментарі з ключовим словом під усіма дописами.**

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

*<mark style="color:green;">**Відповідь бота на КОНКРЕТНУ ФРАЗУ під КОНКРЕТНИМ дописом.**</mark>*

Скопіюйте повний callback із розділу клієнтів і вставте його в **Start** поле блоку:

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

{% hint style="warning" %}
Ви можете відповідати на коментарі, які користувачі залишають під час прямого ефіру (для цього є окремий ключ **client\_wall\_reply\_new\_live)**.

Є одна особливість для прямих ефірів: бот реагуватиме лише під час ефіру. Якщо ефір завершено, бот не бачитиме коментарів під цим ефіром і не зможе відповісти.
{% endhint %}

### Як зберегти текст коментаря у змінну

Щоб зберегти текст коментаря користувача, використовуйте `comment_text()` функцію.

Вставте callback у `client_wall_reply_new` у полі **Тригер** поле. Потім у **"Калькулятор"** полі призначте текст змінній — наприклад, `comm` (ви можете використати будь-яку іншу назву):

`comm = comment_text()`

Далі натисніть **"Додати умову"** у калькуляторі та вкажіть:

`comm = comment_text()`

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

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

### Як видалити коментар&#x20;

Функція `insta_delete_comment(comment_id)` видаляє коментар.

Якщо `comment_id` не вказано, функція використовує клієнтську змінну `instagram_last_comment_id`.

У разі успіху вона повертає `{"success":true}`. Якщо передано неіснуючий `comment_id` то вона повертає `{"An unexpected error has occurred. Please retry your request later."}`.

## Робота зі згадками акаунта

### Як згадати в медіа

Коли користувач позначає ваш профіль у своєму дописі, ваш бот отримає такий callback:

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

З’являються такі змінні:

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

**mention\_caption** — підпис до допису

**post\_url** — посилання на допис

**mention\_comments\_count** — кількість коментарів

**mention\_like\_count** — кількість вподобань

**mention\_media\_id** — ID допису

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

Для цього створіть **"Перевірка основної умови"** або **"Стан з умовою"** блок. У полі **"Умова"** введіть `mention_in_media` і встановіть тип збігу на **"Збіг ключових слів"**.

У **"Калькулятор"** у полі введіть такий метод:

**reply\_to\_mention**(text)

де `text` це коментар, який з’явиться під дописом зі згадкою. Ви можете вказати змінну (вставляється без лапок усередині дужок) або ввести текст безпосередньо (у лапках).

**Приклад:**

Крок 1. Перейдіть до конструктора та створіть блок із тригером (**Start** блок або **Тригер** блок). Потім у полі **Тригер** вкажіть callback `mention_in_media`.

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

Виберіть **"Згадка в дописі"** у списку тригерів, а як метод калькулятора виберіть **"Відповісти коментарем на допис"**. Потім введіть текст коментаря-відповіді.

Крок 2. Натисніть **"Додати тригер"**. Після цього тригер разом із методом буде внесено до блоку:

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

### Як згадати в коментарі

Коли користувач позначає ваш акаунт у коментарях, чат отримає callback такого вигляду:

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

{% hint style="info" %}
Якщо ваш акаунт позначено в приватному профілі, callback не буде отримано.
{% endhint %}

У картці клієнта також з’являться такі змінні:

* `mention_like_count` — кількість вподобань
* `mention_media_id` — ID допису

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

Для цього створіть **"Start"** або **"Trigger"** блок. У полі **"Умова"** введіть `mention_in_comment` і встановіть тип збігу на **"Збіг ключових слів"**.

У **"Калькулятор"** у полі введіть такий метод:

**reply\_to\_mention**(text)

де `text` це коментар, який буде опубліковано у відповідь на згадку. Ви можете вказати змінну (вставляється без лапок усередині дужок) або ввести текст безпосередньо (у лапках).

**Приклад:**

Крок 1. Перейдіть до конструктора, створіть блок із тригером (**Start** блок або **Тригер** блок) і введіть такий callback у **"Trigger"** :

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

Далі виберіть умову **"Згадка в коментарі"**.

Крок 3. Натисніть **Калькуляторі** і в полі, що з’явиться, введіть метод:

`reply_to_mention("Текст відповіді на згадку в коментарі")`

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

{% hint style="warning" %}
Якщо 24-годинне вікно не відкрите в чаті з користувачем, ви **не можете** надіслати пряме повідомлення у відповідь на згадку. Ви можете відповісти лише коментарем.

Якщо 24-годинне вікно **є** відкритим, ви можете ввести текст у полі **Відповідь** , який користувач отримає як пряме повідомлення після згадки вашого акаунта.
{% endhint %}

### Як згадувати інші профілі в коментарях під вашими дописами

Якщо когось позначено в коментарях під вашим акаунтом, змінна `mentioned_in_comment` створюється в картці клієнта.

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

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

Вона зберігає ім’я користувача людини, яку було позначено.&#x20;Якщо позначено більше двох людей, імена користувачів зберігаються в масиві.

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

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

Якщо вам потрібно сегментувати користувачів, які позначили двох або більше друзів, ви можете призначити змінну, наприклад `len = arr_len(mentioned_in_comment)` а потім порівняти цю змінну з потрібним значенням.

{% hint style="warning" %}
Якщо 24-годинне вікно для повідомлень не відкрите в чаті з користувачем, ви не можете надіслати пряме повідомлення у відповідь на згадку. Ви можете відповісти лише коментарем.
{% endhint %}


---

# 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/mesendzheri/instagram/settings/yak-vruchnu-keruvati-komentaryami.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.
