> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ukrgsm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Переадресація на агента

> Передайте розмову іншому агенту в межах того самого дзвінка — як у колцентрі, коли абонента з'єднують з потрібним відділом.

Інструмент «Переадресація на агента» передає розмову від одного агента до іншого, не розриваючи дзвінок. Абонент лишається на лінії: поточний агент завершує роботу, а обраний починає зі свого стартового вузла — зі своїм голосом, своїми даними й своїм сценарієм.

Зручно думати про агента як про **відділ**. Замість одного великого сценарію з гілками на всі випадки ви робите кілька простих агентів і дозволяєте їм передавати розмову один одному.

<Note>
  Працює лише для **вхідних** дзвінків через Asterisk (ARI). Напрямок — властивість дзвінка, а не агента: той самий агент може обслуговувати і вхідні, і вихідні, але у вихідному дзвінку переадресація не виконається.
</Note>

## Як це працює

1. Ви створюєте інструмент і вказуєте **напрямки** — агентів, яким можна передати розмову.
2. Додаєте інструмент на вузол сценарію, де агент має обрати напрямок.
3. Під час розмови LLM викликає інструмент і обирає один із напрямків.
4. Абонент чує аудіофайл очікування (якщо його задано), після чого з ним говорить обраний агент.

Обраний агент отримує змінні дзвінка й усе, що зібрав попередній агент, тож не перепитує те саме.

## Налаштування

| Поле | Опис |
| - | - |
| **Напрямки** | Таблиця «назва → агент». Назву бачить LLM, коли обирає напрямок; назви мають бути різними. |
| **Дозволені напрямки зі змінної** | Необов'язково. Назва змінної дзвінка з переліком напрямків, дозволених саме цьому абоненту — рядок через кому або список. Якщо задано, агент може обрати лише напрямки з переліку; якщо змінна порожня, інструмент не пропонується. |
| **Якщо напрямок лише один — переадресувати одразу** | Коли абоненту дозволено рівно один напрямок, розмова передається до привітання, без запитань і без участі LLM. Спрацьовує, якщо інструмент додано на **стартовий вузол**. |
| **Аудіофайл під час переадресації** | Необов'язково. Фраза або музика, яку чує абонент, поки підключається інший агент. |
| **Дограти до кінця** | Увімкніть для фрази: інший агент почне лише після її завершення. Вимкніть для музики: вона грає по колу й обривається, щойно агент готовий. |
| **Аудіофайл, якщо з'єднати не вдалося** | Необов'язково. Програється, коли переадресація неможлива; після цього дзвінок завершується. |

Один інструмент — це один набір «куди можна переадресувати і як». Той самий інструмент можна додати на вузли різних агентів; окремий потрібен лише для іншого набору напрямків.

## Переадресація з вузла завершення дзвінка

Коли вибирати нічого не треба, переадресацію можна зробити кроком сценарію, без участі LLM. У вузлі «Завершення дзвінка» в полі **«Після завершення передати агенту»** оберіть інструмент «Переадресація на агента» з одним напрямком. Тоді розмова, дійшовши до цього вузла, не завершується, а передається цьому агенту.

* Агент і аудіофайли беруться з обраного інструмента.
* Інструмент має давати рівно один напрямок для цього дзвінка: один рядок у таблиці або один дозволений за змінною.
* Текст, який абонент чує перед переходом, задається як зазвичай — у зв'язку, що веде до вузла, або в промпті вузла.
* Якщо переадресація неможлива, програється аудіофайл «не вдалося» з інструмента і дзвінок завершується.

У прийнятої розмови `{{handoff_mode}}` тоді дорівнює `node`.

## Змінні в агента, який прийняв розмову

| Змінна | Значення |
| - | - |
| `{{handoff_mode}}` | `auto` — розмову передано до привітання (абонент ще нічого не чув); `selected` — агент обрав напрямок під час розмови; `node` — розмову передано з вузла завершення дзвінка. Дає змогу привітатись по-різному. |
| `{{handoff_from_agent}}` | Назва агента, який передав розмову. |
| `{{handoff_target_label}}` | Назва обраного напрямку. |
| `{{handoff_position}}` | Порядковий номер агента в дзвінку: `2` після першої переадресації. |

## Як знайти переадресовані дзвінки

Один дзвінок з переадресацією — це ланцюжок із кількох розмов, по одній на агента. Запис розмови теж окремий для кожного агента.

* Розмова, з якої передали дзвінок, має мітку `handoff_out`, а та, що його прийняла, — `handoff_in`. Невдала переадресація позначається міткою `handoff_failed`.
* Розмови одного дзвінка об'єднує спільне значення `root_run_id`; `parent_run_id` вказує на попередню розмову.
* Причина невдачі записується в `handoff_error`.
* На сторінці розмови є блок **«Переадресація між агентами»** з посиланнями на попередню й наступну розмову дзвінка.
* У списку розмов агента переадресовані знаходяться фільтром **«Теги»**: `handoff_out`, `handoff_in` або `handoff_failed`.
* У шаблонах звітів з'являються колонки ланцюжка («Перша розмова дзвінка», «Переадресовано на агента», «Результат переадресації» тощо), щойно в компанії є активний інструмент «Переадресація на агента». Колонка «Перша розмова дзвінка» з обома ключами (`list:root_run_id` і `result:root_run_id`) збирає весь дзвінок докупи.

## Обмеження

* За один дзвінок розмову можна передати не більше трьох разів — це захист від кола «агент → агент → агент».
* Агент не може передати розмову сам собі.
* Якщо переадресація неможлива (агента видалено, вичерпано ліміт одночасних дзвінків, дзвінок не вхідний), програється аудіофайл «не вдалося» і дзвінок завершується.
* Під час автоматичної переадресації, якщо вона неможлива, розмова просто продовжується з поточним агентом.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.