Пример рабочего процесса (workflow) в n8n, который регистрирует изменение статусов сделок и отправляет соответствующее уведомление в Telegram.
Перед тем, как повторять нижеприведенные шаги, вы должны зарегистрироваться на платформе n8n или же развернуть его на своем собственном сервере. Подробнее о том, как это сделать, читайте в других материалах моего блога:
Вы также должны настроить передачу обращений в саму CRM-систему. У меня уже все это настроено для amoCRM. Поэтому этот шаг я опускаю в данном руководстве.
Содержание
- Импорт шаблона n8n
- Создание вебхука amoCRM
- Создание Telegram-бота
- Настройка Credentials для Telegram
- Запуск рабочего процесса
- Итоги
#### Импорт шаблона n8n
Скачать итоговый шаблон n8n из этого руководства вы можете на моей образовательной платформе edu.osipenkov.ru, в разделе Материалы.
Загрузите шаблон workflow и сохраните его на компьютере. Чтобы импортировать его в n8n, создайте новый рабочий процесс, затем кликните на иконку с тремя точками в правом верхнем углу и выберите пункт Import from file... Весь процесс займет буквально пару кликов.

Import from file...
Выберите файл на своем компьютере. После этого он будет загружен на ваш холст:

Импортированный рабочий процесс
Вам останется его только чуть донастроить под свой проект.
#### Создание вебхука amoCRM
После того, как вы импортировали мой рабочий процесс к себе в n8n, вам нужно настроить интеграцию в amoCRM. Для этого перейдите в раздел amoМаркет и в правом верхнем углу нажмите на кнопку + WEBHOOKS:

amoМаркет - WEBHOOKS
В открывшемся окне нажмите + Добавить webhook:

Добавить webhook
В поле URL сайта вам необходимо добавить URL webhook из n8n - адрес, куда amoCRM будет отправлять данные при смене статуса сделки. Найти этот URL можно в самом рабочем процессе. Для этого кликните два раза на первый узел Webhook amoCRM:

Webhook amoCRM
В открывшемся окне настройки найдите Production URL:

Production URL
В зависимости от того, используете ли вы свой собственный сервер или n8n Cloud, URL-адрес будет иметь разный формат:
Пример формата:

Часть URL (Path)
Именно весь Production URL вам нужно скопировать и вставить в настройках вебхука в amoCRM:

URL в поле вебхука
amoCRM при смене статуса шлет запрос на этот webhook URL, затем n8n запускает рабочий процесс и отправляет уведомление в Telegram.
Теперь рядом с поле URL сайта выберите событие, которое будет отслеживаться. В нашем примере - это Статус сделки изменен:

Статус сделки изменен
Нажмите Сохранить. На этом интеграция с CRM-системой завершена.
#### Создание Telegram-бота
Чтобы вам приходили уведомления об изменении статуса сделки в Telegram, необходимо создать бота. Для удобства работы и тестирования установите десктопную версию Telegram.
Чтобы создать бота в Telegram, в поиске вам необходимо найти самого главного - @botfather (с галочкой):

Главный бот BotFather
Нажмите на кнопку Start или введите /start:

Команда Start
Вы увидите список команд для создания бота или управлениями текущими (уже созданными):

Команды для бота
В списке есть команда /newbot. Данная функция позволяет создать нового бота. Вы можете прописать эту команду вручную в поле отправки сообщения или просто нажать на эту команду в списке:

Команда /newbot
Придумайте имя для бота и нажмите Enter (например - amoCRMStatus):

Название Telegram-бота
На следующем шаге выберите логин (username) для вашего бота. Он должен заканчиваться на bot. Например: TetrisBot или tetris_bot (в моем примере - amocrm_statusbot):

Логин (username) Telegram-бота
Если логин занят, вам придет уведомление: Sorry, this username is already taken. Please try something different. Вам нужно будет придумать другой username для своего бота.
Сохраните токен, который бот пришлет в ответном сообщении. Он понадобится вам в дальнейшем:

