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

# Пример 1: Автоматический ответ с помощью ИИ

В этом примере показано, как настроить базовый сценарий автоматического ответа с помощью n8n, большой языковой модели и узла YCloud:<br />Когда платформа YCloud получает входящее сообщение, она запускает сценарий n8n через Webhook. Сценарий обращается к большой языковой модели для генерации ответа, а затем отправляет сообщение пользователю обратно через узел YCloud.

> YCloud AI Agent уже содержит готовый комплексный сценарий ИИ, предлагая готовую и простую базу знаний ИИ, датасеты и автоматизированные процессы. Нажмите здесь, чтобы узнать подробнее.

### Общий процесс

<img src="https://mintcdn.com/lchnan/7IqVC2giQEcOq6-5/product-assets/31a5e257bb-image-835.webp?fit=max&auto=format&n=7IqVC2giQEcOq6-5&q=85&s=45da1a8b4fd560222e1adc5d9e57bd47" alt="Скриншот продукта YCloud" width="1739" height="787" data-path="product-assets/31a5e257bb-image-835.webp" />

### Событие Webhook

1. Создайте конечную точку Webhook
   1. Используйте узел n8n Webhook для создания нового слушателя (listener)
   2. Выберите POST в качестве HTTP-метода
   3. В разделе Options установите Response Code на 200 и убедитесь, что выбран вариант «Immediately»

<img src="https://mintcdn.com/lchnan/PCdfO4VGvgYoGyQM/product-assets/fc7f38f8c3-ishot-2026-04-30-10-25-09.webp?fit=max&auto=format&n=PCdfO4VGvgYoGyQM&q=85&s=68fa46fe890c8b71626e7b2e4afb6860" alt="Скриншот продукта YCloud" width="1920" height="993" data-path="product-assets/fc7f38f8c3-ishot-2026-04-30-10-25-09.webp" />

Добавьте данные вашей конечной точки на платформе YCloud и выберите события Webhook, которые вы хотите отслеживать

<Frame caption="Use Search event to find the webhook events your n8n workflow needs before confirming.">
  <img src="https://mintcdn.com/lchnan/gXEJIQXV2JH2VUQJ/product-assets/english-help-2026-09-22/developer-webhook-events-annotated.svg?fit=max&auto=format&n=gXEJIQXV2JH2VUQJ&q=85&s=81cb1ab6ab3e979bb8ad6fdd9c4d4122" alt="Выбор событий Webhook в YCloud с выделенным поиском событий." width="3024" height="1656" data-path="product-assets/english-help-2026-09-22/developer-webhook-events-annotated.svg" />
</Frame>

### Парсинг возвращаемого значения и проверка подписи

#### Парсинг возвращаемого значения

Парсинг заголовков в ответе Webhook с помощью встроенного узла n8n «Code»

<img src="https://mintcdn.com/lchnan/7IqVC2giQEcOq6-5/product-assets/2c273275ba-ishot-2026-04-30-10-50-04.webp?fit=max&auto=format&n=7IqVC2giQEcOq6-5&q=85&s=2ce32f2b7a9148f5c19f291ff87fb4ad" alt="Скриншот продукта YCloud" width="1920" height="993" data-path="product-assets/2c273275ba-ishot-2026-04-30-10-50-04.webp" />

Выберите JavaScript для парсинга

```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
function parseSignatureHeader(signatureHeader) {
  const result = {};
  for (const part of (signatureHeader || '').split(',')) {
    const [key, value] = part.split('=');
    if (key && value) {
      result[key.trim()] = value.trim();
    }
  }
  return result;
}

const input = $input.first().json;
const headers = input.headers || {};
const body = input.body;

const signatureHeader = headers['ycloud-signature'] ;
const parsed = parseSignatureHeader(signatureHeader);

const timestamp = parsed.t;
const receivedSignature = parsed.s;

const payload =
  body === undefined || body === null
    ? ''
    : typeof body === 'string'
      ? body
      : JSON.stringify(body);

const signedPayload = `${timestamp}.${payload}`;

return [
  {
    json: {
      ...input,
      timestamp,
      receivedSignature,
      payload,
      signedPayload,
      signatureHeader,

    }
  }
];
```

Возвращаемые значения этого узла:

* Исходное значение,
* Временная метка (timestamp),
* Полученная подпись, полезная нагрузка (payload), подписанная полезная нагрузка и информация о подписи в заголовке запроса

#### Шифрование данных

На предыдущем шаге данные были полностью разделены. В этом узле мы будем использовать SignedPayload и Secret. Для шифрования данных мы применим узел Crypto.

<img src="https://mintcdn.com/lchnan/7IqVC2giQEcOq6-5/product-assets/304e08d482-ishot-2026-04-30-10-52-06.webp?fit=max&auto=format&n=7IqVC2giQEcOq6-5&q=85&s=ef80f4acfb29d1a6ac4db24fbcb9d958" alt="Скриншот продукта YCloud" width="1920" height="993" data-path="product-assets/304e08d482-ishot-2026-04-30-10-52-06.webp" />

Получите Secret на платформе YCloud.

<img src="https://mintcdn.com/lchnan/PCdfO4VGvgYoGyQM/product-assets/f3c6c5acc3-ishot-2026-04-30-11-24-02.webp?fit=max&auto=format&n=PCdfO4VGvgYoGyQM&q=85&s=1217648ce39e95778e3a1079aec84c13" alt="Скриншот продукта YCloud" width="2940" height="604" data-path="product-assets/f3c6c5acc3-ishot-2026-04-30-11-24-02.webp" />

