> For the complete documentation index, see [llms.txt](https://book.microcrm.online/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://book.microcrm.online/konstruktor-chat-botov/tipy-uzlov/usloviya.md).

# Условия

Узел условия проверяет определённое условие и направляет поток по одной из двух веток.

<figure><img src="https://2761604671-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBnmghAGVwptospVllo8n%2Fuploads%2FWLWR5kHK9zQME5VYs6ug%2Fimage.png?alt=media&amp;token=406ff94d-c093-4b8e-a923-5632269313f9" alt=""><figcaption></figcaption></figure>

#### **Все условия имеют два выхода:**

* ✅ **TRUE (зелёная точка)** — условие выполнено
* ❌ **FALSE (красная точка)** — условие не выполнено

## **Проверка текста**

Проверяет текст последнего сообщения пользователя.

<figure><img src="https://2761604671-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBnmghAGVwptospVllo8n%2Fuploads%2FwaMhoqF4VsxEQw0NY8yA%2Fimage.png?alt=media&amp;token=837ae0ad-10c3-4909-8043-a48f99774ea9" alt=""><figcaption></figcaption></figure>

### **Типы проверок**

1. **Содержит** — сообщение содержит указанную подстроку

   ```
   Значение: "да"
   "да, согласен" → TRUE
   "хорошо" → FALSE
   ```
2. **Равно** — сообщение точно совпадает (регистр не учитывается)

   ```
   Значение: "отмена"
   "отмена" → TRUE
   "отмена заказа" → FALSE
   ```
3. **Начинается с** — сообщение начинается с указанного текста

   ```
   Значение: "/cmd"
   "/cmd start" → TRUE
   "команда /cmd" → FALSE
   ```
4. **Заканчивается на** — сообщение заканчивается указанным текстом

   ```
   Значение: "?"
   "как дела?" → TRUE
   "привет" → FALSE
   ```
5. **Регулярное выражение** — для сложных проверок

   ```
   Значение: "^[0-9]+$"
   "12345" → TRUE
   "123abc" → FALSE
   ```

## **Переменная**

Проверяет значение переменной контекста.

<figure><img src="https://2761604671-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBnmghAGVwptospVllo8n%2Fuploads%2FHQyF45pRGjH7Op3a3PsG%2Fimage.png?alt=media&amp;token=0acf2390-8dd7-4be3-8085-c8ac2bf8bda8" alt=""><figcaption></figcaption></figure>

### **Операторы сравнения**

* `==` — равно
* `!=` — не равно
* `>` — больше
* `<` — меньше
* `>=` — больше или равно
* `<=` — меньше или равно
* `contains` — содержит (для строк)

### **Примеры**

```
{{context.score}} > 10
{{context.user_name}} == "Иван"
{{context.answers}} contains "да"
```

## **Клиент существует**

Проверяет, есть ли в CRM клиент с данным Telegram ID.

<figure><img src="https://2761604671-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBnmghAGVwptospVllo8n%2Fuploads%2F3NsGQHEcOUBe4D93bSMv%2Fimage.png?alt=media&amp;token=981e30c1-712d-42cc-a17b-c7088291b80c" alt=""><figcaption></figcaption></figure>

### **Использование**

* TRUE → клиент найден в базе
* FALSE → новый пользователь

### **Пример сценария**

```
[Клиент существует?]
    ├─ TRUE → "Рады видеть вас снова!"
    └─ FALSE → "Добро пожаловать! Давайте познакомимся."
```

## **Есть покупки**

Проверяет, есть ли у клиента завершённые транзакции.

<figure><img src="https://2761604671-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBnmghAGVwptospVllo8n%2Fuploads%2FK3KeLn6jpDqsGVSkKi3A%2Fimage.png?alt=media&amp;token=ae6b361b-5b46-4eb7-bea2-d300c476d3dd" alt=""><figcaption></figcaption></figure>

### **Использование**

* TRUE → клиент совершал покупки
* FALSE → клиент новый или не покупал

### **Пример сценария**

```
[Есть покупки?]
    ├─ TRUE → "Спасибо за покупки! Вот персональная скидка: {{context.discount_code}}"
    └─ FALSE → "Специально для вас скидка на первый заказ!"
```

## **Время суток**

Проверяет текущее время в часовом поясе компании.

<figure><img src="https://2761604671-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBnmghAGVwptospVllo8n%2Fuploads%2F0x7zkcTP913HCQTmQQRn%2Fimage.png?alt=media&amp;token=f52dd27c-729f-4aa2-88e1-48357cf1e549" alt=""><figcaption></figcaption></figure>

### **Периоды**

* Утро — 06:00-11:59
* День — 12:00-17:59
* Вечер — 18:00-22:59
* Ночь — 23:00-05:59

### **Использование**

```
[Время суток?]
    ├─ Утро → "Доброе утро! ☀️"
    ├─ День → "Добрый день! 🌤️"
    ├─ Вечер → "Добрый вечер! 🌆"
    └─ Ночь → "Доброй ночи! Мы работаем круглосуточно! 🌙"
```