Токен
Затем следует активировать бота. Чтобы это сделать, вам нужно найти его в поиске Telegram и нажать на Start:

Активация Telegram-бота
Дополнительно можете в чат отправить какой-нибудь текст. Так вы точно активируйте работу Telegram-бота.
Теперь необходимо получить chat id. Вставьте в браузер ссылку:
<table><tbody><tr><td data-settings="show"><div><p>1</p></div></td><td><div><p><span>https</span><span>:</span><span>//api.telegram.org/botXXXXXXXXXXXXXXXXXXXXXXX/getUpdates</span></p></div></td></tr></tbody></table>
, где XXXXXXXXXXXXXXXXXX – ваш токен.
Результат в браузере должен быть примерно такой:

Получение chat id
Сохраните chat id (в моем примере - 49472219). Он понадобится вам в дальнейшем. На этом настройка Telegram-бота завершена.
#### Настройка Credentials для Telegram
Сохранив токен от Telegram-бота и chat_id, вернитесь в интерфейс n8n. Перейдите в раздел Overview и на вкладке Credentials в правом верхнем углу нажмите на кнопку Create credential:

Credentials - Create credential
В открывшемся окне из выпадающего списка выберите Telegram API:

Telegram API
Нажмите Continue. В открывшемся окне в поле Access Token вставьте свой токен, который вы получили при создании бота в @botfather:

В поле "Access Token" вставьте токен вашего бота в Telegram
В левом верхнем углу вы можете переименовать название учетных данных. Например, на Telegram для статусов сделок amoCRM:

Переименование credential и сохранение
Сохраните credential, нажав на кнопку Save.
После этого вернитесь в свой рабочий процесс и дважды кликните на узел Telegram: уведомление:

Telegram: уведомление
В открывшемся окне в поле Credential to connect with из выпадающего списка выберите учетные данные для Telegram, которые вы создали на предыдущем шаге:

Credential to connect with
Теперь в поле Chat ID моего шаблона вместо REPLACE_CHAT_ID:

Поле Chat ID
Подставьте свое значение, которое вы получили на предыдущем шаге. В моем примере - это 49472219:

Подставьте свое значение в поле "Chat ID"
Закройте окно настроек уведомлений Telegram.
#### Запуск рабочего процесса
После всех проделанных настроек мы можем протестировать свой workflow. Для этого в правом верхнем углу нажмите на кнопку Publish (Опубликовать):

Publish
Так как мы используем Production URL для вебхука amoCRM, нам это сделать необходимо. Просто сохранить черновик рабочего процесса недостаточно.
В открывшемся окне вы можете изменить название версии (по желанию). В завершение нажмите Publish:

Version name
После этого ваш рабочий процесс станет активным и начнет свою работу.

Рабочий процесс опубликован и готов к работе
Теперь мы можем протестировать его полностью. Откройте любую тестовую сделку в amoCRM и смените статус (перетащите в другую колонку воронки). Подождите несколько секунд.

Изменение статуса сделки в amoCRM
Если вы все настроили правильно, то в Telegram вы получите уведомление о смене статуса:

Уведомление в Telegram о смене статуса в amoCRM
А в n8n на вкладке Executions (Запуски) отобразиться новое выполнение:

Успешное выполнение всего рабочего процесса. Вкладка "Executions"
#### Итоги
Автоматизация в n8n начинается с события. В нашем случае событием стала смена статуса в amoCRM. Webhook принял сигнал, n8n обработал данные, API помог сделать их понятными, а Telegram доставил результат человеку.
Если workflow опубликован, URL настроен, credentials подключены и тестовая смена статуса приводит к сообщению в Telegram, значит интеграция работает. Это и есть критерий готовности: не «мы что-то настроили», а система реагирует на реальное действие в CRM. Классический пример работы вебхуков.
Источник публикации: Осипенков.ру



Что думаете?
Загружаем комментарии…