#### Сравнение подписей

Используйте оператор if для проверки информации о подписи; если она совпадает, проверка считается успешной.

<img src="https://mintcdn.com/lchnan/AlSk34JesCiO_ZYy/product-assets/e3c383a5bb-ishot-2026-04-30-10-54-22.webp?fit=max&auto=format&n=AlSk34JesCiO_ZYy&q=85&s=2ee80efbbc283a3fe1390d3e82ff4c95" alt="Скриншот продукта YCloud" width="1920" height="993" data-path="product-assets/e3c383a5bb-ishot-2026-04-30-10-54-22.webp" />

#### Ответ на сообщения с помощью ИИ

После подписки на события `whatsapp.inbound_message.received` и `whatsapp.message.updated` вы будете получать push-уведомление при получении сообщения или последующее обновление статуса после отправки сообщения.

1. Используйте узел `switch` для настройки нескольких типов уведомлений Webhook.

<img src="https://mintcdn.com/lchnan/RN4tXfXENVvDu0Te/product-assets/b3c1737815-ishot-2026-04-30-16-25-41.webp?fit=max&auto=format&n=RN4tXfXENVvDu0Te&q=85&s=9e974b4c366f72c61bfae9bfbd37ce00" alt="Скриншот продукта YCloud" width="1920" height="993" data-path="product-assets/b3c1737815-ishot-2026-04-30-16-25-41.webp" />

2. При получении события `inbound_message_received` можно сгенерировать ответ, вызвав API ИИ

<img src="https://mintcdn.com/lchnan/WD-ixrYVrqB7b7aQ/product-assets/50e1d1e086-ishot-2026-04-30-16-28-07.webp?fit=max&auto=format&n=WD-ixrYVrqB7b7aQ&q=85&s=ded17a4e52f2fbc1a0ca65475b14424d" alt="Скриншот продукта YCloud" width="1920" height="993" data-path="product-assets/50e1d1e086-ishot-2026-04-30-16-28-07.webp" />

3. Используйте узел Merge, чтобы сохранить набор данных push-уведомления Webhook из предыдущего шага

<img src="https://mintcdn.com/lchnan/9zlgZMZStxEKrVPM/product-assets/09afdc4376-ishot-2026-04-30-16-28-24.webp?fit=max&auto=format&n=9zlgZMZStxEKrVPM&q=85&s=aff24c2139549e797167523c027732d1" alt="Скриншот продукта YCloud" width="571" height="517" data-path="product-assets/09afdc4376-ishot-2026-04-30-16-28-24.webp" />

4. Отправка сообщений с использованием узлов YCloud

<img src="https://mintcdn.com/lchnan/WD-ixrYVrqB7b7aQ/product-assets/4c8c3181d3-ishot-2026-04-30-16-34-48.webp?fit=max&auto=format&n=WD-ixrYVrqB7b7aQ&q=85&s=0a5b33d46797eead0c71665dadf4b640" alt="Скриншот продукта YCloud" width="1047" height="862" data-path="product-assets/4c8c3181d3-ishot-2026-04-30-16-34-48.webp" />

Заполните соответствующие поля, поместите сгенерированный ИИ текст в поле Body и отправьте.

<Warning>
  Обратите внимание, что отправитель и получатель здесь **поменялись местами** , так как это ответное сообщение.
</Warning>

На этом полный сценарий n8n: Webhook → Большая языковая модель → Автоматический ответ — успешно настроен.

### Сохранение в таблицу данных (необязательно)

<img src="https://mintcdn.com/lchnan/PCdfO4VGvgYoGyQM/product-assets/facf991e02-ishot-2026-04-30-17-17-34.webp?fit=max&auto=format&n=PCdfO4VGvgYoGyQM&q=85&s=c31f86a044a3198ac01f4df4bb1c61fb" alt="Скриншот продукта YCloud" width="710" height="916" data-path="product-assets/facf991e02-ishot-2026-04-30-17-17-34.webp" />

### Отслеживание последующих обновлений отправленного сообщения (необязательно)

После завершения шага 5 данные будут отправляться через событие `whatsapp.message.update`.

Получив этот push, вы можете использовать узел `datatable - update rows` для обновления таблицы данных, отслеживая весь процесс доставки сообщений.

<img src="https://mintcdn.com/lchnan/RN4tXfXENVvDu0Te/product-assets/d71c29cf5b-image-20260430172030545.webp?fit=max&auto=format&n=RN4tXfXENVvDu0Te&q=85&s=6e9c7f56be24cde01e3a56489add9c9c" alt="Скриншот продукта YCloud" width="652" height="574" data-path="product-assets/d71c29cf5b-image-20260430172030545.webp" />

<img src="https://mintcdn.com/lchnan/6CxA7mK2t7klNAOL/product-assets/a35824b7cb-image-20260430172039734.webp?fit=max&auto=format&n=6CxA7mK2t7klNAOL&q=85&s=831e5308b4b34776bb5416220faa1878" alt="Скриншот продукта YCloud" width="644" height="652" data-path="product-assets/a35824b7cb-image-20260430172039734.webp" />


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