> 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/triggery.md).

# Триггеры

## **Команда**

**Запускается когда:** пользователь отправляет команду (например, `/start`)

### **Настройки:**

* **Команда** — название команды без слэша (например, `start`, `help`, `menu`)
* Команды не чувствительны к регистру

### **Пример использования:**

```
/start → запуск приветственного сценария
/help → показ справки
/menu → главное меню бота
```

## **Содержит текст**

**Запускается когда:** сообщение пользователя содержит указанную фразу

### **Настройки:**

* **Текст** — ключевое слово или фраза
* Регистр не учитывается
* Проверяется вхождение подстроки

### **Пример использования:**

```
"цена" → показ прайс-листа
"контакт" → отправка контактной информации
"помощь" → вызов поддержки
```

## **Точный текст**

**Запускается когда:** сообщение пользователя точно совпадает с указанным текстом

### **Настройки:**

* **Текст** — точное сообщение
* Регистр не учитывается
* Должно совпадать полностью

### **Пример использования:**

```
"да" → подтверждение действия
"нет" → отмена действия
"готово" → завершение процесса
```

## **Кнопка (Callback)**

**Запускается когда:** пользователь нажимает на inline-кнопку

### **Настройки:**

* **Callback данные** — уникальный идентификатор кнопки
* Должен совпадать с callback\_data кнопки в узле "Отправить сообщение"

### **Пример использования:**

```
"buy_product_1" → обработка покупки товара 1
"show_catalog" → показ каталога
"confirm_order" → подтверждение заказа
```

## **Контроль доступа к триггерам**

Вы можете ограничить доступ к любому триггеру, чтобы его могли использовать только определенные люди.

<figure><img src="https://2761604671-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBnmghAGVwptospVllo8n%2Fuploads%2F2tcS1NlncQLvx0foMliV%2Fimage.png?alt=media&amp;token=481335e2-af2c-49d2-99b4-912863543c02" alt=""><figcaption></figcaption></figure>

### **Визуальная индикация в редакторе**

<figure><img src="https://2761604671-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBnmghAGVwptospVllo8n%2Fuploads%2Fwgpx4XDSxpuNAoIqsqUe%2Fimage.png?alt=media&amp;token=bb6744c9-27b5-4432-8611-afa84366c1fe" alt=""><figcaption></figcaption></figure>

Триггеры с ограниченным доступом отображают специальный значок справа от названия:

* 👥 **Сотрудники** — доступ только для сотрудников компании
* 🎭 **Роли** — доступ для конкретных ролей
* 👤 **Персона** — доступ для одного человека

Публичные триггеры не показывают значок (доступны всем).

### **Уровни доступа**

1. **Публичный (по умолчанию)** — триггер доступен всем пользователям бота
   * При создании нового триггера автоматически устанавливается этот уровень
2. **Только сотрудники компании** — триггер могут активировать только те пользователи, чей Telegram аккаунт привязан к учетной записи сотрудника в вашей компании через настройки профиля
3. **Конкретные роли** — выберите одну или несколько ролей компании:
   * Владелец
   * Главный менеджер
   * Менеджер
   * Сотрудник
4. **Конкретный человек** — только один выбранный сотрудник компании может использовать этот триггер

### **Сообщение при отказе в доступе:**

Когда доступ НЕ публичный, вы можете настроить сообщение, которое будет отправляться пользователям при попытке использовать ограниченный триггер.

Если сообщение не указано, пользователь просто не получит никакого ответа от бота.

### **Примеры использования:**

* **Команда `/admin`** — доступна только владельцу и главному менеджеру
  * Сообщение при отказе: "Извините, эта команда доступна только руководству."
* **Команда `/stats`** — доступна менеджерам и выше
  * Сообщение при отказе: "Для просмотра статистики обратитесь к вашему менеджеру."
* **Команда `/secret`** — доступна только конкретному сотруднику
  * Без сообщения при отказе (пользователь не получит ответа)
* **Команда `/help`** — публичная команда, доступна всем

### **Важные замечания**

* Для работы контроля доступа пользователь должен привязать свой Telegram аккаунт к учетной записи в компании
* Привязка осуществляется через настройки профиля в личном кабинете
* Если пользователь не привязал аккаунт, он будет считаться внешним пользователем
* Внешние пользователи могут использовать только публичные триггеры
